{
  "schema": "axis.efeonce-photography-reference.v1",
  "title": "Lenguaje fotográfico Efeonce · referencias aprobadas",
  "page": "/references/photography/",
  "rationale": "/references/photography/why/",
  "status": "Dirección aprobada 2026-09-19; rostros revisados 2026-09-26. Imágenes generadas con IA: referencia de dirección, no fotografía de stock.",
  "usage": [
    "Antes de producir una foto de marca Efeonce, abrir las referencias de la sección que corresponda al registro, la cámara o la palanca de la pieza.",
    "Cada foto tiene su receta en recipe: prompt verbatim, ficha, comandos, referencias y documentos de origen.",
    "Usar estas imágenes como referencia de dirección (luz, color, encuadre, oficio). Para identidad de personas, usar sólo las secciones identidad-julio e identidad-nexa.",
    "No copiar ni publicar estas imágenes como piezas propias; no son stock.",
    "Poner a una persona en una escena: regenerar la escena completa con su identidad; nunca injertar la cara.",
    "Antes de producir, lee el porqué de cada decisión en /references/photography/why/: registros, cámaras, color, lecho, formatos nativos, personas, mascotas y La órbita, con su evidencia.",
    "Registro cine: parte de la foto aprobada más cercana (pnpm foto:cine:nueva --desde <id>), declara llave, primerPlano, fondo, fenomeno y alcance en la ficha, mide con pnpm foto:validar:cine y pide revisión al agente cine-reviewer antes y después de generar."
  ],
  "video": {
    "caption": "CMP-001 · No fuiste tú · 15 s · 4:5",
    "url": "/media/photography/cmp001-01-video-4x5.mp4",
    "poster": "/media/photography/cmp001-01-video-4x5-poster.jpg"
  },
  "sections": [
    {
      "id": "finales",
      "title": "Lo aprobado y trabajado",
      "kicker": "La vara",
      "lede": "Piezas completas aprobadas para pauta: foto, jerarquía, CTA y firma. El canon se lee desde aquí; lo demás es exploración.",
      "items": [
        {
          "slug": "cmp001-01",
          "caption": "CMP-001 · No fuiste tú",
          "url": "/media/photography/cmp001-01.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp001-01.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cmp001-02",
          "caption": "CMP-001 · Sin tu nombre",
          "url": "/media/photography/cmp001-02.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp001-02.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cmp001-03",
          "caption": "CMP-001 · No te leyó",
          "url": "/media/photography/cmp001-03.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp001-03.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cmp001-04",
          "caption": "CMP-001 · ¿Sales tú?",
          "url": "/media/photography/cmp001-04.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp001-04.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp001-05",
          "caption": "CMP-001 · Te reconoces",
          "url": "/media/photography/cmp001-05.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp001-05.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp001-06",
          "caption": "CMP-001 · Sé la referencia",
          "url": "/media/photography/cmp001-06.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp001-06.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp001-07",
          "caption": "CMP-001 · Que te elijan",
          "url": "/media/photography/cmp001-07.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp001-07.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp002-01",
          "caption": "CMP-002 · Sin exponer tus datos",
          "url": "/media/photography/cmp002-01.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp002-01.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp002-02",
          "caption": "CMP-002 · Tu agente ya la llamó",
          "url": "/media/photography/cmp002-02.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp002-02.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp002-04",
          "caption": "CMP-002 · Tu pipeline real",
          "url": "/media/photography/cmp002-04.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp002-04.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp002-05",
          "caption": "CMP-002 · Todo lo que ya pagaste",
          "url": "/media/photography/cmp002-05.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp002-05.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp002-06",
          "caption": "CMP-002 · La IA es un gasto",
          "url": "/media/photography/cmp002-06.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp002-06.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp002-07",
          "caption": "CMP-002 · Tu equipo multiplicado",
          "url": "/media/photography/cmp002-07.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp002-07.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s01-4x5",
          "caption": "CMP-004 · Te reconocen · 4:5",
          "url": "/media/photography/cmp004-s01-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s01-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s02-4x5",
          "caption": "CMP-004 · Imagen propia · 4:5",
          "url": "/media/photography/cmp004-s02-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s02-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s03-4x5",
          "caption": "CMP-004 · En todos · 4:5",
          "url": "/media/photography/cmp004-s03-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s03-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s04-4x5",
          "caption": "CMP-004 · Cada detalle · 4:5",
          "url": "/media/photography/cmp004-s04-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s04-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s05-4x5",
          "caption": "CMP-004 · En un día · 4:5",
          "url": "/media/photography/cmp004-s05-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s05-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s06-4x5",
          "caption": "CMP-004 · Que se mira · 4:5",
          "url": "/media/photography/cmp004-s06-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s06-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s07-4x5",
          "caption": "CMP-004 · Mismo criterio · 4:5",
          "url": "/media/photography/cmp004-s07-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s07-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s08-4x5",
          "caption": "CMP-004 · Marca intacta · 4:5",
          "url": "/media/photography/cmp004-s08-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s08-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf1-4x5",
          "caption": "CMP-004 · BF1 Nexa y los Sparks · 4:5",
          "url": "/media/photography/cmp004-bf1-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf1-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf2-4x5",
          "caption": "CMP-004 · BF2 el squad y sus agentes · 4:5",
          "url": "/media/photography/cmp004-bf2-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf2-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf3-4x5",
          "caption": "CMP-004 · BF3 producción a escala · 4:5",
          "url": "/media/photography/cmp004-bf3-4x5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf3-4x5.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s01-9x16",
          "caption": "CMP-004 · Te reconocen · 9:16",
          "url": "/media/photography/cmp004-s01-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s01-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s02-9x16",
          "caption": "CMP-004 · Imagen propia · 9:16",
          "url": "/media/photography/cmp004-s02-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s02-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s03-9x16",
          "caption": "CMP-004 · En todos · 9:16",
          "url": "/media/photography/cmp004-s03-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s03-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s04-9x16",
          "caption": "CMP-004 · Cada detalle · 9:16",
          "url": "/media/photography/cmp004-s04-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s04-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s05-9x16",
          "caption": "CMP-004 · En un día · 9:16",
          "url": "/media/photography/cmp004-s05-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s05-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s06-9x16",
          "caption": "CMP-004 · Que se mira · 9:16",
          "url": "/media/photography/cmp004-s06-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s06-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s07-9x16",
          "caption": "CMP-004 · Mismo criterio · 9:16",
          "url": "/media/photography/cmp004-s07-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s07-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s08-9x16",
          "caption": "CMP-004 · Marca intacta · 9:16",
          "url": "/media/photography/cmp004-s08-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s08-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf1-9x16",
          "caption": "CMP-004 · BF1 Nexa y los Sparks · 9:16",
          "url": "/media/photography/cmp004-bf1-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf1-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf2-9x16",
          "caption": "CMP-004 · BF2 el squad y sus agentes · 9:16",
          "url": "/media/photography/cmp004-bf2-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf2-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf3-9x16",
          "caption": "CMP-004 · BF3 producción a escala · 9:16",
          "url": "/media/photography/cmp004-bf3-9x16.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf3-9x16.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s01-1x1",
          "caption": "CMP-004 · Te reconocen · 1:1",
          "url": "/media/photography/cmp004-s01-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s01-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s02-1x1",
          "caption": "CMP-004 · Imagen propia · 1:1",
          "url": "/media/photography/cmp004-s02-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s02-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s03-1x1",
          "caption": "CMP-004 · En todos · 1:1",
          "url": "/media/photography/cmp004-s03-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s03-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s04-1x1",
          "caption": "CMP-004 · Cada detalle · 1:1",
          "url": "/media/photography/cmp004-s04-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s04-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s05-1x1",
          "caption": "CMP-004 · En un día · 1:1",
          "url": "/media/photography/cmp004-s05-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s05-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s06-1x1",
          "caption": "CMP-004 · Que se mira · 1:1",
          "url": "/media/photography/cmp004-s06-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s06-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s07-1x1",
          "caption": "CMP-004 · Mismo criterio · 1:1",
          "url": "/media/photography/cmp004-s07-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s07-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s08-1x1",
          "caption": "CMP-004 · Marca intacta · 1:1",
          "url": "/media/photography/cmp004-s08-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-s08-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf1-1x1",
          "caption": "CMP-004 · BF1 Nexa y los Sparks · 1:1",
          "url": "/media/photography/cmp004-bf1-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf1-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf2-1x1",
          "caption": "CMP-004 · BF2 el squad y sus agentes · 1:1",
          "url": "/media/photography/cmp004-bf2-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf2-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf3-1x1",
          "caption": "CMP-004 · BF3 producción a escala · 1:1",
          "url": "/media/photography/cmp004-bf3-1x1.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/cmp004-bf3-1x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s01-1-91x1",
          "caption": "CMP-004 · Te reconocen · 1,91:1",
          "url": "/media/photography/cmp004-s01-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-s01-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s02-1-91x1",
          "caption": "CMP-004 · Imagen propia · 1,91:1",
          "url": "/media/photography/cmp004-s02-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-s02-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s03-1-91x1",
          "caption": "CMP-004 · En todos · 1,91:1",
          "url": "/media/photography/cmp004-s03-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-s03-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s04-1-91x1",
          "caption": "CMP-004 · Cada detalle · 1,91:1",
          "url": "/media/photography/cmp004-s04-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-s04-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s05-1-91x1",
          "caption": "CMP-004 · En un día · 1,91:1",
          "url": "/media/photography/cmp004-s05-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-s05-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s06-1-91x1",
          "caption": "CMP-004 · Que se mira · 1,91:1",
          "url": "/media/photography/cmp004-s06-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-s06-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s07-1-91x1",
          "caption": "CMP-004 · Mismo criterio · 1,91:1",
          "url": "/media/photography/cmp004-s07-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-s07-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-s08-1-91x1",
          "caption": "CMP-004 · Marca intacta · 1,91:1",
          "url": "/media/photography/cmp004-s08-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-s08-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf1-1-91x1",
          "caption": "CMP-004 · BF1 Nexa y los Sparks · 1,91:1",
          "url": "/media/photography/cmp004-bf1-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-bf1-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf2-1-91x1",
          "caption": "CMP-004 · BF2 el squad y sus agentes · 1,91:1",
          "url": "/media/photography/cmp004-bf2-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-bf2-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "cmp004-bf3-1-91x1",
          "caption": "CMP-004 · BF3 producción a escala · 1,91:1",
          "url": "/media/photography/cmp004-bf3-1-91x1.webp",
          "width": 1400,
          "height": 733,
          "recipe": "/media/photography/recipes/cmp004-bf3-1-91x1.json",
          "has_prompt": false,
          "has_ficha": true
        }
      ]
    },
    {
      "id": "registro-a",
      "title": "Registro A · Documental",
      "kicker": "El oficio a la vista",
      "lede": "La foto es el mensaje: obra, mecanismo y personas decidiendo. Nadie mira al lente.",
      "items": [
        {
          "slug": "kv-cafe",
          "caption": "Revisión de KV de café",
          "url": "/media/photography/kv-cafe.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/kv-cafe.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "variantes-etiqueta",
          "caption": "Variantes de etiqueta",
          "url": "/media/photography/variantes-etiqueta.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/variantes-etiqueta.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "tiltshift-rodaje",
          "caption": "Rodaje en tilt-shift · Santiago",
          "url": "/media/photography/tiltshift-rodaje.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/tiltshift-rodaje.json",
          "has_prompt": true,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "registro-cine",
      "title": "Registro cine",
      "kicker": "Una sola luz, tres planos",
      "lede": "Sólo con Nexa protagonista o en las recetas de deck y portada que lo admiten. Una fuente dura con lado y sin relleno, primer plano junto al lente y luces de fondo en bokeh; el fenómeno de luz es el servicio. Para producir, parte de la más cercana con foto:cine:nueva y revisa con el agente cine-reviewer.",
      "items": [
        {
          "slug": "cine-nx7d",
          "caption": "Nexa despliega a su squad",
          "url": "/media/photography/cine-nx7d.webp",
          "width": 1120,
          "height": 640,
          "recipe": "/media/photography/recipes/cine-nx7d.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-nx5b",
          "caption": "Nexa con el traje biónico",
          "url": "/media/photography/cine-nx5b.webp",
          "width": 1120,
          "height": 640,
          "recipe": "/media/photography/recipes/cine-nx5b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-nx6b",
          "caption": "Nexa · cinco órbitas",
          "url": "/media/photography/cine-nx6b.webp",
          "width": 1120,
          "height": 640,
          "recipe": "/media/photography/recipes/cine-nx6b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-ae2b",
          "caption": "AEO · la IA te elige",
          "url": "/media/photography/cine-ae2b.webp",
          "width": 1120,
          "height": 640,
          "recipe": "/media/photography/recipes/cine-ae2b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-se1",
          "caption": "SEO · te encuentran",
          "url": "/media/photography/cine-se1.webp",
          "width": 1120,
          "height": 640,
          "recipe": "/media/photography/recipes/cine-se1.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-rv1b",
          "caption": "RevOps · motor de revenue",
          "url": "/media/photography/cine-rv1b.webp",
          "width": 1120,
          "height": 640,
          "recipe": "/media/photography/recipes/cine-rv1b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-cr4",
          "caption": "Creativo · el squad te la entrega",
          "url": "/media/photography/cine-cr4.webp",
          "width": 1120,
          "height": 640,
          "recipe": "/media/photography/recipes/cine-cr4.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-sp2b",
          "caption": "Sección partida · días, no meses",
          "url": "/media/photography/cine-sp2b.webp",
          "width": 1120,
          "height": 1120,
          "recipe": "/media/photography/recipes/cine-sp2b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-sp1",
          "caption": "Sección partida · la IA te cita",
          "url": "/media/photography/cine-sp1.webp",
          "width": 1120,
          "height": 1120,
          "recipe": "/media/photography/recipes/cine-sp1.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "cine-wb1c",
          "caption": "Web · bordado del kit",
          "url": "/media/photography/cine-wb1c.webp",
          "width": 1120,
          "height": 640,
          "recipe": "/media/photography/recipes/cine-wb1c.json",
          "has_prompt": true,
          "has_ficha": true
        }
      ]
    },
    {
      "id": "curado",
      "title": "Set curado",
      "kicker": "12 piezas",
      "lede": "La hoja que resume el sistema: industrias variadas, luz con carácter, color que nace en la escena.",
      "items": [
        {
          "slug": "curado-harina",
          "caption": "Panadería · haz de sol · Lima",
          "url": "/media/photography/curado-harina.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-harina.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-pipeline",
          "caption": "Pipeline al atardecer · Bogotá",
          "url": "/media/photography/curado-pipeline.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-pipeline.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-kv-cafe",
          "caption": "Revisión de KV de café",
          "url": "/media/photography/curado-kv-cafe.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-kv-cafe.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-reflejo-dorado",
          "caption": "Reflejo dorado · Bogotá",
          "url": "/media/photography/curado-reflejo-dorado.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-reflejo-dorado.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-marco",
          "caption": "Marco dentro del marco · Lima",
          "url": "/media/photography/curado-marco.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-marco.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-retail",
          "caption": "Retail de bebidas · CDMX",
          "url": "/media/photography/curado-retail.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-retail.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-tiltshift",
          "caption": "Rodaje en tilt-shift · Santiago",
          "url": "/media/photography/curado-tiltshift.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-tiltshift.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-barrido-mercado",
          "caption": "Barrido en mercado · Lima",
          "url": "/media/photography/curado-barrido-mercado.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-barrido-mercado.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-persianas",
          "caption": "Retrato con persianas · Bogotá",
          "url": "/media/photography/curado-persianas.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-persianas.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-noche",
          "caption": "Noche · Santiago",
          "url": "/media/photography/curado-noche.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-noche.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-escala",
          "caption": "Escala frente a datos · CDMX",
          "url": "/media/photography/curado-escala.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-escala.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "curado-retrato-polo",
          "caption": "Retrato con polo",
          "url": "/media/photography/curado-retrato-polo.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/curado-retrato-polo.json",
          "has_prompt": true,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "camaras",
      "title": "Por cámara y ángulo",
      "kicker": "Cómo se fotografía",
      "lede": "Cada toma declara lente, altura y posición.",
      "items": [
        {
          "slug": "camara-ojo-de-pez",
          "caption": "Ojo de pez",
          "url": "/media/photography/camara-ojo-de-pez.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/camara-ojo-de-pez.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "camara-dron",
          "caption": "Dron cenital",
          "url": "/media/photography/camara-dron.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/camara-dron.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "camara-tilt-shift",
          "caption": "Tilt-shift",
          "url": "/media/photography/camara-tilt-shift.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/camara-tilt-shift.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "camara-contrapicado",
          "caption": "Contrapicado",
          "url": "/media/photography/camara-contrapicado.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/camara-contrapicado.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "camara-reflejo",
          "caption": "Reflejo",
          "url": "/media/photography/camara-reflejo.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/camara-reflejo.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "camara-tele-200",
          "caption": "Tele 200 mm",
          "url": "/media/photography/camara-tele-200.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/camara-tele-200.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "camara-respaldo",
          "caption": "Por encima del respaldo",
          "url": "/media/photography/camara-respaldo.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/camara-respaldo.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "camara-retrato-105",
          "caption": "Retrato 105 mm",
          "url": "/media/photography/camara-retrato-105.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/camara-retrato-105.json",
          "has_prompt": true,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "palancas",
      "title": "Por palanca",
      "kicker": "Qué hace la foto",
      "lede": "Una sola palanca de encuadre por pieza.",
      "items": [
        {
          "slug": "palanca-fragmento-julio",
          "caption": "Fragmento · Julio",
          "url": "/media/photography/palanca-fragmento-julio.webp",
          "width": 1120,
          "height": 1400,
          "tag": "La que mejor conserva sus rasgos",
          "recipe": "/media/photography/recipes/palanca-fragmento-julio.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-fragmento-nexa",
          "caption": "Fragmento · Nexa",
          "url": "/media/photography/palanca-fragmento-nexa.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-fragmento-nexa.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-fragmento-julio-b",
          "caption": "Fragmento · Julio, variante",
          "url": "/media/photography/palanca-fragmento-julio-b.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-fragmento-julio-b.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "palanca-fragmento-nexa-b",
          "caption": "Fragmento · Nexa, variante",
          "url": "/media/photography/palanca-fragmento-nexa-b.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-fragmento-nexa-b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-pov",
          "caption": "POV",
          "url": "/media/photography/palanca-pov.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-pov.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "palanca-oclusion",
          "caption": "Oclusión",
          "url": "/media/photography/palanca-oclusion.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-oclusion.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "palanca-reflejo",
          "caption": "Reflejo",
          "url": "/media/photography/palanca-reflejo.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-reflejo.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "palanca-luz-motivada",
          "caption": "Luz motivada",
          "url": "/media/photography/palanca-luz-motivada.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-luz-motivada.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "palanca-combinada",
          "caption": "Combinada",
          "url": "/media/photography/palanca-combinada.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-combinada.json",
          "has_prompt": false,
          "has_ficha": true
        },
        {
          "slug": "palanca-instrumento",
          "caption": "Instrumento",
          "url": "/media/photography/palanca-instrumento.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-instrumento.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-suelo-oblicuo",
          "caption": "Suelo oblicuo",
          "url": "/media/photography/palanca-suelo-oblicuo.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-suelo-oblicuo.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-suelo-oblicuo-lima",
          "caption": "Suelo oblicuo · Lima",
          "url": "/media/photography/palanca-suelo-oblicuo-lima.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-suelo-oblicuo-lima.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-sombra",
          "caption": "Sombra",
          "url": "/media/photography/palanca-sombra.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-sombra.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-ausencia",
          "caption": "Ausencia",
          "url": "/media/photography/palanca-ausencia.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-ausencia.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-little-planet",
          "caption": "Little planet",
          "url": "/media/photography/palanca-little-planet.webp",
          "width": 1400,
          "height": 1400,
          "tag": "Aprobadísima",
          "recipe": "/media/photography/recipes/palanca-little-planet.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-dentro-del-objeto",
          "caption": "Dentro del objeto · Miami",
          "url": "/media/photography/palanca-dentro-del-objeto.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-dentro-del-objeto.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-escucha",
          "caption": "Escucha · Nexa",
          "url": "/media/photography/palanca-escucha.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-escucha.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-entre-dos",
          "caption": "Entre dos",
          "url": "/media/photography/palanca-entre-dos.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-entre-dos.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-variantes",
          "caption": "Variantes",
          "url": "/media/photography/palanca-variantes.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-variantes.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-marcado",
          "caption": "Marcado",
          "url": "/media/photography/palanca-marcado.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-marcado.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-escala-haz",
          "caption": "Escala con haz · Nexa",
          "url": "/media/photography/palanca-escala-haz.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-escala-haz.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-tilt-shift-cdmx",
          "caption": "Tilt-shift · rodaje CDMX",
          "url": "/media/photography/palanca-tilt-shift-cdmx.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-tilt-shift-cdmx.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-pov-b",
          "caption": "POV · te hablo a ti (B)",
          "url": "/media/photography/palanca-pov-b.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-pov-b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-larga-b",
          "caption": "Larga exposición · el que no se mueve (B)",
          "url": "/media/photography/palanca-larga-b.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-larga-b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-proyeccion-b",
          "caption": "Proyección · dentro de mi trabajo (B)",
          "url": "/media/photography/palanca-proyeccion-b.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-proyeccion-b.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "palanca-barrido",
          "caption": "Barrido",
          "url": "/media/photography/palanca-barrido.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/palanca-barrido.json",
          "has_prompt": true,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "personas",
      "title": "Personas",
      "kicker": "Julio y Nexa en escena",
      "lede": "Rostros reales o no hay foto: la identidad se sostiene con las referencias aprobadas.",
      "items": [
        {
          "slug": "persona-j1",
          "caption": "J1 · retrato",
          "url": "/media/photography/persona-j1.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-j1.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-j2",
          "caption": "J2 · rodaje con polo",
          "url": "/media/photography/persona-j2.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-j2.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "persona-j3",
          "caption": "J3 · escenario",
          "url": "/media/photography/persona-j3.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-j3.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-jn1",
          "caption": "JN1 · mesa",
          "url": "/media/photography/persona-jn1.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-jn1.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-jn3",
          "caption": "JN3 · calle",
          "url": "/media/photography/persona-jn3.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-jn3.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-jn4",
          "caption": "JN4 · atención compartida",
          "url": "/media/photography/persona-jn4.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-jn4.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "persona-j4",
          "caption": "J4 · asiento a ras",
          "url": "/media/photography/persona-j4.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-j4.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-j5",
          "caption": "J5 · respaldo",
          "url": "/media/photography/persona-j5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-j5.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-jn5",
          "caption": "JN5 · noche",
          "url": "/media/photography/persona-jn5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-jn5.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-n1",
          "caption": "N1 · asiento a ras",
          "url": "/media/photography/persona-n1.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-n1.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-n2",
          "caption": "N2 · reflejo",
          "url": "/media/photography/persona-n2.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-n2.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "persona-n4",
          "caption": "N4 · escala",
          "url": "/media/photography/persona-n4.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/persona-n4.json",
          "has_prompt": true,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "mascotas",
      "title": "Con mascotas y 3D",
      "kicker": "Partners y marca en escena",
      "lede": "Criaturas de partners y activos 3D de la marca como parte de la escena.",
      "items": [
        {
          "slug": "mascota-m1",
          "caption": "Julio con Clawd y Codex",
          "url": "/media/photography/mascota-m1.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/mascota-m1.json",
          "has_prompt": true,
          "has_ficha": true
        },
        {
          "slug": "mascota-m2",
          "caption": "Nexa con Codex",
          "url": "/media/photography/mascota-m2.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/mascota-m2.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "mascota-m3",
          "caption": "Todos en ojo de pez",
          "url": "/media/photography/mascota-m3.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/mascota-m3.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "mascota-m5",
          "caption": "Nexa con la nave",
          "url": "/media/photography/mascota-m5.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/mascota-m5.json",
          "has_prompt": true,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "reservas",
      "title": "Reserva de espacio",
      "kicker": "Piloto 20-09",
      "lede": "Tomas pedidas para alojar después texto o una cita al margen.",
      "items": [
        {
          "slug": "margin-field",
          "caption": "Margin field · 4:5",
          "url": "/media/photography/margin-field.webp",
          "width": 1120,
          "height": 1400,
          "tag": "Reserva para una cita al margen",
          "recipe": "/media/photography/recipes/margin-field.json",
          "has_prompt": true,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "identidad-julio",
      "title": "Identidad · Julio",
      "kicker": "Referencias canónicas",
      "lede": "Las once referencias aprobadas y sus seis ángulos: la fuente de toda foto con su rostro.",
      "items": [
        {
          "slug": "julio-ap-01",
          "caption": "Referencia 01",
          "url": "/media/photography/julio-ap-01.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-01.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-03",
          "caption": "Referencia 03",
          "url": "/media/photography/julio-ap-03.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-03.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-04",
          "caption": "Referencia 04",
          "url": "/media/photography/julio-ap-04.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-04.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-05",
          "caption": "Referencia 05",
          "url": "/media/photography/julio-ap-05.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-05.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-06",
          "caption": "Referencia 06",
          "url": "/media/photography/julio-ap-06.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-06.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-07",
          "caption": "Referencia 07",
          "url": "/media/photography/julio-ap-07.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-07.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-08",
          "caption": "Referencia 08",
          "url": "/media/photography/julio-ap-08.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-08.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-09",
          "caption": "Referencia 09",
          "url": "/media/photography/julio-ap-09.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-09.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-10",
          "caption": "Referencia 10",
          "url": "/media/photography/julio-ap-10.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-10.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-11",
          "caption": "Referencia 11",
          "url": "/media/photography/julio-ap-11.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-11.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-ap-12",
          "caption": "Referencia 12",
          "url": "/media/photography/julio-ap-12.webp",
          "width": 788,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-ap-12.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-45-der",
          "caption": "Tres cuartos · derecha",
          "url": "/media/photography/julio-45-der.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-45-der.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-45-izq",
          "caption": "Tres cuartos · izquierda",
          "url": "/media/photography/julio-45-izq.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-45-izq.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-perfil-der",
          "caption": "Perfil derecho",
          "url": "/media/photography/julio-perfil-der.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-perfil-der.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-perfil-izq",
          "caption": "Perfil izquierdo",
          "url": "/media/photography/julio-perfil-izq.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-perfil-izq.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-135-trasero",
          "caption": "135° trasero",
          "url": "/media/photography/julio-135-trasero.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-135-trasero.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "julio-espalda",
          "caption": "Espalda",
          "url": "/media/photography/julio-espalda.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/julio-espalda.json",
          "has_prompt": false,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "identidad-nexa",
      "title": "Identidad · Nexa",
      "kicker": "Referencias canónicas",
      "lede": "Anclas, expresiones y ángulos de la identidad A de Nexa.",
      "items": [
        {
          "slug": "nexa-ancla-1-rostro-frontal",
          "caption": "Ancla · 1 rostro frontal",
          "url": "/media/photography/nexa-ancla-1-rostro-frontal.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-ancla-1-rostro-frontal.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-ancla-2-rostro-tresquartos",
          "caption": "Ancla · 2 rostro tresquartos",
          "url": "/media/photography/nexa-ancla-2-rostro-tresquartos.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-ancla-2-rostro-tresquartos.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-ancla-3-rostro-perfil",
          "caption": "Ancla · 3 rostro perfil",
          "url": "/media/photography/nexa-ancla-3-rostro-perfil.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-ancla-3-rostro-perfil.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-ancla-4-busto-tresquartos",
          "caption": "Ancla · 4 busto tresquartos",
          "url": "/media/photography/nexa-ancla-4-busto-tresquartos.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-ancla-4-busto-tresquartos.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-ancla-5-cuerpo-frontal",
          "caption": "Ancla · 5 cuerpo frontal",
          "url": "/media/photography/nexa-ancla-5-cuerpo-frontal.webp",
          "width": 933,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-ancla-5-cuerpo-frontal.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-ancla-6-cuerpo-tresquartos",
          "caption": "Ancla · 6 cuerpo tresquartos",
          "url": "/media/photography/nexa-ancla-6-cuerpo-tresquartos.webp",
          "width": 933,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-ancla-6-cuerpo-tresquartos.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-ancla-7-cuerpo-perfil",
          "caption": "Ancla · 7 cuerpo perfil",
          "url": "/media/photography/nexa-ancla-7-cuerpo-perfil.webp",
          "width": 933,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-ancla-7-cuerpo-perfil.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-ancla-8-manos",
          "caption": "Ancla · 8 manos",
          "url": "/media/photography/nexa-ancla-8-manos.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-ancla-8-manos.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-01-carcajada",
          "caption": "Expresión · carcajada",
          "url": "/media/photography/nexa-expr-01-carcajada.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-01-carcajada.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-02-risa-elegante",
          "caption": "Expresión · risa elegante",
          "url": "/media/photography/nexa-expr-02-risa-elegante.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-02-risa-elegante.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-03-sorprendida",
          "caption": "Expresión · sorprendida",
          "url": "/media/photography/nexa-expr-03-sorprendida.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-03-sorprendida.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-04-esceptica",
          "caption": "Expresión · esceptica",
          "url": "/media/photography/nexa-expr-04-esceptica.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-04-esceptica.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-05-pensativa",
          "caption": "Expresión · pensativa",
          "url": "/media/photography/nexa-expr-05-pensativa.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-05-pensativa.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-06-neutra-reposo",
          "caption": "Expresión · neutra reposo",
          "url": "/media/photography/nexa-expr-06-neutra-reposo.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-06-neutra-reposo.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-07-preocupada",
          "caption": "Expresión · preocupada",
          "url": "/media/photography/nexa-expr-07-preocupada.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-07-preocupada.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-08-conviccion",
          "caption": "Expresión · conviccion",
          "url": "/media/photography/nexa-expr-08-conviccion.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-08-conviccion.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-09-escucha-empatica",
          "caption": "Expresión · escucha empatica",
          "url": "/media/photography/nexa-expr-09-escucha-empatica.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-09-escucha-empatica.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-10-curiosa",
          "caption": "Expresión · curiosa",
          "url": "/media/photography/nexa-expr-10-curiosa.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-10-curiosa.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-11-complicidad",
          "caption": "Expresión · complicidad",
          "url": "/media/photography/nexa-expr-11-complicidad.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-11-complicidad.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-expr-12-mirada-lateral",
          "caption": "Expresión · mirada lateral",
          "url": "/media/photography/nexa-expr-12-mirada-lateral.webp",
          "width": 1120,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-expr-12-mirada-lateral.json",
          "has_prompt": true,
          "has_ficha": false
        },
        {
          "slug": "nexa-45-der",
          "caption": "Ángulo · 45 der",
          "url": "/media/photography/nexa-45-der.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-45-der.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "nexa-45-izq",
          "caption": "Ángulo · 45 izq",
          "url": "/media/photography/nexa-45-izq.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-45-izq.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "nexa-perfil-der",
          "caption": "Ángulo · perfil der",
          "url": "/media/photography/nexa-perfil-der.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-perfil-der.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "nexa-perfil-izq",
          "caption": "Ángulo · perfil izq",
          "url": "/media/photography/nexa-perfil-izq.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-perfil-izq.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "nexa-135-trasero",
          "caption": "Ángulo · 135 trasero",
          "url": "/media/photography/nexa-135-trasero.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-135-trasero.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "nexa-espalda",
          "caption": "Ángulo · espalda",
          "url": "/media/photography/nexa-espalda.webp",
          "width": 1400,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-espalda.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "nexa-cuerpo-espalda",
          "caption": "Ángulo · cuerpo espalda",
          "url": "/media/photography/nexa-cuerpo-espalda.webp",
          "width": 933,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-cuerpo-espalda.json",
          "has_prompt": false,
          "has_ficha": false
        },
        {
          "slug": "nexa-cuerpo-perfil-izq",
          "caption": "Ángulo · cuerpo perfil izq",
          "url": "/media/photography/nexa-cuerpo-perfil-izq.webp",
          "width": 933,
          "height": 1400,
          "recipe": "/media/photography/recipes/nexa-cuerpo-perfil-izq.json",
          "has_prompt": false,
          "has_ficha": false
        }
      ]
    },
    {
      "id": "firma",
      "title": "Firma de correo",
      "kicker": "Foto y línea gráfica",
      "lede": "La firma oficial: retrato con la órbita.",
      "items": [
        {
          "slug": "firma-correo",
          "caption": "Firma de correo oficial v3.1",
          "url": "/media/photography/firma-correo.webp",
          "width": 1400,
          "height": 993,
          "recipe": "/media/photography/recipes/firma-correo.json",
          "has_prompt": false,
          "has_ficha": false
        }
      ]
    }
  ],
  "total": 179
}
