{
  "schemaVersion": "deck-intelligence.v1",
  "id": "019dd923-5ca1-7489-b63a-53ad5323c600",
  "slug": "cb6397350c432cb3",
  "title": "Global Consumer Insights March 2021",
  "subtitle": "PwC",
  "author": "PwC",
  "pageCount": 23,
  "kind": "consulting-deck",
  "orientation": "landscape",
  "aspectRatio": 1.414,
  "document": {
    "id": "019dd923-5ca1-7489-b63a-53ad5323c600",
    "slug": "cb6397350c432cb3",
    "title": "Global Consumer Insights March 2021",
    "rawTitle": "Global Consumer Insights March 2021",
    "authorId": "PwC",
    "authorName": "PwC",
    "authorDisplay": "PwC",
    "kind": {
      "slug": "consulting-deck",
      "label": "Consulting deck"
    },
    "sourceType": {
      "slug": "strategy_consulting",
      "label": "Strategy consulting"
    },
    "fileName": "2021-Global-Consumer-Insights-March-2021.pdf",
    "sourceUrl": "https://www.pwc.com/gx/en/consumer-markets/consumer-insights-survey/2021/gcis-2021.pdf",
    "sourceDate": "2021-03-15 00:00:00",
    "presentationDate": null,
    "ingestedAt": "2026-04-23 20:51:43+00",
    "status": "ready",
    "pageCount": 23,
    "orientation": "landscape",
    "aspectRatio": 1.414,
    "targetCompany": null,
    "targetTicker": null,
    "metadata": {
      "local_root": "/tmp/legacy-images/cb6397350c432cb3",
      "origin_corpus": "consulting"
    }
  },
  "coverage": {
    "pageCount": 23,
    "pagesIndexed": 23,
    "pagesWithImages": 23,
    "pagesWithMetadata": 23,
    "imageCoveragePct": 100,
    "metadataCoveragePct": 100,
    "componentCount": 136,
    "chartCount": 18,
    "metricSlides": 0,
    "toolMatches": 89,
    "documentToolMatches": 0,
    "frameworkMatches": 4,
    "arcMatches": 2,
    "beatMatches": 8,
    "loopMatches": 5,
    "patternMatches": 0,
    "storymakersMatch": true,
    "scoreAvailable": true,
    "reviewAvailable": true,
    "activistThesisAvailable": false,
    "pitchdeckMetadataAvailable": false,
    "pitchdeckProfileAvailable": false
  },
  "blocks": [],
  "matches": {
    "arcs": [
      {
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
        "evidence": "Pages 3-20 are 'The Facts' (data + 'Our insight' callouts), p21 is the explicit 'How to be bold' call-to-action ('Now What').",
        "isPrimary": true,
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
        "evidence": "Intro frames situation/complication (p1-2), p3-20 is evidence, p21 is impact/next steps; lacks a sharp 'solution' beat.",
        "isPrimary": false,
        "confidence": 55,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "beats": [
      {
        "to": 6,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 1,
        "name": "The Facts (What)",
        "beatId": "019de99a-4dc0-708b-86e8-21ab2f19eaf4",
        "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
        "beatType": null,
        "evidence": "Cover, intro and general digital-trend data (p3-6)",
        "position": 1,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 78
      },
      {
        "to": 20,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 7,
        "name": "The Implications (So What)",
        "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
        "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
        "beatType": null,
        "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
        "position": 2,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 78
      },
      {
        "to": 21,
        "arc": {
          "name": "The Triple Take",
          "slug": "triple-take",
          "status": "active",
          "bestFor": "Data-driven presentations, research findings",
          "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
          "description": null,
          "familyLabel": null,
          "categoryName": "Analysis & Information",
          "categorySlug": "analysis-information"
        },
        "from": 21,
        "name": "The Action (Now What)",
        "beatId": "019de99a-4e10-766d-a22a-b468bd631fc6",
        "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
        "beatType": null,
        "evidence": "'How to be bold in 2021' CTA page",
        "position": 3,
        "isPrimaryArc": true,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 78
      },
      {
        "to": 2,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 1,
        "name": "Situation & Context",
        "beatId": "019de99a-4e62-7768-9d8c-1757df29eab0",
        "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
        "beatType": null,
        "evidence": "Cover + intro frame consumer fragmentation context",
        "position": 1,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      },
      {
        "to": 6,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 3,
        "name": "Problem & Complication",
        "beatId": "019de99a-4e8b-75a7-bce6-35ee6f98bb9f",
        "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
        "beatType": null,
        "evidence": "Digital acceleration trends signal disruption",
        "position": 2,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      },
      {
        "to": 7,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 7,
        "name": "Solution & Approach",
        "beatId": "019de99a-4eb2-775b-b5fd-8168e293e056",
        "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
        "beatType": null,
        "evidence": "Four fault lines framework introduced as lens",
        "position": 3,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      },
      {
        "to": 20,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 8,
        "name": "Evidence & Proof",
        "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
        "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
        "beatType": null,
        "evidence": "Per-segment data tables, charts and insights",
        "position": 4,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      },
      {
        "to": 21,
        "arc": {
          "name": "The Consultant's Gambit",
          "slug": "consultants-gambit",
          "status": "active",
          "bestFor": "Business cases, project proposals, strategic recommendations",
          "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
          "version": 1,
          "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
          "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
          "description": null,
          "familyLabel": null,
          "categoryName": "Strategy & Business",
          "categorySlug": "strategy-business"
        },
        "from": 21,
        "name": "Impact & Next Steps",
        "beatId": "019de99a-4f03-7408-b6e8-f6e4a4c89e6c",
        "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
        "beatType": null,
        "evidence": "'How to be bold' bold-actions paragraph",
        "position": 5,
        "isPrimaryArc": false,
        "parentBeatType": null,
        "alignedBlockIds": null,
        "matchConfidence": 55
      }
    ],
    "loops": [
      {
        "to": 6,
        "from": 3,
        "loop": {
          "name": "02_pattern_hunter",
          "slug": "02-pattern-hunter",
          "status": "active",
          "bestFor": "Time-pressed audiences, building consensus, when data is strong",
          "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
          "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
          "familyLabel": null,
          "categoryName": "Logical Reasoning",
          "categorySlug": "logical-reasoning"
        },
        "matchId": "019de99a-4f2b-7773-a632-3e144e034886",
        "evidence": "p3 mobile, p4 online categories, p5 social media, p6 grocery premium - distinct evidence points building one trend",
        "position": 1,
        "objective": "Stack four independent digital-shift data points into a single 'consumers are everywhere' pattern",
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 10,
        "from": 7,
        "loop": {
          "name": "34_segmentation_split",
          "slug": "34-segmentation-split",
          "status": "active",
          "bestFor": "Customer analysis, market research, resource allocation",
          "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
          "description": "Divide a whole into meaningful segments to reveal hidden patterns",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "019de99a-4f54-70fa-b79f-6c81a05226e5",
        "evidence": "p7 frames at-home vs away-from-home; p8-10 contrast spending, channel and ESG behaviour by segment",
        "position": 2,
        "objective": "Split consumers by work-location to surface the 'Zoom effect' segment",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 14,
        "from": 11,
        "loop": {
          "name": "34_segmentation_split",
          "slug": "34-segmentation-split",
          "status": "active",
          "bestFor": "Customer analysis, market research, resource allocation",
          "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
          "description": "Divide a whole into meaningful segments to reveal hidden patterns",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "019de99a-4f82-756d-aea7-a6cab09e3c4b",
        "evidence": "p11 fault-line divider; p12-14 compare Gen Z / Millennials / Gen X / Boomers across mobile, spending and priorities",
        "position": 3,
        "objective": "Split consumers by generation to expose generational shopping divergence",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 17,
        "from": 15,
        "loop": {
          "name": "34_segmentation_split",
          "slug": "34-segmentation-split",
          "status": "active",
          "bestFor": "Customer analysis, market research, resource allocation",
          "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
          "description": "Divide a whole into meaningful segments to reveal hidden patterns",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "019de99a-4fab-700c-ad73-ea7d1832e191",
        "evidence": "p15 introduces cohort; p16-17 contrast cohort vs global sample on in-store and willingness-to-pay",
        "position": 4,
        "objective": "Split out a 'conscientious cohort' vs the global sample on health/safety and ESG",
        "confidence": 87,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      },
      {
        "to": 20,
        "from": 18,
        "loop": {
          "name": "34_segmentation_split",
          "slug": "34-segmentation-split",
          "status": "active",
          "bestFor": "Customer analysis, market research, resource allocation",
          "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
          "version": 1,
          "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
          "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
          "description": "Divide a whole into meaningful segments to reveal hidden patterns",
          "familyLabel": null,
          "categoryName": "Consulting Framework",
          "categorySlug": "consulting-framework"
        },
        "matchId": "019de99a-4fd2-7119-b81c-c975daaa45aa",
        "evidence": "p18 East-West framing; p19 regional map; p20 ESG-vs-safety table by region",
        "position": 5,
        "objective": "Split consumers by region to show Asia-Pacific divergence on frequency and ESG",
        "confidence": 86,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        }
      }
    ],
    "tools": [
      {
        "tool": {
          "name": "Big Idea Formula",
          "slug": "big-idea-formula",
          "status": "active",
          "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
          "version": 1,
          "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
          "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-504a-77e9-b2aa-0ec1cfb97444",
        "evidence": "<=20-word governing idea on cover sets the deck POV",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
        "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
      },
      {
        "tool": {
          "name": "MECE Principle",
          "slug": "mece-principle",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7c60-71a8-8758-c79d914489c9",
          "version": 1,
          "bodyDocId": null,
          "description": "Mutually Exclusive, Collectively Exhaustive - ensuring complete, non-overlapping structure",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5071-7599-ba2e-06114182fb6f",
        "evidence": "Promises four (MECE) fault-line categories that structure the deck",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "SCQA Framework",
          "slug": "scqa-framework",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7bcb-763f-bdf6-1dfedf3bd36c",
          "version": 1,
          "bodyDocId": "019df22a-a0b0-719e-937e-2ac31e53d32c",
          "description": "Situation, Complication, Question, Answer - structured problem framing",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-50c1-7161-bf34-dd5f59193578",
        "evidence": "Intro frames Situation (consumers) + Complication (COVID) + Question (now what?)",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Three Pillars",
          "slug": "three-pillars",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-81ef-7455-a365-b234d95a6bbb",
          "version": 1,
          "bodyDocId": null,
          "description": "Three major supporting arguments that are MECE and address key concerns",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-50e8-71b8-b07b-5e742a872c49",
        "evidence": "Four parallel pillars (fault lines) previewed as supporting structure",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 55,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "MECE Principle",
          "slug": "mece-principle",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7c60-71a8-8758-c79d914489c9",
          "version": 1,
          "bodyDocId": null,
          "description": "Mutually Exclusive, Collectively Exhaustive - ensuring complete, non-overlapping structure",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Architect",
        "layer": "block",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-53e2-72fe-b57e-8c62176c2388",
        "evidence": "First of four mutually-exclusive fault-line segments",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "AIDA Model",
          "slug": "aida-model",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-86fc-773c-813f-d416714b8413",
          "version": 1,
          "bodyDocId": null,
          "description": "Attention, Interest, Desire, Action - classic persuasion sequence",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "block",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-5a73-75cf-b15a-565a7234544c",
        "evidence": "Closes the deck on Action - completing earlier Attention/Interest/Desire",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-51b2-777f-97ac-96bec465d24c",
        "evidence": "Context->Conflict->Insight pattern across p3-6",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Inductive Reasoning",
          "slug": "inductive-reasoning",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-99c6-705e-94cc-76a504c3da37",
          "version": 1,
          "bodyDocId": null,
          "description": "Grouping similar evidence to form a conclusion (Evidence → Pattern → Conclusion)",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5189-703d-93ce-acd4cbd4899b",
        "evidence": "First evidence point of pattern-hunter loop on digital shift",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Horizontal Logic",
          "slug": "horizontal-logic",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9a85-7199-aaa6-4314cd50dcfa",
          "version": 1,
          "bodyDocId": null,
          "description": "Logical grouping at the same level - items must relate coherently",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-53bb-75f4-a7c3-6e620883daad",
        "evidence": "Opens parallel structure that p11/p15/p18 will repeat",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Pairs",
          "slug": "contrast-pairs",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9b77-70d3-88b1-f34e26f60860",
          "version": 1,
          "bodyDocId": null,
          "description": "Creating tension through opposites: Before↔After, Problem↔Solution, Pain↔Relief",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-545a-7274-af57-25355223619f",
        "evidence": "At-home vs away-from-home contrast carries the loop",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Horizontal Logic",
          "slug": "horizontal-logic",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9a85-7199-aaa6-4314cd50dcfa",
          "version": 1,
          "bodyDocId": null,
          "description": "Logical grouping at the same level - items must relate coherently",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5598-7736-b0eb-68beb63db097",
        "evidence": "Repeats fault-line divider pattern from p7 - parallel structure",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Horizontal Logic",
          "slug": "horizontal-logic",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9a85-7199-aaa6-4314cd50dcfa",
          "version": 1,
          "bodyDocId": null,
          "description": "Logical grouping at the same level - items must relate coherently",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5777-739a-9943-578101cb7ae7",
        "evidence": "Third repetition of fault-line divider template",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Contrast Pairs",
          "slug": "contrast-pairs",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9b77-70d3-88b1-f34e26f60860",
          "version": 1,
          "bodyDocId": null,
          "description": "Creating tension through opposites: Before↔After, Problem↔Solution, Pain↔Relief",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "loop",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-57ed-70bd-8429-98c12c4a5ec0",
        "evidence": "Cohort-vs-global-sample contrast is the loop's structural device",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 16,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Horizontal Logic",
          "slug": "horizontal-logic",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9a85-7199-aaa6-4314cd50dcfa",
          "version": 1,
          "bodyDocId": null,
          "description": "Logical grouping at the same level - items must relate coherently",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Architect",
        "layer": "loop",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-58b7-7155-ae43-bcb8dc92710f",
        "evidence": "Fourth repetition of fault-line divider format",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 18,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-4ff9-726c-bd53-9ce1a553c396",
        "evidence": "Cover headline IS the deck thesis: 'Four fault lines show a fracturing...'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 92,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-5022-704f-bc5e-85b80f08dbee",
        "evidence": "Geological 'fault lines' metaphor + shopping-bag-as-home illustration",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 86,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-509a-7348-af0b-8bf2add447f5",
        "evidence": "Callout states the four-fault-line thesis explicitly",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 2,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5111-7205-a4cc-689ee83c02c1",
        "evidence": "Title 'Mobile shopping is gaining on in-store shopping' states insight",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 90,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-513a-7259-9991-2b0cd6ad7c01",
        "evidence": "Vertical bar chart compares 2020 vs 2021 channel preference",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-5162-77af-ae95-5183c36ee78e",
        "evidence": "Chart embedded in a smartphone graphic to reinforce 'mobile' theme",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 3,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-51da-73c4-8f11-570330fdbdae",
        "evidence": "Long action title states 'shopping more or exclusively online'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Audience Definition",
          "slug": "audience-definition",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
          "version": 1,
          "bodyDocId": null,
          "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "ea51c25a-2aad-4ac0-86b9-53c243efbac9",
        "evidence": "Base: All respondents (8,738)",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:16.690364+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-5202-74aa-bf2c-f5aca1797a7c",
        "evidence": "Grouped bar chart across six product categories",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "b93024a6-3dc1-4f74-bfcc-0dc1489e2fdd",
        "evidence": "Across most product categories, we're also seeing that around the world, even in places where pandemic restrictions were lifted when we conducted our survey, a greater number of people say they've be",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:20:16.729309+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Visual Hierarchy",
          "slug": "visual-hierarchy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b2ca-706b-937f-e52441086fd7",
          "version": 1,
          "bodyDocId": null,
          "description": "Order of perception through Size > Color > Position > Weight > Space",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-522b-75f8-bf1a-d21ea807e73f",
        "evidence": "Two-panel layout separates category data from delivery priorities",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 4,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Audience Segmentation",
          "slug": "audience-segmentation",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8079-7046-8e6b-ecdf1bf15590",
          "version": 1,
          "bodyDocId": null,
          "description": "Grouping audience by attitude toward your message: Champions, Neutrals, Skeptics",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "ba7b1c24-52cb-49ed-9059-19615321063c",
        "evidence": "Base: All respondents (8,738), those that interact with YouTube (6,346), Google (5,836), Facebook (5,767), Instagram (4,905)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:20:16.839539+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "a143a319-bfef-4036-a438-a584a5a75ef2",
        "evidence": "chart/donut: Engagement rates for YouTube, Google, Facebook, Instagram",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:16.802738+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-527a-7566-9580-97050e9e5182",
        "evidence": "Dual-ring donuts compare interaction vs ad-click per platform",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Small Multiples",
          "slug": "small-multiples",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
          "version": 1,
          "bodyDocId": null,
          "description": "Repeating similar charts for comparison across categories or time",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-5253-722b-b586-ae380f1143e5",
        "evidence": "Four parallel donut charts - YouTube/Google/Facebook/Instagram",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 92,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-52a2-712f-ada2-049676b5429d",
        "evidence": "'Our insight' callout converts data into 'be everywhere' implication",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "34f4bb8c-1564-422c-a6de-2c3a3215d443",
        "evidence": "Our insight: Consumers want healthier food options and transparency across the food value chain.",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:20:16.914897+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-52ca-7317-b814-c18d9bc55ee2",
        "evidence": "Title names the three premium grocery attributes",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-52f4-723c-a684-daef64748817",
        "evidence": "Red right-panel houses the 'so what'; white left-panel holds data",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Picture Superiority Effect",
          "slug": "picture-superiority-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
          "version": 1,
          "bodyDocId": null,
          "description": "Pictures remembered 6x better than words - prioritize visuals over text",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-531c-770f-82ba-433b22138647",
        "evidence": "Icons for health, local, sustainability over text-only",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 6,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5343-70bb-a9f2-c543d26984bc",
        "evidence": "Callout 'The Zoom effect: At-home workers embrace...' states the segment thesis",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 90,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-536b-7200-8fb2-968d56f98ccd",
        "evidence": "'Zoom effect' as label for remote-work consumer cohort",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Story Moments",
          "slug": "story-moments",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-ae4e-768d-a18b-108e6cda511e",
          "version": 1,
          "bodyDocId": null,
          "description": "Design key emotional beats: The Shock, The Vision, The Proof, The Choice, The Call",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-5392-747e-8478-c9cfa57a798a",
        "evidence": "Bold pink 'Fault line 1' badge as deliberate beat marker",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 7,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5409-746e-964b-dd47d983a29b",
        "evidence": "Title states 'Consumers working at home expect to spend more'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Before-After-Bridge",
          "slug": "before-after-bridge",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8604-7188-883f-42370288ad05",
          "version": 1,
          "bodyDocId": null,
          "description": "Narrative structure: Paint the before, show the after, explain the bridge",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "566c4541-b181-4fb7-b83f-3cdda523faba",
        "evidence": "Working from home influences consumer spending expectations and in-store shopping behavior.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:20:17.029714+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-5432-7580-a79d-a53f4e45d66e",
        "evidence": "Two line charts compare spending and store-visit behaviour",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Comparison frame",
          "slug": "comparison-frame",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-484b-7399-a4fc-d14644b99f93",
          "version": 1,
          "bodyDocId": null,
          "description": "Two or more states/subjects placed side by side to expose a gap.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "a65d63fd-1684-4730-90b5-a68784611793",
        "evidence": "chart/line: In-store shopping behavior by work location",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:16.9889+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 8,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5482-7364-aa05-020b448100c4",
        "evidence": "Title quotes the 10pp delta as the insight",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 90,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Aha! Moment",
          "slug": "aha-moment",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-a5b5-7763-820e-b299c5f27a32",
          "version": 1,
          "bodyDocId": null,
          "description": "The moment when the audience realizes the value - design for insight revelation",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "21228858-7edf-4c2e-ba30-5b59be235b88",
        "evidence": "At-home workers are almost 10 percentage points more likely to shop online for groceries",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.8,
        "extraction": {
          "at": "2026-07-16 21:20:17.106965+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "ca1fa224-4df6-4f28-b488-f0a863d77485",
        "evidence": "chart/bar-grouped: Grouped bar chart showing online shopping likelihood by work status across 5 categories.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:17.14488+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-54a9-7291-a908-c4cc208dce64",
        "evidence": "Grouped bar chart across five retail categories",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-54d0-7204-b858-9764a214b1ed",
        "evidence": "Chart rendered on isometric laptop to reinforce digital theme",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 65,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 9,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-54fa-7179-b406-303290b9d5e6",
        "evidence": "Title states 'work-from-home are more likely to prioritise ESG'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Audience frame",
          "slug": "audience-frame",
          "status": "active",
          "bestFor": null,
          "canonId": "2a1eefbd-5be8-4600-898b-49dbfcf73ec8",
          "version": 1,
          "bodyDocId": null,
          "description": "Tools for modelling and segmenting the audience (persona, JTBD, segmentation).",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "0849d8c6-dd86-4dc0-b497-49637d40035a",
        "evidence": "Consumers working at home expect to spend more, across categories.",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:20:17.222995+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "optional",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-5523-71df-ab4a-74b903904eae",
        "evidence": "Combination of data table + grouped bar chart",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-554a-734c-9eb5-7dd9dde3e450",
        "evidence": "Closing callout articulates 'distinct market...ready to spend more'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 10,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5570-73eb-9311-b557dd49835e",
        "evidence": "Callout states the generation-gap thesis declaratively",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 11,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-55c0-7740-af64-ac047d6184b8",
        "evidence": "Title: 'Younger generations are leading the shift toward mobile shopping'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-55eb-718f-8460-c57100f3aded",
        "evidence": "Donut charts + infographic compare generations",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Data Story Arc",
          "slug": "data-story-arc",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
          "version": 1,
          "bodyDocId": null,
          "description": "Context → Conflict → Insight → Implication structure for data narratives",
          "familyLabel": null,
          "categoryName": "Loop",
          "categorySlug": "loop"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "ed783dd1-30ec-49b4-8a10-9d659f9d1cc6",
        "evidence": "Younger generations are leading the shift toward mobile shopping and increased spending",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:20:17.371689+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Small Multiples",
          "slug": "small-multiples",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
          "version": 1,
          "bodyDocId": null,
          "description": "Repeating similar charts for comparison across categories or time",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "3c801603-e091-4352-ac06-b943778d68d6",
        "evidence": "chart/bar-vertical: Percent of respondents who shop daily and weekly by mobile/smartphone",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:17.335606+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Visual Hierarchy",
          "slug": "visual-hierarchy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b2ca-706b-937f-e52441086fd7",
          "version": 1,
          "bodyDocId": null,
          "description": "Order of perception through Size > Color > Position > Weight > Space",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-5613-71e2-81af-1635d869ad4f",
        "evidence": "Two-panel split: mobile frequency (L) vs spending categories (R)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 12,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-563b-757e-a728-c627404520b8",
        "evidence": "Title names Millennials as the distinctive generational segment",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Audience Persona",
          "slug": "audience-persona",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7fe3-74e9-88b8-be0bea34f219",
          "version": 1,
          "bodyDocId": null,
          "description": "Detailed fictional profile of typical audience member including goals, frustrations, and context",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "0f0992c3-0ad3-49bb-98ae-a9a631f32845",
        "evidence": "Millennials show some distinctive qualities in shopping behaviours",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:17.444674+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chartjunk Elimination",
          "slug": "chartjunk-elimination",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
          "version": 1,
          "bodyDocId": null,
          "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "dd71726f-96e5-4b4f-95d7-38bc76c9edbe",
        "evidence": "chart/bar-grouped: Grouped bar chart showing shopping behaviors by generation",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:17.481074+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-5662-7311-90db-f1840464b0d8",
        "evidence": "Grouped bar chart across five generational cohorts",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-568a-73ad-a933-62612645059b",
        "evidence": "Yellow background isolates the chart and its high-contrast bars",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 13,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "2x2 matrix",
          "slug": "matrix-2x2",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
          "version": 1,
          "bodyDocId": null,
          "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "07c0a54c-3c2f-4c4c-974b-5422dedd13a0",
        "evidence": "chart/bar-vertical: Generational priorities chart",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:20:17.556652+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-56b0-767b-84e3-021e9676aef7",
        "evidence": "Title 'Generational gap in shoppers priorities' = thesis",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Color Strategy",
          "slug": "color-strategy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
          "version": 1,
          "bodyDocId": null,
          "description": "Using color for emphasis, categories, sentiment, and hierarchy",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-56ff-7316-9e0c-f84ad40fc526",
        "evidence": "Generation encoded by consistent colour across the four panels",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Small Multiples",
          "slug": "small-multiples",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
          "version": 1,
          "bodyDocId": null,
          "description": "Repeating similar charts for comparison across categories or time",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-56d7-758c-8929-197df0ca54a0",
        "evidence": "Four side-by-side mini-charts (Convenience, H&S, Price, Quality)",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5726-74bf-9502-5538960adf38",
        "evidence": "Pink callout converts data into 'CPG should pay attention' insight",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5750-732b-a1b2-334b582dd391",
        "evidence": "Callout names the 'conscientious consumer' cohort and its driver",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Section divider",
          "slug": "section-divider",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4c66-707d-8d1f-6e14547134c7",
          "version": 1,
          "bodyDocId": null,
          "description": "A transitional slide marking the start of a new section.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "5731ff3f-25da-413a-bae6-8b4fe96c551a",
        "evidence": "Fault line 3",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.9,
        "extraction": {
          "at": "2026-07-16 21:20:17.631548+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 15,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-579f-735e-8098-a1b883776830",
        "evidence": "Title states cohort 'shopping less in-store...across all categories'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 16,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-57c7-7479-b720-10434f12d8a5",
        "evidence": "Dual-line plot compares cohort vs global sample",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 16,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Legend / context",
          "slug": "legend-context",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-4e9e-7082-8f2e-c1e169365858",
          "version": 1,
          "bodyDocId": null,
          "description": "Footnote, definition, source attribution.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "9e703de6-9804-4c97-973b-2783b10ac568",
        "evidence": "legend: Conscientious cohort; Global sample",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:17.706652+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 16,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5815-731d-9a8d-2848575e2acc",
        "evidence": "Long callout/title summarises cohort's broader ESG orientation",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Audience Definition",
          "slug": "audience-definition",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
          "version": 1,
          "bodyDocId": null,
          "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "0a558e9a-b8f6-412f-a904-caa9e57624f9",
        "evidence": "The conscientious cohort's interest in health and safety carries over to general conscientiousness about the environment and society at large",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:30.951373+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-5841-769c-92fd-5ff638b1d508",
        "evidence": "Donut charts + comparison table across two behavioural dimensions",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Core Message Extraction",
          "slug": "core-message-extraction",
          "status": "active",
          "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
          "version": 1,
          "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
          "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "39098bee-d17e-48f8-8ab6-67566b08bbef",
        "evidence": "Our insight: The conscientious cohort's interest in health and safety carries over to general conscientiousness about the environment and society at large, and these values are unlikely to change",
        "pageRefs": null,
        "priority": null,
        "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
        "confidence": 0.7,
        "extraction": {
          "at": "2026-07-16 21:20:30.986243+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
        "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
        "cardinality": null,
        "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-586a-77cb-9a24-f701a1097500",
        "evidence": "'Our insight' callout extends finding beyond pandemic",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 17,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5890-747a-bf32-100dce191b5b",
        "evidence": "Callout states APAC sustainability/safety thesis declaratively",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 18,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-595e-721c-b7ac-975b904447a9",
        "evidence": "Title states APAC shops 'more frequently overall than other regions'",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 78,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Metaphor & Analogy",
          "slug": "metaphor-analogy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
          "version": 1,
          "bodyDocId": null,
          "description": "Making abstract concepts concrete through familiar comparisons",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-5936-715b-9a18-9e77956bbeb6",
        "evidence": "Geographic-map layout literalises 'East-West' framing",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": null,
        "confidence": 60,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Picture Superiority Effect",
          "slug": "picture-superiority-effect",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
          "version": 1,
          "bodyDocId": null,
          "description": "Pictures remembered 6x better than words - prioritize visuals over text",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-590a-733a-abee-a9fc41800365",
        "evidence": "Photos + icons + percentages per region rather than a table",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 75,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Visual Hierarchy",
          "slug": "visual-hierarchy",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b2ca-706b-937f-e52441086fd7",
          "version": 1,
          "bodyDocId": null,
          "description": "Order of perception through Size > Color > Position > Weight > Space",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-58e2-74b4-9368-236cdfdfb7a9",
        "evidence": "Stylised world map anchors region callouts as primary structure",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 80,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "2x2 matrix",
          "slug": "matrix-2x2",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
          "version": 1,
          "bodyDocId": null,
          "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
          "familyLabel": null,
          "categoryName": null,
          "categorySlug": null
        },
        "agent": null,
        "layer": "slide",
        "agents": null,
        "matchId": "4534631b-4eec-4817-95aa-f1142b166437",
        "evidence": "chart/bar-horizontal: ESG concerns by region",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:20:31.130978+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 20,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": "common",
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-5985-768a-ab57-fbc05a5dbaa0",
        "evidence": "Title states APAC/Africa/ME report ESG concerns at higher rate",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 88,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 20,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Chart Selection Guide",
          "slug": "chart-selection-guide",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
          "version": 1,
          "bodyDocId": null,
          "description": "Choosing the right chart type for your data and message",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Designer",
        "layer": "slide",
        "agents": [
          "Designer"
        ],
        "matchId": "019de99a-59ae-7309-99b9-fa45b51daf32",
        "evidence": "Two stacked tables - ESG sentiment + online safety concern",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 20,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "So What? Test",
          "slug": "so-what-test",
          "status": "active",
          "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
          "version": 1,
          "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
          "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-59d5-712a-b20c-0aa0e148b059",
        "evidence": "'Our insight' callout ties pattern to differential COVID timing",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
        "confidence": 72,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 20,
        "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
        "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
        "cardinality": null,
        "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
      },
      {
        "tool": {
          "name": "Action Titles",
          "slug": "action-titles",
          "status": "active",
          "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
          "version": 1,
          "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
          "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Architect",
        "layer": "slide",
        "agents": [
          "Architect"
        ],
        "matchId": "019de99a-59fc-7022-a55f-b94edad15abb",
        "evidence": "Title 'How to be bold in 2021' is the explicit call-to-action",
        "pageRefs": null,
        "priority": "Core",
        "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
        "confidence": 90,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
        "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
        "cardinality": null,
        "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
      },
      {
        "tool": {
          "name": "Before-After-Bridge",
          "slug": "before-after-bridge",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-8604-7188-883f-42370288ad05",
          "version": 1,
          "bodyDocId": null,
          "description": "Narrative structure: Paint the before, show the after, explain the bridge",
          "familyLabel": null,
          "categoryName": "Block",
          "categorySlug": "block"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "aabec15f-0022-49ff-982f-846938ec437b",
        "evidence": "The consumer markets industry was experiencing large-scale disruption well before the COVID-19 pandemic, but the virus accelerated the pace of change and created or deepened forks in consumer behavior",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 0.5,
        "extraction": {
          "at": "2026-07-16 21:20:31.203484+00",
          "model": "or:meta-llama/llama-4-scout",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Closing Techniques",
          "slug": "closing-techniques",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-af13-774b-a4fd-7db0a3a88d51",
          "version": 1,
          "bodyDocId": null,
          "description": "Strong endings: Callback, challenge, vision, clear CTA, memorable line",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-5a24-756d-96c2-a7de8b66ff54",
        "evidence": "Closes deck with vision + clear CTA: 'no better time to move forward'",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      },
      {
        "tool": {
          "name": "Emotional Appeal",
          "slug": "emotional-appeal",
          "status": "active",
          "bestFor": null,
          "canonId": "019dd956-bde9-7668-8be7-0097678fec59",
          "version": 1,
          "bodyDocId": null,
          "description": "Connecting to audience feelings rather than just logic",
          "familyLabel": null,
          "categoryName": "Slide",
          "categorySlug": "slide"
        },
        "agent": "Storyteller",
        "layer": "slide",
        "agents": [
          "Storyteller"
        ],
        "matchId": "019de99a-5a4a-72e8-ae2e-40ade0d44d7e",
        "evidence": "Doorstep-delivery photo + 'sands keep shifting' line carries feeling",
        "pageRefs": null,
        "priority": null,
        "whenToUse": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 21,
        "whyItWorks": null,
        "antipattern": null,
        "cardinality": null,
        "narrativePurpose": null
      }
    ],
    "frameworks": [
      {
        "matchId": "019de99a-5a9b-70ba-bf19-3d5bdf78c5ee",
        "evidence": "Cover promises four parallel non-overlapping consumer segments",
        "framework": null,
        "confidence": 70,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 1,
        "frameworkName": "MECE breakdown (Four Fault Lines)"
      },
      {
        "matchId": "019de99a-5ac2-7147-8cb4-df07ee80a5da",
        "evidence": "Four parallel donut charts, one per platform",
        "framework": null,
        "confidence": 90,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 5,
        "frameworkName": "Small multiples"
      },
      {
        "matchId": "019de99a-5aea-738b-a7fb-52a52901bc7b",
        "evidence": "Four parallel mini-charts by shopping priority",
        "framework": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 14,
        "frameworkName": "Small multiples"
      },
      {
        "matchId": "019de99a-5b11-73b8-990a-cd6b0065e9f0",
        "evidence": "Stylised world map with per-region store/mobile percentages",
        "framework": null,
        "confidence": 85,
        "extraction": {
          "at": "2026-05-02 16:51:36.725365+00",
          "model": "claude-cli",
          "runId": null,
          "seconds": null,
          "promptVersion": null
        },
        "pageNumber": 19,
        "frameworkName": "Geographic / regional map"
      }
    ],
    "patterns": []
  },
  "storymakers": {
    "model": "claude-cli",
    "backend": "claude",
    "rawJson": {
      "arc": {
        "id": 11,
        "slug": "triple-take",
        "beats": [
          {
            "name": "The Facts (What)",
            "end_page": 6,
            "evidence": "Cover, intro and general digital-trend data (p3-6)",
            "position": 1,
            "start_page": 1
          },
          {
            "name": "The Implications (So What)",
            "end_page": 20,
            "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
            "position": 2,
            "start_page": 7
          },
          {
            "name": "The Action (Now What)",
            "end_page": 21,
            "evidence": "'How to be bold in 2021' CTA page",
            "position": 3,
            "start_page": 21
          }
        ],
        "evidence": "Pages 3-20 are 'The Facts' (data + 'Our insight' callouts), p21 is the explicit 'How to be bold' call-to-action ('Now What').",
        "confidence": 78
      },
      "loops": [
        {
          "id": 2,
          "slug": "02-pattern-hunter",
          "end_page": 6,
          "evidence": "p3 mobile, p4 online categories, p5 social media, p6 grocery premium - distinct evidence points building one trend",
          "position": 1,
          "objective": "Stack four independent digital-shift data points into a single 'consumers are everywhere' pattern",
          "confidence": 75,
          "start_page": 3
        },
        {
          "id": 34,
          "slug": "34-segmentation-split",
          "end_page": 10,
          "evidence": "p7 frames at-home vs away-from-home; p8-10 contrast spending, channel and ESG behaviour by segment",
          "position": 2,
          "objective": "Split consumers by work-location to surface the 'Zoom effect' segment",
          "confidence": 88,
          "start_page": 7
        },
        {
          "id": 34,
          "slug": "34-segmentation-split",
          "end_page": 14,
          "evidence": "p11 fault-line divider; p12-14 compare Gen Z / Millennials / Gen X / Boomers across mobile, spending and priorities",
          "position": 3,
          "objective": "Split consumers by generation to expose generational shopping divergence",
          "confidence": 88,
          "start_page": 11
        },
        {
          "id": 34,
          "slug": "34-segmentation-split",
          "end_page": 17,
          "evidence": "p15 introduces cohort; p16-17 contrast cohort vs global sample on in-store and willingness-to-pay",
          "position": 4,
          "objective": "Split out a 'conscientious cohort' vs the global sample on health/safety and ESG",
          "confidence": 87,
          "start_page": 15
        },
        {
          "id": 34,
          "slug": "34-segmentation-split",
          "end_page": 20,
          "evidence": "p18 East-West framing; p19 regional map; p20 ESG-vs-safety table by region",
          "position": 5,
          "objective": "Split consumers by region to show Asia-Pacific divergence on frequency and ESG",
          "confidence": 86,
          "start_page": 18
        }
      ],
      "slide_tools": [
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Cover headline IS the deck thesis: 'Four fault lines show a fracturing...'",
              "confidence": 92
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Geological 'fault lines' metaphor + shopping-bag-as-home illustration",
              "confidence": 86
            },
            {
              "id": 6,
              "slug": "big-idea-formula",
              "layer": "Block",
              "evidence": "<=20-word governing idea on cover sets the deck POV",
              "confidence": 78
            },
            {
              "id": 2,
              "slug": "mece-principle",
              "layer": "Block",
              "evidence": "Promises four (MECE) fault-line categories that structure the deck",
              "confidence": 70
            }
          ],
          "page_number": 1
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout states the four-fault-line thesis explicitly",
              "confidence": 75
            },
            {
              "id": 1,
              "slug": "scqa-framework",
              "layer": "Block",
              "evidence": "Intro frames Situation (consumers) + Complication (COVID) + Question (now what?)",
              "confidence": 70
            },
            {
              "id": 16,
              "slug": "three-pillars",
              "layer": "Block",
              "evidence": "Four parallel pillars (fault lines) previewed as supporting structure",
              "confidence": 55
            }
          ],
          "page_number": 2
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Mobile shopping is gaining on in-store shopping' states insight",
              "confidence": 90
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Vertical bar chart compares 2020 vs 2021 channel preference",
              "confidence": 80
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Chart embedded in a smartphone graphic to reinforce 'mobile' theme",
              "confidence": 70
            },
            {
              "id": 74,
              "slug": "inductive-reasoning",
              "layer": "Loop",
              "evidence": "First evidence point of pattern-hunter loop on digital shift",
              "confidence": 70
            },
            {
              "id": 80,
              "slug": "data-story-arc",
              "layer": "Loop",
              "evidence": "Context->Conflict->Insight pattern across p3-6",
              "confidence": 65
            }
          ],
          "page_number": 3
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Long action title states 'shopping more or exclusively online'",
              "confidence": 88
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Grouped bar chart across six product categories",
              "confidence": 80
            },
            {
              "id": 132,
              "slug": "visual-hierarchy",
              "layer": "Slide",
              "evidence": "Two-panel layout separates category data from delivery priorities",
              "confidence": 65
            }
          ],
          "page_number": 4
        },
        {
          "tools": [
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Four parallel donut charts - YouTube/Google/Facebook/Instagram",
              "confidence": 92
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Dual-ring donuts compare interaction vs ad-click per platform",
              "confidence": 80
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "'Our insight' callout converts data into 'be everywhere' implication",
              "confidence": 78
            }
          ],
          "page_number": 5
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title names the three premium grocery attributes",
              "confidence": 80
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Red right-panel houses the 'so what'; white left-panel holds data",
              "confidence": 70
            },
            {
              "id": 165,
              "slug": "picture-superiority-effect",
              "layer": "Slide",
              "evidence": "Icons for health, local, sustainability over text-only",
              "confidence": 60
            }
          ],
          "page_number": 6
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout 'The Zoom effect: At-home workers embrace...' states the segment thesis",
              "confidence": 90
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "'Zoom effect' as label for remote-work consumer cohort",
              "confidence": 78
            },
            {
              "id": 122,
              "slug": "story-moments",
              "layer": "Slide",
              "evidence": "Bold pink 'Fault line 1' badge as deliberate beat marker",
              "confidence": 65
            },
            {
              "id": 76,
              "slug": "horizontal-logic",
              "layer": "Loop",
              "evidence": "Opens parallel structure that p11/p15/p18 will repeat",
              "confidence": 78
            },
            {
              "id": 2,
              "slug": "mece-principle",
              "layer": "Block",
              "evidence": "First of four mutually-exclusive fault-line segments",
              "confidence": 70
            }
          ],
          "page_number": 7
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states 'Consumers working at home expect to spend more'",
              "confidence": 85
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Two line charts compare spending and store-visit behaviour",
              "confidence": 78
            },
            {
              "id": 78,
              "slug": "contrast-pairs",
              "layer": "Loop",
              "evidence": "At-home vs away-from-home contrast carries the loop",
              "confidence": 70
            }
          ],
          "page_number": 8
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title quotes the 10pp delta as the insight",
              "confidence": 90
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Grouped bar chart across five retail categories",
              "confidence": 78
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Chart rendered on isometric laptop to reinforce digital theme",
              "confidence": 65
            }
          ],
          "page_number": 9
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states 'work-from-home are more likely to prioritise ESG'",
              "confidence": 88
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Combination of data table + grouped bar chart",
              "confidence": 70
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Closing callout articulates 'distinct market...ready to spend more'",
              "confidence": 75
            }
          ],
          "page_number": 10
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout states the generation-gap thesis declaratively",
              "confidence": 88
            },
            {
              "id": 76,
              "slug": "horizontal-logic",
              "layer": "Loop",
              "evidence": "Repeats fault-line divider pattern from p7 - parallel structure",
              "confidence": 78
            }
          ],
          "page_number": 11
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title: 'Younger generations are leading the shift toward mobile shopping'",
              "confidence": 88
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Donut charts + infographic compare generations",
              "confidence": 75
            },
            {
              "id": 132,
              "slug": "visual-hierarchy",
              "layer": "Slide",
              "evidence": "Two-panel split: mobile frequency (L) vs spending categories (R)",
              "confidence": 60
            }
          ],
          "page_number": 12
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title names Millennials as the distinctive generational segment",
              "confidence": 85
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Grouped bar chart across five generational cohorts",
              "confidence": 78
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Yellow background isolates the chart and its high-contrast bars",
              "confidence": 60
            }
          ],
          "page_number": 13
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'Generational gap in shoppers priorities' = thesis",
              "confidence": 88
            },
            {
              "id": 133,
              "slug": "small-multiples",
              "layer": "Slide",
              "evidence": "Four side-by-side mini-charts (Convenience, H&S, Price, Quality)",
              "confidence": 80
            },
            {
              "id": 130,
              "slug": "color-strategy",
              "layer": "Slide",
              "evidence": "Generation encoded by consistent colour across the four panels",
              "confidence": 70
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "Pink callout converts data into 'CPG should pay attention' insight",
              "confidence": 70
            }
          ],
          "page_number": 14
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout names the 'conscientious consumer' cohort and its driver",
              "confidence": 88
            },
            {
              "id": 76,
              "slug": "horizontal-logic",
              "layer": "Loop",
              "evidence": "Third repetition of fault-line divider template",
              "confidence": 75
            }
          ],
          "page_number": 15
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states cohort 'shopping less in-store...across all categories'",
              "confidence": 88
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Dual-line plot compares cohort vs global sample",
              "confidence": 80
            },
            {
              "id": 78,
              "slug": "contrast-pairs",
              "layer": "Loop",
              "evidence": "Cohort-vs-global-sample contrast is the loop's structural device",
              "confidence": 70
            }
          ],
          "page_number": 16
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Long callout/title summarises cohort's broader ESG orientation",
              "confidence": 80
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Donut charts + comparison table across two behavioural dimensions",
              "confidence": 75
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "'Our insight' callout extends finding beyond pandemic",
              "confidence": 70
            }
          ],
          "page_number": 17
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Callout states APAC sustainability/safety thesis declaratively",
              "confidence": 85
            },
            {
              "id": 76,
              "slug": "horizontal-logic",
              "layer": "Loop",
              "evidence": "Fourth repetition of fault-line divider format",
              "confidence": 75
            }
          ],
          "page_number": 18
        },
        {
          "tools": [
            {
              "id": 132,
              "slug": "visual-hierarchy",
              "layer": "Slide",
              "evidence": "Stylised world map anchors region callouts as primary structure",
              "confidence": 80
            },
            {
              "id": 165,
              "slug": "picture-superiority-effect",
              "layer": "Slide",
              "evidence": "Photos + icons + percentages per region rather than a table",
              "confidence": 75
            },
            {
              "id": 121,
              "slug": "metaphor-analogy",
              "layer": "Slide",
              "evidence": "Geographic-map layout literalises 'East-West' framing",
              "confidence": 60
            },
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states APAC shops 'more frequently overall than other regions'",
              "confidence": 78
            }
          ],
          "page_number": 19
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title states APAC/Africa/ME report ESG concerns at higher rate",
              "confidence": 88
            },
            {
              "id": 129,
              "slug": "chart-selection-guide",
              "layer": "Slide",
              "evidence": "Two stacked tables - ESG sentiment + online safety concern",
              "confidence": 70
            },
            {
              "id": 119,
              "slug": "so-what-test",
              "layer": "Slide",
              "evidence": "'Our insight' callout ties pattern to differential COVID timing",
              "confidence": 72
            }
          ],
          "page_number": 20
        },
        {
          "tools": [
            {
              "id": 118,
              "slug": "action-titles",
              "layer": "Slide",
              "evidence": "Title 'How to be bold in 2021' is the explicit call-to-action",
              "confidence": 90
            },
            {
              "id": 124,
              "slug": "closing-techniques",
              "layer": "Slide",
              "evidence": "Closes deck with vision + clear CTA: 'no better time to move forward'",
              "confidence": 85
            },
            {
              "id": 156,
              "slug": "emotional-appeal",
              "layer": "Slide",
              "evidence": "Doorstep-delivery photo + 'sands keep shifting' line carries feeling",
              "confidence": 70
            },
            {
              "id": 28,
              "slug": "aida-model",
              "layer": "Block",
              "evidence": "Closes the deck on Action - completing earlier Attention/Interest/Desire",
              "confidence": 60
            }
          ],
          "page_number": 21
        }
      ],
      "slides_seen": 23,
      "deck_summary": "Strong on Storymakers fundamentals - most slides carry true action titles plus 'Our insight' so-what callouts, and the four fault lines form a clean MECE backbone - but the deck is essentially a 'Triple Take' data report with a soft CTA, not a sharp recommendation arc, so the 'Now What' beat is thin.",
      "secondary_arcs": [
        {
          "id": 1,
          "slug": "consultants-gambit",
          "beats": [
            {
              "name": "Situation & Context",
              "end_page": 2,
              "evidence": "Cover + intro frame consumer fragmentation context",
              "position": 1,
              "start_page": 1
            },
            {
              "name": "Problem & Complication",
              "end_page": 6,
              "evidence": "Digital acceleration trends signal disruption",
              "position": 2,
              "start_page": 3
            },
            {
              "name": "Solution & Approach",
              "end_page": 7,
              "evidence": "Four fault lines framework introduced as lens",
              "position": 3,
              "start_page": 7
            },
            {
              "name": "Evidence & Proof",
              "end_page": 20,
              "evidence": "Per-segment data tables, charts and insights",
              "position": 4,
              "start_page": 8
            },
            {
              "name": "Impact & Next Steps",
              "end_page": 21,
              "evidence": "'How to be bold' bold-actions paragraph",
              "position": 5,
              "start_page": 21
            }
          ],
          "evidence": "Intro frames situation/complication (p1-2), p3-20 is evidence, p21 is impact/next steps; lacks a sharp 'solution' beat.",
          "confidence": 55
        }
      ],
      "images_inspected": 5,
      "slide_frameworks": [
        {
          "frameworks": [
            {
              "name": "MECE breakdown (Four Fault Lines)",
              "slug": "mece-breakdown",
              "evidence": "Cover promises four parallel non-overlapping consumer segments",
              "confidence": 70
            }
          ],
          "page_number": 1
        },
        {
          "frameworks": [
            {
              "name": "Small multiples",
              "slug": "small-multiples",
              "evidence": "Four parallel donut charts, one per platform",
              "confidence": 90
            }
          ],
          "page_number": 5
        },
        {
          "frameworks": [
            {
              "name": "Small multiples",
              "slug": "small-multiples",
              "evidence": "Four parallel mini-charts by shopping priority",
              "confidence": 85
            }
          ],
          "page_number": 14
        },
        {
          "frameworks": [
            {
              "name": "Geographic / regional map",
              "slug": "geographic-map",
              "evidence": "Stylised world map with per-region store/mobile percentages",
              "confidence": 85
            }
          ],
          "page_number": 19
        }
      ]
    },
    "matchedAt": "2026-05-02 16:51:36.931+00",
    "slidesSeen": 23,
    "deckSummary": "Strong on Storymakers fundamentals - most slides carry true action titles plus 'Our insight' so-what callouts, and the four fault lines form a clean MECE backbone - but the deck is essentially a 'Triple Take' data report with a soft CTA, not a sharp recommendation arc, so the 'Now What' beat is thin.",
    "imagesInspected": 5,
    "extractionSeconds": 415.225
  },
  "score": {
    "backend": "codex",
    "scoredAt": "2026-05-02 14:05:47.45+00",
    "subScores": {
      "scqa_arc": 65,
      "action_titles": 72,
      "mece_structure": 68,
      "closing_strength": 58,
      "evidence_quality": 82,
      "clarity_of_thesis": 84,
      "production_quality": 70,
      "visual_storytelling": 76
    },
    "totalScore": 72,
    "coveragePct": 100,
    "explanations": {
      "scqa_arc": "Slides 1-2 establish the situation and complication, but the question remains implicit and slides 3-20 read more like a survey findings sequence than a tightly managed SCQA arc.",
      "action_titles": "Most analytical pages use insight-bearing titles, but several are topic labels or overloaded sentences; example: slide 3, \"Mobile shopping is gaining on in-store shopping.\"",
      "mece_structure": "The four fault lines create a usable structure, but work location, generation, conscientiousness, and geography overlap and do not form an exhaustive consumer segmentation.",
      "closing_strength": "Slide 21 offers a broad call to be bold, but it does not convert the analysis into specific recommendations, owners, or next steps before the back matter.",
      "evidence_quality": "Claims are mostly backed by survey charts, percentages, comparisons, and a methodology slide, especially across slides 3-20.",
      "clarity_of_thesis": "The central argument is identifiable by slides 1-2: global consumers are fracturing across four fault lines accelerated by COVID-19.",
      "production_quality": "PwC branding and footnote discipline are consistent, but production quality is weakened by dense layouts and very long titles on slides 4, 8, 16, and 17.",
      "visual_storytelling": "The deck generally matches visuals to messages through charts, maps, tables, callouts, and section dividers, though many data slides such as 4, 8, 16, and 17 are overcrowded."
    },
    "slidesAnalyzed": 23
  },
  "review": {
    "backend": null,
    "verdict": "A well-architected thought-leadership report with a genuinely MECE four-pillar spine, but the soft opening detour and a vague one-page close make it a strong example of pillar discipline rather than of full SCQA storytelling.",
    "reviewedAt": "2026-04-25 07:06:55+00",
    "slidesSeen": 22,
    "suggestions": [
      "Move or cut p.4–6 so the 'Four fault lines' divider on p.7 follows the cover directly, honoring the thesis promise",
      "Insert a Complication slide after p.2 quantifying the cost of treating consumers as one homogeneous market (lost share, missed segments)",
      "Replace the single p.21 'be bold' page with a 4-row recommendation matrix — one decisive action per fault line — so the close mirrors the opening framework"
    ],
    "closingScore": 65,
    "openingScore": 70,
    "topStrengths": [
      "Cover thesis (p.1) names the framework upfront — 'Four fault lines' — and the deck delivers exactly four labeled sections (p.7, p.11, p.15, p.18), giving a MECE spine",
      "Each section closes with an 'Our insight:' callout (p.5, p.14, p.17, p.20) acting as a consistent So-What device",
      "Action titles in the analytical body (e.g. p.9, p.12, p.16) carry numeric insights rather than topic labels"
    ],
    "topWeaknesses": [
      "Pages 4–6 sit between the cover and the framework reveal on p.7, delaying the promised 'four fault lines' structure and reading like orphan category data",
      "No Complication/tension act — the deck describes cohorts but never names a risk, loss, or competitive threat to a reader who ignores them",
      "Closing slide (p.21) is a single soft 'be bold' page with no concrete recommendations, owners, or decisions"
    ],
    "narrativeScore": 72,
    "pillarCritique": "The four section dividers (p.7, p.11, p.15, p.18) are genuinely MECE — each names a distinct consumer cohort (work-location, generation, health-conscious, geography) and the cover promises exactly four, so the pillar architecture is unusually disciplined for a thought-leadership report.",
    "closingCritique": "p.21 'How to be bold in 2021' provides an explicit call-to-action slide, which is better than most decks, but it is a single page after four analytical sections and the closing quote ('the sands keep shifting') is more atmospheric than directive — no concrete next steps, owner, or decision is named.",
    "openingCritique": "The cover (p.1) leads with the answer — 'Four fault lines show a fracturing among global consumers' — which is a strong thesis hook, but pages 4–6 dive into category data (delivery, social, grocery) before the four-fault-line framework is actually unveiled on p.7, breaking the promise made on the cover.",
    "extractionSeconds": 64.81908,
    "narrativeCritique": "The deck follows a clear thematic spine — the 'four fault lines' framework promised on p.1 is delivered through four labeled sections (Zoom effect, generation gap, conscientious consumer, East-West) ending in a 'How to be bold in 2021' close. It functions as Situation→Analysis→Resolution but skips real Complication/tension; there is no 'so what's broken if you ignore this' moment to create stakes.",
    "titleQualityScore": 68,
    "titleQualityCritique": "Mixed: strong declarative titles like p.9 'At-home workers are almost 10 percentage points more likely to shop online for groceries' and p.12 'Younger generations are leading the shift toward mobile shopping' sit alongside topic-label titles like p.5 'Engagement by social media platform', p.6 'Top three grocery attributes...', and p.14 'Generational gap in shoppers' priorities'."
  },
  "activistThesis": null,
  "pitchdeck": {
    "metadata": null,
    "profile": null
  },
  "slides": [
    {
      "page": 1,
      "type": "setup",
      "function": "front_matter",
      "imagePath": "https://imgproxy.kitesheet.com/v-yXT-w5kkR6n2HRkw02GBRa5MYPYZdER3k-9Q_DaS4/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9jYjYzOTczNTBjNDMyY2IzL3AwMDEuanBn",
      "rawType": "cover",
      "block": null,
      "metadata": {
        "slideType": "cover",
        "slideTypeCanon": {
          "name": "Cover",
          "slug": "cover",
          "status": "active",
          "canonId": "019de52d-05f2-729d-9f93-e0504f0a2410",
          "version": 1,
          "description": null
        },
        "function": "front_matter",
        "functionCanon": {
          "name": "Front matter",
          "slug": "front_matter",
          "status": "active",
          "canonId": "019de52d-133d-73f0-9e26-201eda96b098",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 13,
        "componentCount": 4,
        "textChars": 114,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "headline_text",
          "photo",
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:46.779+00",
          "seconds": 1.92,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/1",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-1",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.7,
            "w": 0.4,
            "x": 0.55,
            "y": 0.15
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:46.779+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "954ab604-0906-4058-a29e-39130d14bc6a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.1,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "image",
          "text": "pwc",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:46.779+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f2fc6858-a586-45c0-9cea-2c9eaa2ae6d7",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.35,
            "x": 0.05,
            "y": 0.7
          },
          "kind": "paragraph",
          "text": "PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:46.779+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "343e71e6-91c0-4103-b9f1-c94781d0576d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.45,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "title",
          "text": "Four fault lines show a fracturing among global consumers",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:46.779+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f886cc36-35bd-419a-811e-003e610776a1",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Big Idea Formula",
            "slug": "big-idea-formula",
            "status": "active",
            "bestFor": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
            "canonId": "019dd956-7dd1-74d7-9866-ffdef19ecfbf",
            "version": 1,
            "bodyDocId": "c30d7484-69e0-4e21-82cf-20fa0966869e",
            "description": "Nancy Duarte's articulation of how to frame a presentation's central message: the speaker's unique point of view plus what's at stake for the audience, expressed as one complete declarative sentence. The narrative-driven counterpart to Minto's analytical governing thought.",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-504a-77e9-b2aa-0ec1cfb97444",
          "evidence": "<=20-word governing idea on cover sets the deck POV",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any narrative-driven persuasive deck whose job is to move the audience: keynotes, fundraising pitches, capital-allocation board asks, all-hands behaviour-change talks, conference talks meant to shift mental models. Use it before structuring; pair with Pyramid when the deck must also withstand line-by-line scrutiny.",
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": "Solves the topic-not-thesis trap and the stake-less recommendation trap simultaneously. A single declarative sentence with a verb forces the speaker's stance into the room; routing the consequence through the word 'you' translates internal urgency into the audience's currency. The result is short enough to be repeated after the meeting — and that repetition is the persuasion mechanism.",
          "antipattern": "A topic dressed as a thesis ('Sustainability Roadmap 2026'), a stake attached to the speaker rather than the audience, two ideas spliced with 'and', abstract verbs (leverage / unlock / empower) that survive deletion, or writing the Big Idea after the deck is already built so the slides don't actually defend it.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to commit to a single declarative thesis before slide one — a sentence that names the speaker's stance and routes a consequence through the audience's currency. Acts as the filter every slide, anecdote, and chart must ladder up to."
        },
        {
          "tool": {
            "name": "MECE Principle",
            "slug": "mece-principle",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7c60-71a8-8758-c79d914489c9",
            "version": 1,
            "bodyDocId": null,
            "description": "Mutually Exclusive, Collectively Exhaustive - ensuring complete, non-overlapping structure",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5071-7599-ba2e-06114182fb6f",
          "evidence": "Promises four (MECE) fault-line categories that structure the deck",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-4ff9-726c-bd53-9ce1a553c396",
          "evidence": "Cover headline IS the deck thesis: 'Four fault lines show a fracturing...'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 92,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-5022-704f-bc5e-85b80f08dbee",
          "evidence": "Geological 'fault lines' metaphor + shopping-bag-as-home illustration",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 86,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "019de99a-5a9b-70ba-bf19-3d5bdf78c5ee",
          "evidence": "Cover promises four parallel non-overlapping consumer segments",
          "framework": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 1,
          "frameworkName": "MECE breakdown (Four Fault Lines)"
        }
      ],
      "arcBeats": [
        {
          "to": 6,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019de99a-4dc0-708b-86e8-21ab2f19eaf4",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Cover, intro and general digital-trend data (p3-6)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 2,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Situation & Context",
          "beatId": "019de99a-4e62-7768-9d8c-1757df29eab0",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Cover + intro frame consumer fragmentation context",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "thumbSrc": "https://imgproxy.kitesheet.com/ZIFJerzvuesK_-jEwT9BNW2xTEMo7IfXrSECOT7n1As/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9jYjYzOTczNTBjNDMyY2IzL3AwMDEuanBn",
      "imagePathAlt": "https://imgproxy.kitesheet.com/65PZ_8alo2AMr-2HHnM1jcT_36rUShjyBKYoABxShkY/rs:fit:1200:1200:0/q:82/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9jYjYzOTczNTBjNDMyY2IzL3AwMDEucG5n",
      "thumbSrcAlt": "https://imgproxy.kitesheet.com/ruWRSF_aus6jyou7L-Y5CZgepOaPFwnfpcS9077ONbU/rs:fit:480:480:0/q:78/f:webp/czM6Ly9raXRlc2hlZXQvY29ycHVzL3NsaWRlcy9jYjYzOTczNTBjNDMyY2IzL3AwMDEucG5n"
    },
    {
      "page": 2,
      "type": "setup",
      "title": "The slide uses a split-layout design with a yellow background on the left and a photo on the right.",
      "function": "establish_context",
      "rawType": "introduction",
      "block": null,
      "metadata": {
        "slideType": "introduction",
        "slideTypeCanon": null,
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 47,
        "componentCount": 5,
        "textChars": 899,
        "nDataPoints": 0,
        "notes": "The slide uses a split-layout design with a yellow background on the left and a photo on the right.",
        "elementsJson": [
          "paragraph",
          "bullet_list",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:48.782+00",
          "seconds": 3.39,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/2",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-2",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Our March 2021 Global Consumer Insights Pulse Survey shows four essential fault lines developing that are creating distinct groups of global consumers.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:49+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-019028347d86",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 1,
            "w": 0.5,
            "x": 0.5,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:48.782+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f331571a-afb9-489d-a1d7-2cce76694cea",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.4,
            "x": 0.05,
            "y": 0.55
          },
          "kind": "list",
          "text": "consumers who now primarily work from home from those who generally work away from home; younger consumers from older ones; consumers who prioritise health and safety from those who aren’t as safety-conscious; consumers in the Asia-Pacific region from those in other regions.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:48.782+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "788b04b8-51f1-4c82-9096-d96d65ed290a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.4,
            "x": 0.05,
            "y": 0.31
          },
          "kind": "paragraph",
          "text": "One year after the COVID-19 pandemic partially shut down many of the world’s economies, consumers are responding in a way that is accelerating changes that have been percolating for years. Our March 2021 Global Consumer Insights Pulse Survey shows four essential fault lines developing that are creating distinct groups of global consumers. Companies can be more prepared for the future by understanding these emerging cohorts and what their behaviours portend.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:48.782+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e5494885-2c6f-43b7-ae05-e685f590a4cc",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.2,
            "x": 0.05,
            "y": 0.22
          },
          "kind": "title",
          "text": "Introduction",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:48.782+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "175989ff-f46c-4db7-8605-3ba61b0cafea",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "SCQA Framework",
            "slug": "scqa-framework",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7bcb-763f-bdf6-1dfedf3bd36c",
            "version": 1,
            "bodyDocId": "019df22a-a0b0-719e-937e-2ac31e53d32c",
            "description": "Situation, Complication, Question, Answer - structured problem framing",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-50c1-7161-bf34-dd5f59193578",
          "evidence": "Intro frames Situation (consumers) + Complication (COVID) + Question (now what?)",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Three Pillars",
            "slug": "three-pillars",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-81ef-7455-a365-b234d95a6bbb",
            "version": 1,
            "bodyDocId": null,
            "description": "Three major supporting arguments that are MECE and address key concerns",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-50e8-71b8-b07b-5e742a872c49",
          "evidence": "Four parallel pillars (fault lines) previewed as supporting structure",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 55,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-509a-7348-af0b-8bf2add447f5",
          "evidence": "Callout states the four-fault-line thesis explicitly",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 2,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 6,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019de99a-4dc0-708b-86e8-21ab2f19eaf4",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Cover, intro and general digital-trend data (p3-6)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 2,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "Situation & Context",
          "beatId": "019de99a-4e62-7768-9d8c-1757df29eab0",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Cover + intro frame consumer fragmentation context",
          "position": 1,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 3,
      "type": "analysis",
      "title": "The chart uses a smartphone-shaped container to display two sets of bar charts representing 2020 (orange) and 2021 (pink) data.",
      "function": "summarize",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 69,
        "componentCount": 8,
        "textChars": 593,
        "nDataPoints": 8,
        "notes": "The chart uses a smartphone-shaped container to display two sets of bar charts representing 2020 (orange) and 2021 (pink) data.",
        "elementsJson": [
          "paragraph",
          "bar_chart_vertical",
          "icon_grid",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview",
          "runId": null,
          "at": "2026-07-17 03:23:35.273+00",
          "seconds": 2.524,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/3",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-3",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.03,
            "w": 0.35,
            "x": 0.05,
            "y": 0.46
          },
          "kind": "callout",
          "text": "Mobile shopping is gaining on in-store shopping",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:23:35.273+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f1b35353-8ea2-427d-833d-758f60b13284",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "Despite the impact of COVID-19, in-store shopping remains consumers' channel of choice for daily or weekly shopping.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:20:37+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-5644-756a-a857-710ae2a2ab11",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.8,
            "w": 0.5,
            "x": 0.45,
            "y": 0.1
          },
          "kind": "chart",
          "text": "Comparison of shopping channels 2020 vs 2021",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:23:35.273+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "88bea876-44e2-4052-927d-fdef3e704464",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.1,
            "x": 0.05,
            "y": 0.57
          },
          "kind": "legend",
          "text": "2020 (orange) and 2021 (pink)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "legend",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:23:35.273+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e8610706-326c-4835-91e7-4b5bc28531aa",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Consumer shopping channel preference: 47%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-25 12:20:37+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd952-5644-756a-a857-777bfa856776",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.35,
            "x": 0.05,
            "y": 0.23
          },
          "kind": "paragraph",
          "text": "But before we explore those divides, there are some overall trends that our survey revealed. Despite the impact of COVID-19, in-store shopping remains consumers' channel of choice for daily or weekly shopping.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:23:35.273+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3efd80ad-e43d-47b5-81ce-c8b6b56d8462",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.05,
            "y": 0.605
          },
          "kind": "source-note",
          "text": "Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "source-note",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:23:35.273+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "70e7731f-f552-4667-adf5-40014a90f602",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "3 | PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-07-17 03:23:35.273+00",
            "model": "google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7656f6ce-a409-4844-83b1-8518234335f5",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-51b2-777f-97ac-96bec465d24c",
          "evidence": "Context->Conflict->Insight pattern across p3-6",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Inductive Reasoning",
            "slug": "inductive-reasoning",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-99c6-705e-94cc-76a504c3da37",
            "version": 1,
            "bodyDocId": null,
            "description": "Grouping similar evidence to form a conclusion (Evidence → Pattern → Conclusion)",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5189-703d-93ce-acd4cbd4899b",
          "evidence": "First evidence point of pattern-hunter loop on digital shift",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5111-7205-a4cc-689ee83c02c1",
          "evidence": "Title 'Mobile shopping is gaining on in-store shopping' states insight",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 90,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-513a-7259-9991-2b0cd6ad7c01",
          "evidence": "Vertical bar chart compares 2020 vs 2021 channel preference",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-5162-77af-ae95-5183c36ee78e",
          "evidence": "Chart embedded in a smartphone graphic to reinforce 'mobile' theme",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 3,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 6,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019de99a-4dc0-708b-86e8-21ab2f19eaf4",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Cover, intro and general digital-trend data (p3-6)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 6,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "Problem & Complication",
          "beatId": "019de99a-4e8b-75a7-bce6-35ee6f98bb9f",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Digital acceleration trends signal disruption",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 6,
          "from": 3,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019de99a-4f2b-7773-a632-3e144e034886",
          "evidence": "p3 mobile, p4 online categories, p5 social media, p6 grocery premium - distinct evidence points building one trend",
          "position": 1,
          "objective": "Stack four independent digital-shift data points into a single 'consumers are everywhere' pattern",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 4,
      "type": "analysis",
      "title": "The slide uses a split layout with a grouped bar chart on the left and a metric-based callout section on the right.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 76,
        "componentCount": 8,
        "textChars": 804,
        "nDataPoints": 17,
        "notes": "The slide uses a split layout with a grouped bar chart on the left and a metric-based callout section on the right.",
        "elementsJson": [
          "paragraph",
          "bar_chart_grouped",
          "infographic",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:49.155+00",
          "seconds": 3.125,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/4",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-4",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "And consumers are making their online shopping priorities clear, emphasising a need for fast and reliable delivery.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:49+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-301b4a3b473f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.65,
            "w": 0.45,
            "x": 0.05,
            "y": 0.28
          },
          "kind": "chart",
          "text": "Percent of respondents shopping more or exclusively online vs in-store",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.155+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a4d69823-c909-44e1-889f-4dacdd0bac0f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.3,
            "x": 0.65,
            "y": 0.28
          },
          "kind": "chart",
          "text": "What consumers care about most when shopping online",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Box plot",
              "slug": "box",
              "status": "active",
              "canonId": "019de52d-020e-73d9-b4cf-5793a03e9b74",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "box",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.155+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dd80e7dd-4621-4533-8671-433a44c6a07b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.15,
            "x": 0.4,
            "y": 0.5
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.155+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "78454c17-58f8-449d-8f4c-0ade3dfd6dc6",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Percent of respondents: 42%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:49+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-34f0ceb5b1e1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.45,
            "x": 0.05,
            "y": 0.09
          },
          "kind": "paragraph",
          "text": "Across most product categories, we're also seeing that around the world, even in places where pandemic restrictions were lifted when we conducted our survey, a greater number of people say they've been shopping more or exclusively online compared to shopping more or exclusively in-store. And consumers are making their online shopping priorities clear, emphasising a need for fast and reliable delivery.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.155+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "22f04fff-ed5b-4e48-8b41-0d57ddaace91",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.9,
            "x": 0.05,
            "y": 0.94
          },
          "kind": "source-note",
          "text": "Base: All respondents (8,738) Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.155+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6b471b70-1e8d-4c64-98ab-143fd8856c65",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "4 | PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.155+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b43af8ec-52b8-4b03-9f78-7d4cf372f242",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-51da-73c4-8f11-570330fdbdae",
          "evidence": "Long action title states 'shopping more or exclusively online'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Audience Definition",
            "slug": "audience-definition",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
            "version": 1,
            "bodyDocId": null,
            "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "ea51c25a-2aad-4ac0-86b9-53c243efbac9",
          "evidence": "Base: All respondents (8,738)",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:16.690364+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-5202-74aa-bf2c-f5aca1797a7c",
          "evidence": "Grouped bar chart across six product categories",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "b93024a6-3dc1-4f74-bfcc-0dc1489e2fdd",
          "evidence": "Across most product categories, we're also seeing that around the world, even in places where pandemic restrictions were lifted when we conducted our survey, a greater number of people say they've be",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:20:16.729309+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Visual Hierarchy",
            "slug": "visual-hierarchy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b2ca-706b-937f-e52441086fd7",
            "version": 1,
            "bodyDocId": null,
            "description": "Order of perception through Size > Color > Position > Weight > Space",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-522b-75f8-bf1a-d21ea807e73f",
          "evidence": "Two-panel layout separates category data from delivery priorities",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 4,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 6,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019de99a-4dc0-708b-86e8-21ab2f19eaf4",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Cover, intro and general digital-trend data (p3-6)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 6,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "Problem & Complication",
          "beatId": "019de99a-4e8b-75a7-bce6-35ee6f98bb9f",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Digital acceleration trends signal disruption",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 6,
          "from": 3,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019de99a-4f2b-7773-a632-3e144e034886",
          "evidence": "p3 mobile, p4 online categories, p5 social media, p6 grocery premium - distinct evidence points building one trend",
          "position": 1,
          "objective": "Stack four independent digital-shift data points into a single 'consumers are everywhere' pattern",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 5,
      "type": "analysis",
      "title": "PwC Global Consumer Insights Pulse Survey, March 2021.",
      "function": "summarize",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 59,
        "componentCount": 6,
        "textChars": 757,
        "nDataPoints": 8,
        "notes": "PwC Global Consumer Insights Pulse Survey, March 2021.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "callout_box",
          "donut_chart",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:49.658+00",
          "seconds": 2.682,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/5",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-5",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.12,
            "w": 0.33,
            "x": 0.62,
            "y": 0.13
          },
          "kind": "callout",
          "text": "Our insight: Consumers are everywhere now—in stores, on your apps and website, and clicking on social media ads. Winning companies will be able to meet people wherever they are—on their individual terms.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.658+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "3eed8874-d1a6-4192-a19f-7e2118a57eb5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.4,
            "w": 0.9,
            "x": 0.05,
            "y": 0.45
          },
          "kind": "chart",
          "text": "Engagement rates for YouTube, Google, Facebook, Instagram",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Donut chart",
              "slug": "donut",
              "status": "active",
              "canonId": "019de52d-0006-752c-9528-0fef476b8004",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "donut",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.658+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "190877ae-7f0d-4c4f-8b27-124b4eac3733",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Consumer interaction rate: 73%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:49+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-558038e09b37",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.45,
            "x": 0.05,
            "y": 0.13
          },
          "kind": "paragraph",
          "text": "Online engagement extends to social networks, too. More than half of global consumers say they interact with the top four digital platforms, and more than one-third of those respondents, on average, say they're actively clicking on advertising.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.658+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f9d97406-6023-41ab-ab79-3b628bcf5197",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.5,
            "x": 0.05,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Base: All respondents (8,738), those that interact with YouTube (6,346), Google (5,836), Facebook (5,767), Instagram (4,905). Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.658+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "8709007b-135e-4188-83ae-b9bf4100fd29",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.25,
            "x": 0.05,
            "y": 0.38
          },
          "kind": "title",
          "text": "Engagement by social media platform",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:49.658+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d8b5930a-3d43-422d-a714-5bd4919fd091",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Audience Segmentation",
            "slug": "audience-segmentation",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8079-7046-8e6b-ecdf1bf15590",
            "version": 1,
            "bodyDocId": null,
            "description": "Grouping audience by attitude toward your message: Champions, Neutrals, Skeptics",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "ba7b1c24-52cb-49ed-9059-19615321063c",
          "evidence": "Base: All respondents (8,738), those that interact with YouTube (6,346), Google (5,836), Facebook (5,767), Instagram (4,905)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:20:16.839539+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "a143a319-bfef-4036-a438-a584a5a75ef2",
          "evidence": "chart/donut: Engagement rates for YouTube, Google, Facebook, Instagram",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:16.802738+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-527a-7566-9580-97050e9e5182",
          "evidence": "Dual-ring donuts compare interaction vs ad-click per platform",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Small Multiples",
            "slug": "small-multiples",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
            "version": 1,
            "bodyDocId": null,
            "description": "Repeating similar charts for comparison across categories or time",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-5253-722b-b586-ae380f1143e5",
          "evidence": "Four parallel donut charts - YouTube/Google/Facebook/Instagram",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 92,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-52a2-712f-ada2-049676b5429d",
          "evidence": "'Our insight' callout converts data into 'be everywhere' implication",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [
        {
          "matchId": "019de99a-5ac2-7147-8cb4-df07ee80a5da",
          "evidence": "Four parallel donut charts, one per platform",
          "framework": null,
          "confidence": 90,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 5,
          "frameworkName": "Small multiples"
        }
      ],
      "arcBeats": [
        {
          "to": 6,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019de99a-4dc0-708b-86e8-21ab2f19eaf4",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Cover, intro and general digital-trend data (p3-6)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 6,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "Problem & Complication",
          "beatId": "019de99a-4e8b-75a7-bce6-35ee6f98bb9f",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Digital acceleration trends signal disruption",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 6,
          "from": 3,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019de99a-4f2b-7773-a632-3e144e034886",
          "evidence": "p3 mobile, p4 online categories, p5 social media, p6 grocery premium - distinct evidence points building one trend",
          "position": 1,
          "objective": "Stack four independent digital-shift data points into a single 'consumers are everywhere' pattern",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 6,
      "type": "resolution",
      "title": "The slide uses a split-layout with a white background for data and a red background for the 'Our insight' callout.",
      "function": "summarize",
      "rawType": "key_takeaways",
      "block": null,
      "metadata": {
        "slideType": "key_takeaways",
        "slideTypeCanon": {
          "name": "Key takeaways",
          "slug": "key_takeaways",
          "status": "active",
          "canonId": "019de52d-06e7-7674-a891-9f7de3b11b6d",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 80,
        "componentCount": 10,
        "textChars": 762,
        "nDataPoints": 3,
        "notes": "The slide uses a split-layout with a white background for data and a red background for the 'Our insight' callout.",
        "elementsJson": [
          "paragraph",
          "headline_text",
          "icon_grid",
          "big_number",
          "callout_box",
          "footnote",
          "infographic"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:50.599+00",
          "seconds": 3.623,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/6",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-6",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.2,
            "w": 0.4,
            "x": 0.55,
            "y": 0.22
          },
          "kind": "callout",
          "text": "Our insight: Consumers want healthier food options and transparency across the food value chain. Consumer packaged goods (CPG) companies and retailers have a variety of options.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:50.599+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a0ef3bdb-5131-42b4-9cd7-a150a8d7a29a",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "Consumers want healthier food options and transparency across the food value chain.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:49+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-6d85dd1161b6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.4,
            "w": 0.35,
            "x": 0.6,
            "y": 0.42
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Illustration",
              "slug": "illustration",
              "status": "active",
              "canonId": "019de52c-fe76-7772-a5ac-c0b7294d7615",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "illustration",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:50.599+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0104c069-f9de-4701-a1cd-49473fc110bb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.15,
            "x": 0.05,
            "y": 0.62
          },
          "kind": "metric",
          "text": "55%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:50.599+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "1bebe608-7a45-492f-b254-f3ec02263e17",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.15,
            "x": 0.2,
            "y": 0.62
          },
          "kind": "metric",
          "text": "50%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:50.599+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4e84c148-e063-4c1d-96c2-c5516b900882",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.15,
            "x": 0.35,
            "y": 0.62
          },
          "kind": "metric",
          "text": "46%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": null,
            "subkind": {
              "name": "Big number",
              "slug": "big-number",
              "status": "active",
              "canonId": "019de52c-fc70-70c8-b965-0584548a9204",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "big-number",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:50.599+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "77eb2a14-6f77-48b2-94f8-34530f4eeecb",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Willingness to pay premium: 55%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:49+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-70c75c2265eb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.45,
            "x": 0.05,
            "y": 0.22
          },
          "kind": "paragraph",
          "text": "With grocery shopping, in particular, consumers across the board say that, out of a variety of product attributes, they're most willing to pay a price premium for healthier options, local produce and sustainable packaging, regardless of whether they're shopping online or in-store.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:50.599+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "82496fd4-9c9e-4fe6-b961-999450e22fd2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.3,
            "x": 0.05,
            "y": 0.8
          },
          "kind": "source-note",
          "text": "Base: Respondents who purchase said category (7,903) Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:50.599+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7bd6b0de-d458-4970-9cd2-088c459c226c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.05,
            "y": 0.36
          },
          "kind": "title",
          "text": "Top three grocery attributes consumers are willing to pay more for",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:50.599+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ecb0523a-793c-42e3-8c7f-ed89558ad44b",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-52ca-7317-b814-c18d9bc55ee2",
          "evidence": "Title names the three premium grocery attributes",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "34f4bb8c-1564-422c-a6de-2c3a3215d443",
          "evidence": "Our insight: Consumers want healthier food options and transparency across the food value chain.",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:20:16.914897+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-52f4-723c-a684-daef64748817",
          "evidence": "Red right-panel houses the 'so what'; white left-panel holds data",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Picture Superiority Effect",
            "slug": "picture-superiority-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
            "version": 1,
            "bodyDocId": null,
            "description": "Pictures remembered 6x better than words - prioritize visuals over text",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-531c-770f-82ba-433b22138647",
          "evidence": "Icons for health, local, sustainability over text-only",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 6,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 6,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 1,
          "name": "The Facts (What)",
          "beatId": "019de99a-4dc0-708b-86e8-21ab2f19eaf4",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Cover, intro and general digital-trend data (p3-6)",
          "position": 1,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 6,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 3,
          "name": "Problem & Complication",
          "beatId": "019de99a-4e8b-75a7-bce6-35ee6f98bb9f",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Digital acceleration trends signal disruption",
          "position": 2,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 6,
          "from": 3,
          "loop": {
            "name": "02_pattern_hunter",
            "slug": "02-pattern-hunter",
            "status": "active",
            "bestFor": "Time-pressed audiences, building consensus, when data is strong",
            "canonId": "019dd956-6695-771a-be2e-f1748ef041a4",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "Evidence A -> Evidence B -> Evidence C -> Pattern/Conclusion",
            "description": "Group multiple pieces of evidence that together point to a pattern or conclusion",
            "familyLabel": null
          },
          "matchId": "019de99a-4f2b-7773-a632-3e144e034886",
          "evidence": "p3 mobile, p4 online categories, p5 social media, p6 grocery premium - distinct evidence points building one trend",
          "position": 1,
          "objective": "Stack four independent digital-shift data points into a single 'consumers are everywhere' pattern",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 7,
      "type": "setup",
      "title": "The slide uses a split-screen layout with a high-contrast pink background for text and a lifestyle photo on the right to illustrate the 'at-home worker' theme.",
      "function": "establish_context",
      "rawType": "context",
      "block": null,
      "metadata": {
        "slideType": "context",
        "slideTypeCanon": {
          "name": "Context (pitchdeck)",
          "slug": "context",
          "status": "active",
          "canonId": "019de52d-1094-779e-9590-e4603e6a191c",
          "version": 1,
          "description": null
        },
        "function": "establish_context",
        "functionCanon": {
          "name": "Establish context",
          "slug": "establish_context",
          "status": "active",
          "canonId": "019de52d-1314-74e6-9074-d213dc0bdcdf",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 5,
        "componentCount": 1,
        "textChars": 137,
        "nDataPoints": null,
        "notes": "The slide uses a split-screen layout with a high-contrast pink background for text and a lifestyle photo on the right to illustrate the 'at-home worker' theme.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "callout_box",
          "photo"
        ],
        "confidence": null,
        "extraction": {
          "model": "or:google/gemini-3.1-flash-lite-preview",
          "runId": null,
          "at": "2026-04-24 13:48:49+00",
          "seconds": 1.87,
          "promptVersion": null
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/7",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-7",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "The ‘Zoom effect’: At-home workers embrace a more digital, environmentally friendly lifestyle than those working primarily away from home",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:49+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-19e1c10b703d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "MECE Principle",
            "slug": "mece-principle",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7c60-71a8-8758-c79d914489c9",
            "version": 1,
            "bodyDocId": null,
            "description": "Mutually Exclusive, Collectively Exhaustive - ensuring complete, non-overlapping structure",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Architect",
          "layer": "block",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-53e2-72fe-b57e-8c62176c2388",
          "evidence": "First of four mutually-exclusive fault-line segments",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Horizontal Logic",
            "slug": "horizontal-logic",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9a85-7199-aaa6-4314cd50dcfa",
            "version": 1,
            "bodyDocId": null,
            "description": "Logical grouping at the same level - items must relate coherently",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-53bb-75f4-a7c3-6e620883daad",
          "evidence": "Opens parallel structure that p11/p15/p18 will repeat",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5343-70bb-a9f2-c543d26984bc",
          "evidence": "Callout 'The Zoom effect: At-home workers embrace...' states the segment thesis",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 90,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-536b-7200-8fb2-968d56f98ccd",
          "evidence": "'Zoom effect' as label for remote-work consumer cohort",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Story Moments",
            "slug": "story-moments",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-ae4e-768d-a18b-108e6cda511e",
            "version": 1,
            "bodyDocId": null,
            "description": "Design key emotional beats: The Shock, The Vision, The Proof, The Choice, The Call",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-5392-747e-8478-c9cfa57a798a",
          "evidence": "Bold pink 'Fault line 1' badge as deliberate beat marker",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 7,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 7,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "Solution & Approach",
          "beatId": "019de99a-4eb2-775b-b5fd-8168e293e056",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Four fault lines framework introduced as lens",
          "position": 3,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 10,
          "from": 7,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4f54-70fa-b79f-6c81a05226e5",
          "evidence": "p7 frames at-home vs away-from-home; p8-10 contrast spending, channel and ESG behaviour by segment",
          "position": 2,
          "objective": "Split consumers by work-location to surface the 'Zoom effect' segment",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 8,
      "type": "analysis",
      "title": "Two line charts comparing two segments (WFH vs non-WFH) across different categories.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 46,
        "componentCount": 6,
        "textChars": 351,
        "nDataPoints": 22,
        "notes": "Two line charts comparing two segments (WFH vs non-WFH) across different categories.",
        "elementsJson": [
          "line_chart",
          "line_chart",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:52.851+00",
          "seconds": 5.585,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/8",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-8",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Consumers working at home expect to spend more, across categories.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:51+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-ea45275d214b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.45,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Spending expectations by work location",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.851+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "57a0a785-ccfa-4480-8b17-74c79c2fda3e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.6,
            "w": 0.45,
            "x": 0.55,
            "y": 0.25
          },
          "kind": "chart",
          "text": "In-store shopping behavior by work location",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.851+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "eeb1d718-ac68-412c-8f44-08430d1ad6c9",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Spending expectations: 46%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:51+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-ef42ccd0caee",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.9,
            "x": 0.05,
            "y": 0.92
          },
          "kind": "source-note",
          "text": "Base: Respondents primarily working from home/away from home (3,358/2,625) Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.851+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "12ea0705-b654-4d12-9342-ea5bd30f8a20",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.851+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "35cfd10c-070e-4486-902e-ef060f9fbbfb",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Contrast Pairs",
            "slug": "contrast-pairs",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9b77-70d3-88b1-f34e26f60860",
            "version": 1,
            "bodyDocId": null,
            "description": "Creating tension through opposites: Before↔After, Problem↔Solution, Pain↔Relief",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-545a-7274-af57-25355223619f",
          "evidence": "At-home vs away-from-home contrast carries the loop",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5409-746e-964b-dd47d983a29b",
          "evidence": "Title states 'Consumers working at home expect to spend more'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Before-After-Bridge",
            "slug": "before-after-bridge",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8604-7188-883f-42370288ad05",
            "version": 1,
            "bodyDocId": null,
            "description": "Narrative structure: Paint the before, show the after, explain the bridge",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "566c4541-b181-4fb7-b83f-3cdda523faba",
          "evidence": "Working from home influences consumer spending expectations and in-store shopping behavior.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:20:17.029714+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-5432-7580-a79d-a53f4e45d66e",
          "evidence": "Two line charts compare spending and store-visit behaviour",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Comparison frame",
            "slug": "comparison-frame",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-484b-7399-a4fc-d14644b99f93",
            "version": 1,
            "bodyDocId": null,
            "description": "Two or more states/subjects placed side by side to expose a gap.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "a65d63fd-1684-4730-90b5-a68784611793",
          "evidence": "chart/line: In-store shopping behavior by work location",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:16.9889+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 8,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 10,
          "from": 7,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4f54-70fa-b79f-6c81a05226e5",
          "evidence": "p7 frames at-home vs away-from-home; p8-10 contrast spending, channel and ESG behaviour by segment",
          "position": 2,
          "objective": "Split consumers by work-location to surface the 'Zoom effect' segment",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 9,
      "type": "resolution",
      "title": "The slide uses an isometric laptop illustration to display a grouped bar chart.",
      "function": "summarize",
      "rawType": "key_takeaways",
      "block": null,
      "metadata": {
        "slideType": "key_takeaways",
        "slideTypeCanon": {
          "name": "Key takeaways",
          "slug": "key_takeaways",
          "status": "active",
          "canonId": "019de52d-06e7-7674-a891-9f7de3b11b6d",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 72,
        "componentCount": 7,
        "textChars": 1089,
        "nDataPoints": 10,
        "notes": "The slide uses an isometric laptop illustration to display a grouped bar chart.",
        "elementsJson": [
          "bar_chart_grouped",
          "callout_box",
          "paragraph",
          "icon_grid"
        ],
        "confidence": 0.95,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:09:03.242+00",
          "seconds": 15.502,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/9",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-9",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.3,
            "x": 0.05,
            "y": 0.15
          },
          "kind": "callout",
          "text": "Our insight: If working from home becomes the new normal for this cohort, the implications for retailers are enormous, as we think at-home workers are likely to stick with habits that have formed during the pandemic.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:03.242+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fe5fecdd-ae7e-4a1e-9e21-231dfbfeb3f3",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "If working from home becomes the new normal for this cohort, the implications for retailers are enormous, as we think at-home workers are likely to stick with habits that have formed during the pandemic.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:50+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-ab22321b7e13",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.75,
            "w": 0.38,
            "x": 0.58,
            "y": 0.14
          },
          "kind": "chart",
          "text": "Grouped bar chart showing online shopping likelihood by work status across 5 categories.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:03.242+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a78ed53f-e3f4-417b-ae6a-685ec95ceb7c",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Online shopping preference: 10%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:50+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-ae6a7984c1b2",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.3,
            "x": 0.05,
            "y": 0.45
          },
          "kind": "paragraph",
          "text": "Of particular interest is the gulf between these two types of consumers in the grocery category, an enormous market in which almost everyone participates. At-home workers are almost 10 percentage points more likely to shop online for groceries.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:03.242+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2c19a267-729c-43e9-a961-89798ceec965",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.3,
            "x": 0.05,
            "y": 0.65
          },
          "kind": "source-note",
          "text": "Q: Considering the following product categories, how has the way you shop online changed, if at all, in the past six months? Base: Respondents primarily working from home/away from home (3,358/2,625) Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:03.242+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0355fb40-f450-46ae-9bd7-339b9afe2495",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.25,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "9 | PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:03.242+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "dc25cf45-c45c-4a7c-ab85-5b37fc3b9d5b",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5482-7364-aa05-020b448100c4",
          "evidence": "Title quotes the 10pp delta as the insight",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 90,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Aha! Moment",
            "slug": "aha-moment",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-a5b5-7763-820e-b299c5f27a32",
            "version": 1,
            "bodyDocId": null,
            "description": "The moment when the audience realizes the value - design for insight revelation",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "21228858-7edf-4c2e-ba30-5b59be235b88",
          "evidence": "At-home workers are almost 10 percentage points more likely to shop online for groceries",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.8,
          "extraction": {
            "at": "2026-07-16 21:20:17.106965+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-54a9-7291-a908-c4cc208dce64",
          "evidence": "Grouped bar chart across five retail categories",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "ca1fa224-4df6-4f28-b488-f0a863d77485",
          "evidence": "chart/bar-grouped: Grouped bar chart showing online shopping likelihood by work status across 5 categories.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:17.14488+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-54d0-7204-b858-9764a214b1ed",
          "evidence": "Chart rendered on isometric laptop to reinforce digital theme",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 65,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 9,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 10,
          "from": 7,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4f54-70fa-b79f-6c81a05226e5",
          "evidence": "p7 frames at-home vs away-from-home; p8-10 contrast spending, channel and ESG behaviour by segment",
          "position": 2,
          "objective": "Split consumers by work-location to surface the 'Zoom effect' segment",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 10,
      "type": "analysis",
      "title": "The slide uses a house-shaped bar chart to illustrate at-home behaviors.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 69,
        "componentCount": 7,
        "textChars": 813,
        "nDataPoints": 16,
        "notes": "The slide uses a house-shaped bar chart to illustrate at-home behaviors.",
        "elementsJson": [
          "paragraph",
          "callout_box",
          "data_table",
          "bar_chart_grouped"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:53.414+00",
          "seconds": 5.343,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/10",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-10",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.42,
            "x": 0.53,
            "y": 0.05
          },
          "kind": "callout",
          "text": "Our insight: The COVID-19 pandemic has created a clearly distinct market of at-home consumers who appear ready to spend more on online grocery shopping...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.414+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "49756d98-aed5-47f6-a8ea-c35dc4187ae3",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "callout",
          "text": "The COVID-19 pandemic has created a clearly distinct market of at-home consumers who appear ready to spend more on online grocery shopping, products with a traceable origin and items with environmentally friendly packaging—all while spending less time in physical stores.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:50+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-c9c596899d4c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.42,
            "x": 0.53,
            "y": 0.38
          },
          "kind": "chart",
          "text": "Alignment between working from home and other at-home behaviours",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.414+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "363a7add-682e-4220-b99b-a7ff86f34846",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.45,
            "w": 0.42,
            "x": 0.05,
            "y": 0.38
          },
          "kind": "chart",
          "text": "Consumers who work from home are more likely to prioritise ESG",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.414+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "fcbf56d6-2dbd-4152-977f-078ea65953ea",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Percentage of respondents agreeing with sustainability statements: 64%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:50+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-ceea6c3197a4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.42,
            "x": 0.05,
            "y": 0.13
          },
          "kind": "paragraph",
          "text": "Another fissure between those primarily working from home and those primarily working away from home is in their attitudes about sustainability...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.414+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9621583e-9685-4f4d-a5a0-a740698f0b71",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "10 | PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.414+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6d7b44be-b828-41b1-b021-2d7bf10b9835",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-54fa-7179-b406-303290b9d5e6",
          "evidence": "Title states 'work-from-home are more likely to prioritise ESG'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Audience frame",
            "slug": "audience-frame",
            "status": "active",
            "bestFor": null,
            "canonId": "2a1eefbd-5be8-4600-898b-49dbfcf73ec8",
            "version": 1,
            "bodyDocId": null,
            "description": "Tools for modelling and segmenting the audience (persona, JTBD, segmentation).",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "0849d8c6-dd86-4dc0-b497-49637d40035a",
          "evidence": "Consumers working at home expect to spend more, across categories.",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:20:17.222995+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "optional",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-5523-71df-ab4a-74b903904eae",
          "evidence": "Combination of data table + grouped bar chart",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-554a-734c-9eb5-7dd9dde3e450",
          "evidence": "Closing callout articulates 'distinct market...ready to spend more'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 10,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 10,
          "from": 7,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4f54-70fa-b79f-6c81a05226e5",
          "evidence": "p7 frames at-home vs away-from-home; p8-10 contrast spending, channel and ESG behaviour by segment",
          "position": 2,
          "objective": "Split consumers by work-location to surface the 'Zoom effect' segment",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 11,
      "type": "setup",
      "function": "transition",
      "rawType": "transition",
      "block": null,
      "metadata": {
        "slideType": "transition",
        "slideTypeCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-0693-7766-9f05-887f41f8e41e",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 29,
        "componentCount": 5,
        "textChars": 336,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "photo",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:53.737+00",
          "seconds": 4.727,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/11",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-11",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "The generation gap: The youth of today are more likely to shop online and be optimistic about future spending than their older counterparts",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:50+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831d-923119095e52",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 1,
            "w": 0.64,
            "x": 0.36,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.737+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a72bb659-c1c9-49a8-a2c0-85c8ba29a927",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.3,
            "x": 0.05,
            "y": 0.4
          },
          "kind": "paragraph",
          "text": "The generation gap: The youth of today are more likely to shop online and be optimistic about future spending than their older counterparts",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.737+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "39ea477e-b18a-4f16-ab38-8ed71569ddd5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.05,
            "y": 0.33
          },
          "kind": "title",
          "text": "Fault line 2",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.737+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "91caac13-6978-4764-8b9f-aa0cd7b485eb",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.25,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "11 | PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.737+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "556cb0ad-e31d-4ced-9c8d-067549e199a9",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Horizontal Logic",
            "slug": "horizontal-logic",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9a85-7199-aaa6-4314cd50dcfa",
            "version": 1,
            "bodyDocId": null,
            "description": "Logical grouping at the same level - items must relate coherently",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5598-7736-b0eb-68beb63db097",
          "evidence": "Repeats fault-line divider pattern from p7 - parallel structure",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5570-73eb-9311-b557dd49835e",
          "evidence": "Callout states the generation-gap thesis declaratively",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 11,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 14,
          "from": 11,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4f82-756d-aea7-a6cab09e3c4b",
          "evidence": "p11 fault-line divider; p12-14 compare Gen Z / Millennials / Gen X / Boomers across mobile, spending and priorities",
          "position": 3,
          "objective": "Split consumers by generation to expose generational shopping divergence",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 12,
      "type": "analysis",
      "title": "The slide uses a combination of 3D bar charts and donut charts to compare generational behaviors.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "overcrowded",
        "densityScore": 75,
        "componentCount": 8,
        "textChars": 722,
        "nDataPoints": 24,
        "notes": "The slide uses a combination of 3D bar charts and donut charts to compare generational behaviors.",
        "elementsJson": [
          "paragraph",
          "donut_chart",
          "infographic"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:55.294+00",
          "seconds": 6.186,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/12",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-12",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Overall, the pandemic hasn't dampened younger consumers' spending outlook.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:54+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831e-081a0c338783",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.55,
            "w": 0.4,
            "x": 0.05,
            "y": 0.35
          },
          "kind": "chart",
          "text": "Percent of respondents who shop daily and weekly by mobile/smartphone",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f331ec6f-9e4e-4c21-a0dd-178b5e1e7fc1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.4,
            "x": 0.55,
            "y": 0.3
          },
          "kind": "chart",
          "text": "Percent of consumers who expect to spend more in the next six months",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Donut chart",
              "slug": "donut",
              "status": "active",
              "canonId": "019de52d-0006-752c-9528-0fef476b8004",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "donut",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "4926af8d-d924-415d-9d6e-f74b0d089b02",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Percent of consumers who expect to spend more: 43%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:54+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831e-0f0188e4fbda",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.4,
            "x": 0.05,
            "y": 0.13
          },
          "kind": "paragraph",
          "text": "As we reported in the introduction, global consumers are increasingly adopting mobile shopping, and this is especially true when we look at younger generations.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ea97cec5-ee55-41c3-a263-2743715bda63",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.4,
            "x": 0.55,
            "y": 0.04
          },
          "kind": "paragraph",
          "text": "Overall, the pandemic hasn't dampened younger consumers' spending outlook. According to our survey, they are more likely to expect to spend more in the next six months than they'd spent before that.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f9c47bc0-7b52-427b-b51a-92cd024a51a9",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.9,
            "x": 0.05,
            "y": 0.92
          },
          "kind": "source-note",
          "text": "Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "74ae19bf-5a06-489b-9f8e-585d9ce2a7ec",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.294+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "d25ce4dc-8566-49d4-a54c-507c6ae6d86c",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-55c0-7740-af64-ac047d6184b8",
          "evidence": "Title: 'Younger generations are leading the shift toward mobile shopping'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-55eb-718f-8460-c57100f3aded",
          "evidence": "Donut charts + infographic compare generations",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Data Story Arc",
            "slug": "data-story-arc",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9c30-728e-b974-d3fb123dcf5a",
            "version": 1,
            "bodyDocId": null,
            "description": "Context → Conflict → Insight → Implication structure for data narratives",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "ed783dd1-30ec-49b4-8a10-9d659f9d1cc6",
          "evidence": "Younger generations are leading the shift toward mobile shopping and increased spending",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:20:17.371689+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Small Multiples",
            "slug": "small-multiples",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
            "version": 1,
            "bodyDocId": null,
            "description": "Repeating similar charts for comparison across categories or time",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "3c801603-e091-4352-ac06-b943778d68d6",
          "evidence": "chart/bar-vertical: Percent of respondents who shop daily and weekly by mobile/smartphone",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:17.335606+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Visual Hierarchy",
            "slug": "visual-hierarchy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b2ca-706b-937f-e52441086fd7",
            "version": 1,
            "bodyDocId": null,
            "description": "Order of perception through Size > Color > Position > Weight > Space",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-5613-71e2-81af-1635d869ad4f",
          "evidence": "Two-panel split: mobile frequency (L) vs spending categories (R)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 12,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 14,
          "from": 11,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4f82-756d-aea7-a6cab09e3c4b",
          "evidence": "p11 fault-line divider; p12-14 compare Gen Z / Millennials / Gen X / Boomers across mobile, spending and priorities",
          "position": 3,
          "objective": "Split consumers by generation to expose generational shopping divergence",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 13,
      "type": "analysis",
      "title": "The chart uses a grouped bar structure to compare two specific shopping behaviors across five generational cohorts.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 58,
        "componentCount": 6,
        "textChars": 706,
        "nDataPoints": 10,
        "notes": "The chart uses a grouped bar structure to compare two specific shopping behaviors across five generational cohorts.",
        "elementsJson": [
          "paragraph",
          "headline_text",
          "bar_chart_grouped",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:09:05.18+00",
          "seconds": 15.676,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/13",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-13",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "This doesn't mean that younger generations are typically in a position to be frivolous; in fact, our survey reveals that they are more price-conscious than their older counterparts.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:56+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831e-28791ac3e65a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.65,
            "w": 0.6,
            "x": 0.358,
            "y": 0.22
          },
          "kind": "chart",
          "text": "Grouped bar chart showing shopping behaviors by generation",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:05.18+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0ab3229c-ead2-4e74-bab9-a83de4779386",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Consumer agreement percentage: 60%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:56+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831e-2d1244e73f4f",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.7,
            "w": 0.28,
            "x": 0.048,
            "y": 0.135
          },
          "kind": "paragraph",
          "text": "This doesn't mean that younger generations are typically in a position to be frivolous; in fact, our survey reveals that they are more price-conscious than their older counterparts...",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:05.18+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2177884e-0061-4062-b8ef-3c8946eb1f0c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.6,
            "x": 0.358,
            "y": 0.9
          },
          "kind": "source-note",
          "text": "Base: Generation Z (1,269), Millennials (3,629), Generation X (2,753), Baby Boomers (1,007), the Greatest Generation (53) Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:05.18+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7e1ef54f-e41d-4017-88f2-abbe66989d1b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.5,
            "x": 0.358,
            "y": 0.135
          },
          "kind": "title",
          "text": "Millennials show some distinctive qualities in shopping behaviours",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:05.18+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a4985c5b-bd3b-4c63-965f-aa0d83404228",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-563b-757e-a728-c627404520b8",
          "evidence": "Title names Millennials as the distinctive generational segment",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Audience Persona",
            "slug": "audience-persona",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7fe3-74e9-88b8-be0bea34f219",
            "version": 1,
            "bodyDocId": null,
            "description": "Detailed fictional profile of typical audience member including goals, frustrations, and context",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "0f0992c3-0ad3-49bb-98ae-a9a631f32845",
          "evidence": "Millennials show some distinctive qualities in shopping behaviours",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:17.444674+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chartjunk Elimination",
            "slug": "chartjunk-elimination",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b49e-7453-ab01-b60f338eeda1",
            "version": 1,
            "bodyDocId": null,
            "description": "Remove decorative elements that don't convey data: 3D effects, shadows, unnecessary gridlines",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "dd71726f-96e5-4b4f-95d7-38bc76c9edbe",
          "evidence": "chart/bar-grouped: Grouped bar chart showing shopping behaviors by generation",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:17.481074+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-5662-7311-90db-f1840464b0d8",
          "evidence": "Grouped bar chart across five generational cohorts",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-568a-73ad-a933-62612645059b",
          "evidence": "Yellow background isolates the chart and its high-contrast bars",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 13,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 14,
          "from": 11,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4f82-756d-aea7-a6cab09e3c4b",
          "evidence": "p11 fault-line divider; p12-14 compare Gen Z / Millennials / Gen X / Boomers across mobile, spending and priorities",
          "position": 3,
          "objective": "Split consumers by generation to expose generational shopping divergence",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 14,
      "type": "analysis",
      "title": "The chart uses a non-standard area/bar hybrid visualization to show relative importance across cohorts.",
      "function": "analyze_data",
      "rawType": "industry_trends",
      "block": null,
      "metadata": {
        "slideType": "industry_trends",
        "slideTypeCanon": {
          "name": "Industry trends",
          "slug": "industry_trends",
          "status": "active",
          "canonId": "019de52d-0b1d-7705-a0e0-c663199cd1fa",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 54,
        "componentCount": 6,
        "textChars": 565,
        "nDataPoints": 16,
        "notes": "The chart uses a non-standard area/bar hybrid visualization to show relative importance across cohorts.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "callout_box",
          "bar_chart_grouped"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:52.801+00",
          "seconds": 2.858,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/14",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-14",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.2,
            "w": 0.25,
            "x": 0.05,
            "y": 0.408
          },
          "kind": "callout",
          "text": "Our insight: As younger consumers age and grow wealthier, they will join the older cohorts in their willingness to pay more for ESG attributes, a consideration CPG companies and retailers should be paying attention to.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.801+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7abb560d-cad0-4d84-a107-fc7a53b0d54d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.6,
            "x": 0.36,
            "y": 0.305
          },
          "kind": "chart",
          "text": "Generational priorities chart",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Vertical bar chart",
              "slug": "bar-vertical",
              "status": "active",
              "canonId": "019de52c-fe9d-70f2-b3b7-a9ae294f5917",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-vertical",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.801+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "289c8330-c1ae-42ce-80b3-862bd8d81f26",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Consumer shopping priority",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:58+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831f-cf6d25a0671e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.25,
            "x": 0.05,
            "y": 0.228
          },
          "kind": "paragraph",
          "text": "Millennials, in particular, are more promiscuous shoppers, meaning they're not as brand-loyal as their older counterparts. They also tend to make less frequent, bigger-basket shopping trips.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.801+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "19953387-75cc-4c8f-b65f-f0ee8a1b651e",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.36,
            "y": 0.925
          },
          "kind": "source-note",
          "text": "Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.801+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "e0bbaac4-ee88-42c5-98c2-a2fb62e006b4",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.36,
            "y": 0.228
          },
          "kind": "title",
          "text": "Generational gap in shoppers' priorities",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:52.801+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7385e9d6-b08c-4e39-b8ed-05461c46938d",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "2x2 matrix",
            "slug": "matrix-2x2",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
            "version": 1,
            "bodyDocId": null,
            "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "07c0a54c-3c2f-4c4c-974b-5422dedd13a0",
          "evidence": "chart/bar-vertical: Generational priorities chart",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:20:17.556652+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-56b0-767b-84e3-021e9676aef7",
          "evidence": "Title 'Generational gap in shoppers priorities' = thesis",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Color Strategy",
            "slug": "color-strategy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b202-77cf-8a6e-f445b08c0fd3",
            "version": 1,
            "bodyDocId": null,
            "description": "Using color for emphasis, categories, sentiment, and hierarchy",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-56ff-7316-9e0c-f84ad40fc526",
          "evidence": "Generation encoded by consistent colour across the four panels",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Small Multiples",
            "slug": "small-multiples",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b32d-7586-b368-baa1dd388ed4",
            "version": 1,
            "bodyDocId": null,
            "description": "Repeating similar charts for comparison across categories or time",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-56d7-758c-8929-197df0ca54a0",
          "evidence": "Four side-by-side mini-charts (Convenience, H&S, Price, Quality)",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5726-74bf-9502-5538960adf38",
          "evidence": "Pink callout converts data into 'CPG should pay attention' insight",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [
        {
          "matchId": "019de99a-5aea-738b-a7fb-52a52901bc7b",
          "evidence": "Four parallel mini-charts by shopping priority",
          "framework": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 14,
          "frameworkName": "Small multiples"
        }
      ],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 14,
          "from": 11,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4f82-756d-aea7-a6cab09e3c4b",
          "evidence": "p11 fault-line divider; p12-14 compare Gen Z / Millennials / Gen X / Boomers across mobile, spending and priorities",
          "position": 3,
          "objective": "Split consumers by generation to expose generational shopping divergence",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 15,
      "type": "setup",
      "title": "Part of a series of 'fault lines' in consumer behavior.",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "sparse",
        "densityScore": 21,
        "componentCount": 4,
        "textChars": 306,
        "nDataPoints": 0,
        "notes": "Part of a series of 'fault lines' in consumer behavior.",
        "elementsJson": [
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:09:35.965+00",
          "seconds": 46.004,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/15",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-15",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "The ‘conscientious consumer’: COVID-19 has created a cohort of shoppers who’ve changed their behaviour due to heightened health and safety concerns",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:56+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831e-635555ada3df",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 1,
            "w": 0.64,
            "x": 0.36,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:35.965+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2d5da464-1977-49e7-87e5-1aa57fcd6950",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.29,
            "x": 0.05,
            "y": 0.41
          },
          "kind": "paragraph",
          "text": "The 'conscientious consumer': COVID-19 has created a cohort of shoppers who've changed their behaviour due to heightened health and safety concerns",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:35.965+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f1f222d3-b003-4cb3-82e2-21181a5f0a47",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.04,
            "w": 0.15,
            "x": 0.05,
            "y": 0.32
          },
          "kind": "title",
          "text": "Fault line 3",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:35.965+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "99a4302a-2a60-47ae-bc14-9894e1039ef4",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Horizontal Logic",
            "slug": "horizontal-logic",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9a85-7199-aaa6-4314cd50dcfa",
            "version": 1,
            "bodyDocId": null,
            "description": "Logical grouping at the same level - items must relate coherently",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5777-739a-9943-578101cb7ae7",
          "evidence": "Third repetition of fault-line divider template",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5750-732b-a1b2-334b582dd391",
          "evidence": "Callout names the 'conscientious consumer' cohort and its driver",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Section divider",
            "slug": "section-divider",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4c66-707d-8d1f-6e14547134c7",
            "version": 1,
            "bodyDocId": null,
            "description": "A transitional slide marking the start of a new section.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "5731ff3f-25da-413a-bae6-8b4fe96c551a",
          "evidence": "Fault line 3",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.9,
          "extraction": {
            "at": "2026-07-16 21:20:17.631548+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 15,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 17,
          "from": 15,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4fab-700c-ad73-ea7d1832e191",
          "evidence": "p15 introduces cohort; p16-17 contrast cohort vs global sample on in-store and willingness-to-pay",
          "position": 4,
          "objective": "Split out a 'conscientious cohort' vs the global sample on health/safety and ESG",
          "confidence": 87,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 16,
      "type": "analysis",
      "title": "The 'conscientious cohort' is defined by respondents prioritizing health and safety measures and COVID-19 certification.",
      "function": "analyze_data",
      "rawType": "data_table",
      "block": null,
      "metadata": {
        "slideType": "data_table",
        "slideTypeCanon": {
          "name": "Data table",
          "slug": "data_table",
          "status": "active",
          "canonId": "019de52d-0bbd-71b9-9918-417f904abbf8",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 73,
        "componentCount": 8,
        "textChars": 695,
        "nDataPoints": 12,
        "notes": "The 'conscientious cohort' is defined by respondents prioritizing health and safety measures and COVID-19 certification.",
        "elementsJson": [
          "paragraph",
          "line_chart",
          "icon_grid",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:54.649+00",
          "seconds": 4.569,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/16",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-16",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "These individuals are shopping in-store less across all product categories.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:58+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831f-e7770e0586bc",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.45,
            "x": 0.52,
            "y": 0.35
          },
          "kind": "chart",
          "text": "Line chart showing shopping reduction by category for two cohorts",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Line chart",
              "slug": "line",
              "status": "active",
              "canonId": "019de52c-ff62-778f-8f6c-a952ceae8677",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "line",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.649+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "30d03355-54df-4236-ba78-e78c0da2790b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.52,
            "y": 0.32
          },
          "kind": "legend",
          "text": "Conscientious cohort; Global sample",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Legend",
              "slug": "legend",
              "status": "active",
              "canonId": "31361933-3d22-4c70-bbad-0801e9fffc0c",
              "version": 1,
              "description": "Color/symbol decoder placed adjacent to a chart or diagram."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.649+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a3d5536e-ae72-45e7-8a0c-76266feec0b0",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Percentage of respondents shopping less in-store: 37%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:58+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831f-ea564d3ca0da",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.35,
            "x": 0.05,
            "y": 0.22
          },
          "kind": "paragraph",
          "text": "Our third fault line distinguishes between survey respondents who prioritise safety above and beyond other concerns versus consumers with other top priorities.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.649+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "06854487-f0d2-49cd-9d8c-6fdb3b5c8e8d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.52,
            "y": 0.92
          },
          "kind": "source-note",
          "text": "Base: All respondents (8,738), Conscientious cohort (2,042) Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.649+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "730dfef1-de68-4d7c-94d6-bb05ea860568",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.06,
            "w": 0.45,
            "x": 0.52,
            "y": 0.22
          },
          "kind": "title",
          "text": "Compared to other shoppers, a greater percentage of the 'conscientious cohort' say they are shopping less in-store, across all product categories",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.649+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b0d2bcad-3f21-43a7-ba92-54efce08c8da",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.25,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.649+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7048e690-c96c-4d90-a96b-6970c3128262",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Contrast Pairs",
            "slug": "contrast-pairs",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9b77-70d3-88b1-f34e26f60860",
            "version": 1,
            "bodyDocId": null,
            "description": "Creating tension through opposites: Before↔After, Problem↔Solution, Pain↔Relief",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Storyteller",
          "layer": "loop",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-57ed-70bd-8429-98c12c4a5ec0",
          "evidence": "Cohort-vs-global-sample contrast is the loop's structural device",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 16,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-579f-735e-8098-a1b883776830",
          "evidence": "Title states cohort 'shopping less in-store...across all categories'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 16,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-57c7-7479-b720-10434f12d8a5",
          "evidence": "Dual-line plot compares cohort vs global sample",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 16,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Legend / context",
            "slug": "legend-context",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-4e9e-7082-8f2e-c1e169365858",
            "version": 1,
            "bodyDocId": null,
            "description": "Footnote, definition, source attribution.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "9e703de6-9804-4c97-973b-2783b10ac568",
          "evidence": "legend: Conscientious cohort; Global sample",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:17.706652+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 16,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 17,
          "from": 15,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4fab-700c-ad73-ea7d1832e191",
          "evidence": "p15 introduces cohort; p16-17 contrast cohort vs global sample on in-store and willingness-to-pay",
          "position": 4,
          "objective": "Split out a 'conscientious cohort' vs the global sample on health/safety and ESG",
          "confidence": 87,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 17,
      "type": "resolution",
      "title": "The slide uses donut charts for willingness to pay and bar charts for likelihood of activities.",
      "function": "summarize",
      "rawType": "key_takeaways",
      "block": null,
      "metadata": {
        "slideType": "key_takeaways",
        "slideTypeCanon": {
          "name": "Key takeaways",
          "slug": "key_takeaways",
          "status": "active",
          "canonId": "019de52d-06e7-7674-a891-9f7de3b11b6d",
          "version": 1,
          "description": null
        },
        "function": "summarize",
        "functionCanon": {
          "name": "Summarize",
          "slug": "summarize",
          "status": "active",
          "canonId": "019de52d-1541-704f-b86f-bf7b75056373",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 44,
        "componentCount": 5,
        "textChars": 495,
        "nDataPoints": 18,
        "notes": "The slide uses donut charts for willingness to pay and bar charts for likelihood of activities.",
        "elementsJson": [
          "donut_chart",
          "comparison_table",
          "callout_box",
          "paragraph",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:09:08.01+00",
          "seconds": 17.844,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/17",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-17",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.22,
            "w": 0.46,
            "x": 0.51,
            "y": 0.05
          },
          "kind": "callout",
          "text": "Our insight: The conscientious cohort's interest in health and safety carries over to general conscientiousness about the environment and society at large, and these values are unlikely to change, even after the safety concerns brought on by COVID-19 subside.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:08.01+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "25d594a2-10a4-4638-9ac5-240ab9cb4587",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.45,
            "x": 0.51,
            "y": 0.55
          },
          "kind": "chart",
          "text": "Likelihood of travel and public activities in the next six months.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Grouped bar chart",
              "slug": "bar-grouped",
              "status": "active",
              "canonId": "019de52c-ff3b-751e-a8ff-f21ff11097b1",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-grouped",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:08.01+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0dbd631c-1c84-47cd-8381-409e2b7e57a5",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.45,
            "x": 0.05,
            "y": 0.55
          },
          "kind": "chart",
          "text": "Willingness to pay for locally produced, healthier, and eco-friendly options.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Donut chart",
              "slug": "donut",
              "status": "active",
              "canonId": "019de52d-0006-752c-9528-0fef476b8004",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "donut",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:08.01+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "20e55f48-85f8-4f24-996e-3a71217af65d",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Willingness to pay premium: 61%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:56+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831f-313241425ca1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.9,
            "x": 0.05,
            "y": 0.95
          },
          "kind": "source-note",
          "text": "Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:09:08.01+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9ca782e4-6002-404d-9280-9acffebda0f7",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5815-731d-9a8d-2848575e2acc",
          "evidence": "Long callout/title summarises cohort's broader ESG orientation",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Audience Definition",
            "slug": "audience-definition",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-7f2a-775d-aeee-ff099bcb7756",
            "version": 1,
            "bodyDocId": null,
            "description": "Six key questions: Who are they? What do they know? What do they believe? What do they care about? What do they fear? What decisions can they make?",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "0a558e9a-b8f6-412f-a904-caa9e57624f9",
          "evidence": "The conscientious cohort's interest in health and safety carries over to general conscientiousness about the environment and society at large",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:30.951373+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-5841-769c-92fd-5ff638b1d508",
          "evidence": "Donut charts + comparison table across two behavioural dimensions",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Core Message Extraction",
            "slug": "core-message-extraction",
            "status": "active",
            "bestFor": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
            "canonId": "019dd956-bc71-707d-8867-1b2e810175cf",
            "version": 1,
            "bodyDocId": "f85613cb-4b77-462f-bfe6-3b862516e1a6",
            "description": "The discipline of distilling raw analysis, data, or content into a single declarative sentence — the slide's core message — that the audience would walk away with if they remembered nothing else. Process, not artefact: extraction questions run on the raw content until one sentence falls out.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "39098bee-d17e-48f8-8ab6-67566b08bbef",
          "evidence": "Our insight: The conscientious cohort's interest in health and safety carries over to general conscientiousness about the environment and society at large, and these values are unlikely to change",
          "pageRefs": null,
          "priority": null,
          "whenToUse": "Any slide that carries an argument or finding. The diagnostic: if the slide has a chart on it, it needs a core message. Run extraction whenever the current title is a topic (Q3 performance, Customer satisfaction) rather than a claim, or when a reader could reasonably draw more than one conclusion from the visible evidence.",
          "confidence": 0.7,
          "extraction": {
            "at": "2026-07-16 21:20:30.986243+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": "Solves the two failure modes of slide writing simultaneously: the topic title (which outsources interpretation to the audience and produces three different conclusions in three different heads) and the multi-thesis stapler (which exceeds working memory and gets remembered as fragments). Aligns with how readers actually consume decks — Heath & Heath's Find the Core, the journalist's nut graf, and Minto's governing thought all converge on the same cognitive economics.",
          "antipattern": "Topic titles disguised as core messages (Customer satisfaction, no verb, no stake); multi-thesis sentences stapled with and; hedged sentences (may show signs of possible softening); chart-caption titles (Revenue fell 4%) that restate what the chart already shows instead of naming the so-what; meta-commentary (this slide explores...) that describes the slide rather than concluding it.",
          "cardinality": null,
          "narrativePurpose": "Forces the slide author to do the interpretive work before the slide ships, so the audience does not have to do it during the meeting. Wins the WYSIATI battle on purpose — the loudest fragment on the page becomes the author's chosen sentence rather than whichever chart label happens to be largest."
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-586a-77cb-9a24-f701a1097500",
          "evidence": "'Our insight' callout extends finding beyond pandemic",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 17,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 17,
          "from": 15,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4fab-700c-ad73-ea7d1832e191",
          "evidence": "p15 introduces cohort; p16-17 contrast cohort vs global sample on in-store and willingness-to-pay",
          "position": 4,
          "objective": "Split out a 'conscientious cohort' vs the global sample on health/safety and ESG",
          "confidence": 87,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 18,
      "type": "setup",
      "title": "Part of a PwC Global Consumer Insights Pulse Survey deck.",
      "function": "transition",
      "rawType": "section_divider",
      "block": null,
      "metadata": {
        "slideType": "section_divider",
        "slideTypeCanon": {
          "name": "Section divider",
          "slug": "section_divider",
          "status": "active",
          "canonId": "019de52d-066a-7402-9554-6ae504999041",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 47,
        "componentCount": 6,
        "textChars": 579,
        "nDataPoints": 0,
        "notes": "Part of a PwC Global Consumer Insights Pulse Survey deck.",
        "elementsJson": [
          "photo",
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:53.281+00",
          "seconds": 2.263,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/18",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-18",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "Overall, Asia-Pacific consumers say they are more likely than their Western counterparts to shop often—weekly or more frequently—via all channels.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:56+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831e-49c0f1acd2a6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 1,
            "w": 0.64,
            "x": 0.36,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.281+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b2987283-efd9-4cea-a5bd-6e560dbaa85a",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.25,
            "x": 0.05,
            "y": 0.46
          },
          "kind": "paragraph",
          "text": "Overall, Asia-Pacific consumers say they are more likely than their Western counterparts to shop often—weekly or more frequently—via all channels. This is a trend we've seen in past consumer surveys.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.281+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a51145da-4c80-4d3f-a9e7-dfee38e3f282",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.12,
            "w": 0.25,
            "x": 0.05,
            "y": 0.31
          },
          "kind": "paragraph",
          "text": "East-West differences: Consumers in the Asia-Pacific region are sustainability-minded and less likely to be concerned about health and safety in their physical store experience",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.281+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "bae50c15-4436-4423-af5c-de4ae67fc605",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.05,
            "y": 0.24
          },
          "kind": "title",
          "text": "Fault line 4",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.281+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "42eb4154-82ca-4a96-b2f7-55086853b5c8",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.2,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "18 | PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:53.281+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "7e8ed858-042a-4a74-80cf-a1830c0d1d60",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Horizontal Logic",
            "slug": "horizontal-logic",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-9a85-7199-aaa6-4314cd50dcfa",
            "version": 1,
            "bodyDocId": null,
            "description": "Logical grouping at the same level - items must relate coherently",
            "familyLabel": null,
            "categoryName": "Loop",
            "categorySlug": "loop"
          },
          "agent": "Architect",
          "layer": "loop",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-58b7-7155-ae43-bcb8dc92710f",
          "evidence": "Fourth repetition of fault-line divider format",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 18,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5890-747a-bf32-100dce191b5b",
          "evidence": "Callout states APAC sustainability/safety thesis declaratively",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 18,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 20,
          "from": 18,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4fd2-7119-b81c-c975daaa45aa",
          "evidence": "p18 East-West framing; p19 regional map; p20 ESG-vs-safety table by region",
          "position": 5,
          "objective": "Split consumers by region to show Asia-Pacific divergence on frequency and ESG",
          "confidence": 86,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 19,
      "type": "analysis",
      "title": "The slide uses icons to represent store vs mobile shopping channels.",
      "function": "analyze_data",
      "rawType": "geographic_map",
      "block": null,
      "metadata": {
        "slideType": "geographic_map",
        "slideTypeCanon": {
          "name": "Geographic map",
          "slug": "geographic_map",
          "status": "active",
          "canonId": "019de52d-09de-7153-8845-584c1a9d0c83",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 44,
        "componentCount": 5,
        "textChars": 551,
        "nDataPoints": 8,
        "notes": "The slide uses icons to represent store vs mobile shopping channels.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "map",
          "photo",
          "icon_grid",
          "footnote"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:54.139+00",
          "seconds": 2.696,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/19",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-19",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.65,
            "w": 0.9,
            "x": 0.05,
            "y": 0.25
          },
          "kind": "chart",
          "text": "Geographic distribution of shopping frequency",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": "map",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.139+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "f744c27e-ac7c-4ca5-b335-f0429aea9628",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Shopping frequency: 45%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:56+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831e-e863953b7cb0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.05,
            "y": 0.19
          },
          "kind": "paragraph",
          "text": "Q: In the past 12 months, how often have you bought products (e.g., clothes, books, electronics) using the following shopping channels? (Answers shown reflect daily and weekly shopping combined and do not include grocery shopping.)",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.139+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "956602ac-7110-4652-b748-fa367a2853fa",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.05,
            "y": 0.92
          },
          "kind": "source-note",
          "text": "Base: Asia-Pacific (3,386), Africa/Middle East (1,015), Americas (1,716), Western Europe (2,080) Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.139+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b915eb85-f5a3-4b6b-9c5a-4582411e4a57",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.4,
            "x": 0.05,
            "y": 0.13
          },
          "kind": "title",
          "text": "Consumers in the Asia-Pacific region shop more frequently overall than those in other regions",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Action title",
              "slug": "action-title",
              "status": "active",
              "canonId": "019de52c-fb31-734c-a0f5-a3935b73135d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "action-title",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.139+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ffdfabc6-2e82-47c9-b19b-ecc16967decb",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-595e-721c-b7ac-975b904447a9",
          "evidence": "Title states APAC shops 'more frequently overall than other regions'",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 78,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Metaphor & Analogy",
            "slug": "metaphor-analogy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-adea-7729-bca1-70810d6238a9",
            "version": 1,
            "bodyDocId": null,
            "description": "Making abstract concepts concrete through familiar comparisons",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-5936-715b-9a18-9e77956bbeb6",
          "evidence": "Geographic-map layout literalises 'East-West' framing",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Picture Superiority Effect",
            "slug": "picture-superiority-effect",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-c201-7014-bb58-3e85e3e11dfd",
            "version": 1,
            "bodyDocId": null,
            "description": "Pictures remembered 6x better than words - prioritize visuals over text",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-590a-733a-abee-a9fc41800365",
          "evidence": "Photos + icons + percentages per region rather than a table",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 75,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Visual Hierarchy",
            "slug": "visual-hierarchy",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b2ca-706b-937f-e52441086fd7",
            "version": 1,
            "bodyDocId": null,
            "description": "Order of perception through Size > Color > Position > Weight > Space",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-58e2-74b4-9368-236cdfdfb7a9",
          "evidence": "Stylised world map anchors region callouts as primary structure",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 80,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [
        {
          "matchId": "019de99a-5b11-73b8-990a-cd6b0065e9f0",
          "evidence": "Stylised world map with per-region store/mobile percentages",
          "framework": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 19,
          "frameworkName": "Geographic / regional map"
        }
      ],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 20,
          "from": 18,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4fd2-7119-b81c-c975daaa45aa",
          "evidence": "p18 East-West framing; p19 regional map; p20 ESG-vs-safety table by region",
          "position": 5,
          "objective": "Split consumers by region to show Asia-Pacific divergence on frequency and ESG",
          "confidence": 86,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 20,
      "type": "analysis",
      "title": "The slide contrasts high ESG engagement in Asia-Pacific/Africa/Middle East with lower engagement in the West, and correlates lower health/safety concerns in Asi",
      "function": "analyze_data",
      "rawType": "regional_insights",
      "block": null,
      "metadata": {
        "slideType": "regional_insights",
        "slideTypeCanon": {
          "name": "Regional insights",
          "slug": "regional_insights",
          "status": "active",
          "canonId": "019de52d-0e65-708b-a079-0bf65f43c5c6",
          "version": 1,
          "description": null
        },
        "function": "analyze_data",
        "functionCanon": {
          "name": "Analyze data",
          "slug": "analyze_data",
          "status": "active",
          "canonId": "019de52d-1590-7413-8c82-cc218cff40b4",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 64,
        "componentCount": 7,
        "textChars": 588,
        "nDataPoints": 20,
        "notes": "The slide contrasts high ESG engagement in Asia-Pacific/Africa/Middle East with lower engagement in the West, and correlates lower health/safety concerns in Asia-Pacific with earlier COVID-19 recovery.",
        "elementsJson": [
          "paragraph",
          "kpi_table",
          "callout_box",
          "icon_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:57.88+00",
          "seconds": 6.151,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/20",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-20",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.25,
            "w": 0.4,
            "x": 0.05,
            "y": 0.65
          },
          "kind": "callout",
          "text": "Our insight: Because COVID-19 restrictions have eased earlier in Asian-Pacific countries than in other parts of the world, consumers there can be seen as bellwethers.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": null,
            "subkind": {
              "name": "Primary callout",
              "slug": "primary",
              "status": "active",
              "canonId": "019de52c-fbd1-70eb-a9ce-8997f8674c1d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:57.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "291b6a6e-0838-4686-aa1f-a9d78135f4b1",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.25,
            "w": 0.45,
            "x": 0.5,
            "y": 0.15
          },
          "kind": "chart",
          "text": "ESG concerns by region",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Chart",
              "slug": "chart",
              "status": "active",
              "canonId": "019de52c-f9a0-76ef-adc6-0b859109d1f8",
              "version": 1,
              "description": "Quantitative chart."
            },
            "tool": null,
            "subkind": {
              "name": "Horizontal bar chart",
              "slug": "bar-horizontal",
              "status": "active",
              "canonId": "019de52c-fec4-7221-986b-1cb5f5e84b1f",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bar-horizontal",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:57.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "9cd021a9-ed71-4fd3-ab98-c08a3e7ded52",
          "parentComponentId": null
        },
        {
          "bbox": null,
          "kind": "metric",
          "text": "Percentage of consumers agreeing with ESG statements: 63%",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Metric",
              "slug": "metric",
              "status": "active",
              "canonId": "019de52c-f923-73bf-8081-d0b1a8c5264d",
              "version": 1,
              "description": "Big-number or KPI value."
            },
            "tool": {
              "name": "Quantification",
              "slug": "quantification",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-47ab-72ce-a079-aab1f5299e88",
              "version": 1,
              "bodyDocId": null,
              "description": "Translating a claim into numbers, charts, or tables.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": "primary",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:56+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831e-ce2a67bd1326",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.2,
            "w": 0.4,
            "x": 0.05,
            "y": 0.09
          },
          "kind": "paragraph",
          "text": "These consumers—along with those in Africa and the Middle East—are also more engaged in ESG issues. By contrast, the Western European consumers we surveyed were the least ESG-focused.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:57.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "c549be57-e881-4fdf-a4c4-e153bcf57251",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.4,
            "x": 0.5,
            "y": 0.95
          },
          "kind": "source-note",
          "text": "Source: PwC's March 2021 Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Source note",
              "slug": "source-note",
              "status": "active",
              "canonId": "23484952-494b-4a5e-b1ad-550d0d70e948",
              "version": 1,
              "description": "Attribution / source / caveat placed at the slide footer. Numbered footnotes use attrs.numbered."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:57.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "abba3862-a27a-42e1-959b-586444e204e6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.35,
            "w": 0.45,
            "x": 0.5,
            "y": 0.55
          },
          "kind": "table",
          "text": "Health and safety concerns by product category and region",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Table",
              "slug": "table",
              "status": "active",
              "canonId": "019de52c-f9c8-7148-8119-eaac9594cd28",
              "version": 1,
              "description": "Tabular data layout."
            },
            "tool": null,
            "subkind": {
              "name": "Data table",
              "slug": "data",
              "status": "active",
              "canonId": "019de52d-02d5-75b8-8abf-88e92bf63569",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "data",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:57.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "ce58eb84-047e-44a3-baac-70d1b6e47592",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.3,
            "x": 0.05,
            "y": 0.05
          },
          "kind": "title",
          "text": "PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:57.88+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "80b990cd-5175-413e-b08f-62e1454ae64b",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "2x2 matrix",
            "slug": "matrix-2x2",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd9e1-50ab-72d1-8afb-3ab0a38e32a8",
            "version": 1,
            "bodyDocId": null,
            "description": "BCG matrix, importance/urgency, any axes-and-quadrants frame.",
            "familyLabel": null,
            "categoryName": null,
            "categorySlug": null
          },
          "agent": null,
          "layer": "slide",
          "agents": null,
          "matchId": "4534631b-4eec-4817-95aa-f1142b166437",
          "evidence": "chart/bar-horizontal: ESG concerns by region",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:20:31.130978+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 20,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": "common",
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-5985-768a-ab57-fbc05a5dbaa0",
          "evidence": "Title states APAC/Africa/ME report ESG concerns at higher rate",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 88,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 20,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Chart Selection Guide",
            "slug": "chart-selection-guide",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-b1a0-700b-ba17-0e16c4d5bcae",
            "version": 1,
            "bodyDocId": null,
            "description": "Choosing the right chart type for your data and message",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Designer",
          "layer": "slide",
          "agents": [
            "Designer"
          ],
          "matchId": "019de99a-59ae-7309-99b9-fa45b51daf32",
          "evidence": "Two stacked tables - ESG sentiment + online safety concern",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 20,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "So What? Test",
            "slug": "so-what-test",
            "status": "active",
            "bestFor": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
            "canonId": "019dd956-acd2-76f8-b59a-9bf15a89f10a",
            "version": 1,
            "bodyDocId": "fec04b06-b2f1-432b-a97b-916dc7563f64",
            "description": "The recursive editorial discipline of asking so-what of every slide, chart, and statement until the answer is an implication for the audience — that final answer becomes the slide's title; the chain becomes its body.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-59d5-712a-b20c-0aa0e148b059",
          "evidence": "'Our insight' callout ties pattern to differential COVID timing",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "On every slide carrying a chart, number, list, or finding intended to inform a decision; whenever a draft title is descriptive rather than directive; whenever the deck will circulate without its author.",
          "confidence": 72,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 20,
          "whyItWorks": "Solves the two failure modes of analytical communication at once: stopping at description (analyst-confidence problem) and leaving insight stranded in the analyst's head (translation problem). The recursion is what guarantees the implication makes it into ink.",
          "antipattern": "Stopping at the first tighter description (still a fact, not an implication), regressing past the audience's decision space into philosophy, smuggling the so-what into speaker notes, or re-using an implication aimed at a previous audience.",
          "cardinality": null,
          "narrativePurpose": "Forces every analytical artefact to close the gap between fact and decision, so the reader holds the recommendation by reading titles alone rather than reconstructing the analyst's mental model from raw evidence."
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 20,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 7,
          "name": "The Implications (So What)",
          "beatId": "019de99a-4de8-7736-b857-4f15c5c32c20",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "Four 'fault line' segments with 'Our insight:' callouts on p7-20",
          "position": 2,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 20,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 8,
          "name": "Evidence & Proof",
          "beatId": "019de99a-4edb-7017-b746-1afcaf02b08c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "Per-segment data tables, charts and insights",
          "position": 4,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [
        {
          "to": 20,
          "from": 18,
          "loop": {
            "name": "34_segmentation_split",
            "slug": "34-segmentation-split",
            "status": "active",
            "bestFor": "Customer analysis, market research, resource allocation",
            "canonId": "019dd956-7398-77a8-9a5f-2e4d39589f42",
            "version": 1,
            "bodyDocId": "019df22a-2420-77be-bc41-ded96d08cb21",
            "structure": "The Aggregate View -> Segment A Behavior -> Segment B Behavior -> The Insight in the Difference",
            "description": "Divide a whole into meaningful segments to reveal hidden patterns",
            "familyLabel": null
          },
          "matchId": "019de99a-4fd2-7119-b81c-c975daaa45aa",
          "evidence": "p18 East-West framing; p19 regional map; p20 ESG-vs-safety table by region",
          "position": 5,
          "objective": "Split consumers by region to show Asia-Pacific divergence on frequency and ESG",
          "confidence": 86,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          }
        }
      ],
      "locked": true
    },
    {
      "page": 21,
      "type": "setup",
      "title": "Part of the PwC Global Consumer Insights Pulse Survey deck.",
      "function": "transition",
      "rawType": "transition",
      "block": null,
      "metadata": {
        "slideType": "transition",
        "slideTypeCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-0693-7766-9f05-887f41f8e41e",
          "version": 1,
          "description": null
        },
        "function": "transition",
        "functionCanon": {
          "name": "Transition",
          "slug": "transition",
          "status": "active",
          "canonId": "019de52d-1365-7149-92aa-66df859e75fd",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 50,
        "componentCount": 5,
        "textChars": 1189,
        "nDataPoints": 0,
        "notes": "Part of the PwC Global Consumer Insights Pulse Survey deck.",
        "elementsJson": [
          "headline_text",
          "paragraph",
          "photo"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:54.871+00",
          "seconds": 3.12,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/21",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-21",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": null,
          "kind": "callout",
          "text": "In other words, there’s no better time to move forward with bold, decisive actions, even as the sands keeps shifting.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Callout",
              "slug": "callout",
              "status": "active",
              "canonId": "019de52c-f8d3-761a-8953-7d37080de5e2",
              "version": 1,
              "description": "Highlighted callout box."
            },
            "tool": {
              "name": "Visual emphasis",
              "slug": "visual-emphasis",
              "status": "active",
              "bestFor": null,
              "canonId": "019dd9e1-474b-736b-a8eb-a794dd88241c",
              "version": 1,
              "bodyDocId": null,
              "description": "Drawing the eye to one element above the rest of the slide.",
              "familyLabel": null
            },
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-04-24 13:48:57+00",
            "model": "or:google/gemini-3.1-flash-lite-preview",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "019dd951-dfa4-712e-831f-8abdb3904047",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 1,
            "w": 0.5,
            "x": 0.5,
            "y": 0
          },
          "kind": "image",
          "text": null,
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Photo",
              "slug": "photo",
              "status": "active",
              "canonId": "019de52c-fd37-757f-b4a8-ca26d4888875",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "photo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.871+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "75627d4e-1d0f-4a3c-b0f5-53a5c3294eaf",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.5,
            "w": 0.4,
            "x": 0.05,
            "y": 0.31
          },
          "kind": "paragraph",
          "text": "The consumer markets industry was experiencing large-scale disruption well before the COVID-19 pandemic, but the virus accelerated the pace of change and created or deepened forks in consumer behaviour. As companies move forward, they should take advantage of new opportunities evident in the data that we have talked about here. How does that look in real life? Well, if those consumers primarily working at home do increase their spending, there might be a significant uptick in COVID-related at-home consumption. Both consumer companies and retailers should be prepared with innovations and changes, such as subscription offers, enhanced e-commerce capabilities, and larger, bulk packages for consumers who are at home more and spending more. Other areas of opportunity could be portfolio realignment to enhance digital capabilities or value chain digitisation to improve efficiency. In other words, there’s no better time to move forward with bold, decisive actions, even as the sands keeps shifting.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.871+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "5f719d9d-a7f0-4b4e-b242-a1c835721ec0",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.05,
            "w": 0.35,
            "x": 0.05,
            "y": 0.22
          },
          "kind": "title",
          "text": "How to be bold in 2021",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.871+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6ff069a9-9899-4832-88e2-cfab3c73a360",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.02,
            "w": 0.25,
            "x": 0.05,
            "y": 0.04
          },
          "kind": "title",
          "text": "21 | PwC Global Consumer Insights Pulse Survey",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Subtitle",
              "slug": "subtitle",
              "status": "active",
              "canonId": "019de52c-fb09-739d-900c-815b0d9ac526",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "subtitle",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:54.871+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "191599e4-736e-4406-95e9-1c030491c10a",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [
        {
          "tool": {
            "name": "AIDA Model",
            "slug": "aida-model",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-86fc-773c-813f-d416714b8413",
            "version": 1,
            "bodyDocId": null,
            "description": "Attention, Interest, Desire, Action - classic persuasion sequence",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "block",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-5a73-75cf-b15a-565a7234544c",
          "evidence": "Closes the deck on Action - completing earlier Attention/Interest/Desire",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 60,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Action Titles",
            "slug": "action-titles",
            "status": "active",
            "bestFor": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
            "canonId": "019dd956-ac70-700b-a608-ba58e78f5dcc",
            "version": 1,
            "bodyDocId": "816dad3c-9983-41c1-a86e-978ebd582841",
            "description": "The McKinsey-bred discipline of writing every slide title as a complete declarative sentence with a verb and an insight, not a topic label. Each title is a sub-claim that ladders up to the deck's governing thought; read in sequence, the titles reconstruct the executive summary.",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Architect",
          "layer": "slide",
          "agents": [
            "Architect"
          ],
          "matchId": "019de99a-59fc-7022-a55f-b94edad15abb",
          "evidence": "Title 'How to be bold in 2021' is the explicit call-to-action",
          "pageRefs": null,
          "priority": "Core",
          "whenToUse": "Any decision-grade deliverable — strategy recommendation, board update, investment memo, M&A review, post-mortem — where the reader is being asked to agree, decide, or act and will skim the title bar at speed.",
          "confidence": 90,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "whyItWorks": "Solves two failure modes at once. (1) The buried claim: action titles place the conclusion on the page before any analysis is read, so a busy reader doesn't reverse-engineer it from the chart. (2) The spineless deck: because each title is a claim, slides have to ladder up to the governing thought; logical gaps become visible as topic-shaped titles in a sequence that no longer reads as a story.",
          "antipattern": "Topic labels disguised as titles — Volume by quarter, Key findings, Pricing strategy, Margins have been impacted. No verb, or a passive verb with no agent, or a fact (Revenue grew 12%) without the so-what. Also: titles that overreach the chart's evidence, multi-claim X-grew-but-Y-fell welded titles, and mechanical repetition of the same X-drove-Y template across the deck.",
          "cardinality": null,
          "narrativePurpose": "Forces the deck to carry its argument in the title bar so a senior reader can extract the recommendation without opening a single slide; converts a binder of topics into a navigable pyramid where every slide is a node defending the apex."
        },
        {
          "tool": {
            "name": "Before-After-Bridge",
            "slug": "before-after-bridge",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-8604-7188-883f-42370288ad05",
            "version": 1,
            "bodyDocId": null,
            "description": "Narrative structure: Paint the before, show the after, explain the bridge",
            "familyLabel": null,
            "categoryName": "Block",
            "categorySlug": "block"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "aabec15f-0022-49ff-982f-846938ec437b",
          "evidence": "The consumer markets industry was experiencing large-scale disruption well before the COVID-19 pandemic, but the virus accelerated the pace of change and created or deepened forks in consumer behavior",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 0.5,
          "extraction": {
            "at": "2026-07-16 21:20:31.203484+00",
            "model": "or:meta-llama/llama-4-scout",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Closing Techniques",
            "slug": "closing-techniques",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-af13-774b-a4fd-7db0a3a88d51",
            "version": 1,
            "bodyDocId": null,
            "description": "Strong endings: Callback, challenge, vision, clear CTA, memorable line",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-5a24-756d-96c2-a7de8b66ff54",
          "evidence": "Closes deck with vision + clear CTA: 'no better time to move forward'",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 85,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        },
        {
          "tool": {
            "name": "Emotional Appeal",
            "slug": "emotional-appeal",
            "status": "active",
            "bestFor": null,
            "canonId": "019dd956-bde9-7668-8be7-0097678fec59",
            "version": 1,
            "bodyDocId": null,
            "description": "Connecting to audience feelings rather than just logic",
            "familyLabel": null,
            "categoryName": "Slide",
            "categorySlug": "slide"
          },
          "agent": "Storyteller",
          "layer": "slide",
          "agents": [
            "Storyteller"
          ],
          "matchId": "019de99a-5a4a-72e8-ae2e-40ade0d44d7e",
          "evidence": "Doorstep-delivery photo + 'sands keep shifting' line carries feeling",
          "pageRefs": null,
          "priority": null,
          "whenToUse": null,
          "confidence": 70,
          "extraction": {
            "at": "2026-05-02 16:51:36.725365+00",
            "model": "claude-cli",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "pageNumber": 21,
          "whyItWorks": null,
          "antipattern": null,
          "cardinality": null,
          "narrativePurpose": null
        }
      ],
      "frameworks": [],
      "arcBeats": [
        {
          "to": 21,
          "arc": {
            "name": "The Triple Take",
            "slug": "triple-take",
            "status": "active",
            "bestFor": "Data-driven presentations, research findings",
            "canonId": "019dd956-6221-73ad-bc12-378f8eb1f018",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "The Facts (What) -> The Implications (So What) -> The Action (Now What)",
            "description": null,
            "familyLabel": null
          },
          "from": 21,
          "name": "The Action (Now What)",
          "beatId": "019de99a-4e10-766d-a22a-b468bd631fc6",
          "matchId": "019de99a-4d97-751e-81fd-5512f46874d5",
          "beatType": null,
          "evidence": "'How to be bold in 2021' CTA page",
          "position": 3,
          "isPrimaryArc": true,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 78
        },
        {
          "to": 21,
          "arc": {
            "name": "The Consultant's Gambit",
            "slug": "consultants-gambit",
            "status": "active",
            "bestFor": "Business cases, project proposals, strategic recommendations",
            "canonId": "019dd956-5e0a-73c8-b305-81c38c959e9c",
            "version": 1,
            "bodyDocId": "019df22a-2356-73eb-8061-d8c81dc0aa49",
            "structure": "Situation & Context -> Problem & Complication -> Solution & Approach -> Evidence & Proof -> Impact & Next Steps",
            "description": null,
            "familyLabel": null
          },
          "from": 21,
          "name": "Impact & Next Steps",
          "beatId": "019de99a-4f03-7408-b6e8-f6e4a4c89e6c",
          "matchId": "019de99a-4e3b-7415-9dc0-9f8db6b0cd0f",
          "beatType": null,
          "evidence": "'How to be bold' bold-actions paragraph",
          "position": 5,
          "isPrimaryArc": false,
          "parentBeatType": null,
          "alignedBlockIds": null,
          "matchConfidence": 55
        }
      ],
      "loops": [],
      "locked": true
    },
    {
      "page": 22,
      "type": "appendix",
      "title": "Page 22 of the PwC Global Consumer Insights Pulse Survey deck.",
      "function": "appendix",
      "rawType": "appendix_methodology",
      "block": null,
      "metadata": {
        "slideType": "appendix_methodology",
        "slideTypeCanon": {
          "name": "Appendix methodology",
          "slug": "appendix_methodology",
          "status": "active",
          "canonId": "019de52d-07d9-726c-8599-167f2d2ffaa7",
          "version": 1,
          "description": null
        },
        "function": "appendix",
        "functionCanon": {
          "name": "Appendix",
          "slug": "appendix",
          "status": "active",
          "canonId": "019de52d-138d-750b-83c3-49b4bc7a7a38",
          "version": 1,
          "description": null
        },
        "density": "dense",
        "densityScore": 51,
        "componentCount": 6,
        "textChars": 574,
        "nDataPoints": 1,
        "notes": "Page 22 of the PwC Global Consumer Insights Pulse Survey deck.",
        "elementsJson": [
          "paragraph"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:55.908+00",
          "seconds": 2.849,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/22",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-22",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.6,
            "w": 0.5,
            "x": 0.05,
            "y": 0.28
          },
          "kind": "list",
          "text": "List of PwC regional contacts with names and email addresses.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "List",
              "slug": "list",
              "status": "active",
              "canonId": "019de52c-f94b-779b-a53b-fd4904a5f4d2",
              "version": 1,
              "description": "Bullet or numbered list."
            },
            "tool": null,
            "subkind": {
              "name": "Bullet list",
              "slug": "bullet",
              "status": "active",
              "canonId": "019de52c-fc98-7169-a083-5cab805076ca",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "bullet",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.908+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b04f4b71-c822-4984-8c32-1654c394c1d6",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.28,
            "x": 0.67,
            "y": 0.45
          },
          "kind": "paragraph",
          "text": "For the first pulse in the series, we polled 8,738 consumers across 22 territories. The survey was translated into 16 languages and fielded in November 2021.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.908+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "0e6df050-fd8e-43de-b045-93f3876d171c",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.15,
            "w": 0.28,
            "x": 0.67,
            "y": 0.28
          },
          "kind": "paragraph",
          "text": "For the 2021 Global Consumer Insights Survey, PwC adopted a new pulse approach in order to remain agile amid changes in the worldwide landscape and connected to the behaviours of the global consumer.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.908+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "2589b796-3574-42f9-b2a4-de83f0477bd3",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.1,
            "w": 0.28,
            "x": 0.67,
            "y": 0.65
          },
          "kind": "paragraph",
          "text": "This research was undertaken by PwC Research, our global centre of excellence for primary research and evidence-based consulting services.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.908+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "a527578e-4592-44b7-9198-57e78887fe5d",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.67,
            "y": 0.22
          },
          "kind": "title",
          "text": "Methodology",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.908+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "6974ada3-c5a5-44a8-8f5d-c4cd176a775b",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.15,
            "x": 0.05,
            "y": 0.22
          },
          "kind": "title",
          "text": "Contacts",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Title",
              "slug": "title",
              "status": "active",
              "canonId": "019de52c-f7dd-76d9-b848-b1f12bd85cf4",
              "version": 1,
              "description": "Slide title or headline."
            },
            "tool": null,
            "subkind": {
              "name": "Headline",
              "slug": "headline",
              "status": "active",
              "canonId": "019de52c-fae1-7463-9a7c-d60668eced0d",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "headline",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.908+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "cfdceb18-0965-49cf-84f3-60da797b6b54",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    },
    {
      "page": 23,
      "type": "setup",
      "function": "other",
      "rawType": "disclaimer",
      "block": null,
      "metadata": {
        "slideType": "disclaimer",
        "slideTypeCanon": {
          "name": "Disclaimer",
          "slug": "disclaimer",
          "status": "active",
          "canonId": "019de52d-0801-727b-b98a-5ed095aeee78",
          "version": 1,
          "description": null
        },
        "function": "other",
        "functionCanon": {
          "name": "Other (fallback)",
          "slug": "other",
          "status": "active",
          "canonId": "019de52d-15e1-75bc-99dc-07732380e2ce",
          "version": 1,
          "description": null
        },
        "density": "balanced",
        "densityScore": 31,
        "componentCount": 3,
        "textChars": 673,
        "nDataPoints": 0,
        "notes": null,
        "elementsJson": [
          "logo_grid"
        ],
        "confidence": 1,
        "extraction": {
          "model": "google/gemini-3.1-flash-lite-preview-20260303",
          "runId": null,
          "at": "2026-05-02 19:08:55.342+00",
          "seconds": 2.166,
          "promptVersion": "v2-canon-conditioned"
        }
      },
      "links": {
        "slide": "/slides/019dd923-5ca1-7489-b63a-53ad5323c600/23",
        "deck": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600",
        "deckAnchor": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600#slide-23",
        "deckJson": "/decks/019dd923-5ca1-7489-b63a-53ad5323c600.json"
      },
      "components": [
        {
          "bbox": {
            "h": 0.1,
            "w": 0.65,
            "x": 0.05,
            "y": 0.87
          },
          "kind": "disclaimer",
          "text": "At PwC, our purpose is to build trust in society and solve important problems. We're a network of firms in 155 countries with over 284,000 people who are committed to delivering quality in assurance, advisory and tax services. Find out more and tell us what matters to you by visiting us at www.pwc.com. © 2021 PwC. All rights reserved. PwC refers to the PwC network and/or one or more of its member firms, each of which is a separate legal entity. Please see www.pwc.com/structure for further details. This content is for general information purposes only, and should not be used as a substitute for consultation with professional advisers.",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Disclaimer",
              "slug": "disclaimer",
              "status": "active",
              "canonId": "91173477-d91f-4024-bbaf-d4f93e3f82dc",
              "version": 1,
              "description": "Legal/cautionary text that occupies most of the body of its slide."
            },
            "tool": null,
            "subkind": null,
            "framework": null
          },
          "subkind": null,
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.342+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "256ddd20-5bcf-46c2-8546-db1aef243178",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.08,
            "w": 0.1,
            "x": 0.05,
            "y": 0.725
          },
          "kind": "image",
          "text": "PwC logo",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Image",
              "slug": "image",
              "status": "active",
              "canonId": "019de52c-f978-701f-a720-51d029d769e7",
              "version": 1,
              "description": "Photo, illustration, screenshot or icon."
            },
            "tool": null,
            "subkind": {
              "name": "Logo",
              "slug": "logo",
              "status": "active",
              "canonId": "019de52c-fdaf-743d-94c4-d7c6a0e55302",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "logo",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.342+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "415c62a7-2c0e-4711-9fde-55da48fe0c55",
          "parentComponentId": null
        },
        {
          "bbox": {
            "h": 0.03,
            "w": 0.25,
            "x": 0.05,
            "y": 0.13
          },
          "kind": "paragraph",
          "text": "pwc.com/consumerinsights",
          "attrs": null,
          "canon": {
            "kind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "5f2affc0-941d-4d07-959d-4bfc1930cea4",
              "version": 1,
              "description": "Single prose block in the body of a slide."
            },
            "tool": null,
            "subkind": {
              "name": "Paragraph",
              "slug": "paragraph",
              "status": "active",
              "canonId": "019de52c-fb80-75af-aa5c-a7a4bfac2433",
              "version": 1,
              "description": null
            },
            "framework": null
          },
          "subkind": "paragraph",
          "groupRole": null,
          "confidence": null,
          "extraction": {
            "at": "2026-05-02 19:08:55.342+00",
            "model": "google/gemini-3.1-flash-lite-preview-20260303",
            "runId": null,
            "seconds": null,
            "promptVersion": null
          },
          "componentId": "b7ee15c4-9fde-4766-9b8e-368b6ef7e772",
          "parentComponentId": null
        }
      ],
      "metrics": [],
      "tools": [],
      "frameworks": [],
      "arcBeats": [],
      "loops": [],
      "locked": true
    }
  ],
  "arcBeats": [
    {
      "from": 1,
      "to": 6,
      "label": "The Facts (What)",
      "description": "Cover, intro and general digital-trend data (p3-6)"
    },
    {
      "from": 7,
      "to": 20,
      "label": "The Implications (So What)",
      "description": "Four 'fault line' segments with 'Our insight:' callouts on p7-20"
    },
    {
      "from": 21,
      "to": 21,
      "label": "The Action (Now What)",
      "description": "'How to be bold in 2021' CTA page"
    }
  ],
  "loops": [
    {
      "from": 3,
      "to": 6,
      "label": "Pattern Hunter",
      "description": "Stack four independent digital-shift data points into a single 'consumers are everywhere' pattern"
    },
    {
      "from": 7,
      "to": 10,
      "label": "Segmentation Split",
      "description": "Split consumers by work-location to surface the 'Zoom effect' segment"
    },
    {
      "from": 11,
      "to": 14,
      "label": "Segmentation Split",
      "description": "Split consumers by generation to expose generational shopping divergence"
    },
    {
      "from": 15,
      "to": 17,
      "label": "Segmentation Split",
      "description": "Split out a 'conscientious cohort' vs the global sample on health/safety and ESG"
    },
    {
      "from": 18,
      "to": 20,
      "label": "Segmentation Split",
      "description": "Split consumers by region to show Asia-Pacific divergence on frequency and ESG"
    }
  ]
}