XML 44 R33.htm IDEA: XBRL DOCUMENT v3.25.1
Revenue from Contracts with Customers - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Disaggregation of Revenue    
Revenue $ 1,831,286 $ 1,537,016
Percentage of revenue from contract with customer (as a percent) 100.00% 100.00%
New Construction    
Disaggregation of Revenue    
Revenue $ 1,065,084 $ 898,976
Percentage of revenue from contract with customer (as a percent) 58.20% 58.50%
Existing Building Construction    
Disaggregation of Revenue    
Revenue $ 492,603 $ 390,369
Percentage of revenue from contract with customer (as a percent) 26.90% 25.40%
Service Projects    
Disaggregation of Revenue    
Revenue $ 119,214 $ 104,114
Percentage of revenue from contract with customer (as a percent) 6.50% 6.80%
Service Calls, Maintenance and Monitoring    
Disaggregation of Revenue    
Revenue $ 154,385 $ 143,557
Percentage of revenue from contract with customer (as a percent) 8.40% 9.30%
Technology    
Disaggregation of Revenue    
Revenue $ 677,553 $ 464,814
Percentage of revenue from contract with customer (as a percent) 37.00% 30.20%
Manufacturing    
Disaggregation of Revenue    
Revenue $ 452,786 $ 461,400
Percentage of revenue from contract with customer (as a percent) 24.70% 30.00%
Education    
Disaggregation of Revenue    
Revenue $ 161,242 $ 133,983
Percentage of revenue from contract with customer (as a percent) 8.80% 8.70%
Healthcare    
Disaggregation of Revenue    
Revenue $ 182,542 $ 133,729
Percentage of revenue from contract with customer (as a percent) 10.00% 8.70%
Office Buildings    
Disaggregation of Revenue    
Revenue $ 122,526 $ 101,892
Percentage of revenue from contract with customer (as a percent) 6.70% 6.60%
Retail, Restaurants and Entertainment    
Disaggregation of Revenue    
Revenue $ 77,009 $ 80,585
Percentage of revenue from contract with customer (as a percent) 4.20% 5.20%
Government    
Disaggregation of Revenue    
Revenue $ 96,281 $ 87,801
Percentage of revenue from contract with customer (as a percent) 5.30% 5.70%
Multi-Family and Residential    
Disaggregation of Revenue    
Revenue $ 28,353 $ 40,851
Percentage of revenue from contract with customer (as a percent) 1.50% 2.70%
Other    
Disaggregation of Revenue    
Revenue $ 32,994 $ 31,961
Percentage of revenue from contract with customer (as a percent) 1.80% 2.20%
Mechanical Segment    
Disaggregation of Revenue    
Revenue $ 1,402,215 $ 1,185,009
Percentage of revenue from contract with customer (as a percent) 76.60% 77.10%
Electrical Segment    
Disaggregation of Revenue    
Revenue $ 429,071 $ 352,007
Percentage of revenue from contract with customer (as a percent) 23.40% 22.90%