Hi Jim,
Adagio has 2 invoicing options. Invoicing as a module could be used for service invoices and catalog items, with complete flexibility for layout content.
Order Entry is the other, more traditional invoicing option, where you can invoice directly or after entering a sales order. The formatting of the invoice is quite flexible but all items would be reported in the same manner on a customer invoice. And for service organizations such yours, you can use Adagio Order Entry, with or without Inventory, as Items can be a catalog price list.
And for your pricing you can create customer price lists, or multiple pricelists for customer projects under the alternate pricelist feature. Or you can import from your existing price lists (if you can export out) into Adagio price lists, fairly easily. It's one the strongest features especially when converting from another system.
Contact me if you need more any information.
Regards,
Brian