XML 67 R51.htm IDEA: XBRL DOCUMENT
v3.24.0.1

Revenue from Contracts with Customers (Details) - USD ($) | 12 Months Ended
--- | ---
Dec. 31, 2023 | Dec. 31, 2022 | Dec. 31, 2021
Revenue From Contract With Customers [Line Items] |  |  |
Performance obligation satisfied in previous period | $ 16,500,000 | $ 0 | $ 0
Unbilled revenues for unapproved change orders | 29,800,000 | 36,000,000 |
Claims on contract assets | 6,700,000 | 3,800,000 |
Claim amounts within accounts receivable | 15,400,000 | 0 |
Contractually billed amounts and retention related to contracts with unapproved change orders and claims | 157,700,000 | 131,400,000 |
Net contract liabilities, construction | 1,261,056,000 | 763,163,000 |
Contract asset impairment | 0 | 0 |
Accounts receivable, retainage | $ 555,900,000 | 456,900,000 |
Accounts receivable, retainage estimated to be collected in next fiscal year | 88.00% |  |
Accounts payable, retainage | $ 93,600,000 | $ 82,400,000 |
Accounts payable, retainage estimated to be paid in next fiscal year | 90.00% |  |
Remaining performance obligations | $ 8,847,421,000 |  |
Minimum |  |  |
Revenue From Contract With Customers [Line Items] |  |  |
Change in total estimated cost or anticipated contract value | 1,000,000 |  |
Performance obligation satisfied in previous period | 1,000,000 |  |
2023 Acquisitions |  |  |
Revenue From Contract With Customers [Line Items] |  |  |
Increase in contract assets from acquisitions | 2,000,000 |  |
Increase in contract liabilities from acquisitions | 3,800,000 |  |
Excluding2023Acquisitions |  |  |
Revenue From Contract With Customers [Line Items] |  |  |
Increase in net contract liabilities | 497,900,000 |  |
United States Electrical Construction And Facilities Services |  |  |
Revenue From Contract With Customers [Line Items] |  |  |
Performance obligation satisfied in previous period | 3,400,000 |  |
United States Mechanical Construction And Facilities Services |  |  |
Revenue From Contract With Customers [Line Items] |  |  |
Performance obligation satisfied in previous period | $ 13,100,000 |  |

X
- Definition Contractually billed accounts receivable and retention on contracts with unapproved change orders and claims. + References No definition available. + Details
Name: | eme_AccountsReceivableContractuallyBilledAmountsOnContractsWithUnapprovedChangeOrdersAndClaims
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition The total amount of accounts receivable from customers under construction contracts associated with claims or other similar items subject to uncertainty concerning their determination or ultimate realization. + References No definition available. + Details
Name: | eme_AccountsReceivableUnapprovedContractClaims1
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of unbilled claims or other similar items included in contract assets subject to uncertainty concerning their determination or ultimate realization under construction contracts. + References No definition available. + Details
Name: | eme_ContractClaimsAndUncertainAmounts
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of increase in net contract liabilities. + References No definition available. + Details
Name: | eme_ContractNetLiabilitiesIncrease
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Percentage of contract retainage payable expected to be paid in next twelve months. + References No definition available. + Details
Name: | eme_ContractPayableRetainageExpectedToBePaidPercent
Namespace Prefix: | eme_
Data Type: | dtr-types1:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount billed to customers under contracts that have been withheld because of retainage provisions in a contract. + References No definition available. + Details
Name: | eme_ContractReceivableRetainage1
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Percentage of contract retainage receivable expected to be collected in next twelve months. + References No definition available. + Details
Name: | eme_ContractReceivableRetainageExpectedToBeCollectedPercent
Namespace Prefix: | eme_
Data Type: | dtr-types1:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Reduction in profit recognized for cumulative catch-up adjustment from change in measure of progress. + References No definition available. + Details
Name: | eme_ContractWithCustomerCumulativeCatchUpAdjustmentChangeInMeasureOfProgress
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Net contract liabilities on uncompleted construction contracts. + References No definition available. + Details
Name: | eme_NetContractLiabilitiesConstruction
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amounts owed to vendors and subcontractors that have been withheld because of retainage provisions in a contract. + References No definition available. + Details
Name: | eme_RetentionPayable1
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition RevenueFromContractWithCustomersLineItems + References No definition available. + Details
Name: | eme_RevenueFromContractWithCustomersLineItemsLineItems
Namespace Prefix: | eme_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The amount of unbilled receivables for unapproved change orders from customers under construction contracts that were not billed at the balance sheet date, included in contract assets. + References No definition available. + Details
Name: | eme_UnbilledReceivablesForUnapprovedChangeOrders
Namespace Prefix: | eme_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of expense (reversal of expense) for expected credit loss on right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 326 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13 Reference 2: http://www.xbrl.org/2003/role/exampleRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 10 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 4 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-4 + Details
Name: | us-gaap_ContractWithCustomerAssetCreditLossExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, from business combination. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 10 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10 + Details
Name: | us-gaap_ContractWithCustomerAssetIncreaseDecreaseForContractAcquiredInBusinessCombination
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration from customer has been received or is due, from business combination. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 10 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-10 + Details
Name: | us-gaap_ContractWithCustomerLiabilityIncreaseDecreaseForContractAcquiredInBusinessCombination
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of revenue recognized from performance obligation satisfied or partially satisfied in previous reporting periods. Includes, but is not limited to, change in transaction price. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 12A -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-12A + Details
Name: | us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of transaction price allocated to performance obligation that has not been recognized as revenue. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Subparagraph (a) -SubTopic 10 -Topic 606 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479806/606-10-50-13 + Details
Name: | us-gaap_RevenueRemainingPerformanceObligation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=eme_A2023AcquisitionsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=eme_Excluding2023AcquisitionsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=eme_UnitedStatesElectricalConstructionAndFacilitiesServicesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=eme_UnitedStatesMechanicalConstructionAndFacilitiesServicesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |