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

Revenue from Contracts with Customers - Contract Assets and Liabilities (Details) - USD ($) $ in Thousands | 3 Months Ended | 12 Months Ended
--- | --- | ---
Mar. 31, 2021 | Mar. 31, 2020 | Dec. 31, 2020
Contract Assets |  |  |
Balance at beginning of period | $ 18,622 | $ 2,736 | $ 2,736
Change due to acquisitions / disposals | 472 |  | 9,509
Change related to credit allowance | 45 |  | (79)
Other changes in the period | (8,972) |  | 6,456
Balance at end of period | 10,167 |  | 18,622
Contract Liabilities |  |  |
Balance at beginning of period | 226,237 | 166,918 | 166,918
Change due to acquisitions / disposals | 1,610 |  | 39,885
Other changes in the period | 20,550 |  | 19,434
Balance at end of period | 248,397 |  | $ 226,237
Revenue related to our contract liabilities | $ 167,800 |  |
Calculated under Revenue Guidance in Effect before Topic 606 [Member] |  |  |
Contract Liabilities |  |  |
Revenue related to our contract liabilities |  | $ 126,800 |

X
- Definition Amount of increase (decrease) in contract with customer assets due to change in conditional versus unconditional. + References No definition available. + Details
Name: | fix_ContractWithCustomerAssetIncreaseDecreaseForChangeDueToConditionalVersusUnconditional
Namespace Prefix: | fix_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

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

X
- References No definition available. + Details
Name: | us-gaap_ChangeInContractWithCustomerLiabilityAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
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 -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 10 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045 + Details
Name: | us-gaap_ContractWithCustomerAssetIncreaseDecreaseForContractAcquiredInBusinessCombination
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 45 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=121556615&loc=SL49130531-203044 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 45 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=121556615&loc=SL49130533-203044 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 8 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045 + Details
Name: | us-gaap_ContractWithCustomerAssetNetCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of revenue recognized arising from contract liability from change in timeframe for performance obligation to be satisfied. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 10 -Subparagraph (e) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045 + Details
Name: | us-gaap_ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 45 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=121556615&loc=SL49130531-203044 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=121556615&loc=SL49130532-203044 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 8 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045 + Details
Name: | us-gaap_ContractWithCustomerLiabilityCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

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 -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 10 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130551-203045 + 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 that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 8 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130549-203045 + Details
Name: | us-gaap_ContractWithCustomerLiabilityRevenueRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

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 to consideration is unconditional. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 4 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=121604090&loc=SL49130543-203045 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 45 -Paragraph 4 -URI http://asc.fasb.org/extlink&oid=121556615&loc=SL49130534-203044 + Details
Name: | us-gaap_ContractWithCustomerReceivableCreditLossExpenseReversal
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Details
Name: | us-gaap_InitialApplicationPeriodCumulativeEffectTransitionAxis=us-gaap_CalculatedUnderRevenueGuidanceInEffectBeforeTopic606Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |