XML 29 R18.htm IDEA: XBRL DOCUMENT
v3.25.1

Segment Information | 3 Months Ended
--- | ---
Mar. 31, 2025
Segment Information |
Segment Information | 11. Segment Information Our activities are within the mechanical services industry and the electrical services industry, which represent our two reportable segments. We aggregate our operating segments into two reportable segments, as the operating segments meet all of the aggregation criteria. Segment information is prepared on the same basis that our Chief Operating Decision Maker (“CODM”) reviews financial information for operational decision-making purposes. Our CODM is the President and Chief Executive Officer. Our CODM allocates resources such as employees and capital resources primarily based on historical and potential future revenue, gross profit and operating income. Our CODM also uses segment gross profit and operating income when assessing pricing and performance by management teams in our operating 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
- References No definition available. + Details
Name: | us-gaap_SegmentReportingAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 48 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (f) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 270 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (i) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (ee) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 5: http://fasb.org/us-gaap/role/ref/otherTransitionRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 6: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 54 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54 Reference 7: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 47 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47 Reference 8: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 54 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54 Reference 9: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 47 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47 Reference 10: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 54 -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-54 Reference 11: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 47 -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-47 Reference 12: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 22 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22 Reference 13: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 31 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31 Reference 14: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 34 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-34 Reference 15: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26C -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26C Reference 16: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26B -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26B Reference 17: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 15 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-15 Reference 18: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 42 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42 Reference 19: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 40 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-40 Reference 20: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -Name Accounting Standards Codification -Publisher FASB -URI https://asc.fasb.org/280/tableOfContent Reference 21: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 26 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-26 Reference 22: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 41 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-41 Reference 23: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 21 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21 Reference 24: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 21 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-21 Reference 25: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 + Details
Name: | us-gaap_SegmentReportingDisclosureTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration