I built the FY2025 revenue bridge, and it reconciles to the cent. I also wrote the commentary note.

FY2025 revenue was $11.2M against $11.2M in FY2024, a change of ($5K), or (0.04%).

| Step | Amount |
| --- | --- |
| FY2024 | $11.2M |
| Timing | $53K |
| Loss | ($1.3M) |
| Decline | ($443K) |
| Upsell | $1.2M |
| New | $463K |
| FY2025 | $11.2M |

- **Losses:** Fenwick Legal (($686K)) and Birchway Foods (($503K)) account for most of the ($1.3M) loss. The data doesn't show why they left, and the note says so.
- **Offsets:** Upsell from 23 customers and new business from 6 customers almost fully offset the losses.

All figures are the script's display strings, copied exactly. I didn't calculate or round anything myself.

Files are in `output/`:
- `bridge.json`
- `bridge-note.md`