XML 46 R30.htm IDEA: XBRL DOCUMENT
v3.25.4

Revenue from Contracts with Customers (Tables) | 12 Months Ended
--- | ---
Dec. 31, 2025
Revenue from Contract with Customer [Abstract] |
Schedule of disaggregation of revenue | Our consolidated 2025 revenue was derived from contracts to provide service activities in the mechanical and electrical segments we serve. Refer to Note 16 “Segment Information” for additional information on our reportable segments. We disaggregate our revenue from contracts with customers by service provided, customer type and activity type, as we believe it best depicts how the nature, amount, timing and uncertainty of our revenue and cash flows are affected by economic factors. See details in the following tables (dollars in thousands): ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | ​ | Year Ended December 31, | ​
Revenue by Service Provided | ​ ​ | ​ ​ | 2025 | ​ | ​ ​ | 2024 | ​ | ​ | 2023 | ​
Mechanical Segment | ​ | ​ | $ | 6,673,745 | ​ ​ | 73.3 | % | ​ | $ | 5,527,604 | ​ ​ | 78.7 | % | ​ | $ | 3,946,022 | ​ | 75.8 | %
Electrical Segment | ​ | ​ | ​ | 2,427,896 | ​ | 26.7 | % | ​ | ​ | 1,499,872 | ​ | 21.3 | % | ​ | ​ | 1,260,738 | ​ | 24.2 | %
Total | ​ | ​ | $ | 9,101,641 | ​ | 100.0 | % | ​ | $ | 7,027,476 | ​ | 100.0 | % | ​ | $ | 5,206,760 | ​ | 100.0 | %
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | ​ | Year Ended December 31, | ​
Revenue by Type of Customer | ​ | ​ | 2025 | ​ | ​ | 2024 |  | ​ | 2023 |
Technology | ​ | ​ | $ | 4,098,854 | ​ | 45.0 | % | ​ | $ | 2,331,362 | ​ | 33.2 | % | ​ | $ | 1,114,382 | ​ | 21.4 | %
Manufacturing | ​ | ​ | ​ | 2,011,607 | ​ | 22.1 | % | ​ | ​ | 1,919,403 | ​ | 27.3 | % | ​ | ​ | 1,751,684 | ​ | 33.6 | %
Healthcare | ​ | ​ | ​ | 810,646 | ​ | 8.9 | % | ​ | ​ | 584,902 | ​ | 8.3 | % | ​ | ​ | 554,906 | ​ | 10.6 | %
Education | ​ | ​ | ​ | 665,266 | ​ | 7.3 | % | ​ | ​ | 702,706 | ​ | 10.0 | % | ​ | ​ | 493,982 | ​ | 9.5 | %
Government | ​ | ​ | ​ | 457,329 | ​ | 5.0 | % | ​ | ​ | 375,201 | ​ | 5.4 | % | ​ | ​ | 301,837 | ​ | 5.8 | %
Office Buildings | ​ | ​ | ​ | 446,659 | ​ | 5.0 | % | ​ | ​ | 424,343 | ​ | 6.0 | % | ​ | ​ | 400,754 | ​ | 7.7 | %
Retail, Restaurants and Entertainment | ​ | ​ | ​ | 337,590 | ​ | 3.7 | % | ​ | ​ | 377,302 | ​ | 5.4 | % | ​ | ​ | 310,381 | ​ | 6.0 | %
Multi-Family and Residential | ​ | ​ | ​ | 130,578 | ​ | 1.4 | % | ​ | ​ | 142,133 | ​ | 2.0 | % | ​ | ​ | 181,780 | ​ | 3.5 | %
Other | ​ | ​ | ​ | 143,112 | ​ | 1.6 | % | ​ | ​ | 170,124 | ​ | 2.4 | % | ​ | ​ | 97,054 | ​ | 1.9 | %
Total | ​ | ​ | $ | 9,101,641 | ​ | 100.0 | % | ​ | $ | 7,027,476 | ​ | 100.0 | % | ​ | $ | 5,206,760 | ​ | 100.0 | %
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | ​ | Year Ended December 31, | ​
Revenue by Activity Type | ​ | ​ | 2025 | ​ | ​ | 2024 |  | ​ | 2023 | ​
New Construction | ​ | ​ | $ | 5,752,786 | ​ | 63.2 | % | ​ | $ | 3,984,529 | ​ | 56.7 | % | ​ | $ | 2,853,239 | ​ | 54.8 | %
Existing Building Construction | ​ | ​ | ​ | 2,118,363 | ​ | 23.3 | % | ​ | ​ | 1,945,093 | ​ | 27.7 | % | ​ | ​ | 1,337,023 | ​ | 25.6 | %
Service Projects | ​ | ​ | ​ | 568,845 | ​ | 6.2 | % | ​ | ​ | 468,950 | ​ | 6.7 | % | ​ | ​ | 446,151 | ​ | 8.6 | %
Service Calls, Maintenance and Monitoring | ​ | ​ | ​ | 661,647 | ​ | 7.3 | % | ​ | ​ | 628,904 | ​ | 8.9 | % | ​ | ​ | 570,347 | ​ | 11.0 | %
Total | ​ | ​ | $ | 9,101,641 | ​ | 100.0 | % | ​ | $ | 7,027,476 | ​ | 100.0 | % | ​ | $ | 5,206,760 | ​ | 100.0 | %
Schedule of contract assets and liabilities | Contract assets and liabilities in the Consolidated Balance Sheet consisted of the following amounts as of December 31, 2025 and December 31, 2024 (in thousands): ​
​ | ​ | ​ | ​ | ​ | ​
​ | December 31, 2025 | ​ | December 31, 2024
Contract assets: | ​ | ​ | ​ | ​ | ​
Costs and estimated earnings in excess of billings, less allowance for credit losses | $ | 88,817 | ​ | $ | 91,681
Contract liabilities: | ​ | ​ | ​ | ​ | ​
Billings in excess of costs and estimated earnings and deferred revenue | $ | 2,120,262 | ​ | $ | 1,149,257
​

X
- Definition Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 10 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10 + Details
Name: | us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 5 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5 + Details
Name: | us-gaap_DisaggregationOfRevenueTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_RevenueFromContractWithCustomerAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration