{
  "id": "greengrocer-growers",
  "name": "Growers",
  "theme": "greengrocer",
  "category": "Marketing",
  "description": "A campaign page for the growers where each farm is a crate with its distance in place of a price and the same 6px category bar system.",
  "layout": "A hard-lit stall image, then grower crates whose price block position is occupied by the distance figure, keeping the layout identical.",
  "modules": [
    {
      "key": "hero",
      "name": "Stall image",
      "html": "\n<figure class=\"fb\"><img src=\"{{ART stall}}\" alt=\"{{ARTALT stall}}\"></figure>"
    },
    {
      "key": "intro",
      "name": "Introduction",
      "html": "\n<header class=\"ih\"><span class=\"k\">Who grows it</span><h1>FIVE FARMS,<br>SIX MILES</h1><p>Everything on the stall this week came from within six miles, which sounds like a boast and is mostly an accident of who happens to farm here. We pay them the week they deliver.</p></header>"
    },
    {
      "key": "farms",
      "name": "Grower crates",
      "html": "\n<section class=\"gd\">\n<article class=\"cr c1\"><figure><img src=\"{{ART crate}}\" alt=\"{{ARTALT crate}}\"></figure><h2>NENDRUM</h2><div class=\"pb\"><span class=\"pk\">6 MI</span><span class=\"un\">14 LINES THIS WEEK</span></div><p class=\"ds\">Leaf and brassica, forced rhubarb in a dark shed that has been there longer than anyone can account for.</p></article>\n<article class=\"cr c2\"><figure><img src=\"{{ART leaves}}\" alt=\"{{ARTALT leaves}}\"></figure><h2>BALLYFIN</h2><div class=\"pb\"><span class=\"pk\">4 MI</span><span class=\"un\">8 LINES THIS WEEK</span></div><p class=\"ds\">Roots, mostly. Potatoes that are honestly a bit ugly and taste like potatoes are supposed to.</p></article>\n<article class=\"cr c3\"><figure><img src=\"{{ART scale}}\" alt=\"{{ARTALT scale}}\"></figure><h2>AUGHRIM</h2><div class=\"pb\"><span class=\"pk\">5 MI</span><span class=\"un\">5 LINES THIS WEEK</span></div><p class=\"ds\">Herbs and salad under glass, and the only tomatoes we will sell before June.</p></article>\n<article class=\"cr c4\"><figure><img src=\"{{ART crate}}\" alt=\"{{ARTALT crate}}\"></figure><h2>THE STRAND</h2><div class=\"pb\"><span class=\"pk\">2 MI</span><span class=\"un\">3 LINES THIS WEEK</span></div><p class=\"ds\">Two polytunnels behind a bungalow. Everything from here sells out by nine.</p></article>\n</section>"
    },
    {
      "key": "pay",
      "name": "Payment note",
      "html": "\n<footer class=\"pn\"><span class=\"k\">What we pay</span><p>Sixty-two per cent of the shelf price goes to the grower, every week, paid on the Friday. The remaining thirty-eight covers the van, the stall, the two of us and the crates that never come back.</p></footer>"
    }
  ],
  "moduleCount": 4,
  "reorderable": true,
  "meta": {
    "id": "greengrocer-growers",
    "model": "Claude Opus 5",
    "author": "Claude Code",
    "createdAt": "2026-09-02T01:25:45+09:00",
    "updatedAt": "2026-09-02T01:25:45+09:00",
    "version": "1.0.0",
    "isNew": false
  },
  "link": "/api/v1/designs/greengrocer-growers.json",
  "structure": "A hard-lit stall image, then grower crates whose price block position is occupied by the distance figure, keeping the layout identical.",
  "html": "<div class=\"dz dz-greengrocer-growers\" data-design=\"greengrocer-growers\" data-theme=\"greengrocer\">\n<section class=\"dz-mod\" data-mod=\"hero\" aria-label=\"Stall image\">\n<figure class=\"fb\"><img src=\"https://designlookbook.dev/assets/img/greengrocer-stall.webp\" alt=\"Empty stacked crates against a pink painted wall\"></figure></section>\n<section class=\"dz-mod\" data-mod=\"intro\" aria-label=\"Introduction\">\n<header class=\"ih\"><span class=\"k\">Who grows it</span><h1>FIVE FARMS,<br>SIX MILES</h1><p>Everything on the stall this week came from within six miles, which sounds like a boast and is mostly an accident of who happens to farm here. We pay them the week they deliver.</p></header></section>\n<section class=\"dz-mod\" data-mod=\"farms\" aria-label=\"Grower crates\">\n<section class=\"gd\">\n<article class=\"cr c1\"><figure><img src=\"https://designlookbook.dev/assets/img/greengrocer-crate.webp\" alt=\"A wooden crate of bright green vegetables from above\"></figure><h2>NENDRUM</h2><div class=\"pb\"><span class=\"pk\">6 MI</span><span class=\"un\">14 LINES THIS WEEK</span></div><p class=\"ds\">Leaf and brassica, forced rhubarb in a dark shed that has been there longer than anyone can account for.</p></article>\n<article class=\"cr c2\"><figure><img src=\"https://designlookbook.dev/assets/img/greengrocer-leaves.webp\" alt=\"Wet green leaves pressed flat against a pink surface\"></figure><h2>BALLYFIN</h2><div class=\"pb\"><span class=\"pk\">4 MI</span><span class=\"un\">8 LINES THIS WEEK</span></div><p class=\"ds\">Roots, mostly. Potatoes that are honestly a bit ugly and taste like potatoes are supposed to.</p></article>\n<article class=\"cr c3\"><figure><img src=\"https://designlookbook.dev/assets/img/greengrocer-scale.webp\" alt=\"An old mechanical scale pan on a market counter\"></figure><h2>AUGHRIM</h2><div class=\"pb\"><span class=\"pk\">5 MI</span><span class=\"un\">5 LINES THIS WEEK</span></div><p class=\"ds\">Herbs and salad under glass, and the only tomatoes we will sell before June.</p></article>\n<article class=\"cr c4\"><figure><img src=\"https://designlookbook.dev/assets/img/greengrocer-crate.webp\" alt=\"A wooden crate of bright green vegetables from above\"></figure><h2>THE STRAND</h2><div class=\"pb\"><span class=\"pk\">2 MI</span><span class=\"un\">3 LINES THIS WEEK</span></div><p class=\"ds\">Two polytunnels behind a bungalow. Everything from here sells out by nine.</p></article>\n</section></section>\n<section class=\"dz-mod\" data-mod=\"pay\" aria-label=\"Payment note\">\n<footer class=\"pn\"><span class=\"k\">What we pay</span><p>Sixty-two per cent of the shelf price goes to the grower, every week, paid on the Friday. The remaining thirty-eight covers the van, the stall, the two of us and the crates that never come back.</p></footer></section>\n</div>",
  "css": "\n.dz-greengrocer-growers { background: var(--background); color: var(--foreground); font-family: var(--pv-body); }\n.dz-greengrocer-growers .k { text-transform: uppercase; letter-spacing: .1em; font-size: 11px; font-weight: 700; color: var(--muted-foreground); }\n.dz-greengrocer-growers .fb { margin: 0; }\n.dz-greengrocer-growers .fb img { width: 100%; height: 380px; object-fit: cover; display: block; filter: var(--img-filter); }\n.dz-greengrocer-growers .ih { padding: 28px 24px 20px; }\n.dz-greengrocer-growers h1 { font-family: var(--pv-display); font-weight: 400; letter-spacing: -.02em; font-size: 76px; line-height: .94; margin: 6px 0 12px; }\n.dz-greengrocer-growers .ih p { margin: 0; font-size: 16px; line-height: 1.55; max-width: 62ch; color: var(--muted-foreground); }\n.dz-greengrocer-growers .gd { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; padding: 0 24px 28px; }\n.dz-greengrocer-growers .cr { background: var(--card); border: 2px solid var(--border); border-top: 6px solid var(--accent); padding: 16px; }\n.dz-greengrocer-growers .c2 { border-top-color: var(--primary); }\n.dz-greengrocer-growers .c3 { border-top-color: var(--chart-3); }\n.dz-greengrocer-growers .c4 { border-top-color: var(--chart-4); }\n.dz-greengrocer-growers .cr figure { margin: 0 0 12px; }\n.dz-greengrocer-growers .cr img { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; filter: var(--img-filter); }\n.dz-greengrocer-growers h2 { text-transform: uppercase; letter-spacing: .1em; font-size: 11px; font-weight: 700; font-size: 22px; font-weight: 700; margin: 0 0 10px; }\n\n.dz-greengrocer-growers .pb .pk { font-family: var(--pv-display); font-weight: 400; letter-spacing: -.02em; font-size: 40px; line-height: 1; display: block; }\n.dz-greengrocer-growers .pb .un { font-family: var(--pv-mono); font-size: 13px; font-weight: 600; display: inline-block; margin-top: 6px; border-bottom: 1px solid var(--accent); padding-bottom: 2px; color: var(--foreground); }\n.dz-greengrocer-growers .pb .miss { font-family: var(--pv-mono); font-size: 13px; font-weight: 600; display: inline-block; margin-top: 6px; color: var(--destructive); text-transform: uppercase; letter-spacing: .1em; font-size: 11px; font-weight: 700; }\n.dz-greengrocer-growers .ds { font-size: 14px; line-height: 1.55; color: var(--muted-foreground); margin: 14px 0 0; }\n.dz-greengrocer-growers .pn { padding: 0 24px 32px; }\n.dz-greengrocer-growers .pn p { margin: 8px 0 0; font-size: 14.5px; line-height: 1.55; max-width: 70ch; border-left: 6px solid var(--accent); padding-left: 16px; }\n@media (prefers-reduced-motion: reduce) { .dz-greengrocer-growers *, .dz-greengrocer-growers *::before, .dz-greengrocer-growers *::after { transition-duration: 1ms !important; animation-duration: 1ms !important; } }\n",
  "requiredTheme": "/api/v1/themes/greengrocer.json",
  "googleFontsHref": "https://fonts.googleapis.com/css2?family=Anton:wght@400;500;600;700&family=Chivo:wght@400;500;600;700&family=Sono:wght@400;500;600;700&display=swap"
}