XML 40 R29.htm IDEA: XBRL DOCUMENT
v3.25.1

Segment Information (Tables) | 3 Months Ended
--- | ---
Mar. 31, 2025
Segment Information |
Summary of information about reportable segments | The following tables present information about our reportable segments (in thousands): ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ |  | Mechanical Segment |  | Electrical Segment |  | Corporate |  | Consolidated
Total assets at March 31, 2025 | ​ | $ | 3,326,612 | ​ | $ | 1,031,571 | ​ | $ | 211,035 | ​ | $ | 4,569,218
Total assets at December 31, 2024 | ​ | $ | 3,162,677 | ​ | $ | 985,006 | ​ | $ | 563,405 | ​ | $ | 4,711,088
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended March 31, 2025
​ |  | Mechanical Segment |  | Electrical Segment |  | Corporate |  | Consolidated
Revenue | ​ | $ | 1,402,215 | ​ | $ | 429,071 | ​ | $ | — | ​ | $ | 1,831,286
Cost of services | ​ | ​ | 1,097,696 | ​ | ​ | 330,174 | ​ | ​ | — | ​ | ​ | 1,427,870
Gross profit | ​ | ​ | 304,519 | ​ | ​ | 98,897 | ​ | ​ | — | ​ | ​ | 403,416
Selling, general and administrative expenses | ​ | ​ | 132,270 | ​ | ​ | 44,046 | ​ | ​ | 18,558 | ​ | ​ | 194,874
Gain on sale of assets | ​ | ​ | (352) | ​ | ​ | (204) | ​ | ​ | — | ​ | ​ | (556)
Operating income | ​ | $ | 172,601 | ​ | $ | 55,055 | ​ | $ | (18,558) | ​ | $ | 209,098
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
Amortization of identifiable intangible assets | ​ | $ | 14,590 | ​ | $ | 5,525 | ​ | $ | — | ​ | $ | 20,115
Depreciation expense | ​ | $ | 11,404 | ​ | $ | 2,303 | ​ | $ | 303 | ​ | $ | 14,010
Capital expenditures | ​ | $ | 18,419 | ​ | $ | 3,539 | ​ | $ | 250 | ​ | $ | 22,208
​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | Three Months Ended March 31, 2024
​ |  | Mechanical Segment |  | Electrical Segment |  | Corporate |  | Consolidated
Revenue | ​ | $ | 1,185,009 | ​ | $ | 352,007 | ​ | $ | — | ​ | $ | 1,537,016
Cost of services | ​ | ​ | 967,297 | ​ | ​ | 272,356 | ​ | ​ | — | ​ | ​ | 1,239,653
Gross profit | ​ | ​ | 217,712 | ​ | ​ | 79,651 | ​ | ​ | — | ​ | ​ | 297,363
Selling, general and administrative expenses | ​ | ​ | 110,982 | ​ | ​ | 33,880 | ​ | ​ | 17,861 | ​ | ​ | 162,723
Gain on sale of assets | ​ | ​ | (574) | ​ | ​ | (246) | ​ | ​ | — | ​ | ​ | (820)
Operating income | ​ | $ | 107,304 | ​ | $ | 46,017 | ​ | $ | (17,861) | ​ | $ | 135,460
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
Amortization of identifiable intangible assets | ​ | $ | 18,094 | ​ | $ | 5,819 | ​ | $ | — | ​ | $ | 23,913
Depreciation expense | ​ | $ | 9,228 | ​ | $ | 1,720 | ​ | $ | 306 | ​ | $ | 11,254
Capital expenditures | ​ | $ | 19,942 | ​ | $ | 4,379 | ​ | $ | 631 | ​ | $ | 24,952
​

X
- Definition Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 25 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-25 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 30 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30 + Details
Name: | us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

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