v3.26.1
Intangible Assets - Schedule of Gross Amount and Accumulated Amortization of Intangible Assets (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2026
Dec. 31, 2025
Acquired Finite Lived Intangible Assets [Line Items]    
Gross Carrying Amount $ 697,410 $ 595,364
Accumulated Amortization (289,551) (269,484)
Net Carrying Amount 407,859 325,880
Backlog    
Acquired Finite Lived Intangible Assets [Line Items]    
Gross Carrying Amount 170,870 154,470
Accumulated Amortization (95,916) (83,181)
Net Carrying Amount $ 74,954 71,289
Weighted Average Amortization Period (in years) 3 years 3 months 18 days  
Customer Relationships    
Acquired Finite Lived Intangible Assets [Line Items]    
Gross Carrying Amount $ 480,030 395,460
Accumulated Amortization (173,524) (166,391)
Net Carrying Amount $ 306,506 229,069
Weighted Average Amortization Period (in years) 12 years 1 month 6 days  
Developed Technology    
Acquired Finite Lived Intangible Assets [Line Items]    
Gross Carrying Amount $ 29,100 30,100
Accumulated Amortization (14,111) (13,496)
Net Carrying Amount $ 14,989 16,604
Weighted Average Amortization Period (in years) 4 years 6 months  
Trade Name    
Acquired Finite Lived Intangible Assets [Line Items]    
Gross Carrying Amount $ 4,930 2,530
Accumulated Amortization (1,318) (2,123)
Net Carrying Amount $ 3,612 407
Weighted Average Amortization Period (in years) 1 year 8 months 12 days  
Noncompete Agreements    
Acquired Finite Lived Intangible Assets [Line Items]    
Gross Carrying Amount $ 10,680 10,980
Accumulated Amortization (4,682) (4,293)
Net Carrying Amount $ 5,998 6,687
Weighted Average Amortization Period (in years) 3 years  
In Process Research and Development    
Acquired Finite Lived Intangible Assets [Line Items]    
Gross Carrying Amount $ 1,800 1,800
Accumulated Amortization 0 0
Net Carrying Amount 1,800 1,800
Other Intangibles    
Acquired Finite Lived Intangible Assets [Line Items]    
Gross Carrying Amount 0 24
Accumulated Amortization 0 0
Net Carrying Amount $ 0 $ 24