{
  "_generated_by": "scripts/gen-price-book-json.mjs — DO NOT EDIT BY HAND. Re-run the script.",
  "_source": "supabase/APPLY_ALL.sql (retail assemblies + price_regions), dumped from a real PostgreSQL.",
  "_basis": "Retail list prices. A ballpark, not a quote — the real number comes off a measurement and an inspection.",
  "floors": {
    "architectural_per_square": 600
  },
  "budget_bands": {
    "owner_approved": false,
    "ask_before_quoting": true,
    "ask_wording": "Most full replacements on a house this size land between $18,000 and $32,000, depending on whether we are into the decking and which shingle you go with. I am not asking you to commit to anything — I just do not want to spend an hour on your roof and come back with a number that was never going to be in the conversation. Is that range roughly what you had in mind, or am I way off?",
    "why_we_ask": "So we can put the right roof on the house instead of quoting one roof and then discounting it. The budget changes WHAT WE INSTALL — shingle line, ventilation, how much flashing is new — not what we charge for the same work.",
    "never_below": "No band goes below the $600/SQ architectural floor. A number under the floor is not a cheaper roof, it is a roof somebody else finishes.",
    "discount_rule": "We do not cut a price for nothing. If a homeowner needs a lower number we move them DOWN a band and say plainly what comes off the roof, or we hold the scope and add value. A naked discount tells the homeowner the first number was invented.",
    "upsell_rule": {
      "threshold_per_square": 900,
      "rule": "At or above $900 per square the quote includes an upgrade at no charge — gutters, or a step up in shingle line. Every band at or above the threshold names which.",
      "why": "At that number the homeowner is choosing us over a cheaper bid and needs a reason that is not \"we are more expensive\". Included value beats a discount: it costs us less than the equivalent price cut and it does not retroactively prove the first number was soft."
    },
    "bands": [
      {
        "key": "entry",
        "label": "Entry — outer-Maryland counties only",
        "per_square_low": 600,
        "per_square_high": 800,
        "scope": "roof_arch",
        "tier": "good",
        "regions": [
          "baltimore",
          "md-southern",
          "md-western"
        ],
        "what_you_get": "Full tear-off, architectural shingle, synthetic underlayment, new drip edge, new pipe boots, ice-and-water in the valleys, existing ventilation reused.",
        "what_comes_off": "Reused ventilation, and reused flashing wherever it is still serviceable. It is a real roof and we warrant it — it is a roof you will probably do again sooner.",
        "upgrade_required": false,
        "included_upgrades": [],
        "honest_note": "THIS BAND DOES NOT EXIST IN THE WASHINGTON METRO. The cheapest configuration the book publishes prices $740–$1,219/SQ in the Baltimore-index counties and $798–$1,317/SQ in the Washington metro — so in Bethesda, Montgomery, Fairfax, Arlington, Loudoun and Prince William the entry band is unreachable at any tier. Only the top $60 of this band is real even in the counties where it applies. A rep must not promise it before a measurement."
      },
      {
        "key": "standard",
        "label": "Standard",
        "per_square_low": 800,
        "per_square_high": 900,
        "scope": "roof_arch",
        "tier": "good",
        "regions": [
          "baltimore",
          "md-southern",
          "md-western",
          "dc-metro"
        ],
        "what_you_get": "Everything in the entry band plus all-new step and counter flashing, and a ventilation calculation against code rather than reusing whatever is up there.",
        "what_comes_off": "Nothing structural comes off. What you are not getting is the full-perimeter ice-and-water, the cut-in ridge vent, or a decking allowance inside the contract price.",
        "upgrade_required": false,
        "included_upgrades": [],
        "honest_note": "The top of the owner's stated $600–$900 range, and the lowest band that is reachable in the Washington metro. This is the band a rep should assume for a straight asphalt replacement in the LSA target area until a measurement says otherwise."
      },
      {
        "key": "upgraded",
        "label": "Upgraded — includes gutters or a shingle step-up",
        "per_square_low": 900,
        "per_square_high": 1150,
        "scope": "roof_arch",
        "tier": "better",
        "regions": [
          "baltimore",
          "md-southern",
          "md-western",
          "dc-metro"
        ],
        "what_you_get": "Full system: new ridge vent cut in and balanced to intake, ice-and-water the full perimeter rather than valleys only, all-new flashing, and decking allowance included rather than billed as a change order.",
        "what_comes_off": "Nothing comes off. This is the full system rather than a reduced one.",
        "upgrade_required": true,
        "included_upgrades": [
          {
            "key": "gutters",
            "label": "New 6-inch K-style gutters and downspouts, included",
            "engine_scope": "gutters",
            "why": "The gutter hangs off fascia we are already working on and the crew is already there. It is the cheapest real value we can add and the one a homeowner notices from the kerb."
          },
          {
            "key": "shingle_step_up",
            "label": "Step up to the designer shingle line at no charge",
            "engine_scope": "roof_designer",
            "why": "Material cost only, no extra labour, and it changes how the house looks — which is what the homeowner is actually buying at this number."
          }
        ],
        "honest_note": "Above the owner's stated $900 ceiling, and this is where a large share of our published configurations already price. The included upgrade is what makes that number defensible against a cheaper bid."
      },
      {
        "key": "premium",
        "label": "Premium — designer or metal",
        "per_square_low": 1150,
        "per_square_high": null,
        "scope": "roof_designer",
        "tier": "good",
        "regions": [
          "baltimore",
          "md-southern",
          "md-western",
          "dc-metro"
        ],
        "what_you_get": "Designer shingle or standing-seam metal, full engineered ventilation, chimney cricket and full re-flash, and the manufacturer-administered workmanship warranty.",
        "what_comes_off": "Nothing comes off, and nothing on this roof is a reused part.",
        "upgrade_required": true,
        "included_upgrades": [
          {
            "key": "gutters",
            "label": "New 6-inch K-style gutters and downspouts, included",
            "engine_scope": "gutters",
            "why": "Same reasoning as the upgraded band. At this number it is assumed rather than negotiated."
          }
        ],
        "honest_note": "Open-ended at the top on purpose: metal on a complex roof in the Washington metro prices past $4,000/SQ and no ceiling here would be honest."
      }
    ]
  },
  "change_orders": {
    "owner_approved": false,
    "customer_basis": "These are our published retail rates, set at or near the top of the 2026 Maryland market. Each line shows what the wider market charges for the same work, so you can check us against it rather than take our word for it.",
    "internal_basis": "Set at or near the top of the published 2026 DMV band per item. See ops/pricing/MARKET-BASIS-2026.md for the wider pricing research. NOT customer-facing.",
    "approval_rule": "Nothing on this card is charged without the homeowner approving it in writing first — in the portal, with a photo of the condition that triggered it. A crew never proceeds on a discovered item and invoices for it afterwards.",
    "items": [
      {
        "key": "second_layer",
        "label": "Tear off a second layer of roofing",
        "unit": "per square",
        "rate": 95,
        "why": "Twice the material to strip, carry and dump, and a second layer usually hides deck damage.",
        "market": "One-layer tear-off averages $1.25/sq ft installed, two layers $2.10 — a spread of about $85/SQ.",
        "trigger": "Discovered on tear-off, or visible at the eave on inspection."
      },
      {
        "key": "third_layer",
        "label": "Tear off a third or subsequent layer",
        "unit": "per square",
        "rate": 130,
        "why": "Code generally forbids re-covering over two layers, so this is usually mandatory rather than optional.",
        "market": "Extrapolated from the one-to-two-layer spread; no clean published third-layer figure exists.",
        "trigger": "Discovered on tear-off."
      },
      {
        "key": "deck_sheet",
        "label": "Replace a sheet of roof decking (4x8 OSB or plywood)",
        "unit": "per sheet",
        "rate": 120,
        "why": "Rotten or delaminated sheathing will not hold a nail. It is the most common discovered item on any roof over 20 years old.",
        "market": "Contractors quote $80-$120 per 4x8 sheet installed as a deck-repair allowance; $70-$100 installed is also published.",
        "trigger": "Found once the shingles are off. Photographed sheet by sheet."
      },
      {
        "key": "full_redeck",
        "label": "Full re-deck over spaced or failed sheathing",
        "unit": "per sq ft",
        "rate": 4.5,
        "why": "Older homes with skip sheathing cannot take modern shingles or hold a warranty without a solid deck.",
        "market": "Roof decking replacement runs $2-$5 per sq ft installed.",
        "trigger": "Identified on inspection where the attic is accessible, otherwise on tear-off."
      },
      {
        "key": "fascia_lf",
        "label": "Replace rotted fascia board",
        "unit": "per linear foot",
        "rate": 16,
        "why": "Gutters hang off the fascia. Rotten fascia means the new gutter has nothing sound to fasten to.",
        "market": "Fascia repair runs $6-$16 per linear foot.",
        "trigger": "Visible at the eave, confirmed when the gutter comes off."
      },
      {
        "key": "ridge_vent_lf",
        "label": "Cut in and install ridge vent",
        "unit": "per linear foot",
        "rate": 15,
        "why": "Most older roofs are under-ventilated, which cooks shingles from underneath and voids the manufacturer warranty.",
        "market": "Ridge vent installation runs $7-$15 per linear foot.",
        "trigger": "Ventilation calculated against code at inspection; usually known BEFORE the contract, not discovered."
      },
      {
        "key": "chimney_flash",
        "label": "Re-flash a chimney (step and counter flashing)",
        "unit": "each",
        "rate": 600,
        "why": "The most common leak point on any roof with a chimney, and the one place a reused flashing will fail.",
        "market": "Chimney step and counter flashing replacement runs $200-$600.",
        "trigger": "Assessed at inspection. A masonry chimney over 15 years old nearly always needs it."
      },
      {
        "key": "skylight_flash",
        "label": "Re-flash a skylight",
        "unit": "each",
        "rate": 450,
        "why": "A skylight kept and re-flashed is far cheaper than one replaced, but flashing it properly is hand work.",
        "market": "Between the chimney flashing band and a full skylight replacement; no clean published figure.",
        "trigger": "Assessed at inspection."
      },
      {
        "key": "pipe_boot",
        "label": "Replace a plumbing vent boot",
        "unit": "each",
        "rate": 65,
        "why": "Rubber boots crack in about 12 years — well before the shingles fail — and are a top-three leak source.",
        "market": "Small-part replacement; priced from labour plus material.",
        "trigger": "Always replaced on a full roof. Listed so it is never a surprise line."
      },
      {
        "key": "steep_pitch",
        "label": "Steep-pitch work (8/12 and above)",
        "unit": "per square",
        "rate": 90,
        "why": "Above 8/12 a crew needs staging, harnesses and roof jacks, and works materially slower.",
        "market": "Steep sections add about $90-$130 per square, as published on our own cost guide.",
        "trigger": "Known from the measurement, so this is priced INTO the quote rather than discovered."
      },
      {
        "key": "height_adder",
        "label": "Third storey or higher",
        "unit": "per square",
        "rate": 45,
        "why": "Longer ladder work, more staging, and material has to be lifted further.",
        "market": "Height and access premiums are standard in commercial takeoffs; extrapolated for residential.",
        "trigger": "Known from the property record and the site visit."
      },
      {
        "key": "access",
        "label": "Difficult access (no dump-trailer position, hand-carry only)",
        "unit": "flat",
        "rate": 650,
        "why": "If the trailer cannot get near the house, every bundle and every piece of debris is carried by hand.",
        "market": "Mobilisation premium; no published figure — costed from crew hours.",
        "trigger": "Assessed at the site visit, before the contract."
      }
    ]
  },
  "architectural_field_per_square": 650.23,
  "regions": [
    {
      "slug": "md-southern",
      "name": "Southern Maryland (St. Mary's, Calvert, Charles)",
      "state": "MD",
      "msa": "California-Lexington Park, MD",
      "multiplier": 1,
      "interior_multiplier": 1,
      "wage_index": 1,
      "note": "UNVERIFIED: same as Western Maryland — mapped to the Baltimore index pending a real figure.",
      "source": "No published figure obtained — placeholder at the Baltimore index."
    },
    {
      "slug": "baltimore",
      "name": "Baltimore metro (Baltimore Co., Howard, Anne Arundel, Carroll, Harford)",
      "state": "MD",
      "msa": "Baltimore-Columbia-Towson, MD",
      "multiplier": 1,
      "interior_multiplier": 1,
      "wage_index": 1,
      "note": "Index base. Lowest market with published wage data.",
      "source": "BLS OEWS May 2025 metro news release: mean hourly wage $36.72."
    },
    {
      "slug": "md-western",
      "name": "Western Maryland (Washington Co., Allegany)",
      "state": "MD",
      "msa": "Hagerstown-Martinsburg, MD-WV",
      "multiplier": 1,
      "interior_multiplier": 1,
      "wage_index": 1,
      "note": "UNVERIFIED: Hagerstown wage mean could not be retrieved, so this is mapped to the Baltimore index and is probably OVER-priced. Correct it when the figure is available.",
      "source": "No published figure obtained — placeholder at the Baltimore index."
    },
    {
      "slug": "dc-metro",
      "name": "Washington metro (Arlington, Alexandria, Fairfax, McLean, Falls Church, Loudoun, Prince William, Montgomery, Frederick)",
      "state": "VA",
      "msa": "Washington-Arlington-Alexandria, DC-VA-MD-WV",
      "multiplier": 1.081,
      "interior_multiplier": 1.112,
      "wage_index": 1.2037,
      "note": "Frederick County MD belongs HERE, not in an outer-Maryland bucket — it is in the Frederick-Gaithersburg-Rockville division of this MSA. The previous region set had it as the cheapest market.",
      "source": "BLS OEWS May 2025 metro news release: mean hourly wage $44.20 vs Baltimore $36.72."
    }
  ],
  "zip_regions": {
    "20105": "dc-metro",
    "20109": "dc-metro",
    "20110": "dc-metro",
    "20111": "dc-metro",
    "20112": "dc-metro",
    "20120": "dc-metro",
    "20121": "dc-metro",
    "20124": "dc-metro",
    "20136": "dc-metro",
    "20147": "dc-metro",
    "20148": "dc-metro",
    "20151": "dc-metro",
    "20152": "dc-metro",
    "20155": "dc-metro",
    "20164": "dc-metro",
    "20165": "dc-metro",
    "20166": "dc-metro",
    "20169": "dc-metro",
    "20170": "dc-metro",
    "20171": "dc-metro",
    "20175": "dc-metro",
    "20176": "dc-metro",
    "20180": "dc-metro",
    "20190": "dc-metro",
    "20191": "dc-metro",
    "20194": "dc-metro",
    "20613": "dc-metro",
    "20707": "dc-metro",
    "20708": "dc-metro",
    "20715": "dc-metro",
    "20716": "dc-metro",
    "20720": "dc-metro",
    "20721": "dc-metro",
    "20723": "dc-metro",
    "20735": "dc-metro",
    "20740": "dc-metro",
    "20742": "dc-metro",
    "20743": "dc-metro",
    "20744": "dc-metro",
    "20747": "dc-metro",
    "20748": "dc-metro",
    "20770": "dc-metro",
    "20772": "dc-metro",
    "20774": "dc-metro",
    "20781": "dc-metro",
    "20782": "dc-metro",
    "20783": "dc-metro",
    "20814": "dc-metro",
    "20815": "dc-metro",
    "20816": "dc-metro",
    "20817": "dc-metro",
    "20832": "dc-metro",
    "20833": "dc-metro",
    "20837": "dc-metro",
    "20841": "dc-metro",
    "20850": "dc-metro",
    "20851": "dc-metro",
    "20852": "dc-metro",
    "20853": "dc-metro",
    "20854": "dc-metro",
    "20871": "dc-metro",
    "20874": "dc-metro",
    "20876": "dc-metro",
    "20877": "dc-metro",
    "20878": "dc-metro",
    "20879": "dc-metro",
    "20882": "dc-metro",
    "20886": "dc-metro",
    "20895": "dc-metro",
    "20901": "dc-metro",
    "20902": "dc-metro",
    "20903": "dc-metro",
    "20904": "dc-metro",
    "20905": "dc-metro",
    "20906": "dc-metro",
    "20910": "dc-metro",
    "20912": "dc-metro",
    "21029": "baltimore",
    "21042": "baltimore",
    "21043": "baltimore",
    "21044": "baltimore",
    "21045": "baltimore",
    "21046": "baltimore",
    "21060": "baltimore",
    "21061": "baltimore",
    "21075": "baltimore",
    "21093": "baltimore",
    "21108": "baltimore",
    "21117": "baltimore",
    "21122": "baltimore",
    "21144": "baltimore",
    "21146": "baltimore",
    "21157": "baltimore",
    "21158": "baltimore",
    "21206": "baltimore",
    "21207": "baltimore",
    "21208": "baltimore",
    "21212": "baltimore",
    "21215": "baltimore",
    "21228": "baltimore",
    "21234": "baltimore",
    "21401": "baltimore",
    "21403": "baltimore",
    "21409": "baltimore",
    "21701": "dc-metro",
    "21702": "dc-metro",
    "21703": "dc-metro",
    "21704": "dc-metro",
    "21771": "dc-metro",
    "21784": "baltimore",
    "22003": "dc-metro",
    "22015": "dc-metro",
    "22027": "dc-metro",
    "22030": "dc-metro",
    "22031": "dc-metro",
    "22032": "dc-metro",
    "22033": "dc-metro",
    "22039": "dc-metro",
    "22041": "dc-metro",
    "22042": "dc-metro",
    "22043": "dc-metro",
    "22046": "dc-metro",
    "22079": "dc-metro",
    "22101": "dc-metro",
    "22102": "dc-metro",
    "22150": "dc-metro",
    "22151": "dc-metro",
    "22152": "dc-metro",
    "22153": "dc-metro",
    "22180": "dc-metro",
    "22181": "dc-metro",
    "22182": "dc-metro",
    "22183": "dc-metro",
    "22191": "dc-metro",
    "22192": "dc-metro",
    "22193": "dc-metro",
    "22201": "dc-metro",
    "22203": "dc-metro",
    "22204": "dc-metro",
    "22205": "dc-metro",
    "22207": "dc-metro",
    "22301": "dc-metro",
    "22302": "dc-metro",
    "22304": "dc-metro",
    "22306": "dc-metro",
    "22307": "dc-metro",
    "22308": "dc-metro",
    "22309": "dc-metro",
    "22310": "dc-metro",
    "22311": "dc-metro",
    "22314": "dc-metro",
    "22315": "dc-metro",
    "22405": "dc-metro",
    "22407": "dc-metro",
    "22408": "dc-metro",
    "22520": "dc-metro",
    "22553": "dc-metro",
    "23177": "dc-metro"
  },
  "assemblies": [
    {
      "code": "RET-ADDITION-2ND",
      "name": "Home addition — second storey",
      "trade": "additions",
      "note": "Retail list. $445/SF base; published N. Virginia second-storey $250-500/SF.",
      "items": [
        {
          "description": "Architectural drawings + structural engineering",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 13500,
          "waste_pct": 0,
          "why": "Load path has to be carried to the footings."
        },
        {
          "description": "Temporary weather protection + shoring",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 8500,
          "waste_pct": 0,
          "why": "The roof comes off. This is not optional."
        },
        {
          "description": "Framing, roof + envelope",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 445,
          "waste_pct": 0,
          "why": "Published NoVA second-storey $250-500/SF."
        },
        {
          "description": "MEP rough-in + finishes",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 128,
          "waste_pct": 0,
          "why": "Full MEP + finish."
        },
        {
          "description": "Permit, zoning review + inspections",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 6850,
          "waste_pct": 0,
          "why": "Zoning + structural review."
        }
      ]
    },
    {
      "code": "RET-ADDITION-GF",
      "name": "Home addition — ground floor",
      "trade": "additions",
      "note": "Retail list. $310/SF base; published N. Virginia ground-floor $150-350/SF, top of band in Arlington/Alexandria.",
      "items": [
        {
          "description": "Architectural drawings + structural engineering",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 9500,
          "waste_pct": 0,
          "why": "Stamped drawings; required for permit."
        },
        {
          "description": "Foundation, framing, roof + envelope",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 310,
          "waste_pct": 0,
          "why": "Top of published NoVA ground-floor band."
        },
        {
          "description": "MEP rough-in + finishes",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 118,
          "waste_pct": 0,
          "why": "Mechanical, electrical, plumbing + interior finish."
        },
        {
          "description": "Permit, zoning review + inspections",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 4850,
          "waste_pct": 0,
          "why": "Zoning review is the long pole in the DMV."
        }
      ]
    },
    {
      "code": "RET-BASEMENT-FIN",
      "name": "Basement finishing",
      "trade": "basement",
      "note": "Retail list. UD list price per SF. Owner to confirm against recent jobs.",
      "items": [
        {
          "description": "Framing, insulation + drywall",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 62,
          "waste_pct": 0,
          "why": "UD list."
        },
        {
          "description": "Egress, electrical + HVAC extension",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 34,
          "waste_pct": 0,
          "why": "UD list. Egress is a code requirement for bedrooms."
        },
        {
          "description": "Flooring, trim + paint",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 28,
          "waste_pct": 0,
          "why": "UD list."
        },
        {
          "description": "Permit + inspections",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 1450,
          "waste_pct": 0,
          "why": "Permitted work only."
        }
      ]
    },
    {
      "code": "RET-BATH-HIGH",
      "name": "Bathroom remodel — high-end design-build",
      "trade": "bathroom",
      "note": "Retail list. $420/SF base; published N. Virginia $250-500/SF, MD average ~$297/SF.",
      "items": [
        {
          "description": "Design, drawings + selections",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 2850,
          "waste_pct": 0,
          "why": "Design-build."
        },
        {
          "description": "Demolition + disposal",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 26,
          "waste_pct": 0,
          "why": "Within published band."
        },
        {
          "description": "Tile, vanity, fixtures, glass + install",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 420,
          "waste_pct": 0,
          "why": "Upper half of published NoVA $250-500/SF."
        },
        {
          "description": "Waterproofing assembly (pan, membrane, niche)",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 38,
          "waste_pct": 0,
          "why": "The line item that decides whether it lasts."
        },
        {
          "description": "Electrical, plumbing rough-in + permit",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 3250,
          "waste_pct": 0,
          "why": "Permitted work only."
        }
      ]
    },
    {
      "code": "RET-DECK-COMP",
      "name": "Composite deck, framed + railed",
      "trade": "decks-porches",
      "note": "Retail list. UD list price per SF of deck. Owner to confirm.",
      "items": [
        {
          "description": "PT framing, footings + ledger",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 32,
          "waste_pct": 5,
          "why": "UD list. Code footings + flashed ledger."
        },
        {
          "description": "Composite decking + hidden fasteners",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 38,
          "waste_pct": 8,
          "why": "UD list."
        },
        {
          "description": "Railing, aluminium or composite",
          "unit": "LF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 96,
          "waste_pct": 5,
          "why": "UD list."
        },
        {
          "description": "Permit + inspections",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 785,
          "waste_pct": 0,
          "why": "Decks are always permitted in the DMV."
        }
      ]
    },
    {
      "code": "RET-GUTTER-6K",
      "name": "6\" oversized aluminium gutter + guards",
      "trade": "gutters",
      "note": "Retail list. UD list price — 6\" K-style oversized. Owner to confirm.",
      "items": [
        {
          "description": "6\" seamless aluminium gutter, installed",
          "unit": "LF",
          "basis": "eave_lf",
          "qty_per_unit": 1,
          "unit_price": 17.5,
          "waste_pct": 5,
          "why": "UD list. Oversized handles DMV downpours."
        },
        {
          "description": "3x4 oversized downspout",
          "unit": "LF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 16,
          "waste_pct": 5,
          "why": "UD list."
        },
        {
          "description": "Micro-mesh leaf guard",
          "unit": "LF",
          "basis": "eave_lf",
          "qty_per_unit": 1,
          "unit_price": 13.5,
          "waste_pct": 5,
          "why": "UD list. Stainless micro-mesh, not foam."
        }
      ]
    },
    {
      "code": "RET-KITCHEN-HIGH",
      "name": "Kitchen remodel — high-end design-build",
      "trade": "kitchen",
      "note": "Retail list. $395/SF base; published N. Virginia high end $350-500+/SF, ultra-custom $600-750/SF.",
      "items": [
        {
          "description": "Design, drawings + selections",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 4850,
          "waste_pct": 0,
          "why": "Design-build: drawings before demolition."
        },
        {
          "description": "Demolition + disposal",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 22,
          "waste_pct": 0,
          "why": "Within published band."
        },
        {
          "description": "Cabinetry, counters, tile, fixtures + install",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 395,
          "waste_pct": 0,
          "why": "Published NoVA high-end $350-500+/SF."
        },
        {
          "description": "Electrical, plumbing + HVAC rough-in",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 58,
          "waste_pct": 0,
          "why": "Brings the room to current code."
        },
        {
          "description": "Permit, inspections + final clean",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 1685,
          "waste_pct": 0,
          "why": "Permitted work only."
        }
      ]
    },
    {
      "code": "RET-PAINT-EXT",
      "name": "Full exterior repaint",
      "trade": "painting",
      "note": "Retail list. UD list price per SF of wall. Owner to confirm.",
      "items": [
        {
          "description": "Wash, scrape, prime + two finish coats",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 4.6,
          "waste_pct": 0,
          "why": "UD list. Two coats, not one."
        },
        {
          "description": "Carpentry repair allowance",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 1.2,
          "waste_pct": 0,
          "why": "UD list. Billed only if found."
        }
      ]
    },
    {
      "code": "RET-ROOF-ARCH",
      "name": "Architectural shingle roof replacement",
      "trade": "roofing",
      "note": "Retail list. $600.00/SQ floor at base multiplier; published MD range $450-650/SQ, VA ~$691/SQ.",
      "items": [
        {
          "description": "Tear off existing roof covering + haul away",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 95,
          "waste_pct": 0,
          "why": "Published Maryland teardown + disposal."
        },
        {
          "description": "Architectural laminated shingles, installed",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 405,
          "waste_pct": 10,
          "why": "Material + labour. 10% waste is standard on cut-up DMV roofs. Set so the FIELD price alone clears the $600/SQ floor before edge metal, ridge and permit are added."
        },
        {
          "description": "Synthetic underlayment",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 42,
          "waste_pct": 10,
          "why": "Synthetic, not felt — required for the manufacturer system warranty. $42/SQ is the rate carried in public.price_book; the two books are now equal."
        },
        {
          "description": "Ice & water shield at eaves and valleys",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 0.25,
          "unit_price": 242,
          "waste_pct": 5,
          "why": "Maryland freeze-thaw; ~25% of field area at eaves + valleys. $242/SQ = $2.42/SF, the Xactimate MDBA8X_JUL26 RFG IWS rate. The previous $82/SQ ($0.82/SF) was below the installed cost of the material."
        },
        {
          "description": "Starter course",
          "unit": "LF",
          "basis": "eave_lf",
          "qty_per_unit": 1,
          "unit_price": 3.4,
          "waste_pct": 5,
          "why": "Manufacturer-required starter, not cut shingle."
        },
        {
          "description": "Hip / ridge cap",
          "unit": "LF",
          "basis": "ridge_lf",
          "qty_per_unit": 1,
          "unit_price": 10.5,
          "waste_pct": 5,
          "why": "Matching high-profile cap. Raised from $9.80 to clear the Xactimate MDBA8X_JUL26 R&R rate of $10.46/LF."
        },
        {
          "description": "Aluminium drip edge",
          "unit": "LF",
          "basis": "eave_lf",
          "qty_per_unit": 1,
          "unit_price": 4.2,
          "waste_pct": 5,
          "why": "Code-required edge metal."
        },
        {
          "description": "Ridge vent, continuous",
          "unit": "LF",
          "basis": "ridge_lf",
          "qty_per_unit": 0.5,
          "unit_price": 15,
          "waste_pct": 0,
          "why": "Balanced ventilation; ~half of ridge run. Raised from $14.50 to clear the Xactimate MDBA8X_JUL26 R&R rate of $14.99/LF."
        },
        {
          "description": "Pipe jack + step flashing, new",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 340,
          "waste_pct": 0,
          "why": "All penetrations reflashed, never reused."
        },
        {
          "description": "Permit, inspection + final cleanup (magnet sweep)",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 585,
          "waste_pct": 0,
          "why": "DMV permit + third-party inspection where required."
        }
      ]
    },
    {
      "code": "RET-ROOF-DESIGNER",
      "name": "Designer / luxury shingle roof replacement",
      "trade": "roofing",
      "note": "Retail list. UD list price — premium laminate (Grand Sequoia / Camelot class). Owner to confirm margin.",
      "items": [
        {
          "description": "Tear off existing roof covering + haul away",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 95,
          "waste_pct": 0,
          "why": "Published Maryland teardown + disposal."
        },
        {
          "description": "Designer laminated shingles, installed",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 690,
          "waste_pct": 12,
          "why": "UD list. Heavier profile, more waste on hips."
        },
        {
          "description": "Synthetic underlayment",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 42,
          "waste_pct": 10,
          "why": "System warranty requirement."
        },
        {
          "description": "Ice & water shield, full coverage",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 242,
          "waste_pct": 5,
          "why": "Full-deck coverage on designer installs. $2.42/SF per Xactimate MDBA8X_JUL26."
        },
        {
          "description": "Starter + designer hip/ridge cap",
          "unit": "LF",
          "basis": "ridge_lf",
          "qty_per_unit": 1,
          "unit_price": 16.5,
          "waste_pct": 5,
          "why": "Matching designer cap."
        },
        {
          "description": "Copper-finish drip edge + valley metal",
          "unit": "LF",
          "basis": "eave_lf",
          "qty_per_unit": 1,
          "unit_price": 9.6,
          "waste_pct": 5,
          "why": "Upgraded edge metal to match the profile."
        },
        {
          "description": "Ridge vent, continuous",
          "unit": "LF",
          "basis": "ridge_lf",
          "qty_per_unit": 0.5,
          "unit_price": 15,
          "waste_pct": 0,
          "why": "Balanced ventilation."
        },
        {
          "description": "Permit, inspection + final cleanup",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 585,
          "waste_pct": 0,
          "why": "DMV permit + inspection."
        }
      ]
    },
    {
      "code": "RET-ROOF-METAL",
      "name": "Standing seam metal roof",
      "trade": "roofing",
      "note": "Retail list. UD list price — standing seam, 24ga. Not a published-range figure; owner to confirm.",
      "items": [
        {
          "description": "Tear off + haul away",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 95,
          "waste_pct": 0,
          "why": "Published Maryland teardown + disposal."
        },
        {
          "description": "Standing seam metal panel, 24ga, installed",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 1180,
          "waste_pct": 8,
          "why": "UD list. Panel + concealed clip labour."
        },
        {
          "description": "High-temp underlayment",
          "unit": "SQ",
          "basis": "squares",
          "qty_per_unit": 1,
          "unit_price": 62,
          "waste_pct": 8,
          "why": "Required under metal."
        },
        {
          "description": "Custom-bent trim, ridge, hip + valley",
          "unit": "LF",
          "basis": "ridge_lf",
          "qty_per_unit": 1,
          "unit_price": 28,
          "waste_pct": 5,
          "why": "Site-bent to match."
        },
        {
          "description": "Permit, engineering letter + inspection",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 985,
          "waste_pct": 0,
          "why": "Metal often needs an engineering letter in the DMV."
        }
      ]
    },
    {
      "code": "RET-SIDE-HARDIE",
      "name": "James Hardie fiber cement siding (ColorPlus)",
      "trade": "siding",
      "note": "Retail list. $16.50/SF base; published MD ColorPlus $13-18/SF, N. Virginia $17-24/SF.",
      "items": [
        {
          "description": "Remove existing siding + haul away",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 2.4,
          "waste_pct": 0,
          "why": "Published DMV teardown."
        },
        {
          "description": "HardiePlank ColorPlus, installed",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 16.5,
          "waste_pct": 10,
          "why": "Top of published MD ColorPlus band."
        },
        {
          "description": "House wrap + weather-resistive barrier",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 1.35,
          "waste_pct": 5,
          "why": "Full WRB, taped."
        },
        {
          "description": "HardieTrim at windows, doors, corners",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 5.2,
          "waste_pct": 8,
          "why": "Published trim adder $4-6/SF."
        },
        {
          "description": "Sheathing inspection + repair allowance",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 2.25,
          "waste_pct": 0,
          "why": "Published repair allowance $1.50-3/SF. Billed only if found."
        },
        {
          "description": "Soffit, fascia + gutter tie-in",
          "unit": "LF",
          "basis": "eave_lf",
          "qty_per_unit": 1,
          "unit_price": 14,
          "waste_pct": 5,
          "why": "Coordinated so the water path is continuous."
        },
        {
          "description": "Permit, warranty registration + cleanup",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 685,
          "waste_pct": 0,
          "why": "Hardie warranty registration included."
        }
      ]
    },
    {
      "code": "RET-SIDE-STONE",
      "name": "Natural / manufactured stone veneer accent",
      "trade": "masonry-stone",
      "note": "Retail list. $19.00/SF base; published DMV stone veneer $12-25/SF.",
      "items": [
        {
          "description": "Stone veneer, installed over lath + scratch coat",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 19,
          "waste_pct": 10,
          "why": "Mid-upper of published $12-25/SF band."
        },
        {
          "description": "Flashing, weep screed + drainage plane",
          "unit": "SF",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 3.1,
          "waste_pct": 5,
          "why": "Where veneer fails, it fails at the drainage plane."
        }
      ]
    },
    {
      "code": "RET-WINDOW-REPL",
      "name": "Replacement window, insulated low-E",
      "trade": "windows",
      "note": "Retail list. UD list price per opening. Owner to confirm against supplier sheet.",
      "items": [
        {
          "description": "Replacement window, installed, per opening",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 1285,
          "waste_pct": 0,
          "why": "UD list. Low-E, argon, full-frame where needed."
        },
        {
          "description": "Interior + exterior trim and finish",
          "unit": "EA",
          "basis": "fixed",
          "qty_per_unit": 1,
          "unit_price": 285,
          "waste_pct": 0,
          "why": "UD list."
        }
      ]
    }
  ]
}
