{
  "title": "Drain Cleaning: instant estimate",
  "subtitle": "Choose one or more services. Prices update live.",
  "accent": "#00838f",
  "currencyCode": "USD",
  "locale": "en-US",
  "roundTo": 5,
  "items": [
    {
      "id": "snake",
      "label": "Drain clearing (snake / auger)",
      "unit": "drains",
      "unitOne": "drain",
      "low": 129,
      "high": 219,
      "min": 129,
      "qtyDefault": 1,
      "qtyMin": 1,
      "qtyMax": 6,
      "qtyStep": 1
    },
    {
      "id": "hydro",
      "label": "Hydro jetting",
      "unit": "lines",
      "unitOne": "line",
      "low": 350,
      "high": 550,
      "min": 350,
      "qtyDefault": 1,
      "qtyMin": 1,
      "qtyMax": 4,
      "qtyStep": 1
    }
  ],
  "modifiers": [
    {
      "label": "Access point",
      "type": "select",
      "options": [
        {
          "label": "Cleanout or fixture nearby",
          "factor": 1
        },
        {
          "label": "Roof vent / difficult access",
          "factor": 1.3
        }
      ],
      "items": [
        "snake",
        "hydro"
      ]
    },
    {
      "label": "Camera inspection after clearing",
      "type": "checkbox",
      "add": 125
    },
    {
      "label": "After-hours / emergency",
      "type": "checkbox",
      "add": 95
    }
  ],
  "note": "Sample prices for demo. Set your own. Final price confirmed after inspection.",
  "cta": {
    "type": "mailto",
    "email": "you@yourbusiness.com",
    "label": "Request my exact quote"
  },
  "mode": "multi"
}