Functions belong either on the public facing pages, or to customer facing pages or to the employee facing pages. But bits of the employee facing applications show in the public or customer interfaces. An example would be list of services and available calendar from appointments+ is public, scheduling a service is customer requested and employee executed (needs phone or email contact to discuss), then the created appointment is customer and employee. Some bits only show in one segment.
In short, public is mostly static pages with some wp generated information sprinkled in, customer has different menus, some posting, a little somewhat confidential information. Employees have a different menu mostly skipping the public side and focusing on operations - sales leads, repair and support services, running the appointments for service or new product installation, etc.
I'm thinking one site (info in common db) with two starting points. If customer shows as logged in, then they ADD functions. Employee login is different main menu? Or just possibly, I'm an idiot.