XML 41 R30.htm IDEA: XBRL DOCUMENT
v3.10.0.1

Debt Obligations - Other (Details) $ in Thousands | 3 Months Ended | 9 Months Ended | 12 Months Ended |  |
--- | --- | --- | --- | --- | ---
Sep. 30, 2018 USD ($) item | Jun. 30, 2018 USD ($) item | Mar. 31, 2018 item | Sep. 30, 2018 USD ($) item | Dec. 31, 2017 USD ($) item | Apr. 18, 2018 USD ($) | Apr. 17, 2018 USD ($)
Other disclosures |  |  |  |  |  |  |
Number of Businesses Acquired | item | 2 | 3 | 2 |  | 4 |  |
Outstanding balance | $ 96,951 |  |  | $ 96,951 | $ 60,539 |  |
Outstanding balance | 93,672 |  |  | 93,672 | 59,926 |  |
Shoffner |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance | 100 |  |  | 100 |  |  |
Debt acquired related to coil line duct processing system | 400 |  |  | 400 |  |  |
Current debt | 100 |  |  | $ 100 |  |  |
London Interbank Offered Rate (LIBOR) | Shoffner |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 2.25% |  |  |
Revolving credit facility |  |  |  |  |  |  |
Long-Term Debt Obligations |  |  |  |  |  |  |
Outstanding borrowings | 70,000 |  |  | $ 70,000 |  |  |
Letters of credit amount outstanding | 33,600 |  |  | 33,600 |  |  |
Credit available | $ 296,400 |  |  | $ 296,400 |  |  |
Principal financial covenants |  |  |  |  |  |  |
Number of interest rate options | item |  |  |  | 2 |  |  |
Leverage ratio | 0.50 |  |  | 0.50 |  |  |
Fixed charge coverage ratio | 18.6 |  |  | 18.6 |  |  |
Number of quarters of capital expenditures, tax provision, dividends and stock repurchase payments used for calculation of fixed charge coverage ratio | item |  |  |  | 4 |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance | $ 70,000 |  |  | $ 70,000 | 45,000 |  |
Weighted average interest rate (as a percent) | 3.40% |  |  | 3.40% |  |  |
Revolving credit facility | Through maturity |  |  |  |  |  |  |
Principal financial covenants |  |  |  |  |  |  |
Leverage ratio | 3.00 |  |  | 3.00 |  |  |
Revolving credit facility | Minimum |  |  |  |  |  |  |
Principal financial covenants |  |  |  |  |  |  |
Fixed charge coverage ratio | 2.00 |  |  | 2.00 |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Letter of credit fees (as a percent) |  |  |  | 1.25% |  |  |
Commitment fees payable on unused portion of the facility (as a percent) |  |  |  | 0.20% |  |  |
Revolving credit facility | Minimum | Covenant Requirement |  |  |  |  |  |  |
Principal financial covenants |  |  |  |  |  |  |
Net leverage ratio used as basis for other restrictions | 2.00 |  |  | 2.00 |  |  |
Revolving credit facility | Maximum |  |  |  |  |  |  |
Principal financial covenants |  |  |  |  |  |  |
Net leverage ratio after giving effect to stock repurchases for calculation of the fixed charge coverage ratio | 1.75 |  |  | 1.75 |  |  |
Permitted amount of acquisitions per transaction | $ 40,000 |  |  | $ 40,000 |  |  |
Aggregate purchase price of current acquisition and acquisitions in the preceding 12 month period for determining permitted amount of acquisition per transaction | $ 80,000 |  |  | $ 80,000 |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Letter of credit fees (as a percent) |  |  |  | 2.00% |  |  |
Commitment fees payable on unused portion of the facility (as a percent) |  |  |  | 0.35% |  |  |
Revolving credit facility | Maximum | Covenant Requirement |  |  |  |  |  |  |
Principal financial covenants |  |  |  |  |  |  |
Net leverage ratio used to determine exclusion of stock repurchases and the payment of dividends for calculation of the fixed charge coverage ratio | 1.75 |  |  | 1.75 |  |  |
Revolving credit facility | Maximum | Stock Repurchases After February 22, 2016 And On Or Before December 31, 2017 |  |  |  |  |  |  |
Principal financial covenants |  |  |  |  |  |  |
Amount of stock repurchases to maintain maximum net leverage ratio |  |  |  | $ 30,000 |  |  |
Revolving credit facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: Less than 1.00 |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 0.25% |  |  |
Revolving credit facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 1.00 to 1.75 |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 0.50% |  |  |
Revolving credit facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 1.75 to 2.50 |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 0.75% |  |  |
Revolving credit facility | Base rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 2.50 or greater |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 1.00% |  |  |
Revolving credit facility | Eurodollar rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: Less than 1.00 |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 1.25% |  |  |
Revolving credit facility | Eurodollar rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 1.00 to 1.75 |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 1.50% |  |  |
Revolving credit facility | Eurodollar rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 1.75 to 2.50 |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 1.75% |  |  |
Revolving credit facility | Eurodollar rate | Consolidated Total Indebtedness to Credit Facility Adjusted EBITDA: 2.50 or greater |  |  |  |  |  |  |
Additional per annum interest margin added under: |  |  |  |  |  |  |
Additional per annum interest margin (as a percent) |  |  |  | 2.00% |  |  |
Amended senior revolving credit facility |  |  |  |  |  |  |
Long-Term Debt Obligations |  |  |  |  |  |  |
Borrowing capacity |  |  |  |  |  | $ 400,000 | $ 325,000
Line of credit borrowing capacity accordion option | $ 100,000 |  |  | $ 100,000 |  |  |
Financing and professional cost | 800 |  |  | 800 |  |  |
Unamortized costs | 1,100 |  |  | $ 1,100 |  |  |
Notes to former owners |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Number of Businesses Acquired | item |  |  |  | 6 |  |  |
Outstanding balance | 26,813 |  |  | $ 26,813 | 15,325 |  |
Subordinate note | Shoffner |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance | $ 500 |  |  | $ 500 |  |  |
Weighted average interest rate (as a percent) | 3.00% |  |  | 3.00% |  |  |
Subordinate note | Acquisition First Quarter 2018 [Member] |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance | $ 1,000 |  |  | $ 1,000 |  |  |
Weighted average interest rate (as a percent) | 2.50% |  |  | 2.50% |  |  |
Subordinate note | Acquisition Second Quarter 2018 [Member] |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance |  | $ 1,000 |  |  |  |  |
Weighted average interest rate (as a percent) | 3.50% |  |  | 3.50% |  |  |
Promissory note | BCH |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance | $ 14,300 |  |  | $ 14,300 |  |  |
Weighted average interest rate (as a percent) | 3.00% |  |  | 3.00% |  |  |
Promissory note | Acquisition Third Quarter 2018 [Member] |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance | $ 6,500 |  |  | $ 6,500 |  |  |
Weighted average interest rate (as a percent) | 3.50% |  |  | 3.50% |  |  |
Promissory note | Acquisition Two Third Quarter 2018 [Member] |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance | $ 3,500 |  |  | $ 3,500 |  |  |
Weighted average interest rate (as a percent) | 2.90% |  |  | 2.90% |  |  |
Other debt |  |  |  |  |  |  |
Other disclosures |  |  |  |  |  |  |
Outstanding balance | $ 138 |  |  | $ 138 | $ 214 |  |

X
- Definition Represents the amount of stock repurchases to maintain maximum net leverage ratio. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantAmountOfStockRepurchasesToMaintainMaximumNetLeverageRatio
Namespace Prefix: | fix_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Represents the number of quarters of capital expenditures, tax provision, dividends and stock repurchase payments used for the calculation of the fixed charge coverage ratio. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantCapitalExpendituresTaxProvisionsDividendsAndStockRepurchasePaymentsUsedForCalculationOfFixedChargeCoverageRatioNumberOfQuarters
Namespace Prefix: | fix_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the ratio of consolidated adjusted earnings before, interest, taxes, depreciation and amortization, less non-financed capital expenditures, tax provision, dividends and amounts used to repurchase stock to the sum of interest expense and scheduled principal payments of indebtedness required to be maintained under the financial covenants. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantFixedChargeCoverageRatio
Namespace Prefix: | fix_
Data Type: | xbrli:pureItemType
Balance Type: | na
Period Type: | instant

X
- Definition Represents the ratio of consolidated total debt to consolidated adjusted earnings before, interest, taxes, depreciation and amortization required to be maintained under the financial covenants. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantLeverageRatio
Namespace Prefix: | fix_
Data Type: | xbrli:pureItemType
Balance Type: | na
Period Type: | instant

X
- Definition Represents the net leverage ratio determine after giving effect to stock repurchases for calculation of the fixed charge coverage ratio under the financial covenants. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantNetLeverageRatioAfterGivingEffectToStockRepurchasesForCalculatingFixedChargeCoverageRatio
Namespace Prefix: | fix_
Data Type: | xbrli:pureItemType
Balance Type: | na
Period Type: | instant

X
- Definition Represents the net leverage ratio used to determine exclusion of stock repurchases and the payment of dividends for calculation of the fixed charge coverage ratio under the financial covenants. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantNetLeverageRatioUsedToDetermineExclusionOfStockRepurchasesAndDividendPaymentsForCalculatingFixedChargeCoverageRatio
Namespace Prefix: | fix_
Data Type: | xbrli:pureItemType
Balance Type: | na
Period Type: | instant

X
- Definition Represents the aggregate purchase price of current acquisition and acquisitions in the preceding twelve month period used for determining the permitted amount of acquisition per transaction under the financial covenants. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantOtherRestrictionsAggregatePurchasePriceOfAcquisitions
Namespace Prefix: | fix_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Represents the net leverage ratio as defined in the financial covenants which is used as a basis to determine other restrictions. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantOtherRestrictionsNetLeverageRatio
Namespace Prefix: | fix_
Data Type: | xbrli:pureItemType
Balance Type: | na
Period Type: | instant

X
- Definition Represents the amount of acquisition per transaction permitted under the financial covenants. + References No definition available. + Details
Name: | fix_DebtInstrumentCovenantOtherRestrictionsPermittedAcquisitionAmountPerTransaction
Namespace Prefix: | fix_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

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

X
- Definition Represents the number of interest rate options. + References No definition available. + Details
Name: | fix_DebtInstrumentInterestRateOptionsNumber
Namespace Prefix: | fix_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

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

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: | num: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 Amount of long-term debt due after one year or the normal operating cycle, if longer, assumed at the acquisition date. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 805 -SubTopic 20 -Section 50 -Paragraph 1 -Subparagraph (c) -URI http://asc.fasb.org/extlink&oid=84161108&loc=d3e4845-128472 + Details
Name: | us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedNoncurrentLiabilitiesLongTermDebt
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of short-term debt and current maturity of long-term debt and capital lease obligations due within one year or the normal operating cycle, if longer. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19,20) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_DebtCurrent
Namespace Prefix: | us-gaap_
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: | num:percentItemType
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 No definition available. + 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 discount. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 835 -SubTopic 30 -Section 45 -Paragraph 1A -URI http://asc.fasb.org/extlink&oid=114775744&loc=d3e28541-108399 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 835 -SubTopic 30 -Section 55 -Paragraph 8 -URI http://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400 + Details
Name: | us-gaap_DebtInstrumentUnamortizedDiscount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Represents the aggregate of total long-term debt, including current maturities and short-term debt. + References No definition available. + Details
Name: | us-gaap_DebtLongtermAndShorttermCombinedAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
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: | num: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 -Publisher FASB -Name Accounting Standards Codification -Topic 835 -SubTopic 30 -Section 45 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=114775744&loc=d3e28555-108399 + 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 -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(22)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 210 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-03(16)) -URI http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 210 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-03(16)) -URI http://asc.fasb.org/extlink&oid=6879938&loc=d3e572229-122910 + 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 -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19(b),22(b)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + 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 -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.19(b),22(b)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + 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: | num:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 20 -Section 50 -Paragraph 4 -Subparagraph (b)(3) -URI http://asc.fasb.org/extlink&oid=109500613&loc=SL6031897-161870 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 210 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-03(a)(16)) -URI http://asc.fasb.org/extlink&oid=6879938&loc=d3e572229-122910 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 210 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-03(16)) -URI http://asc.fasb.org/extlink&oid=6876686&loc=d3e534808-122878 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(22)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_LongTermDebt
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

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 The number of businesses acquired by the entity during the period. + References No definition available. + Details
Name: | us-gaap_NumberOfBusinessesAcquired
Namespace Prefix: | us-gaap_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=fix_ShoffnerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

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

X
- Details
Name: | fix_DebtCovenantEffectiveDateAxis=fix_ThroughMaturityMember
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: | us-gaap_StatementScenarioAxis=fix_ScenarioCovenantRequirementMember
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_StatementScenarioAxis=fix_StockRepurchasesAfterFebruary222016AndOnOrBeforeDecember312017Member
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: | us-gaap_VariableRateAxis=us-gaap_EurodollarMember
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_SubordinatedDebtMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=fix_AcquisitionFirstQuarter2018Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=fix_AcquisitionSecondQuarter2018Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=fix_BchHoldingsIncMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=fix_AcquisitionThirdQuarter2018Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=fix_AcquisitionTwoThirdQuarter2018Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

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