Acquisitions - Purchase Price Allocation (Details) - USD ($)
$ in Thousands
Dec. 31, 2019
Jul. 08, 2019
Dec. 31, 2018
Jan. 23, 2018
Dec. 31, 2017
Business Acquisition [Line Items]          
Goodwill $ 261,983   $ 233,619   $ 216,930
Advantor Systems Corporation          
Business Acquisition [Line Items]          
Receivables   $ 11,535      
Other current assets   2,719      
Property, plant and equipment   155      
Goodwill   28,364      
Intangible assets   8,300      
Other non-current assets   1,868      
Accounts payable   (4,223)      
Other current liabilities   (1,519)      
Accrued compensation   (907)      
Other non-current liabilities   (1,218)      
Purchase price, net of cash acquired   $ 45,074      
SENTEL          
Business Acquisition [Line Items]          
Receivables       $ 23,339  
Other current assets       975  
Property, plant and equipment       810  
Goodwill       16,689  
Intangible assets       10,500  
Accounts payable       (10,012)  
Other current liabilities       (5,446)  
Purchase price, net of cash acquired       $ 36,855