XML 90 R71.htm IDEA: XBRL DOCUMENT
v3.22.4

Goodwill and Intangible Assets, Net - Additional Information (Details) - USD ($) | 12 Months Ended
--- | ---
Dec. 31, 2022 | Dec. 31, 2021
Goodwill [Line Items] |  |
Goodwill impairment | $ 0 | $ 0
Minimum |  |
Goodwill [Line Items] |  |
Percent of goodwill fair value that exceeds carrying value | 20.00% | 61.00%
Intangible assets amortization period | 1 year |
Minimum | Customer contracts |  |
Goodwill [Line Items] |  |
Intangible assets amortization period | 1 year |
Minimum | Customer relationships, noncompete agreements, technology and trade names |  |
Goodwill [Line Items] |  |
Intangible assets amortization period | 4 years |
Maximum |  |
Goodwill [Line Items] |  |
Intangible assets amortization period | 15 years |
Maximum | Customer contracts |  |
Goodwill [Line Items] |  |
Intangible assets amortization period | 8 years |
Maximum | Customer relationships, noncompete agreements, technology and trade names |  |
Goodwill [Line Items] |  |
Intangible assets amortization period | 15 years |

X
- Definition Percent of Goodwill Fair Value that Exceeds Carrying Value + References No definition available. + Details
Name: | amrc_PercentOfGoodwillFairValueThatExceedsCarryingValue
Namespace Prefix: | amrc_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Useful life of finite-lived intangible assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_FiniteLivedIntangibleAssetUsefulLife
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 20 -Section 50 -Paragraph 2 -Subparagraph (b) -URI https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -Subparagraph (b) -URI https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 20 -Section 45 -Paragraph 2 -URI https://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266 Reference 4: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 20 -Section 55 -Paragraph 24 -URI https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 350 -SubTopic 20 -Section 50 -Paragraph 1 -Subparagraph (e) -URI https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267 + Details
Name: | us-gaap_GoodwillImpairmentLoss
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_GoodwillLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

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

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=us-gaap_CustomerContractsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis=amrc_CustomerRelationshipsNoncompeteAgreementsTechnologyAndTradeNamesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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