Layout tree (as in design/layout.json)
{
"pattern": "pricing.bauhaus-shape-tiers",
"kind": "pricing",
"grid": {
"shape": "1-2",
"name": "3-5",
"price": "6-8",
"body": "9-10",
"cta": "11-12"
},
"slots": [
"title",
"plans[2..4]"
],
"notes": "Tier shapes: circle for the first plan, square for the second, triangle for the third, each larger than the last.",
"tree": {
"el": "box",
"gap": 5,
"children": [
{
"el": "text",
"slot": "title",
"role": "h2",
"transform": "lowercase"
},
{
"el": "repeat",
"slot": "plans",
"min": 2,
"max": 4,
"layout": "list",
"gap": 0,
"divider": true,
"of": {
"el": "grid",
"gap": 3,
"pad": [
3,
0
],
"align": "center",
"children": [
{
"el": "shape",
"span": "1-2",
"kind": "square",
"size": "md",
"fill": "accent2"
},
{
"el": "text",
"span": "3-5",
"slot": "title",
"role": "h3",
"transform": "lowercase"
},
{
"el": "text",
"span": "6-8",
"slot": "number",
"role": "number",
"step": 4,
"weight": 700
},
{
"el": "text",
"span": "9-10",
"slot": "body",
"role": "small"
},
{
"el": "button",
"span": "11-12",
"slot": "cta",
"variant": "primary",
"size": "md"
}
]
}
}
]
}
}