XML 69 R54.htm IDEA: XBRL DOCUMENT
v3.25.0.1

Revenue from Contracts with Customers - Schedule of Cumulative Catch-Up Adjustment (Details) - USD ($) | 12 Months Ended
--- | ---
Dec. 31, 2024 | Dec. 31, 2023 | Dec. 31, 2022
UNITED STATES |  |  |
Cumulative Catch-Up Adjustment [Line Items] |  |  |
Change in total estimated cost or anticipated contract value | $ 66,319,000 | $ 29,057,000 | $ 48,403,000
UNITED STATES | United States Electrical Construction And Facilities Services |  |  |
Cumulative Catch-Up Adjustment [Line Items] |  |  |
Change in total estimated cost or anticipated contract value | 27,977,000 | 12,535,000 | 33,463,000
UNITED STATES | United States Mechanical Construction And Facilities Services |  |  |
Cumulative Catch-Up Adjustment [Line Items] |  |  |
Change in total estimated cost or anticipated contract value | 38,342,000 | 10,864,000 | 13,679,000
UNITED STATES | United States Building Services |  |  |
Cumulative Catch-Up Adjustment [Line Items] |  |  |
Change in total estimated cost or anticipated contract value | 0 | $ 5,658,000 | $ 1,261,000
Minimum |  |  |
Cumulative Catch-Up Adjustment [Line Items] |  |  |
Change in total estimated cost or anticipated contract value | $ 1,000,000 |  |

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 Cumulative Catch-Up Adjustment + References No definition available. + Details
Name: | eme_CumulativeCatchUpAdjustmentLineItems
Namespace Prefix: | eme_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | srt_StatementGeographicalAxis=country_US
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: |

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

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