{
  "id": "fitting-room-plans",
  "name": "Plans",
  "theme": "fitting-room",
  "category": "Pricing",
  "description": "Membership tiers priced by how many items can sit on the rail at once, with each plan illustrated by a rail carrying that many blocks.",
  "layout": "Three plans, each headed by a miniature rail showing the number of concurrent blocks it allows, then a price and a feature list.",
  "modules": [
    {
      "key": "head",
      "name": "Plans header",
      "html": "\n<header class=\"ph\"><span class=\"k\">Membership</span><h1>Priced by how much rail you get</h1><p>A plan is a number of items that can be out at once. Nights are unlimited within that; you can keep something for a month if you want, it just occupies a slot while you do.</p></header>"
    },
    {
      "key": "plans",
      "name": "Plan cards",
      "html": "\n<section class=\"pl\">\n<article><span class=\"k\">Two on the rail</span><div class=\"rail mini\"><span class=\"today\" style=\"left:7%\"></span><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div></div><div class=\"blocks two\"><span class=\"bk\" style=\"left:0;width:44%;top:0\"></span><span class=\"bk\" style=\"left:52%;width:38%;top:30px\"></span></div><p class=\"pz\"><b>£48</b><span class=\"bs mn\"> a month</span></p><ul><li>Two items out at once</li><li>Unlimited swaps</li><li>Cleaning and insurance included</li><li>Return postage included</li></ul><button class=\"gh\">Choose two</button></article>\n<article class=\"on\"><span class=\"k\">Four on the rail</span><div class=\"rail mini\"><span class=\"today\" style=\"left:7%\"></span><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div></div><div class=\"blocks two\"><span class=\"bk\" style=\"left:0;width:30%;top:0\"></span><span class=\"bk\" style=\"left:34%;width:26%;top:0\"></span><span class=\"bk\" style=\"left:14%;width:38%;top:30px\"></span><span class=\"bk\" style=\"left:58%;width:34%;top:30px\"></span></div><p class=\"pz\"><b>£82</b><span class=\"bs mn\"> a month</span></p><ul><li>Four items out at once</li><li>Unlimited swaps</li><li>Cleaning and insurance included</li><li>Return postage included</li><li>Reserve an item up to 30 days ahead</li></ul><button class=\"pri\">Choose four</button></article>\n<article><span class=\"k\">Eight on the rail</span><div class=\"rail mini\"><span class=\"today\" style=\"left:7%\"></span><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div></div><div class=\"blocks two\"><span class=\"bk\" style=\"left:0;width:22%;top:0\"></span><span class=\"bk\" style=\"left:26%;width:18%;top:0\"></span><span class=\"bk\" style=\"left:48%;width:24%;top:0\"></span><span class=\"bk\" style=\"left:76%;width:20%;top:0\"></span><span class=\"bk\" style=\"left:6%;width:26%;top:30px\"></span><span class=\"bk\" style=\"left:36%;width:22%;top:30px\"></span><span class=\"bk\" style=\"left:62%;width:18%;top:30px\"></span><span class=\"bk\" style=\"left:84%;width:14%;top:30px\"></span></div><p class=\"pz\"><b>£145</b><span class=\"bs mn\"> a month</span></p><ul><li>Eight items out at once</li><li>Unlimited swaps</li><li>Cleaning and insurance included</li><li>Return postage included</li><li>Reserve up to 30 days ahead</li><li>Alterations at cost</li></ul><button class=\"gh\">Choose eight</button></article>\n</section>"
    },
    {
      "key": "late",
      "name": "Late note",
      "html": "\n<footer class=\"ln\"><span class=\"k\">If you keep something too long</span><p>Nothing happens for three days. After that the slot is charged at £4 a night until the item comes back, and the block on your rail turns red. We do not charge a penalty on top of the slot.</p></footer>"
    }
  ],
  "moduleCount": 3,
  "reorderable": true,
  "meta": {
    "id": "fitting-room-plans",
    "model": "Claude Opus 5",
    "author": "Claude Code",
    "createdAt": "2026-09-02T01:37:40+09:00",
    "updatedAt": "2026-09-02T01:37:40+09:00",
    "version": "1.0.0",
    "isNew": false
  },
  "link": "/api/v1/designs/fitting-room-plans.json",
  "structure": "Three plans, each headed by a miniature rail showing the number of concurrent blocks it allows, then a price and a feature list.",
  "html": "<div class=\"dz dz-fitting-room-plans\" data-design=\"fitting-room-plans\" data-theme=\"fitting-room\">\n<section class=\"dz-mod\" data-mod=\"head\" aria-label=\"Plans header\">\n<header class=\"ph\"><span class=\"k\">Membership</span><h1>Priced by how much rail you get</h1><p>A plan is a number of items that can be out at once. Nights are unlimited within that; you can keep something for a month if you want, it just occupies a slot while you do.</p></header></section>\n<section class=\"dz-mod\" data-mod=\"plans\" aria-label=\"Plan cards\">\n<section class=\"pl\">\n<article><span class=\"k\">Two on the rail</span><div class=\"rail mini\"><span class=\"today\" style=\"left:7%\"></span><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div></div><div class=\"blocks two\"><span class=\"bk\" style=\"left:0;width:44%;top:0\"></span><span class=\"bk\" style=\"left:52%;width:38%;top:30px\"></span></div><p class=\"pz\"><b>£48</b><span class=\"bs mn\"> a month</span></p><ul><li>Two items out at once</li><li>Unlimited swaps</li><li>Cleaning and insurance included</li><li>Return postage included</li></ul><button class=\"gh\">Choose two</button></article>\n<article class=\"on\"><span class=\"k\">Four on the rail</span><div class=\"rail mini\"><span class=\"today\" style=\"left:7%\"></span><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div></div><div class=\"blocks two\"><span class=\"bk\" style=\"left:0;width:30%;top:0\"></span><span class=\"bk\" style=\"left:34%;width:26%;top:0\"></span><span class=\"bk\" style=\"left:14%;width:38%;top:30px\"></span><span class=\"bk\" style=\"left:58%;width:34%;top:30px\"></span></div><p class=\"pz\"><b>£82</b><span class=\"bs mn\"> a month</span></p><ul><li>Four items out at once</li><li>Unlimited swaps</li><li>Cleaning and insurance included</li><li>Return postage included</li><li>Reserve an item up to 30 days ahead</li></ul><button class=\"pri\">Choose four</button></article>\n<article><span class=\"k\">Eight on the rail</span><div class=\"rail mini\"><span class=\"today\" style=\"left:7%\"></span><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div><div class=\"dy\"></div></div><div class=\"blocks two\"><span class=\"bk\" style=\"left:0;width:22%;top:0\"></span><span class=\"bk\" style=\"left:26%;width:18%;top:0\"></span><span class=\"bk\" style=\"left:48%;width:24%;top:0\"></span><span class=\"bk\" style=\"left:76%;width:20%;top:0\"></span><span class=\"bk\" style=\"left:6%;width:26%;top:30px\"></span><span class=\"bk\" style=\"left:36%;width:22%;top:30px\"></span><span class=\"bk\" style=\"left:62%;width:18%;top:30px\"></span><span class=\"bk\" style=\"left:84%;width:14%;top:30px\"></span></div><p class=\"pz\"><b>£145</b><span class=\"bs mn\"> a month</span></p><ul><li>Eight items out at once</li><li>Unlimited swaps</li><li>Cleaning and insurance included</li><li>Return postage included</li><li>Reserve up to 30 days ahead</li><li>Alterations at cost</li></ul><button class=\"gh\">Choose eight</button></article>\n</section></section>\n<section class=\"dz-mod\" data-mod=\"late\" aria-label=\"Late note\">\n<footer class=\"ln\"><span class=\"k\">If you keep something too long</span><p>Nothing happens for three days. After that the slot is charged at £4 a night until the item comes back, and the block on your rail turns red. We do not charge a penalty on top of the slot.</p></footer></section>\n</div>",
  "css": "\n.dz-fitting-room-plans { background: var(--background); color: var(--foreground); font-family: var(--pv-body); padding: 40px 28px; }\n.dz-fitting-room-plans .k { text-transform: uppercase; letter-spacing: .15em; font-size: 10.5px; font-weight: 600; color: var(--muted-foreground); display: block; margin-bottom: 12px; }\n.dz-fitting-room-plans .mn { font-family: var(--pv-mono); font-size: 13px; }\n.dz-fitting-room-plans .ph { margin-bottom: 30px; max-width: 62ch; }\n.dz-fitting-room-plans h1 { font-family: var(--pv-display); font-weight: 500; font-size: 56px; line-height: 1.08; letter-spacing: -.02em; margin: 0 0 12px; }\n.dz-fitting-room-plans .ph p { margin: 0; font-size: 16px; line-height: 1.62; color: var(--muted-foreground); }\n.dz-fitting-room-plans .pl { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }\n.dz-fitting-room-plans .pl article { background: var(--card); border: 1px solid var(--border); border-radius: 12px; padding: 22px; }\n.dz-fitting-room-plans .pl .on { border-color: var(--primary); border-width: 2px; padding: 21px; }\n\n.dz-fitting-room-plans .rail { display: grid; grid-template-columns: repeat(14, 1fr); border-bottom: 1px solid var(--border); position: relative; }\n.dz-fitting-room-plans .rail .dy { padding: 8px 0 12px; text-align: center; border-right: 1px solid var(--border); }\n.dz-fitting-room-plans .rail .dy:last-child { border-right: 0; }\n.dz-fitting-room-plans .rail .di { text-transform: uppercase; letter-spacing: .15em; font-size: 10.5px; font-weight: 600; color: var(--muted-foreground); display: block; }\n.dz-fitting-room-plans .rail .dn { font-family: var(--pv-mono); font-size: 13px; display: block; margin-top: 4px; }\n.dz-fitting-room-plans .rail .today { position: absolute; top: 0; bottom: 0; width: 2px; background: var(--accent); }\n.dz-fitting-room-plans .blocks { position: relative; height: 96px; margin-top: 8px; }\n.dz-fitting-room-plans .bk { position: absolute; height: 26px; background: var(--primary); color: var(--primary-foreground); border-radius: 4px; font-family: var(--pv-mono); font-size: 13px; font-size: 11px; display: flex; align-items: center; padding: 0 8px; overflow: hidden; white-space: nowrap; }\n.dz-fitting-room-plans .bk.late { background: var(--destructive); color: var(--primary-foreground); }\n.dz-fitting-room-plans .mini .dy { padding: 5px 0 6px; height: 8px; }\n.dz-fitting-room-plans .two { height: 60px; margin-bottom: 8px; }\n.dz-fitting-room-plans .pz { margin: 14px 0 18px; }\n.dz-fitting-room-plans .pz b { font-family: var(--pv-display); font-weight: 500; font-size: 48px; line-height: 1; letter-spacing: -.02em; }\n.dz-fitting-room-plans .bs { color: var(--muted-foreground); }\n.dz-fitting-room-plans ul { list-style: none; margin: 0 0 20px; padding: 0; }\n.dz-fitting-room-plans li { padding: 9px 0; border-bottom: 1px solid var(--border); font-size: 14px; }\n.dz-fitting-room-plans button { width: 100%; border-radius: 4px; padding: 13px; font: inherit; font-size: 14.5px; cursor: pointer; }\n.dz-fitting-room-plans .pri { background: var(--primary); color: var(--primary-foreground); border: 0; }\n.dz-fitting-room-plans .gh { background: transparent; color: var(--foreground); border: 1px solid var(--border); }\n.dz-fitting-room-plans .ln { margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--border); }\n.dz-fitting-room-plans .ln p { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--muted-foreground); max-width: 66ch; }\n@media (prefers-reduced-motion: reduce) { .dz-fitting-room-plans *, .dz-fitting-room-plans *::before, .dz-fitting-room-plans *::after { transition-duration: 1ms !important; animation-duration: 1ms !important; } }\n",
  "requiredTheme": "/api/v1/themes/fitting-room.json",
  "googleFontsHref": "https://fonts.googleapis.com/css2?family=Frank+Ruhl+Libre:wght@400;500;600;700&family=Be+Vietnam+Pro:wght@400;500;600;700&family=M+PLUS+1+Code:wght@400;500;600;700&display=swap"
}