<SEC-DOCUMENT>0001104659-25-123112.txt : 20251219
<SEC-HEADER>0001104659-25-123112.hdr.sgml : 20251219
<ACCEPTANCE-DATETIME>20251219160553
ACCESSION NUMBER:		0001104659-25-123112
CONFORMED SUBMISSION TYPE:	8-K
PUBLIC DOCUMENT COUNT:		14
CONFORMED PERIOD OF REPORT:	20251216
ITEM INFORMATION:		Departure of Directors or Certain Officers; Election of Directors; Appointment of Certain Officers: Compensatory Arrangements of Certain Officers
ITEM INFORMATION:		Regulation FD Disclosure
ITEM INFORMATION:		Financial Statements and Exhibits
FILED AS OF DATE:		20251219
DATE AS OF CHANGE:		20251219

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			COMFORT SYSTEMS USA INC
		CENTRAL INDEX KEY:			0001035983
		STANDARD INDUSTRIAL CLASSIFICATION:	ELECTRICAL WORK [1731]
		ORGANIZATION NAME:           	05 Real Estate & Construction
		EIN:				760526487
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		8-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-13011
		FILM NUMBER:		251587532

	BUSINESS ADDRESS:	
		STREET 1:		9753 KATY FREEWAY
		STREET 2:		SUITE 700
		CITY:			HOUSTON
		STATE:			TX
		ZIP:			77024
		BUSINESS PHONE:		7138309600

	MAIL ADDRESS:	
		STREET 1:		9753 KATY FREEWAY
		STREET 2:		SUITE 700
		CITY:			HOUSTON
		STATE:			TX
		ZIP:			77024
</SEC-HEADER>
<DOCUMENT>
<TYPE>8-K
<SEQUENCE>1
<FILENAME>tm2533853d1_8k.htm
<DESCRIPTION>FORM 8-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:dei="http://xbrl.sec.gov/dei/2025" xmlns:us-gaap="http://fasb.org/us-gaap/2025" xmlns:us-roles="http://fasb.org/us-roles/2025" xmlns:country="http://xbrl.sec.gov/country/2025" xmlns:srt="http://fasb.org/srt/2025" xmlns:fix="http://comfortsystemsusa.com/20251216">
<head>
     <title></title>
<meta http-equiv="Content-Type" content="text/html"/>
</head>
<!-- Field: Set; Name: xdx; ID: xdx_02E_US%2DGAAP%2D2025 -->
<!-- Field: Set; Name: xdx; ID: xdx_039_fix_comfortsystemsusa.com_20251216 -->
<!-- Field: Set; Name: xdx; ID: xdx_048_20251216_20251216 -->
<!-- Field: Set; Name: xdx; ID: xdx_059_edei%2D%2DAmendmentFlag_false -->
<!-- Field: Set; Name: xdx; ID: xdx_05C_edei%2D%2DEntityCentralIndexKey_0001035983 -->
<!-- Field: Set; Name: xdx; ID: xdx_06B_USD_1_iso4217%2D%2DUSD -->
<!-- Field: Set; Name: xdx; ID: xdx_062_Shares_2_xbrli%2D%2Dshares -->
<!-- Field: Set; Name: xdx; ID: xdx_06D_USDPShares_3_iso4217%2D%2DUSD_xbrli%2D%2Dshares -->
<body style="font: 10pt Times New Roman, Times, Serif">
<div style="display: none">
<ix:header>
 <ix:hidden>
  <ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000003" name="dei:AmendmentFlag">false</ix:nonNumeric>
  <ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000004" name="dei:EntityCentralIndexKey">0001035983</ix:nonNumeric>
  </ix:hidden>
 <ix:references>
  <link:schemaRef xlink:href="fix-20251216.xsd" xlink:type="simple"/>
  </ix:references>
 <ix:resources>
    <xbrli:context id="AsOf2025-12-16">
      <xbrli:entity>
        <xbrli:identifier scheme="http://www.sec.gov/CIK">0001035983</xbrli:identifier>
      </xbrli:entity>
      <xbrli:period>
        <xbrli:startDate>2025-12-16</xbrli:startDate>
        <xbrli:endDate>2025-12-16</xbrli:endDate>
      </xbrli:period>
    </xbrli:context>
    <xbrli:unit id="USD">
      <xbrli:measure>iso4217:USD</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="Shares">
      <xbrli:measure>xbrli:shares</xbrli:measure>
    </xbrli:unit>
    <xbrli:unit id="USDPShares">
      <xbrli:divide>
        <xbrli:unitNumerator>
          <xbrli:measure>iso4217:USD</xbrli:measure>
        </xbrli:unitNumerator>
        <xbrli:unitDenominator>
          <xbrli:measure>xbrli:shares</xbrli:measure>
        </xbrli:unitDenominator>
      </xbrli:divide>
    </xbrli:unit>
  </ix:resources>
 </ix:header>
</div>


<p style="margin: 0">&#160;</p>

<!-- Field: Rule-Page --><div style="margin-top: 0pt; margin-bottom: 0pt; width: 100%"><div style="border-top: Black 2pt solid; border-bottom: Black 1pt solid; font-size: 1pt">&#160;</div></div><!-- Field: /Rule-Page -->

<p style="margin: 0"></p>

<p style="margin: 0">&#160;</p>

<p style="font: 18pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><b>UNITED STATES<br/>
SECURITIES AND EXCHANGE COMMISSION</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><b>Washington, D.C. 20549</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center">&#160;</p>

<p style="font: 18pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><b>FORM&#160;<span id="xdx_901_edei--DocumentType_c20251216__20251216_zlN5o50pzJle"><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000009" name="dei:DocumentType">8-K</ix:nonNumeric></span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-size: 12pt"><b>CURRENT
REPORT</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span style="font-size: 12pt"><b>Pursuant
to Section&#160;13 OR 15(d)&#160;of The Securities Exchange Act of 1934</b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center">Date of Report (Date of
earliest event reported) <span id="xdx_90C_edei--DocumentPeriodEndDate_c20251216__20251216_zmEMbZNsTzv2"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt:datemonthdayyearen" id="Fact000010" name="dei:DocumentPeriodEndDate">December 16,
2025</ix:nonNumeric></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center">&#160;</p>

<p style="font: 18pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center"><span id="xdx_90A_edei--EntityRegistrantName_c20251216__20251216_z60mLNElr4r1"><b><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000011" name="dei:EntityRegistrantName">Comfort
Systems USA, Inc.</ix:nonNumeric></b></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center">(Exact name of registrant
as specified in its charter)</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0pt; margin-bottom: 0pt; text-align: center">&#160;</p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
<tr style="vertical-align: bottom">
    <td style="width: 32%; text-align: center"><b><span id="xdx_90E_edei--EntityIncorporationStateCountryCode_c20251216__20251216_zQ5F5rAHrQpj" style="font-size: 10pt"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt-sec:stateprovnameen" id="Fact000012" name="dei:EntityIncorporationStateCountryCode">Delaware</ix:nonNumeric></span></b></td>
    <td style="width: 2%">&#160;</td>
    <td style="width: 32%; text-align: center"><span id="xdx_907_edei--EntityFileNumber_c20251216__20251216_zv2q3hW7w1Th" style="font-size: 10pt"><b><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000013" name="dei:EntityFileNumber">1-13011</ix:nonNumeric></b></span></td>
    <td style="width: 2%">&#160;</td>
    <td style="width: 32%; text-align: center"><span id="xdx_907_edei--EntityTaxIdentificationNumber_c20251216__20251216_zjDZcHtt17Mk" style="font-size: 10pt"><b><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000014" name="dei:EntityTaxIdentificationNumber">76-0526487</ix:nonNumeric></b></span></td></tr>
<tr style="vertical-align: bottom">
    <td style="text-align: center"><span style="font-size: 10pt">(State or other jurisdiction</span></td>
    <td>&#160;</td>
    <td style="text-align: center"><span style="font-size: 10pt">(Commission</span></td>
    <td>&#160;</td>
    <td style="text-align: center"><span style="font-size: 10pt">(IRS Employer</span></td></tr>
<tr style="vertical-align: bottom">
    <td style="text-align: center"><span style="font-size: 10pt">of incorporation)</span></td>
    <td>&#160;</td>
    <td style="text-align: center"><span style="font-size: 10pt">File Number)</span></td>
    <td>&#160;</td>
    <td style="text-align: center"><span style="font-size: 10pt">Identification No.)</span></td></tr>
</table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
<tr style="vertical-align: bottom">
    <td style="width: 49%; text-align: center"><span id="xdx_900_edei--EntityAddressAddressLine1_c20251216__20251216_zVVNeg2F2qkd" style="font-size: 10pt"><b><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000015" name="dei:EntityAddressAddressLine1">675
    Bering Drive</ix:nonNumeric></b></span><b><span style="font-size: 10pt">, <span id="xdx_90E_edei--EntityAddressAddressLine2_c20251216__20251216_zA06VnDIEii"><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000016" name="dei:EntityAddressAddressLine2">Suite
    400</ix:nonNumeric></span></span></b></td>
    <td style="width: 2%">&#160;</td>
    <td style="width: 49%; text-align: center">&#160;</td></tr>
<tr style="vertical-align: bottom">
    <td style="text-align: center"><span id="xdx_909_edei--EntityAddressCityOrTown_c20251216__20251216_zqQHrjbxhSu4" style="font-size: 10pt"><b><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000017" name="dei:EntityAddressCityOrTown">Houston</ix:nonNumeric></b></span><b><span style="font-size: 10pt">,
    <span id="xdx_902_edei--EntityAddressStateOrProvince_c20251216__20251216_z9xQJXwol8Le"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt-sec:stateprovnameen" id="Fact000018" name="dei:EntityAddressStateOrProvince">Texas</ix:nonNumeric></span></span></b></td>
    <td>&#160;</td>
    <td style="text-align: center"><span id="xdx_90E_edei--EntityAddressPostalZipCode_c20251216__20251216_zJqi1ZqWtk66" style="font-size: 10pt"><b><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000019" name="dei:EntityAddressPostalZipCode">77057</ix:nonNumeric></b></span></td></tr>
<tr style="vertical-align: bottom">
    <td style="text-align: center"><span style="font-size: 10pt">(Address of principal executive offices)</span></td>
    <td>&#160;</td>
    <td style="text-align: center"><span style="font-size: 10pt">(Zip Code)</span></td></tr>
</table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 5.4pt; text-align: center">Registrant&#8217;s telephone number,
including area code <b>(<span id="xdx_905_edei--CityAreaCode_c20251216__20251216_zIJkaiOJVTha"><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000020" name="dei:CityAreaCode">713</ix:nonNumeric></span></b><b>) <span id="xdx_90A_edei--LocalPhoneNumber_c20251216__20251216_zDJlU89yUrO6"><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000021" name="dei:LocalPhoneNumber">830-9600</ix:nonNumeric></span></b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 5.4pt; text-align: center">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 5.4pt; text-align: center">(Former name or former address, if changed
since last report.)</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Check the appropriate box below if the Form&#160;8-K
filing is intended to simultaneously satisfy the filing obligation of the registrant under any of the following provisions:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.25in; text-align: justify; text-indent: -0.25in"><span id="xdx_90F_edei--WrittenCommunications_c20251216__20251216_zt6ZKpINUJqa" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt:booleanfalse" id="Fact000022" name="dei:WrittenCommunications">&#168;</ix:nonNumeric></span>&#160;Written
communications pursuant to Rule&#160;425 under the Securities Act (17 CFR 230.425)</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.25in; text-align: justify; text-indent: -0.25in"><span id="xdx_90B_edei--SolicitingMaterial_c20251216__20251216_zdJSrUfypLQb" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt:booleanfalse" id="Fact000023" name="dei:SolicitingMaterial">&#168;</ix:nonNumeric></span>&#160;Soliciting
material pursuant to Rule&#160;14a-12 under the Exchange Act (17 CFR 240.14a-12)</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.25in; text-align: justify; text-indent: -0.25in"><span id="xdx_90E_edei--PreCommencementTenderOffer_c20251216__20251216_zv4dY8FXEw6d" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt:booleanfalse" id="Fact000024" name="dei:PreCommencementTenderOffer">&#168;</ix:nonNumeric></span>&#160;Pre-commencement
communications pursuant to Rule&#160;14d-2(b)&#160;under the Exchange Act (17 CFR 240.14d-2(b))</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0 0pt 0.25in; text-align: justify; text-indent: -0.25in"><span id="xdx_901_edei--PreCommencementIssuerTenderOffer_c20251216__20251216_zEVdK91sqWw" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt:booleanfalse" id="Fact000025" name="dei:PreCommencementIssuerTenderOffer">&#168;</ix:nonNumeric></span>&#160;Pre-commencement
communications pursuant to Rule&#160;13e-4(c)&#160;under the Exchange Act (17 CFR 240.13e-4(c))</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Securities registered pursuant to Section 12(b) of the Act:</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
<tr style="vertical-align: top">
    <td style="border-bottom: Black 1pt solid; text-align: center; width: 32%"><b>Title
                           of each class</b></td>
    <td style="padding-bottom: 1pt; width: 2%">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: center; width: 32%"><b>Trading
                           Symbol(s)</b></td>
    <td style="padding-bottom: 1pt; width: 2%">&#160;</td>
    <td style="border-bottom: Black 1pt solid; text-align: center; width: 32%"><b>Name
                           of each exchange on which registered</b></td></tr>
<tr style="vertical-align: top">
    <td style="text-align: center"><span id="xdx_909_edei--Security12bTitle_c20251216__20251216_zAY9kukvodzh" style="font-size: 10pt"><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000026" name="dei:Security12bTitle">Common
    Stock, $0.01 par value</ix:nonNumeric></span></td>
    <td>&#160;</td>
    <td style="text-align: center"><span id="xdx_90D_edei--TradingSymbol_c20251216__20251216_zH3Rv0VAUgA1" style="font-size: 10pt"><ix:nonNumeric contextRef="AsOf2025-12-16" id="Fact000027" name="dei:TradingSymbol">FIX</ix:nonNumeric></span></td>
    <td>&#160;</td>
    <td style="text-align: center"><span id="xdx_901_edei--SecurityExchangeName_c20251216__20251216_z2X3TFMqfwX" style="font-size: 10pt"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt-sec:exchnameen" id="Fact000028" name="dei:SecurityExchangeName">New
    York Stock Exchange</ix:nonNumeric></span></td></tr>
</table>
<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">Indicate by check mark whether the registrant
is an emerging growth company as defined in Rule 405 of the Securities Act of 1933 (&#167;230.405 of this chapter) or Rule 12b-2 of the
Securities Exchange Act of 1934 (&#167;240.12b-2 of this chapter).</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Emerging growth company <span id="xdx_906_edei--EntityEmergingGrowthCompany_c20251216__20251216_z4HNOlHyqre8" style="font-family: Wingdings"><ix:nonNumeric contextRef="AsOf2025-12-16" format="ixt:booleanfalse" id="Fact000029" name="dei:EntityEmergingGrowthCompany">&#168;</ix:nonNumeric></span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">If an emerging growth company, indicate by check
mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting
standards provided pursuant to Section 13(a) of the Exchange Act. <span style="font-family: Wingdings">&#168;</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<!-- Field: Rule-Page --><div style="margin-top: 0pt; margin-bottom: 0pt; width: 100%"><div style="border-top: Black 1pt solid; border-bottom: Black 2pt solid; font-size: 1pt">&#160;</div></div><!-- Field: /Rule-Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p>

<!-- Field: Page; Sequence: 1 -->
    <div style="border-bottom: Black 1pt solid; margin-top: 12pt; margin-bottom: 6pt"><p style="margin: 0pt"></p></div>
    <div style="break-before: page; margin-top: 6pt; margin-bottom: 12pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin-top: 0; margin-bottom: 0; margin-left: 0in; text-indent: 0in; text-align: justify"><b>ITEM
5.02 Departure of Directors or Certain Officers; Election of Directors; Appointment of Certain Officers; Compensatory Arrangements of
Certain Officers.</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><b>(b)&#160;and (c)</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">On December&#160;19, 2025,
Comfort Systems USA,&#160;Inc. (the &#8220;Company&#8221;) announced that Trent T. McKenna will transition from his current role as the
Company&#8217;s Executive Vice President and Chief Operating Officer to the role of Company President and Chief Operating Officer, effective
January&#160;1, 2026. In connection with his appointment as President and Chief Operating Officer, Mr.&#160;McKenna will be entitled to
receive an annual base salary equal to $850,000 and will have a target bonus opportunity equal to 115% of his base salary. In addition,
Mr.&#160;McKenna will receive a long-term incentive award, consisting of time-vesting restricted stock units and performance-vesting restricted
stock units, with a grant date value equal to 400% of his base salary, and will continue to participate in the Company&#8217;s Executive
Severance Policy on the terms specified therein.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">Mr.&#160;McKenna&#8217;s age,
business experience and other related information is included in Part&#160;I,&#160;Item 4A of the Company&#8217;s <a href="https://www.sec.gov/ix?doc=/Archives/edgar/data/1035983/000155837025001222/fix-20241231x10k.htm">Annual Report on Form&#160;10-K for the year-ended December&#160;31, 2024</a> and is incorporated by reference herein. There are no other changes to Mr.&#160;McKenna&#8217;s
relationship with the Company.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">On the same date, Laura F.
Howell announced her intention to retire as Senior Vice President, General Counsel and Secretary of the Company, effective December&#160;31,
2025.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"><b>ITEM 7.01 Regulation FD Disclosure.</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">On December&#160;19, 2025,
the Company issued a press release announcing Mr.&#160;McKenna, Ms.&#160;Howell and Ms.&#160;Eslicker&#8217;s transitions within the Company.
A copy of the press release is furnished herewith as Exhibit&#160;99.1 and is incorporated by reference into this Item 7.01.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">The information furnished under Item 7.01 of this
Current Report on Form&#160;8-K,&#160;including Exhibit&#160;99.1, shall not be deemed to be &#8220;filed&#8221; for purposes of Section&#160;18
of the Securities Exchange Act of 1934, as amended (the &#8220;Exchange Act&#8221;), or otherwise subject to the liabilities of that section,
nor shall it be deemed to be incorporated by reference into any filing by the Company under the&#160;Securities Act of 1933, as amended,
or the&#160;Exchange Act, except as shall be expressly set forth by specific reference in such a filing.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><b>ITEM 9.01 Financial Statements and Exhibits.</b></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">(d)&#8239;&#8239;&#8239;&#8239;&#8239;&#8239;&#8239;&#8239;&#8239;&#8239;&#8239;<i>Exhibits.</i></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; margin-left: auto; width: 96%; border-collapse: collapse; margin-right: auto">
  <tr style="vertical-align: top">
    <td style="border-bottom: Black 1pt solid; text-align: center; width: 10%"><b>Exhibit&#160;<br/>
Number</b></td>
    <td style="padding-bottom: 1pt; width: 2%">&#160;</td>
    <td style="text-align: left; border-bottom: Black 1pt solid; width: 88%; vertical-align: bottom"><b>Description</b></td></tr>
  <tr style="vertical-align: top">
    <td style="font-size: 10pt; text-align: center">&#160;</td>
    <td>&#160;</td>
    <td style="font-size: 10pt; text-align: justify">&#160;</td></tr>
  <tr style="vertical-align: top">
    <td style="font-size: 10pt; text-align: center"><a href="tm2533853d1_ex99-1.htm"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">99.1</span></a></td>
    <td>&#160;</td>
    <td style="font-size: 10pt; text-align: justify"><a href="tm2533853d1_ex99-1.htm"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Press Release of Comfort Systems USA,&#160;Inc. dated December&#160;19, 2025, announcing leadership transitions and appointments.</span></a></td></tr>
  <tr style="vertical-align: top">
    <td style="font-size: 10pt; text-align: center"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">104</span></td>
    <td>&#160;</td>
    <td style="font-size: 10pt; text-align: justify"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">Cover Page&#160;Interactive Data File (the cover page&#160;XBRL tags are embedded within the Inline XBRL document).</span></td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify"></p>

<!-- Field: Page; Sequence: 2 -->
    <div style="border-bottom: Black 1pt solid; margin-top: 12pt; margin-bottom: 6pt"><p style="margin: 0pt"></p></div>
    <div style="break-before: page; margin-top: 6pt; margin-bottom: 12pt"><p style="margin: 0pt">&#160;</p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><span style="text-decoration: underline">SIGNATURES</span></p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">Pursuant to the requirements
of the Securities Exchange Act of 1934, the Registrant has duly caused this report to be signed on its behalf by the undersigned hereunto
duly authorized.</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<table cellspacing="0" cellpadding="0" style="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <tr style="vertical-align: bottom">
    <td style="width: 50%">&#160;</td>
    <td style="width: 3%">&#160;</td>
    <td style="width: 47%"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">COMFORT SYSTEMS USA,&#160;INC.</span></td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>&#160;</td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td>
    <td><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">By:</span></td>
    <td style="border-bottom: Black 1pt solid"><span style="font-family: Times New Roman, Times, Serif; font-size: 10pt">/s/ Laura F. Howell</span></td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td>
    <td>&#160;</td>
    <td>Laura F. Howell </td></tr>
  <tr style="vertical-align: bottom">
    <td>&#160;</td>
    <td>&#160;</td>
    <td><i>Senior Vice President and General Counsel</i></td></tr>
  </table>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">Date:&#160; December&#160;19, 2025</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></p>

<!-- Field: Page; Sequence: 3; Options: Last -->
    <div style="border-bottom: Black 1pt solid; margin-top: 12pt; margin-bottom: 6pt"><p style="margin: 0pt"></p></div>
    <!-- Field: /Page -->

<p style="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&#160;</p>

<!-- Field: Set; Name: xdx; ID: xdx_08B_extensions -->
<!-- eJxFjd0KgkAQhZ/Adxj2Wsq/CLxMSiILkYhul5xiSXdkdjN7pN6yTYmGgWE45ztHCF/ktFENMpxXVQFHbLtGWoQKr8ioL+gc2XaXgrsV3pSxLLUd3x+YkWPQMYtZFEsnjNZeGaxTCJbzOJxHCQSLNImh3Avvq2ekr6pGbZVsQOoaSqaOFVrJrynhKAfS1L7GqhOyUaRTCGfBJL8hCsIIDtTLJ/HdQFFkwvPH8UTO9Oicaz1Y1F8S1g22rs5M9H+9Dwi+SpA= -->
</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-99.1
<SEQUENCE>2
<FILENAME>tm2533853d1_ex99-1.htm
<DESCRIPTION>EXHIBIT 99.1
<TEXT>
<HTML>
<HEAD>
     <TITLE></TITLE>
</HEAD>
<BODY STYLE="font: 10pt Times New Roman, Times, Serif">

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="text-align: right; margin: 0"><B>Exhibit 99.1</B></P>

<P STYLE="margin: 0">&nbsp;</P>

<P STYLE="text-align: right; margin: 0"><IMG SRC="tm2533853d1_ex99-1img001.jpg" ALT="" STYLE="height: 56px; width: 287px"></P>

<P STYLE="margin: 0">&nbsp;</P>

<TABLE CELLSPACING="0" CELLPADDING="0" STYLE="font: 10pt Times New Roman, Times, Serif; width: 100%; border-collapse: collapse">
  <TR STYLE="vertical-align: top">
    <TD STYLE="white-space: nowrap; width: 10%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">CONTACT:</FONT></TD>
    <TD STYLE="white-space: nowrap; width: 70%"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Julie Shaeff, Chief Accounting Officer </FONT></TD>
    <TD STYLE="white-space: nowrap; width: 20%; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">9753 Katy Freeway, Suite&nbsp;700</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="white-space: nowrap">&nbsp;</TD>
    <TD STYLE="white-space: nowrap"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt"><I>ir@comfortsystemsusa.com; 713-830-9687</I></FONT></TD>
    <TD STYLE="white-space: nowrap; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">Houston, Texas 77024</FONT></TD></TR>
  <TR STYLE="vertical-align: top">
    <TD STYLE="white-space: nowrap">&nbsp;</TD>
    <TD STYLE="white-space: nowrap">&nbsp;</TD>
    <TD STYLE="white-space: nowrap; text-align: right"><FONT STYLE="font-family: Times New Roman, Times, Serif; font-size: 10pt">713-830-9600</FONT></TD></TR>
  </TABLE>
<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"><B><U>FOR IMMEDIATE RELEASE</U></B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: center"><B>COMFORT SYSTEMS ANNOUNCES LEADERSHIP TRANSITIONS
AND APPOINTMENTS EFFECTIVE AS OF YEAR-END</B></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in"><B>Houston, TX &mdash; December&nbsp;19, 2025
 &mdash; Comfort Systems USA,&nbsp;Inc. (NYSE: FIX) </B>(the &ldquo;Company&rdquo;), a leading provider of commercial, industrial and institutional
heating, ventilation, air conditioning and electrical contracting services, today announced that Trent T. McKenna, currently Executive
Vice President and Chief Operating Officer, will be appointed to serve as President and Chief Operating Officer, effective January&nbsp;1,
2026. Brian E. Lane will continue to serve as Chief Executive Officer of the Company.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">Mr.&nbsp;Lane commented, &ldquo;I am thrilled to
welcome Trent as Comfort Systems USA&rsquo;s next President. I am confident that our thoughtful succession planning has positioned Comfort
Systems USA for this leadership transition. I am certain in his ability to build on our strong foundation and drive continued success
for our Company and our stockholders.&rdquo;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">The Company also announced
that Laura F. Howell will retire as Senior Vice President, General Counsel and Secretary of the Company, effective as of year-end, after
more than eleven years of service. Ms.&nbsp;Howell will continue to serve the Company as a Senior Executive Advisor in 2026 to facilitate
a smooth transition. Rachel R. Eslicker, who currently serves as the Company&rsquo;s Associate General Counsel and Assistant Corporate
Secretary, has been appointed to succeed Ms.&nbsp;Howell as Senior Vice President, General Counsel and Secretary of the Company.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">Mr.&nbsp;Lane said, &ldquo;Comfort Systems USA
thanks Laura for her exceptional service and significant contributions. I am grateful that she will continue to be part of our Company
as an advisor.&rdquo;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">Mr.&nbsp;Lane continued, &ldquo;Rachel has been
an integral part of Comfort Systems USA&rsquo;s legal team for approximately seven years. Her experience, judgment and leadership will
ensure a smooth transition into her new role as General Counsel.&rdquo;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">Mr.&nbsp;McKenna has served as the Company&rsquo;s
Executive Vice President and Chief Operating Officer since January&nbsp;2022 and was formerly Senior Vice President and Chief Operating
Officer during 2021. Prior to 2021, Mr.&nbsp;McKenna served as our Senior Vice President and Vice President &ndash; Region 4 from January&nbsp;2019
to December&nbsp;2020; Senior Vice President, General Counsel and Secretary from August&nbsp;2013 to December&nbsp;2018; Vice President,
General Counsel and Secretary from May&nbsp;2005 to August&nbsp;2013; and Associate General Counsel from August&nbsp;2004 to May&nbsp;2005.
Prior to joining Comfort Systems USA, Mr.&nbsp;McKenna was a practicing attorney in the area of complex commercial litigation in the Houston,
Texas, office of Akin Gump Strauss Hauer&nbsp;&amp; Feld LLP. Mr.&nbsp;McKenna holds a Bachelor of Arts degree in English from Brigham
Young University and a Juris Doctorate from Duke University School of Law.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-align: justify; text-indent: 0.5in">Ms.&nbsp;Eslicker has
served as the Company&rsquo;s Associate General Counsel and Assistant Corporate Secretary since January&nbsp;2023 and formerly
served as Senior Corporate Counsel from January&nbsp;2019 to December&nbsp;2022. Ms.&nbsp;Eslicker started her career as an
associate in the Mergers and Acquisitions and Capital Markets department of the Houston, Texas, office of Vinson&nbsp;&amp; Elkins
LLP. Ms.&nbsp;Eslicker holds Bachelor of Arts degrees in Government and History from the University of Texas and a Juris Doctorate
from Duke University School of Law.</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="text-align: justify; font: 10pt Times New Roman, Times, Serif; margin: 0pt 0; text-indent: 0.5in">Comfort Systems USA<SUP>&reg;</SUP>
is a premier provider of business solutions addressing workplace comfort, with 184 locations in 139 cities around the nation. For more
information, visit the Company&rsquo;s website at <I>www.comfortsystemsusa.com.</I></P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0"></P>

<!-- Field: Page; Sequence: 1; Options: Last -->
    <DIV STYLE="margin-top: 12pt; margin-bottom: 6pt; border-bottom: Black 1pt solid"><P STYLE="margin: 0pt"></P></DIV>
    <!-- Field: /Page -->

<P STYLE="font: 10pt Times New Roman, Times, Serif; margin: 0pt 0">&nbsp;</P>

</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>fix-20251216.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" ?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 6.2b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
    <!-- Field: Doc-Info; Name: Misc; Value: +aA5w7xRiXgen8uLa3ZcWaiHibOdzZR+eYkxtmB4bdm67yQsxZ7ROiJ+hJk20UgG -->
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:dei="http://xbrl.sec.gov/dei/2025" xmlns:us-gaap="http://fasb.org/us-gaap/2025" xmlns:srt="http://fasb.org/srt/2025" xmlns:srt-types="http://fasb.org/srt-types/2025" xmlns:fix="http://comfortsystemsusa.com/20251216" elementFormDefault="qualified" targetNamespace="http://comfortsystemsusa.com/20251216">
    <annotation>
      <appinfo>
        <link:roleType roleURI="http://comfortsystemsusa.com/role/Cover" id="Cover">
          <link:definition>00000001 - Document - Cover</link:definition>
          <link:usedOn>link:presentationLink</link:usedOn>
          <link:usedOn>link:calculationLink</link:usedOn>
          <link:usedOn>link:definitionLink</link:usedOn>
        </link:roleType>
        <link:linkbaseRef xlink:type="simple" xlink:href="fix-20251216_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Presentation Links" />
        <link:linkbaseRef xlink:type="simple" xlink:href="fix-20251216_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:title="Label Links" />
      </appinfo>
    </annotation>
    <import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd" />
    <import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd" />
    <import namespace="http://xbrl.sec.gov/dei/2025" schemaLocation="https://xbrl.sec.gov/dei/2025/dei-2025.xsd" />
    <import namespace="http://fasb.org/us-gaap/2025" schemaLocation="https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd" />
    <import namespace="http://fasb.org/us-types/2025" schemaLocation="https://xbrl.fasb.org/us-gaap/2025/elts/us-types-2025.xsd" />
    <import namespace="http://www.xbrl.org/dtr/type/2024-01-31" schemaLocation="https://www.xbrl.org/dtr/type/2024-01-31/types.xsd" />
    <import namespace="http://xbrl.sec.gov/country/2025" schemaLocation="https://xbrl.sec.gov/country/2025/country-2025.xsd" />
    <import namespace="http://fasb.org/srt/2025" schemaLocation="https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd" />
    <import namespace="http://fasb.org/srt-types/2025" schemaLocation="https://xbrl.fasb.org/srt/2025/elts/srt-types-2025.xsd" />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>4
<FILENAME>fix-20251216_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 6.2b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" />
    <link:roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel" />
    <link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CoverAbstract" xlink:label="dei_CoverAbstract" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CoverAbstract" xlink:to="dei_CoverAbstract_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CoverAbstract_lbl" xml:lang="en-US">Cover [Abstract]</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentType" xlink:label="dei_DocumentType" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentType_lbl" xml:lang="en-US">Document Type</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentFlag_lbl" xml:lang="en-US">Amendment Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentDescription" xlink:label="dei_AmendmentDescription" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentDescription" xlink:to="dei_AmendmentDescription_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AmendmentDescription_lbl" xml:lang="en-US">Amendment Description</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentRegistrationStatement" xlink:label="dei_DocumentRegistrationStatement" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentRegistrationStatement" xlink:to="dei_DocumentRegistrationStatement_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentRegistrationStatement_lbl" xml:lang="en-US">Document Registration Statement</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentAnnualReport" xlink:label="dei_DocumentAnnualReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAnnualReport" xlink:to="dei_DocumentAnnualReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAnnualReport_lbl" xml:lang="en-US">Document Annual Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentQuarterlyReport_lbl" xml:lang="en-US">Document Quarterly Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentTransitionReport_lbl" xml:lang="en-US">Document Transition Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentShellCompanyReport" xlink:label="dei_DocumentShellCompanyReport" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyReport" xlink:to="dei_DocumentShellCompanyReport_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyReport_lbl" xml:lang="en-US">Document Shell Company Report</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentShellCompanyEventDate" xlink:label="dei_DocumentShellCompanyEventDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentShellCompanyEventDate" xlink:to="dei_DocumentShellCompanyEventDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentShellCompanyEventDate_lbl" xml:lang="en-US">Document Shell Company Event Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentPeriodStartDate" xlink:label="dei_DocumentPeriodStartDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodStartDate" xlink:to="dei_DocumentPeriodStartDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodStartDate_lbl" xml:lang="en-US">Document Period Start Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentPeriodEndDate_lbl" xml:lang="en-US">Document Period End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalPeriodFocus_lbl" xml:lang="en-US">Document Fiscal Period Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentFiscalYearFocus_lbl" xml:lang="en-US">Document Fiscal Year Focus</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CurrentFiscalYearEndDate_lbl" xml:lang="en-US">Current Fiscal Year End Date</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFileNumber_lbl" xml:lang="en-US">Entity File Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityRegistrantName_lbl" xml:lang="en-US">Entity Registrant Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCentralIndexKey_lbl" xml:lang="en-US">Entity Central Index Key</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityPrimarySicNumber" xlink:label="dei_EntityPrimarySicNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPrimarySicNumber" xlink:to="dei_EntityPrimarySicNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPrimarySicNumber_lbl" xml:lang="en-US">Entity Primary SIC Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityTaxIdentificationNumber_lbl" xml:lang="en-US">Entity Tax Identification Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityIncorporationStateCountryCode_lbl" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine1_lbl" xml:lang="en-US">Entity Address, Address Line One</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressAddressLine2" xlink:label="dei_EntityAddressAddressLine2" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine2" xlink:to="dei_EntityAddressAddressLine2_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine2_lbl" xml:lang="en-US">Entity Address, Address Line Two</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressAddressLine3" xlink:label="dei_EntityAddressAddressLine3" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine3" xlink:to="dei_EntityAddressAddressLine3_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressAddressLine3_lbl" xml:lang="en-US">Entity Address, Address Line Three</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCityOrTown_lbl" xml:lang="en-US">Entity Address, City or Town</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressStateOrProvince_lbl" xml:lang="en-US">Entity Address, State or Province</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressCountry" xlink:label="dei_EntityAddressCountry" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCountry" xlink:to="dei_EntityAddressCountry_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressCountry_lbl" xml:lang="en-US">Entity Address, Country</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityAddressPostalZipCode_lbl" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CountryRegion" xlink:label="dei_CountryRegion" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CountryRegion" xlink:to="dei_CountryRegion_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CountryRegion_lbl" xml:lang="en-US">Country Region</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_CityAreaCode_lbl" xml:lang="en-US">City Area Code</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_LocalPhoneNumber_lbl" xml:lang="en-US">Local Phone Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_Extension" xlink:label="dei_Extension" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Extension" xlink:to="dei_Extension_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Extension_lbl" xml:lang="en-US">Extension</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_WrittenCommunications" xlink:label="dei_WrittenCommunications" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_WrittenCommunications" xlink:to="dei_WrittenCommunications_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_WrittenCommunications_lbl" xml:lang="en-US">Written Communications</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SolicitingMaterial" xlink:label="dei_SolicitingMaterial" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SolicitingMaterial" xlink:to="dei_SolicitingMaterial_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SolicitingMaterial_lbl" xml:lang="en-US">Soliciting Material</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_PreCommencementTenderOffer" xlink:label="dei_PreCommencementTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementTenderOffer" xlink:to="dei_PreCommencementTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementTenderOffer_lbl" xml:lang="en-US">Pre-commencement Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="dei_PreCommencementIssuerTenderOffer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_PreCommencementIssuerTenderOffer" xlink:to="dei_PreCommencementIssuerTenderOffer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_PreCommencementIssuerTenderOffer_lbl" xml:lang="en-US">Pre-commencement Issuer Tender Offer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12bTitle_lbl" xml:lang="en-US">Title of 12(b) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_NoTradingSymbolFlag" xlink:label="dei_NoTradingSymbolFlag" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_NoTradingSymbolFlag" xlink:to="dei_NoTradingSymbolFlag_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_NoTradingSymbolFlag_lbl" xml:lang="en-US">No Trading Symbol Flag</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_TradingSymbol_lbl" xml:lang="en-US">Trading Symbol</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityExchangeName_lbl" xml:lang="en-US">Security Exchange Name</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_Security12gTitle" xlink:label="dei_Security12gTitle" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12gTitle" xlink:to="dei_Security12gTitle_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_Security12gTitle_lbl" xml:lang="en-US">Title of 12(g) Security</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SecurityReportingObligation" xlink:label="dei_SecurityReportingObligation" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityReportingObligation" xlink:to="dei_SecurityReportingObligation_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_SecurityReportingObligation_lbl" xml:lang="en-US">Security Reporting Obligation</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AnnualInformationForm" xlink:label="dei_AnnualInformationForm" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AnnualInformationForm" xlink:to="dei_AnnualInformationForm_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AnnualInformationForm_lbl" xml:lang="en-US">Annual Information Form</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="dei_AuditedAnnualFinancialStatements" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AuditedAnnualFinancialStatements" xlink:to="dei_AuditedAnnualFinancialStatements_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_AuditedAnnualFinancialStatements_lbl" xml:lang="en-US">Audited Annual Financial Statements</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="dei_EntityWellKnownSeasonedIssuer" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityWellKnownSeasonedIssuer" xlink:to="dei_EntityWellKnownSeasonedIssuer_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityWellKnownSeasonedIssuer_lbl" xml:lang="en-US">Entity Well-known Seasoned Issuer</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityVoluntaryFilers" xlink:label="dei_EntityVoluntaryFilers" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityVoluntaryFilers" xlink:to="dei_EntityVoluntaryFilers_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityVoluntaryFilers_lbl" xml:lang="en-US">Entity Voluntary Filers</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCurrentReportingStatus_lbl" xml:lang="en-US">Entity Current Reporting Status</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityInteractiveDataCurrent_lbl" xml:lang="en-US">Entity Interactive Data Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityFilerCategory_lbl" xml:lang="en-US">Entity Filer Category</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntitySmallBusiness_lbl" xml:lang="en-US">Entity Small Business</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityEmergingGrowthCompany_lbl" xml:lang="en-US">Entity Emerging Growth Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityExTransitionPeriod" xlink:label="dei_EntityExTransitionPeriod" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityExTransitionPeriod" xlink:to="dei_EntityExTransitionPeriod_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityExTransitionPeriod_lbl" xml:lang="en-US">Elected Not To Use the Extended Transition Period</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentAccountingStandard" xlink:label="dei_DocumentAccountingStandard" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentAccountingStandard" xlink:to="dei_DocumentAccountingStandard_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentAccountingStandard_lbl" xml:lang="en-US">Document Accounting Standard</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_OtherReportingStandardItemNumber" xlink:label="dei_OtherReportingStandardItemNumber" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_OtherReportingStandardItemNumber" xlink:to="dei_OtherReportingStandardItemNumber_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_OtherReportingStandardItemNumber_lbl" xml:lang="en-US">Other Reporting Standard Item Number</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityShellCompany_lbl" xml:lang="en-US">Entity Shell Company</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityPublicFloat" xlink:label="dei_EntityPublicFloat" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityPublicFloat" xlink:to="dei_EntityPublicFloat_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityPublicFloat_lbl" xml:lang="en-US">Entity Public Float</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityBankruptcyProceedingsReportingCurrent" xlink:to="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityBankruptcyProceedingsReportingCurrent_lbl" xml:lang="en-US">Entity Bankruptcy Proceedings, Reporting Current</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_EntityCommonStockSharesOutstanding_lbl" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock" />
      <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentsIncorporatedByReferenceTextBlock" xlink:to="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xlink:type="arc" />
      <link:label xlink:type="resource" xlink:role="http://www.xbrl.org/2003/role/label" xlink:label="dei_DocumentsIncorporatedByReferenceTextBlock_lbl" xml:lang="en-US">Documents Incorporated by Reference [Text Block]</link:label>
    </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>5
<FILENAME>fix-20251216_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
    <!-- Field: Doc-Info; Name: Generator; Value: GoFiler Complete; Version: 6.2b -->
    <!-- Field: Doc-Info; Name: VendorURI; Value: https://www.novaworks.com -->
    <!-- Field: Doc-Info; Name: Status; Value: 0x00000000 -->
<link:linkbase xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrli="http://www.xbrl.org/2003/instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
    <link:roleRef xlink:type="simple" xlink:href="fix-20251216.xsd#Cover" roleURI="http://comfortsystemsusa.com/role/Cover" />
    <link:presentationLink xlink:type="extended" xlink:role="http://comfortsystemsusa.com/role/Cover" xlink:title="00000001 - Document - Cover">
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CoverAbstract" xlink:label="loc_deiCoverAbstract" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentType" xlink:label="loc_deiDocumentType" />
      <link:presentationArc order="0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentType" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentFlag" xlink:label="loc_deiAmendmentFlag" />
      <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AmendmentDescription" xlink:label="loc_deiAmendmentDescription" />
      <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAmendmentDescription" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentRegistrationStatement" xlink:label="loc_deiDocumentRegistrationStatement" />
      <link:presentationArc order="30" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentRegistrationStatement" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentAnnualReport" xlink:label="loc_deiDocumentAnnualReport" />
      <link:presentationArc order="40" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAnnualReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentQuarterlyReport" xlink:label="loc_deiDocumentQuarterlyReport" />
      <link:presentationArc order="50" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentQuarterlyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentTransitionReport" xlink:label="loc_deiDocumentTransitionReport" />
      <link:presentationArc order="60" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentTransitionReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentShellCompanyReport" xlink:label="loc_deiDocumentShellCompanyReport" />
      <link:presentationArc order="70" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyReport" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentShellCompanyEventDate" xlink:label="loc_deiDocumentShellCompanyEventDate" />
      <link:presentationArc order="80" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentShellCompanyEventDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentPeriodStartDate" xlink:label="loc_deiDocumentPeriodStartDate" />
      <link:presentationArc order="90" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodStartDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentPeriodEndDate" xlink:label="loc_deiDocumentPeriodEndDate" />
      <link:presentationArc order="100" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentPeriodEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="loc_deiDocumentFiscalPeriodFocus" />
      <link:presentationArc order="110" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalPeriodFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentFiscalYearFocus" xlink:label="loc_deiDocumentFiscalYearFocus" />
      <link:presentationArc order="120" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentFiscalYearFocus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CurrentFiscalYearEndDate" xlink:label="loc_deiCurrentFiscalYearEndDate" />
      <link:presentationArc order="130" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCurrentFiscalYearEndDate" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityFileNumber" xlink:label="loc_deiEntityFileNumber" />
      <link:presentationArc order="140" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFileNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityRegistrantName" xlink:label="loc_deiEntityRegistrantName" />
      <link:presentationArc order="150" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityRegistrantName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCentralIndexKey" xlink:label="loc_deiEntityCentralIndexKey" />
      <link:presentationArc order="160" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCentralIndexKey" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityPrimarySicNumber" xlink:label="loc_deiEntityPrimarySicNumber" />
      <link:presentationArc order="170" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPrimarySicNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityTaxIdentificationNumber" xlink:label="loc_deiEntityTaxIdentificationNumber" />
      <link:presentationArc order="180" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityTaxIdentificationNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="loc_deiEntityIncorporationStateCountryCode" />
      <link:presentationArc order="190" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityIncorporationStateCountryCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressAddressLine1" xlink:label="loc_deiEntityAddressAddressLine1" />
      <link:presentationArc order="200" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine1" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressAddressLine2" xlink:label="loc_deiEntityAddressAddressLine2" />
      <link:presentationArc order="210" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine2" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressAddressLine3" xlink:label="loc_deiEntityAddressAddressLine3" />
      <link:presentationArc order="220" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressAddressLine3" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressCityOrTown" xlink:label="loc_deiEntityAddressCityOrTown" />
      <link:presentationArc order="230" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCityOrTown" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressStateOrProvince" xlink:label="loc_deiEntityAddressStateOrProvince" />
      <link:presentationArc order="240" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressStateOrProvince" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressCountry" xlink:label="loc_deiEntityAddressCountry" />
      <link:presentationArc order="250" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressCountry" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityAddressPostalZipCode" xlink:label="loc_deiEntityAddressPostalZipCode" />
      <link:presentationArc order="260" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityAddressPostalZipCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CountryRegion" xlink:label="loc_deiCountryRegion" />
      <link:presentationArc order="270" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCountryRegion" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_CityAreaCode" xlink:label="loc_deiCityAreaCode" />
      <link:presentationArc order="280" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiCityAreaCode" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_LocalPhoneNumber" xlink:label="loc_deiLocalPhoneNumber" />
      <link:presentationArc order="290" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiLocalPhoneNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_Extension" xlink:label="loc_deiExtension" />
      <link:presentationArc order="300" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiExtension" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_WrittenCommunications" xlink:label="loc_deiWrittenCommunications" />
      <link:presentationArc order="310" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiWrittenCommunications" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SolicitingMaterial" xlink:label="loc_deiSolicitingMaterial" />
      <link:presentationArc order="320" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSolicitingMaterial" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_PreCommencementTenderOffer" xlink:label="loc_deiPreCommencementTenderOffer" />
      <link:presentationArc order="330" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_PreCommencementIssuerTenderOffer" xlink:label="loc_deiPreCommencementIssuerTenderOffer" />
      <link:presentationArc order="340" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiPreCommencementIssuerTenderOffer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_Security12bTitle" xlink:label="loc_deiSecurity12bTitle" />
      <link:presentationArc order="350" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12bTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_NoTradingSymbolFlag" xlink:label="loc_deiNoTradingSymbolFlag" />
      <link:presentationArc order="360" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiNoTradingSymbolFlag" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_TradingSymbol" xlink:label="loc_deiTradingSymbol" />
      <link:presentationArc order="370" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiTradingSymbol" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SecurityExchangeName" xlink:label="loc_deiSecurityExchangeName" />
      <link:presentationArc order="380" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityExchangeName" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_Security12gTitle" xlink:label="loc_deiSecurity12gTitle" />
      <link:presentationArc order="390" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurity12gTitle" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_SecurityReportingObligation" xlink:label="loc_deiSecurityReportingObligation" />
      <link:presentationArc order="400" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiSecurityReportingObligation" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AnnualInformationForm" xlink:label="loc_deiAnnualInformationForm" />
      <link:presentationArc order="410" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAnnualInformationForm" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_AuditedAnnualFinancialStatements" xlink:label="loc_deiAuditedAnnualFinancialStatements" />
      <link:presentationArc order="420" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiAuditedAnnualFinancialStatements" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityWellKnownSeasonedIssuer" xlink:label="loc_deiEntityWellKnownSeasonedIssuer" />
      <link:presentationArc order="430" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityWellKnownSeasonedIssuer" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityVoluntaryFilers" xlink:label="loc_deiEntityVoluntaryFilers" />
      <link:presentationArc order="440" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityVoluntaryFilers" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCurrentReportingStatus" xlink:label="loc_deiEntityCurrentReportingStatus" />
      <link:presentationArc order="450" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCurrentReportingStatus" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityInteractiveDataCurrent" xlink:label="loc_deiEntityInteractiveDataCurrent" />
      <link:presentationArc order="460" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityInteractiveDataCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityFilerCategory" xlink:label="loc_deiEntityFilerCategory" />
      <link:presentationArc order="470" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityFilerCategory" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntitySmallBusiness" xlink:label="loc_deiEntitySmallBusiness" />
      <link:presentationArc order="480" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntitySmallBusiness" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityEmergingGrowthCompany" xlink:label="loc_deiEntityEmergingGrowthCompany" />
      <link:presentationArc order="490" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityEmergingGrowthCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityExTransitionPeriod" xlink:label="loc_deiEntityExTransitionPeriod" />
      <link:presentationArc order="500" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityExTransitionPeriod" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentAccountingStandard" xlink:label="loc_deiDocumentAccountingStandard" />
      <link:presentationArc order="510" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentAccountingStandard" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_OtherReportingStandardItemNumber" xlink:label="loc_deiOtherReportingStandardItemNumber" />
      <link:presentationArc order="520" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiOtherReportingStandardItemNumber" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityShellCompany" xlink:label="loc_deiEntityShellCompany" />
      <link:presentationArc order="530" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityShellCompany" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityPublicFloat" xlink:label="loc_deiEntityPublicFloat" />
      <link:presentationArc order="540" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityPublicFloat" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityBankruptcyProceedingsReportingCurrent" xlink:label="loc_deiEntityBankruptcyProceedingsReportingCurrent" />
      <link:presentationArc order="550" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityBankruptcyProceedingsReportingCurrent" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="loc_deiEntityCommonStockSharesOutstanding" />
      <link:presentationArc order="560" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiEntityCommonStockSharesOutstanding" xlink:type="arc" />
      <link:loc xlink:type="locator" xlink:href="https://xbrl.sec.gov/dei/2025/dei-2025.xsd#dei_DocumentsIncorporatedByReferenceTextBlock" xlink:label="loc_deiDocumentsIncorporatedByReferenceTextBlock" />
      <link:presentationArc order="570" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_deiCoverAbstract" xlink:to="loc_deiDocumentsIncorporatedByReferenceTextBlock" xlink:type="arc" />
    </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>6
<FILENAME>tm2533853d1_ex99-1img001.jpg
<DESCRIPTION>GRAPHIC
<TEXT>
begin 644 tm2533853d1_ex99-1img001.jpg
M_]C_X  02D9)1@ ! 0$ 8 !@  #_VP!#  @&!@<&!0@'!P<)"0@*#!0-# L+
M#!D2$P\4'1H?'AT:'!P@)"XG("(L(QP<*#<I+# Q-#0T'R<Y/3@R/"XS-#+_
MVP!# 0@)"0P+#!@-#1@R(1PA,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R
M,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C+_P  1" !Q D<# 2(  A$! Q$!_\0
M'P   04! 0$! 0$           $" P0%!@<("0H+_\0 M1   @$# P($ P4%
M! 0   %] 0(#  01!1(A,4$&$U%A!R)Q%#*!D:$((T*QP152T? D,V)R@@D*
M%A<8&1HE)B<H*2HT-38W.#DZ0T1%1D=(24I35%565UA96F-D969G:&EJ<W1U
M=G=X>7J#A(6&AXB)BI*3E)66EYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&
MQ\C)RM+3U-76U]C9VN'BX^3EYN?HZ>KQ\O/T]?;W^/GZ_\0 'P$  P$! 0$!
M 0$! 0        $" P0%!@<("0H+_\0 M1$  @$"! 0#! <%! 0  0)W  $"
M Q$$!2$Q!A)!40=A<1,B,H$(%$*1H;'!"2,S4O 58G+1"A8D-.$E\1<8&1HF
M)R@I*C4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@H.$
MA8:'B(F*DI.4E9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4
MU=;7V-G:XN/DY>;GZ.GJ\O/T]?;W^/GZ_]H # ,!  (1 Q$ /P#W^BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH 3(%+2'K1]*!:BYQ2;AZT&L#6/%>E:+$3<7"M,/^6*?,WY"G&,
MI.T5<B=2,%>3L;^X>M0S7MK;#,]Q'$/]M@*\CUCXDZC=Y2P46L?9@NY_QSD"
MN2N=3OKQBUS<RR9Y.Y\_I7J4LLJ35Y.QY%;.*<=*:N>\R^*=#A?:^IP ^QS_
M "I8?$^B3MMCU* GW./YU\^9] /J:,'/7![$9KJ_LF+7Q'&LZJ7^%'TI%<PS
M('BD5U/0KR#4FX5X!H?B?4=#N4DCG=H 1OB<[@1GMZ5[IIUW'?V45S$P9)%#
M BO+Q>$GAVNQZ^#QL<0O,N9%%-Z,*=7'<] ****8!1110 4444 %%%% !111
M0 45F:_KUCX<TB?4M0E$<$*DG)^\>P'O7BFJ?M!:D9F&EZ3:1H&X-T&8D=NC
M+3L)M(]^HKYP_P"&@/%?/_$OT7Z^3+Q_Y$YI/^&@/%9^[IVC$YZ""4_^U*+,
M7,CZ0HKY^T_]H+5EE7^TM(LWB!._[.KJ?PRQKV3PMXJL?%NC)J.GD;3P\9/S
M1MZ'_/(YH:'<W:*X'QU\4=/\&R"T$7VJ_9-WDJV-@[$_YZ5YE-^T!XF,O[C3
M-*$9Z;HI&)_$2"BP-I'T717S?_PT!XK[6&BD?]<)?_CE'_#0'BO_ *!^B_\
M?F7_ ..46%S(^D**\%T?]H&],ZKK&EVQB)P7M0R[??EFS7L^FZW:ZQHT.IV$
MB36\T9=&4Y^H/T/%%AIW-.BO K_X\ZW::C=6R:9IY6&9XP2CY(!(_OU#%^T#
MK/GQB;2['RBPW[4?.,\X^;K3Y6+F5['T'15'2M3AU;3;>^MW5HIT#J0<U<W?
M2I>A0ZBO*?B'\6Y_">L)INFVUK<RHI,YE#'8>,#@CWKD/^&@==QG^RM._P"^
M)/\ XNG9D\R/H6BN+^''C.[\::)/?75O!$\<NP+""!C'N37F^I?'?6['4[NU
M33+!U@GDB!*/G"L0/X_:BP[H]\HKYZ/[0.NJ.=*T[/\ NN/_ &>C_AH'7/\
MH%Z=_P!\/_\ %T<K%S(^A:*^>Q^T!KG_ $"M/_[X?_XNO;;+6XW\,6^LWK10
M1O;+/(2<*N0#W/O18=T:]%>&:Y\?IDN7CT/387B4D++<AFWX[[005^AK#_X7
M_P"+, G3M'P>_P!GEQ_Z,HLQ<R/H^BOG ?M >*SC_0-%]SY,I_\ :E.3]H#Q
M0'4RZ;I#+W"Q2 X_&2CE8<R/HVBO-? WQ=L?%=XNGW=N+.^8#8,_+(3V&>]:
MOQ)\:7?@K0[>_M+>"9Y9Q&1,K$8P3V(]*+#N=K17SS_PT%KN/^05IWU*N/\
MV>C_ (:!UWMI>G'Z*_\ \71RL7,CZ&HKYY_X:!US;G^R]._!'_\ BZMV'[0-
M_P#:D&H:/;& D ^1N4@>N2319AS(][HKF[OQ9"W@2Z\3:;LGCCM'GC# X)4$
MX/Y5XZ?V@M<'73--^FU__BZ+#;2/H:BOGG_AH+7>VE:><=?W<G3_ +[I?^&@
M=='72M.'KE7_ /BZ+,+H^A:*^>O^&@==/']EZ=G_ ')/_BZ]5^''B^Z\9^'I
M-1NX(89$F,>V($ @ 'N3ZT-!=;'845D>*-6ET+PSJ&IP1I)+;0/*JOG:2 3S
MCZ5X@?V@M=YQI6GX Z[)/_BZ$K@W8^AJ*^>O^&@==_Z!>G?]\2?_ !=:.@_'
M'6=5URTL)=-L42>0(2J/D#_OJCE8N9'NE%(#2TB@HHKSOXG?$*^\#-IXL[6W
MG^T[MWG!CC&.F"* N>B45\]?\- Z[_T"M/S_ +DG_P 71_PT!KO_ $"]._[X
MD_\ BZ?*R>='T+17GGPQ^(-]XY%^;RUMX?LVW;Y*L,Y]<DUZ!N/MBD.XK?>_
M#I5:\O;>QMVGN9EBC49+,<56U;5[;2;%[RZD544?*"?O>U>+>(_%-[XAN&+G
MRK8'"1KQD>IKKPF$EB7V1Y^,QT<,K+5G1^)/B-<7#O;Z2?*C P92/F;Z>E<%
M++)*Y>5V9S_$3DTP$U-:VL]Y<+#;1-+*W1%&37TM*A3H1T/DZU>IB)ZD/TS^
M%'MC\J])T3X9^:%FU>=AQGR8L Y]SSFNYL?#>DZ>JK;V,:X'\7)_6N.MFE.'
MPJYZ%'*:M57D['SYG.<$<4X9R#U'?%?1,^F6$L12:VAVMP?D KQKQMH4&B:Z
MRVH(@F4.HSG';^8J\-CXUY\K6IGB\NEAX<UTSFNA/L,\U[CX!WCPC:;^X^7Z
M5XM9VLM_>0VL";Y97" #GJ<9KZ"TNQ73],M[6/(6-0!FN;-JBY5'J=634Y>T
ME+H75ZT^N8\<^*1X0\-2ZFJQO-N"1(^<,Q!ZXY[5Y#_PT!KO_0+T[_OB3_XN
MO"M<^EO9'T+17SU_PT!KO_0+T[_OB3_XNC_AH#7?^@7IW_?$G_Q=%F',CZ%H
MKYZ_X:!U[MI6GD_[DG_Q==_\-/B5+XVDO+>\@MX+F##(L60&4_4GN#19AS(]
M&HHHI%!1110 4444 >*_M"7LB:=I-FA(61Y'?T.,8KQ?0-%F\0:U:Z7;;5DN
M'"AF&=OJ:]?_ &ANNB_23^E<)\)F5?B'INXXRV!^8J^AF]STV#]G_1EB47&I
MWCR#JT>U<_0$&I&^ .@E3C4;[/;++C_T&O6^1C-+4W+Y3Y3\2_"_7]&U^>ST
M_3+_ %&T0ADN(K=BK9&>HXXSC\*].^".C:SHUOJ,&J:==6BLVZ/SXBF2<>M=
M]J_C7P_H>H&RU'4X;>X #%'8 D8J;0_%6B^(GD72KZ*Y:,9<(P) S1<5CY7\
M=WSZAXVU:YD+;FFVC)S@* O'Y5T/PX^&(\;P7-]=73064<@B*QK\S, ">3TX
M([5RGBKCQ7J7_7P_\Z]V^ +C_A!;Q<_,-2<D?]LXZIZ(C=V(O^% Z >3J-^3
M_O+_ /$U7O/@!I!MV^QZE=+-CY3)M8?D *]CI#SBI3+<4?%&KZ9+H^LWFG7!
M!GMIFB9NQ*DCC\J]W^!=T\_@W5(&SLMYBJC/JI8_F:\B^(;!OB!KG.?],E'_
M (\:]6^ ?_(K:_\ ]? _] ILF+LSQ+6@#K^H<<FYE/\ X^:@N-/N;:VMYY(F
M$=TF^-A_=W%?SR#4VM_\A[40>1]IDY'^^:]>M/"0\3_ RSFA4F^LEEFAXY8
MDE?J<8'UJA)799^!?B_,-QX=NY%!!\VU8GJ,8*_A@'\:]6\2Z[;^'=!NM3GQ
MM@7(!.-S>@]Z^0M+U*YT+5X+^V(6>VD#X/?!Z'\J] ^*_P 0HO%<>G6>GL1:
M1H991GJYQP?I@_\ ?5)JY2E8\]U&^N=8U.>]N#YES<R%R?4D]*34M.GTN]:U
MN5V2J 2OH",@'Z5W?P@\('Q#XD^VW";K&R&Y^.KY^4?S_*L?XG_\E"U?VF(I
MDGKWP$Y\(W9XXN?Z5X)K_'B/5./^7R8_^/FO?/@'_P BA>?]?/\ 2O!-?_Y&
M35/^OR;_ -#-);C>QZ=X!^$^D^*_#$>IW5Y=QR/(5*QE1TQZCWKJ?^% Z!_T
M$=0_[Z7_ .)KY_AU&[MXA%#<2QQYR%#<9J3^U]1_Y_)1]'IL2/?#\ _#Z\G4
MK\8]67'_ *#5SXM1G1/A7%I]LY,2R16Q+=2@5O\ XD5\^6NL:B+N+%[/DN!C
M?P>:^AOCD/\ BWR =KQ/_0'J;.Y5T?-EK US=PP1@;Y)%C7ZL<#^=>\:9\ =
M.^Q1-J.I7)N"H+"+  )[<@UXEH)QK^F$'_E[B'_CXK[5[42=@2N>1_\ "@=
MZ_VCJ&1R/F7K_P!\UPWQ%^$Z>#])&JV%V\UJC /'*N6#$\'(ZBOI3-<#\975
M/AQ>ES@>8@'US4J0VCYIT.XDLM<M)X&VR)*K#%>]?'X ^$;'_K['_H+5\_Z9
M_P A*US_ ,]!S7T!\?O^11L?^OL?^@M5O<E'AOA328-=\2Z?I=P[)%<2;693
M\P^4FO<1\ ?#^,'4=0P.V],?^@UX%I.J7&C:G;ZA:,!/ VY0W3H17<_\+L\7
M@<2VGT,9S_Z%38(]!D^ &A^6PAU*]5NV2I'\J\)UK31I&LWFG[Q)Y$A ?'4?
M2NT;XU^,"I'G6@R.HC/_ ,57#R2SZQJQEN9T-Q<RC?+*^%R<#+'L!_2D)M/8
M]]^$EI_PD/PFU'3+EV6*6>:V+ \[3&G^)H'P!\/XQ_:.H8]F3_XFNQ^'OAW_
M (1CPC;V!F261B99'0?*20!Q^ %=4#FHOJ7:Z/F'XH?#[3_!$>GM97$\WVC>
M&\T@],8Z 5SO@3P];>*?%EKI5T\D<<V[+1D \*2.H->H_M"_ZC1?K)_2N&^#
MO_)2=.^C_P#H)J^A'4]-_P"% :!G_D(WY_X$O_Q-=UX.\)6G@W2'T^SEFEC:
M0R$RD$YZ=@/2NBH%0V:6.7^(W_)/M<S_ ,^<O_H)KY"[?3/%?7OQ&_Y)[KG_
M %YR_P#H)KY"[FKB3(,"MWP8!_PF.E=?]</Y5A5N^"_^1QTK_KN/Y570A;GV
M.*6D%+61L%>%_M"_?T7I_'S^5>Z5X7^T+]_1?^!_TIK<F6QX=@9HP*.]%69'
MN/[/0&-9_P" ?UKVF\NH[.TFN92%2-2Q)->+_L]?\QG_ (!73_$_6V2.'2(F
MYD.Z0CT'./Y5=*BZU511GB*RHT7)G&^*/$<_B#4V<DBV0XC0>GK6)GJ?QIIZ
M4#US@]OK7U].G"G'EB?$5:DJLFY,LV5G<:A>QVELF^5R !V'UKV[PSX3M?#]
MJN!YMRPP\I[_ $]JP?AOH"6FG-J<P_>SG"9[+_\ KS7H   KYW'XMU)>SCLC
MZ?+<#&$?:/=C0IS2GCF@ 9I3C/->5;6Y[5^Y2U.W-QI-U%DAFB;:0>AP<5\_
MWUS=RR^3<S-)Y&8QO[#-?1AY4^]>(:EX;O+WQE>:?:)N_>@LW\*[@#S^=>QE
M=2$9R<^B/#S:E*48J)+X#O=.T_5M]TLC7#G;"%7)&>]>T(20#C /2N;\-^#[
M+0(E<KYMT3DR,.A]JW[NZBLK.6YE.V.)2[$^U<>,K0JU+Q.S+Z$Z%*TSP;X\
M^(/M6K6>C1N-EL&DD /5CC'Y8/YUX[@5I>(-7EU[7KS4YOO3RLP7TK-K Z_,
M3*\>]+@5)!$]S<16Z$[Y7"+@=R<"NA\;>%9?"6LQ6;EBLEO'(,C'S%!O_P#'
MMU '- <C'J*ZKX<Z]_PCOC73[EB$@DD$4N3T0D _D*Y7IV)],4N.ASS_ "-
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
M+G*0Q1!0?X,QJ3C\:+:C;=CM)OVA(!)B#19&CS@>8X!/Y9IG_#0G)']A=/\
MIK7!_#GP;IOBVYN5U'519I".$+ ,V1CO]:](7X'^&2 1KC^V"O\ C3LB;LI?
M\-" C)T+C_KK76^$_C!H7B6^6P:*>SNFP%\U5V,?0$$G\Q7#>*/@S8V.C27.
MB:FUW=)]V!G4!OQ)KB++P!XR@N8;B'29]T; ADD0$_7YJ+(=V?0OCKQU!X(M
M+:XGM9)Q.Y10F."!GG)KA_\ AH33\9&CW./J/\:['XB>!7\<6=I EV+<P.6Y
M^E>?']GVY_Z#4?Y'_"DDAOF- ?M!V'.-'N?S7_&C_AH33SC_ (D]S^:_XUXM
MXBT<Z#K]WI;S>8;=]ID%==X#^&4OCC2+F_COTM_)G\C:0>< 'T]ZII6)NSNQ
M^T'8$X.D7*\]<KT_.O2]6\11Z3X4DUUX&=(XO-*#[V,9KR/_ (9]N2 #K$1Y
MSC!_PKT/Q];&S^%FHVY;<8[4KD=^#4Z%79QJ_M!6'&='N,GOE?\ &C_AH.P[
MZ-<C\5_QKP10&(7CD]:]DTGX(6VIZ39WYUTH;F%9=NT?+D _UJFD3S,U_P#A
MH.Q_Z USC_>7_&D_X:"L"<?V-<_7*_XU6_X4%;?]#!_XZ*#\ K0X_P"*@QC_
M &12T'=GIG@CQ=%XUT1]2@MW@193%L<\\ 'M]:X[7_C99Z%KEWICZ7/*UL^P
MLI&"<9XY]Z[#P)X23P;H3Z<ET;@/,9=^,=0!C]*^:/B'@>/M9)Z"XS_XZ*%N
M-R=CU;_AH.Q)_P"0-<_@R_XUZGX>UZT\1Z+;:I9D^5,H;#8!7V..]?&K6TRV
MR7!C(A=V4-],?XUZQ\$/%_V#5I- O)"+>Y&^'/0/Z?K^E#0HM]3Z&W <<@]<
M5S'C;QK9>#-)2]NHWD:1]D<:8W,>>>O3BNDD=8T:1V 55)+'L!7RI\3O%C>*
M/%<[1R$V5H3% .Q X+8]SD_C4I#DST<?M!6!&#H]ST]5Y_6NA\&?%>U\8ZXN
MFPZ=+ Y4L&?&, 9[&OFA[2:.VBN7C*12Y\MCW&<']0:]%^!W_(_Q_P#7*3_T
M$U?*K$QD[ZGT/K>N:?X?TV6^U&;RH(QD^I]A7E5[^T#I\<["QTBYDC'4S%4/
MZ$TG[0MQ*FEZ-;(W[N:24NO9MH3'\S7CGA;2+?7O$=II]W>):PRN-TK>E)(&
MV>L_\-"<X&A=LX\[M0?VA<#)T'\/-JVGP1\,.N1KK.OKE3D^N<U'=_ _P_\
M9)#;ZX_GJAV9*\D?C19#NR_HWQZT:[N8X-1L+FU,C8\Q K(ON3G/Z5ZQ;7$5
MW;QW$#AXI%#*PZ$&ODIOAQXI\Z1(-+:948KO21"&&>N,U](?#>SU#3_ .EVN
MJ1-#>1+(KQL02H\QL<CVQ0U9#3NQWQ&_Y)[KG_7G+_Z":^0NYKZ]^(W_ "3W
M7/\ KSE_] -?(7<TXBD%;O@S_D<=*_Z["L*MGPI/';>*=.EE; $ZTR%N?98I
M::C!@&4@@]"*=69L%>%?M"GY]%X/23^E>ZUX)^T%=Q-J&D6@8;T1W(STW'']
M*<=R9;'BM&:3H/>@=>*T,M#W+]GW*C6<]]E>Q:G;6=U9R1WRQM;D98.!@>_U
MKQ?X$S+:VFO3,K,(PA*J,DU)XN\7ZAK$[6ZB2UM5/$1&TN.Q-9RERZK<];+L
MLGCY<D7[O5_\ TH/#F@Z_KUQ9:3=3Q+&I)W("C'V.<_I6@OPJF+X.HH!S@A3
MFN7\ WWV+Q;:,QPLN4/XJ0*]W3!.:ZJ68UU&RD<V=</X7"XA12T:N<!9_"O3
MXVW7-W),/0+M_7-=1IOA31M+(:VL8MZ]'=06'X]:V>AI<U%3$5:C]Z1YU+!T
M:;345<:/J<]:X_XBZFMCX9>-6Q-<,(P/;DG^5=3=7,5I"TTS!449))Z5X/XO
M\0OXAUAI59A;1DK$#W'K7+.UKGTV28&6)Q*DU[L7JS [ @8QQ2YZ#UZ4G.?:
MI[.SFOKR*UME+2S.%7V]:Y>I^DS<8*\NAV7@FZ&@Z!KOB&4?)! 1&#_$Z@D
M?7(KPFZG>ZNYKB0EGE<N6)Y.:]B^*MRGASPAIOA>W($UPOG7&..,\'\P1^%>
M+GJ:[H)16A^3YKBOK.+E46WZ+80].*LV5H]]?V]I"IW32A1MZXJOSVJ2&>:U
MN$F@E>*1#NC>-BC#\1S5'FZ+0^SM TQ=&T#3].15 M[=(SCN0H!-:)ZYKXV'
MC#Q2!C_A(]8X_P"GZ7_XJ@^,/%&1_P 5'K'_ ('2']-V*7*6I6.M^-'A_P#L
MCQQ)>1(!!?QK*-O0$?*1]?ES^-><5=O]8U352IU'4;N\V_=-Q,TA4_B35*G9
MDMW#)!!!Y'3_ !KZ9^"GB+^U?!PL9&8SZ>PC.?[A'RX_[Y-?,U>@_!WQ!_8G
MC6."1R+>^7R7&>-V05/X<_G4L$['U$ISV-.I!2U)J%%%% 'GOQ:\&W?B[P_"
M-/&^\M&9XX]P7?G&0">,\5\ZW?A/Q#8RE)M'O5<9'RPE_P#T'('X5[C\=M3U
M32],TB;3;JXM@9)1*T1(R,+C./QKR;P]\1=;TG6X;R\O[N[ME/SPM+P5/U[\
M5:V(>YC+;>(X<JL.K(.<J%D'Z4C#Q(JEF_M8)@DMB08YZ9->T-\>] ));0KS
M/_;/_&HW^._AZ2)D;P]='_9;RR/QYH$>-VGB;7]-G1[;5[^)HR0$\XL/H037
MTQ\,?%4WBWPC%=7>/M<3&*9AT)!X/XC%?+VLWL>IZQ>WT4 MTN)FD"*.$!.<
M#'U^E>^_ .UDA\)7T[@A+B[W)GN H7^8HD$3T[4-/M=4L9[*\A66"="DB-W!
M&*^6/B)X%NO!NL;0K/I]P"T,_8#/*GT(_J.:^LL"O-OC<J?\*[E=D!9;F+;D
M9QS4IV+D?-#O+*%21GD"J5"E^@[ #M7OWPE^&XTR%=>UBW4W<@_<1./]6IYR
M1V/2O$/#J*^OV"L@93. 0V#GZU]GHJ@8 JI&<1/S_P ]Z\0^+WP]U?5-:.NZ
M5;BZ61%$\:L PV@*",XR, 5[DPXKYP^+7B#7]*\?WL5KJ-U;VS)$8XT? ^XN
M2/QS4K<MGG[:!KUM(^-*U!&4\LL#<?D*D\KQ+V35N.@Q(*[+P/\ %JY\/37(
MULW6I0R@>6-P+ \>M=G_ ,+Z\/=_#]Y_Y#/]:HD\6N)->MX_,GDU.)<<ES(
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
MIHI7"QXC_P ,^0').L29)]!_A2?\,]P8_P"0S)_WR/\ "O;Z*+A8\<L/V?\
M28I5>]U.[E"G.V,@ CT/%>K:3I-GHFFQ6%A"L-O$,*@_7]:NT47"PC#<N <4
MPPJRE7 93V89J2B@9R&L_#+PGK9+W&E(DO\ STB9D(_ ''Z5R%W\ -#<EK74
MK^,\\,5(_P#0:]>HIW%8\+E_9[(VB#60 !CYU_P%1_\ #/EQ_P!!N/\ [X->
M\447%RGA _9[FZ'6TQWPAK0M?V?=-#?Z5JUT1Z1;1G\UKV>BAL+'!Z1\(/".
MDN)/L+74@Z-/(QQ^ (%=K%;0VT02&)(HP,!(U  _"IZ1N5(I#LCS[XJV,MQH
M=O<1(SB"4%P.RX//YXKR#(R>1CUKZ4O+2.^M);::/='(,$$=J\PUOX6W<<K3
M:7(LR$Y\I^"OL#Z5E4A?4^QR+-J%*C["N[*^AYR<X_PH SSG-=$_@7Q&C%?[
M-E_X I(I\'@'Q'.P7^SGCYY+G'\ZQY9'U/\ :&&4;^U7WG-9 / _G2J"[A$5
MF<]%4$Y^E>CZ=\*+B0AM0O/+']R)>?SYKM]'\':3HZ@PVH>3O))RQ_I^56J3
M>YY6)XBPU/2FN9GF.@?#S4M5=9;Q&M+?KEQAC]!V_&O5M$\-:;H< CM+<!P,
M&0Y+-]:UE7"X Q3P.>GXULHV/CL=FN)Q;]]V79#=G/M7(>/O S>-[:VMFOVM
MH86+%5'WB1CTKLJ*H\JUCQ'_ (9\@_Z#$GY#_"E_X9\@QC^V)![@#/\ *O;A
MTHIW"QYEX+^$%KX4\0#5FO6N75"%5@,*<CD<5Z8 0 #^-+12N-(***#0,0C(
MKE_''@NV\:Z,MC-*871PZ2KU7U_/%=324":N>)?\,^0?]!B3\A_A0/V?(,@G
M6)./11_A7MU%.X6/+/"7P?;PIK\&JP:O([("LB%1AU].GT_*M;4OAA97VI3W
M,5U)#%<L3)&N/ERVYMAQQN/)^IQBN]HI7"Q7L+*'3K""SMQB*% BYZX%%6**
M!A1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
110 4444 %%%% !1110!__]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>8
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.25.3</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Cover<br></strong></div></th>
<th class="th"><div>Dec. 16, 2025</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [Abstract]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">8-K<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 16,  2025<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">1-13011<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">Comfort
Systems USA, Inc.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001035983<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">76-0526487<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">675
    Bering Drive<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressAddressLine2', window );">Entity Address, Address Line Two</a></td>
<td class="text">Suite
    400<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Houston<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">TX<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">77057<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">713<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">830-9600<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_WrittenCommunications', window );">Written Communications</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SolicitingMaterial', window );">Soliciting Material</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_PreCommencementTenderOffer', window );">Pre-commencement Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_PreCommencementIssuerTenderOffer', window );">Pre-commencement Issuer Tender Offer</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common
    Stock, $0.01 par value<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">FIX<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NYSE<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CoverAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Cover page.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CoverAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine2">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 2 such as Street or Suite number</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine2</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_PreCommencementIssuerTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 13e<br> -Subsection 4c<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_PreCommencementIssuerTenderOffer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_PreCommencementTenderOffer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 14d<br> -Subsection 2b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_PreCommencementTenderOffer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SolicitingMaterial">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 14a<br> -Subsection 12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SolicitingMaterial</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_WrittenCommunications">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 425<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_WrittenCommunications</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>9
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
.report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

.report table.authRefData a {
	display: block;
	font-weight: bold;
}

.report table.authRefData p {
	margin-top: 0px;
}

.report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

.report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

.report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

.report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
.pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
.report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

.report hr {
	border: 1px solid #acf;
}

/* Top labels */
.report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

.report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

.report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

.report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

.report td.pl div.a {
	width: 200px;
}

.report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
.report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
.report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
.report .re, .report .reu {
	background-color: #def;
}

.report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
.report .ro, .report .rou {
	background-color: white;
}

.report .rou td {
	border-bottom: 1px solid black;
}

.report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
.report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
.report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

.report .nump {
	padding-left: 2em;
}

.report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
.report .text {
	text-align: left;
	white-space: normal;
}

.report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

.report .text .more {
	display: none;
}

.report .text .note {
	font-style: italic;
	font-weight: bold;
}

.report .text .small {
	width: 10em;
}

.report sup {
	font-style: italic;
}

.report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.25.3</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>1</ContextCount>
  <ElementCount>23</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>0</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>3</UnitCount>
  <MyReports>
    <Report instance="tm2533853d1_8k.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>00000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://comfortsystemsusa.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File>fix-20251216.xsd</File>
    <File>fix-20251216_lab.xml</File>
    <File>fix-20251216_pre.xml</File>
    <File doctype="8-K" isOnlyDei="true" isUsgaap="true" original="tm2533853d1_8k.htm">tm2533853d1_8k.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="23">http://xbrl.sec.gov/dei/2025</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>14
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "tm2533853d1_8k.htm": {
   "nsprefix": "fix",
   "nsuri": "http://comfortsystemsusa.com/20251216",
   "dts": {
    "schema": {
     "local": [
      "fix-20251216.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-2025.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-roles-2025.xsd",
      "https://xbrl.fasb.org/srt/2025/elts/srt-types-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-gaap-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-roles-2025.xsd",
      "https://xbrl.fasb.org/us-gaap/2025/elts/us-types-2025.xsd",
      "https://xbrl.sec.gov/country/2025/country-2025.xsd",
      "https://xbrl.sec.gov/dei/2025/dei-2025.xsd",
      "https://xbrl.sec.gov/stpr/2025/stpr-2025.xsd"
     ]
    },
    "labelLink": {
     "local": [
      "fix-20251216_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "fix-20251216_pre.xml"
     ]
    },
    "inline": {
     "local": [
      "tm2533853d1_8k.htm"
     ]
    }
   },
   "keyStandard": 23,
   "keyCustom": 0,
   "axisStandard": 0,
   "axisCustom": 0,
   "memberStandard": 0,
   "memberCustom": 0,
   "hidden": {
    "total": 2,
    "http://xbrl.sec.gov/dei/2025": 2
   },
   "contextCount": 1,
   "entityCount": 1,
   "segmentCount": 0,
   "elementCount": 59,
   "unitCount": 3,
   "baseTaxonomies": {
    "http://xbrl.sec.gov/dei/2025": 23
   },
   "report": {
    "R1": {
     "role": "http://comfortsystemsusa.com/role/Cover",
     "longName": "00000001 - Document - Cover",
     "shortName": "Cover",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "AsOf2025-12-16",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "b",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tm2533853d1_8k.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "AsOf2025-12-16",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "b",
       "p",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "tm2533853d1_8k.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "dei_AmendmentDescription": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AmendmentDescription",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Description",
        "documentation": "Description of changes contained within amended document."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "dei_AnnualInformationForm": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AnnualInformationForm",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Annual Information Form",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing an annual information form."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_AuditedAnnualFinancialStatements": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "AuditedAnnualFinancialStatements",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Audited Annual Financial Statements",
        "documentation": "Boolean flag with value true on a form if it is an annual report containing audited financial statements."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_CityAreaCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CityAreaCode",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "City Area Code",
        "documentation": "Area code of city"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CountryRegion": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CountryRegion",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Country Region",
        "documentation": "Region code of country"
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CurrentFiscalYearEndDate": {
     "xbrltype": "gMonthDayItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "CurrentFiscalYearEndDate",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current Fiscal Year End Date",
        "documentation": "End date of current fiscal year in the format --MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentAccountingStandard": {
     "xbrltype": "accountingStandardItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentAccountingStandard",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Accounting Standard",
        "documentation": "The basis of accounting the registrant has used to prepare the financial statements included in this filing This can either be 'U.S. GAAP', 'International Financial Reporting Standards', or 'Other'."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentAnnualReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentAnnualReport",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Annual Report",
        "documentation": "Boolean flag that is true only for a form used as an annual report."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r13",
      "r14"
     ]
    },
    "dei_DocumentFiscalPeriodFocus": {
     "xbrltype": "fiscalPeriodItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentFiscalPeriodFocus",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Period Focus",
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3. 1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentFiscalYearFocus": {
     "xbrltype": "gYearItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentFiscalYearFocus",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Fiscal Year Focus",
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodEndDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentPeriodEndDate",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period End Date",
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period. The format of the date is YYYY-MM-DD."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentPeriodStartDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentPeriodStartDate",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Period Start Date",
        "documentation": "The start date of the period covered in the document, in YYYY-MM-DD format."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentQuarterlyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentQuarterlyReport",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Quarterly Report",
        "documentation": "Boolean flag that is true only for a form used as an quarterly report."
       }
      }
     },
     "auth_ref": [
      "r12"
     ]
    },
    "dei_DocumentRegistrationStatement": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentRegistrationStatement",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Registration Statement",
        "documentation": "Boolean flag that is true only for a form used as a registration statement."
       }
      }
     },
     "auth_ref": [
      "r0"
     ]
    },
    "dei_DocumentShellCompanyEventDate": {
     "xbrltype": "dateItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentShellCompanyEventDate",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Event Date",
        "documentation": "Date of event requiring a shell company report."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentShellCompanyReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentShellCompanyReport",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Shell Company Report",
        "documentation": "Boolean flag that is true for a Shell Company Report pursuant to section 13 or 15(d) of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_DocumentTransitionReport": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentTransitionReport",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Transition Report",
        "documentation": "Boolean flag that is true only for a form used as a transition report."
       }
      }
     },
     "auth_ref": [
      "r15"
     ]
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentType",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Documents Incorporated by Reference [Text Block]",
        "documentation": "Documents incorporated by reference."
       }
      }
     },
     "auth_ref": [
      "r3"
     ]
    },
    "dei_EntityAddressAddressLine1": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressAddressLine1",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line One",
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine2": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressAddressLine2",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Two",
        "documentation": "Address Line 2 such as Street or Suite number"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressAddressLine3": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressAddressLine3",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Address Line Three",
        "documentation": "Address Line 3 such as an Office Park"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCityOrTown": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressCityOrTown",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, City or Town",
        "documentation": "Name of the City or Town"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressCountry": {
     "xbrltype": "countryCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressCountry",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Country",
        "documentation": "ISO 3166-1 alpha-2 country code."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressPostalZipCode": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressPostalZipCode",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, Postal Zip Code",
        "documentation": "Code for the postal or zip code"
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityAddressStateOrProvince": {
     "xbrltype": "stateOrProvinceItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityAddressStateOrProvince",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Address, State or Province",
        "documentation": "Name of the state or province."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityBankruptcyProceedingsReportingCurrent": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityBankruptcyProceedingsReportingCurrent",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Bankruptcy Proceedings, Reporting Current",
        "documentation": "For registrants involved in bankruptcy proceedings during the preceding five years, the value Yes indicates that the registrant has filed all documents and reports required to be filed by Section 12, 13 or 15(d) of the Securities Exchange Act of 1934 subsequent to the distribution of securities under a plan confirmed by a court; the value No indicates the registrant has not. Registrants not involved in bankruptcy proceedings during the preceding five years should not report this element."
       }
      }
     },
     "auth_ref": [
      "r6"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCommonStockSharesOutstanding",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Common Stock, Shares Outstanding",
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityCurrentReportingStatus": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityCurrentReportingStatus",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Current Reporting Status",
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityEmergingGrowthCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityEmergingGrowthCompany",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Emerging Growth Company",
        "documentation": "Indicate if registrant meets the emerging growth company criteria."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityExTransitionPeriod": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityExTransitionPeriod",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Elected Not To Use the Extended Transition Period",
        "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards."
       }
      }
     },
     "auth_ref": [
      "r19"
     ]
    },
    "dei_EntityFileNumber": {
     "xbrltype": "fileNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityFileNumber",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity File Number",
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityFilerCategory": {
     "xbrltype": "filerCategoryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityFilerCategory",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Filer Category",
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityIncorporationStateCountryCode": {
     "xbrltype": "edgarStateCountryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityIncorporationStateCountryCode",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Incorporation, State or Country Code",
        "documentation": "Two-character EDGAR code representing the state or country of incorporation."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityInteractiveDataCurrent": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityInteractiveDataCurrent",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Interactive Data Current",
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files)."
       }
      }
     },
     "auth_ref": [
      "r16"
     ]
    },
    "dei_EntityPrimarySicNumber": {
     "xbrltype": "sicNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityPrimarySicNumber",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Primary SIC Number",
        "documentation": "Primary Standard Industrial Classification (SIC) Number for the Entity."
       }
      }
     },
     "auth_ref": [
      "r14"
     ]
    },
    "dei_EntityPublicFloat": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityPublicFloat",
     "crdr": "credit",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Public Float",
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityShellCompany": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityShellCompany",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Shell Company",
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntitySmallBusiness": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntitySmallBusiness",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Small Business",
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r2"
     ]
    },
    "dei_EntityVoluntaryFilers": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityVoluntaryFilers",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Voluntary Filers",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "xbrltype": "yesNoItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "EntityWellKnownSeasonedIssuer",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Entity Well-known Seasoned Issuer",
        "documentation": "Indicate 'Yes' or 'No' if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. Is used on Form Type: 10-K, 10-Q, 8-K, 20-F, 6-K, 10-K/A, 10-Q/A, 20-F/A, 6-K/A, N-CSR, N-Q, N-1A."
       }
      }
     },
     "auth_ref": [
      "r17"
     ]
    },
    "dei_Extension": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "Extension",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Extension",
        "documentation": "Extension number for local phone number."
       }
      }
     },
     "auth_ref": []
    },
    "dei_LocalPhoneNumber": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "LocalPhoneNumber",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Local Phone Number",
        "documentation": "Local phone number for entity."
       }
      }
     },
     "auth_ref": []
    },
    "dei_NoTradingSymbolFlag": {
     "xbrltype": "trueItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "NoTradingSymbolFlag",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "No Trading Symbol Flag",
        "documentation": "Boolean flag that is true only for a security having no trading symbol."
       }
      }
     },
     "auth_ref": []
    },
    "dei_OtherReportingStandardItemNumber": {
     "xbrltype": "otherReportingStandardItemNumberItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "OtherReportingStandardItemNumber",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Reporting Standard Item Number",
        "documentation": "\"Item 17\" or \"Item 18\" specified when the basis of accounting is neither US GAAP nor IFRS."
       }
      }
     },
     "auth_ref": [
      "r13"
     ]
    },
    "dei_PreCommencementIssuerTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PreCommencementIssuerTenderOffer",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Issuer Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 13e-4(c) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r7"
     ]
    },
    "dei_PreCommencementTenderOffer": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "PreCommencementTenderOffer",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Pre-commencement Tender Offer",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as pre-commencement communications pursuant to Rule 14d-2(b) under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r9"
     ]
    },
    "dei_Security12bTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "Security12bTitle",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(b) Security",
        "documentation": "Title of a 12(b) registered security."
       }
      }
     },
     "auth_ref": [
      "r1"
     ]
    },
    "dei_Security12gTitle": {
     "xbrltype": "securityTitleItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "Security12gTitle",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of 12(g) Security",
        "documentation": "Title of a 12(g) registered security."
       }
      }
     },
     "auth_ref": [
      "r5"
     ]
    },
    "dei_SecurityExchangeName": {
     "xbrltype": "edgarExchangeCodeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "SecurityExchangeName",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Exchange Name",
        "documentation": "Name of the Exchange on which a security is registered."
       }
      }
     },
     "auth_ref": [
      "r4"
     ]
    },
    "dei_SecurityReportingObligation": {
     "xbrltype": "securityReportingObligationItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "SecurityReportingObligation",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Security Reporting Obligation",
        "documentation": "15(d), indicating whether the security has a reporting obligation under that section of the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r10"
     ]
    },
    "dei_SolicitingMaterial": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "SolicitingMaterial",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Soliciting Material",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as soliciting material pursuant to Rule 14a-12 under the Exchange Act."
       }
      }
     },
     "auth_ref": [
      "r8"
     ]
    },
    "dei_TradingSymbol": {
     "xbrltype": "tradingSymbolItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "TradingSymbol",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Trading Symbol",
        "documentation": "Trading symbol of an instrument as listed on an exchange."
       }
      }
     },
     "auth_ref": []
    },
    "dei_WrittenCommunications": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2025",
     "localname": "WrittenCommunications",
     "presentation": [
      "http://comfortsystemsusa.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Written Communications",
        "documentation": "Boolean flag that is true when the Form 8-K filing is intended to satisfy the filing obligation of the registrant as written communications pursuant to Rule 425 under the Securities Act."
       }
      }
     },
     "auth_ref": [
      "r18"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "g"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12, 13, 15d"
  },
  "r7": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "13e",
   "Subsection": "4c"
  },
  "r8": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14a",
   "Subsection": "12"
  },
  "r9": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "14d",
   "Subsection": "2b"
  },
  "r10": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "15",
   "Subsection": "d"
  },
  "r11": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-K",
   "Number": "249",
   "Section": "310"
  },
  "r12": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 10-Q",
   "Number": "240",
   "Section": "308",
   "Subsection": "a"
  },
  "r13": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 20-F",
   "Number": "249",
   "Section": "220",
   "Subsection": "f"
  },
  "r14": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Form 40-F",
   "Number": "249",
   "Section": "240",
   "Subsection": "f"
  },
  "r15": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r16": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Regulation S-T",
   "Number": "232",
   "Section": "405"
  },
  "r17": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "405"
  },
  "r18": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "230",
   "Section": "425"
  },
  "r19": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Securities Act",
   "Number": "7A",
   "Section": "B",
   "Subsection": "2"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>15
<FILENAME>0001104659-25-123112-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001104659-25-123112-xbrl.zip
M4$L#!!0    ( +F DUL]I)MW, ,  /H+   0    9FEX+3(P,C4Q,C$V+GAS
M9+56VW+:,!!][TS_0?5KQC:&A#0$DDF324N&-"TT:9J7CK#7H(DMN9(<3+^^
MDF]<# 1HZR=Y=<[97>VN[/9Y$@;H!;@@C'8,QZH9"*C+/$)''>-^8%X,+KM=
M YV?O7V#U--^9YKHFD#@M= 5<\TN]=DI^HQ#:*&/0(%CR?@I>L!!K"WLF@3
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
MV[EC*DE >-A\=620X4AKO;"PV. T_;S-$DHR>"(R5&Y9L%ILLM"0!,2"S1?
M0B%%6NN%A<L-X6LQO?W,V6O^6.9G!=L&J-VRT6FYR8A5&A K7?X 9G0(4C$Z
MI:X?>':'A.(JRR+<4HO4,3:@68.9EBXD8"!S+5I2$LGK+3<L1TN&OF8$Y8\$
M798_0U?/!*_J\?5+(U$D7XA0JW(:8VY#J$OL_%='0,.MWQYI*8, J=<>_#LD
M5032(8ZIN14,\_IY7&%BGI,-^+9#?X@K@H::UQSUZ8.@::!)DZDBK'ER700B
M&>DSFU$]N3V\Q&N('*^,+0:-A7%-$00CH"UH65S_K0 _N?.VJS2)KE*&X:LL
M#8WCC'EM>T:RO(,@( +:KJ 4>840%4HO_?\9TR>^?<ZC_1UG$2'R*:NL&JWZ
MKK\-C';+S)N:U*1I4&A G+W%+T#@H0I4J^-#;<;R>3%//C0NL[FQZ&GQB,4!
MO-WFF9Q!A3'X*GAGD./;"P,:8-QDZ(@("+T!-J$;#D4D*D(_(!6,:M&>SL^R
M0Q9 $G_>WY,'PN5[!TNRRS^+'3UUG&$,B'5]]C:X.>;)7&]@$!"^U2UTJI>A
M>@5H)9\1*ZM O\M*4%&+[??+ZYNNQ2>Q66\2?ZUP1L26_P)02P,$%     @
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
M;4_T%+XI A2'Q@?UC4)@#!5ANN@<Z;JU!]P+:XMOW"_W4E9[Y']02P,$%
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
M7GU"2-@C*_02L"X4Z;V$_G4@SM8K-_A5RCUOS!6P_6,&KDT@5W:?-&5R+/9
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
MU?M_ 5!+ 0(4 Q0    ( +F DUL]I)MW, ,  /H+   0              "
M 0    !F:7@M,C R-3$R,38N>'-D4$L! A0#%     @ N8"36R#[UB3]"@
M?X8  !0              ( !7@,  &9I>"TR,#(U,3(Q-E]L86(N>&UL4$L!
M A0#%     @ N8"36]+&,WY@!P  Y5<  !0              ( !C0X  &9I
M>"TR,#(U,3(Q-E]P<F4N>&UL4$L! A0#%     @ N8"36]X26F92%0  1VD
M !(              ( !'Q8  '1M,C4S,S@U,V0Q7SAK+FAT;5!+ 0(4 Q0
M   ( +F DUO]5.P*ZP@  ($?   6              "  :$K  !T;3(U,S,X
E-3-D,5]E>#DY+3$N:'1M4$L%!@     %  4 1@$  , T      $!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>tm2533853d1_8k_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2025"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="fix-20251216.xsd" xlink:type="simple"/>
    <context id="AsOf2025-12-16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001035983</identifier>
        </entity>
        <period>
            <startDate>2025-12-16</startDate>
            <endDate>2025-12-16</endDate>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="USDPShares">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <dei:AmendmentFlag contextRef="AsOf2025-12-16" id="Fact000003">false</dei:AmendmentFlag>
    <dei:EntityCentralIndexKey contextRef="AsOf2025-12-16" id="Fact000004">0001035983</dei:EntityCentralIndexKey>
    <dei:DocumentType contextRef="AsOf2025-12-16" id="Fact000009">8-K</dei:DocumentType>
    <dei:DocumentPeriodEndDate contextRef="AsOf2025-12-16" id="Fact000010">2025-12-16</dei:DocumentPeriodEndDate>
    <dei:EntityRegistrantName contextRef="AsOf2025-12-16" id="Fact000011">Comfort Systems USA, Inc.</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="AsOf2025-12-16" id="Fact000012">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityFileNumber contextRef="AsOf2025-12-16" id="Fact000013">1-13011</dei:EntityFileNumber>
    <dei:EntityTaxIdentificationNumber contextRef="AsOf2025-12-16" id="Fact000014">76-0526487</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="AsOf2025-12-16" id="Fact000015">675     Bering Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressAddressLine2 contextRef="AsOf2025-12-16" id="Fact000016">Suite     400</dei:EntityAddressAddressLine2>
    <dei:EntityAddressCityOrTown contextRef="AsOf2025-12-16" id="Fact000017">Houston</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="AsOf2025-12-16" id="Fact000018">TX</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="AsOf2025-12-16" id="Fact000019">77057</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="AsOf2025-12-16" id="Fact000020">713</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="AsOf2025-12-16" id="Fact000021">830-9600</dei:LocalPhoneNumber>
    <dei:WrittenCommunications contextRef="AsOf2025-12-16" id="Fact000022">false</dei:WrittenCommunications>
    <dei:SolicitingMaterial contextRef="AsOf2025-12-16" id="Fact000023">false</dei:SolicitingMaterial>
    <dei:PreCommencementTenderOffer contextRef="AsOf2025-12-16" id="Fact000024">false</dei:PreCommencementTenderOffer>
    <dei:PreCommencementIssuerTenderOffer contextRef="AsOf2025-12-16" id="Fact000025">false</dei:PreCommencementIssuerTenderOffer>
    <dei:Security12bTitle contextRef="AsOf2025-12-16" id="Fact000026">Common     Stock, $0.01 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="AsOf2025-12-16" id="Fact000027">FIX</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="AsOf2025-12-16" id="Fact000028">NYSE</dei:SecurityExchangeName>
    <dei:EntityEmergingGrowthCompany contextRef="AsOf2025-12-16" id="Fact000029">false</dei:EntityEmergingGrowthCompany>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
