XML 48 R38.htm IDEA: XBRL DOCUMENT
v3.23.3

Debt Obligations - Other (Details) $ in Thousands | 9 Months Ended |  |  |
--- | --- | --- | --- | ---
Sep. 30, 2023 USD ($) item | Sep. 30, 2022 USD ($) | Dec. 31, 2022 USD ($) | May 25, 2022 USD ($) | May 24, 2022 USD ($)
Debt Obligations |  |  |  |  |
Financing and professional cost |  | $ 2,297 |  |  |
Revolving Credit Facility |  |  |  |  |
Debt Obligations |  |  |  |  |
Borrowing capacity |  |  |  | $ 850,000 |
Outstanding borrowings | $ 0 |  |  |  |
Letters of credit amount outstanding | 70,000 |  |  |  |
Credit available | $ 780,000 |  |  |  |
Other disclosures |  |  |  |  |
Weighted average interest rate (as a percent) |  |  | 5.70% |  |
Revolving Credit Facility | Minimum |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Commitment fees payable on unused portion of the facility (as a percent) | 0.15% |  |  |  |
Revolving Credit Facility | Maximum |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Commitment fees payable on unused portion of the facility (as a percent) | 0.25% |  |  |  |
Revolving Credit Facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: Less than 1.00 |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 0.00% |  |  |  |
Revolving Credit Facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 1.00 to 1.75 |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 0.25% |  |  |  |
Revolving Credit Facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 1.75 to 2.50 |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 0.50% |  |  |  |
Revolving Credit Facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 2.50 to 3.00 |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 0.75% |  |  |  |
Revolving Credit Facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 3.00 or Greater |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 1.00% |  |  |  |
Amended senior revolving credit facility |  |  |  |  |
Debt Obligations |  |  |  |  |
Borrowing capacity |  |  |  | 850,000 |
Financing and professional cost |  |  | $ 2,300 |  |
Unamortized costs |  |  |  |  | $ 1,200
Amended senior revolving credit facility | Maximum |  |  |  |  |
Debt Obligations |  |  |  |  |
Line of credit borrowing capacity accordion option |  |  |  | $ 250,000 |
Notes to Former Owners |  |  |  |  |
Other disclosures |  |  |  |  |
Cumulative number of companies acquired | item | 11 |  |  |  |
Notes to former owners | $ 47,106 |  | $ 41,040 |  |
Letter of Credit |  |  |  |  |
Debt Obligations |  |  |  |  |
Borrowing capacity | $ 175,000 |  |  |  |
Letter of Credit | Minimum |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Letter of credit fees (as a percent) | 1.00% |  |  |  |
Letter of Credit | Maximum |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Letter of credit fees (as a percent) | 2.00% |  |  |  |
SOFR | Revolving Credit Facility | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: Less than 1.00 |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 1.00% |  |  |  |
SOFR | Revolving Credit Facility | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 1.00 to 1.75 |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 1.25% |  |  |  |
SOFR | Revolving Credit Facility | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 1.75 to 2.50 |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 1.50% |  |  |  |
SOFR | Revolving Credit Facility | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 2.50 to 3.00 |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 1.75% |  |  |  |
SOFR | Revolving Credit Facility | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 3.00 or Greater |  |  |  |  |
Debt Instrument, Interest Rate, Effective Percentage [Abstract] |  |  |  |  |
Additional per annum interest margin (as a percent) | 2.00% |  |  |  |

X
- Definition The cumulative number of companies acquired by the entity whereby there are outstanding notes to former owners. + References No definition available. + Details
Name: | fix_CumulativeNumberOfCompaniesAcquiredOutstandingNotesToFormerOwners
Namespace Prefix: | fix_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Represents the fees for the letter of credit facility, expressed as a percent based on the ratio of consolidated total indebtedness to credit facility adjusted EBITDA, as defined in the credit agreement. + References No definition available. + Details
Name: | fix_LetterOfCreditFeesPercentage
Namespace Prefix: | fix_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Accordion option on credit facility per terms of the agreement. + References No definition available. + Details
Name: | fix_LineOfCreditBorrowingCapacityAccordionOption
Namespace Prefix: | fix_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Percentage points added to the reference rate to compute the variable rate on the debt instrument. + References No definition available. + Details
Name: | us-gaap_DebtInstrumentBasisSpreadOnVariableRate1
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_DebtInstrumentInterestRateEffectivePercentageAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
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 Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 835 -SubTopic 30 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482900/835-30-50-1 Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 235 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08(f)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-1 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 235 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 3 -Subparagraph (SX 210.12-04(a)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480678/235-10-S99-3 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1B -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B Reference 5: http://www.xbrl.org/2003/role/exampleRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 55 -Paragraph 69B -Publisher FASB -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69B Reference 6: http://www.xbrl.org/2003/role/exampleRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 55 -Paragraph 69C -Publisher FASB -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69C Reference 7: http://www.xbrl.org/2003/role/exampleRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 55 -Paragraph 69E -Publisher FASB -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69E Reference 8: http://www.xbrl.org/2003/role/exampleRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 55 -Paragraph 69F -Publisher FASB -URI https://asc.fasb.org//1943274/2147481568/470-20-55-69F Reference 9: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1B -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1B -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B Reference 11: http://www.xbrl.org/2003/role/exampleRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1B -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B Reference 12: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1B -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B Reference 13: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1B -Subparagraph (f) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B Reference 14: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1B -Subparagraph (h) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1B Reference 15: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1D -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D Reference 16: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1D -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D Reference 17: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1D -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1D Reference 18: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1E -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E Reference 19: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1E -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E Reference 20: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1E -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1E Reference 21: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1F -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F Reference 22: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1F -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F Reference 23: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1F -Subparagraph (b)(1) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F Reference 24: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1F -Subparagraph (b)(2) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1F Reference 25: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 1I -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147481139/470-20-50-1I + Details
Name: | us-gaap_DebtInstrumentLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount, after accumulated amortization, of debt issuance costs related to line of credit arrangements. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Section S45 -Paragraph 1 -SubTopic 30 -Topic 835 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479359/835-30-S45-1 + Details
Name: | us-gaap_DebtIssuanceCostsLineOfCreditArrangementsNet
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Weighted average interest rate of debt outstanding. + References No definition available. + Details
Name: | us-gaap_DebtWeightedAverageInterestRate
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Amount, before accumulated amortization, of debt issuance costs. Includes, but is not limited to, legal, accounting, underwriting, printing, and registration costs. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 835 -SubTopic 30 -Section 45 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482925/835-30-45-3 + Details
Name: | us-gaap_DeferredFinanceCostsGross
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition The total amount of the contingent obligation under letters of credit outstanding as of the reporting date. + References No definition available. + Details
Name: | us-gaap_LettersOfCreditOutstandingAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(22)) -SubTopic 10 -Topic 210 -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 944 -SubTopic 210 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-03(a)(16)(a)(2)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 942 -SubTopic 210 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-03(16)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1 + Details
Name: | us-gaap_LineOfCredit
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19(b),22(b)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 + Details
Name: | us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19(b),22(b)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 + Details
Name: | us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility. + References No definition available. + Details
Name: | us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | duration

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

X
- Definition Including the current and noncurrent portions, carrying value as of the balance sheet date of all notes and loans payable (with maturities initially due after one year or beyond the operating cycle if longer). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(22)) -SubTopic 10 -Topic 210 -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 944 -SubTopic 210 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-03(a)(16)(a)(2)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 942 -SubTopic 210 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-03(16)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479853/942-210-S99-1 + Details
Name: | us-gaap_NotesAndLoansPayable
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition The cash outflow for loan and debt issuance costs. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 15 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482740/230-10-45-15 + Details
Name: | us-gaap_PaymentsOfFinancingCosts
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Details
Name: | us-gaap_DebtInstrumentAxis=us-gaap_RevolvingCreditFacilityMember
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: |

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

X
- Details
Name: | us-gaap_VariableRateAxis=fix_DebtInstrumentVariableRateBaseRateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | fix_DebtCovenantRatioAxis=fix_DebtCovenantRatioRangeOneMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | fix_DebtCovenantRatioAxis=fix_DebtCovenantRatioRangeTwoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | fix_DebtCovenantRatioAxis=fix_DebtCovenantRatioRangeThreeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | fix_DebtCovenantRatioAxis=fix_DebtCovenantRatioRangeFourMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | fix_DebtCovenantRatioAxis=fix_DebtCovenantRatioRangeFiveMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DebtInstrumentAxis=fix_AmendedSeniorRevolvingCreditFacilityMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DebtInstrumentAxis=fix_SubordinateDebtAndPromissoryNoteMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DebtInstrumentAxis=us-gaap_LetterOfCreditMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | fix_DebtInstrumentVariableRateSecondaryClassificationAxis=fix_DebtInstrumentVariableRateSecuredOvernightFinancingRateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |