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

Revenue from Contracts with Customers - Contract Assets and Liabilities (Details) - USD ($) $ in Thousands | 6 Months Ended | 12 Months Ended
--- | --- | ---
Jun. 30, 2022 | Jun. 30, 2021 | Dec. 31, 2021
Contract Assets |  |  |
Change due to acquisitions / disposals | $ 2,426 |  | $ 10,356
Change related to credit allowance | 31 |  | (5)
Other changes in the period | (16,728) |  | 927
Contract Liabilities |  |  |
Change due to acquisitions / disposals | 1,160 |  | 36,523
Other changes in the period | 86,977 |  | 44,620
Contract assets: |  |  |
Balance at beginning of period | 29,900 | $ 18,622 | 18,622
Balance at end of period | 15,629 |  | 29,900
Costs and estimated earnings in excess of billings, less allowance for credit losses | 15,629 |  | 29,900
Contract liabilities: |  |  |
Balance at beginning of period | 307,380 | 226,237 | 226,237
Balance at end of period | 395,517 |  | 307,380
Total contract liabilities | 395,517 |  | $ 307,380
Revenue related to our contract liabilities | $ 268,000 | $ 195,000 |

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 https://asc.fasb.org/extlink&oid=126920106&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. + 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 (a) -URI https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 45 -Paragraph 1 -URI https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 45 -Paragraph 3 -URI https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044 + Details
Name: | us-gaap_ContractWithCustomerAssetNet
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

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

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

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

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 https://asc.fasb.org/extlink&oid=126920106&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 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 https://asc.fasb.org/extlink&oid=126920106&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 https://asc.fasb.org/extlink&oid=126920106&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 https://asc.fasb.org/extlink&oid=126920106&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 https://asc.fasb.org/extlink&oid=126919976&loc=SL49130534-203044 + Details
Name: | us-gaap_ContractWithCustomerReceivableCreditLossExpenseReversal
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration