XML 67 R49.htm IDEA: XBRL DOCUMENT
v3.25.0.1

Revenue Recognition and Related Balance Sheet Accounts - Additional Information (Details) $ in Thousands |  |  | 12 Months Ended
--- | --- | --- | ---
Dec. 31, 2024 USD ($) pool | Dec. 31, 2023 USD ($) | Dec. 31, 2024 USD ($) pool | Dec. 31, 2023 USD ($) | Dec. 31, 2022 USD ($)
Revenue Recognition [Line Items] |  |  |  |  |
Revenues recognized, related to change orders and claims | $ 733,600 | $ 778,900 | $ 733,600 | $ 778,900 |
Change in contract estimates, favorable (unfavorable) impact on revenue, percent |  |  | 0.20% | 0.40% | 0.70%
Gross profit |  |  | $ 3,510,761 | $ 2,937,086 | $ 2,529,155
Change in contract estimates, (favorable) unfavorable impact on operating results, no material change |  |  |  |  | $ 0
Percent of total revenues recognized associated with revenue recognition method |  |  | 60.00% | 56.50% | 51.60%
Revenue recognized related to amounts in contract liabilities outstanding at the beginning of period |  |  | $ 1,420,000 | $ 1,040,000 | $ 695,100
Number of risk pools | pool | 2 |  | 2 |  |
Write-offs charged against the allowance net of recoveries of amounts previously written off |  |  | $ (3,056) | (7,609) | (34,455)
Current retainage balances | $ 666,500 | 610,000 | 666,500 | 610,000 |
Non-current retainage balances | 143,600 | 78,700 | 143,600 | 78,700 |
Unbilled receivables | $ 859,900 | $ 743,600 | 859,900 | 743,600 | 823,900
Termination of the Peru Telecommunications Project |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Gross profit |  |  | 39,200 |  |
Financial Instruments | Credit Concentration Risk | Secondary Pool |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Concentration risk (in percent) | 13.00% |  |  |  |
Limetree Bay Refining, LLC |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Write-offs charged against the allowance net of recoveries of amounts previously written off |  |  |  |  | 31,700
One Customer | Accounts Receivable | Customer Concentration Risk | Renewable Energy |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Concentration risk (in percent) |  | 10.00% |  |  |
Accounts payable and accrued expenses |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Unearned revenues | $ 97,900 | $ 58,600 | $ 97,900 | $ 58,600 | $ 59,600
Projects In Progress |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Change in contract estimates, (favorable) unfavorable impact on operating results, percent |  |  |  | 5.00% | 5.00%
Projects In Progress, Increased Costs |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Change in contract estimates, (favorable) unfavorable impact on operating results, percent |  |  | 5.00% |  |
Projects In Progress, Increased Costs | Canada Large Renewable Transmission Project |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Change in contract estimates, (favorable) unfavorable impact on operating results, amount |  |  |  | $ 20,900 |
Solar Facility, Increased Costs |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Change in contract estimates, (favorable) unfavorable impact on operating results, amount |  |  | $ 37,000 |  |
Solar Facility, Decreased Productivity |  |  |  |  |
Revenue Recognition [Line Items] |  |  |  |  |
Change in contract estimates, (favorable) unfavorable impact on operating results, amount |  |  | $ 22,600 |  |

X
- Definition Accounts Receivable, Allowance for Credit Loss, (Writeoff) Recovery + References No definition available. + Details
Name: | pwr_AccountsReceivableAllowanceForCreditLossWriteoffRecovery
Namespace Prefix: | pwr_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Contract With Customer, Cumulative Catch-Up Adjustment, Revenue, Change In Estimate, Percent + References No definition available. + Details
Name: | pwr_ContractWithCustomerCumulativeCatchUpAdjustmentRevenueChangeInEstimatePercent
Namespace Prefix: | pwr_
Data Type: | dtr-types1:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Contract With Customer, Cumulative Catch-Up Adjustment To Gross Profit, Change In Estimate + References No definition available. + Details
Name: | pwr_ContractWithCustomerCumulativeCatchUpAdjustmentToGrossProfitChangeInEstimate
Namespace Prefix: | pwr_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Contract With Customer, Cumulative Catch-Up Adjustment, To Gross Profit, Change In Estimate, Percent + References No definition available. + Details
Name: | pwr_ContractWithCustomerCumulativeCatchUpAdjustmentToGrossProfitChangeInEstimatePercent
Namespace Prefix: | pwr_
Data Type: | dtr-types1:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Contract With Customer, Cumulative Catch-Up Adjustment To Gross Profit, No Material Change To Individual Project + References No definition available. + Details
Name: | pwr_ContractWithCustomerCumulativeCatchUpAdjustmentToGrossProfitNoMaterialChangeInEstimateToIndividualProject
Namespace Prefix: | pwr_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Contract With Customer, Liability, Deferred Revenues, Current + References No definition available. + Details
Name: | pwr_ContractWithCustomerLiabilityDeferredRevenuesCurrent
Namespace Prefix: | pwr_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Contract With Customer, Revenue Recognized, Related To Unapproved Change Orders And Claims + References No definition available. + Details
Name: | pwr_ContractWithCustomerRevenueRecognizedRelatedToUnapprovedChangeOrdersAndClaims
Namespace Prefix: | pwr_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Number Of Risk Pools + References No definition available. + Details
Name: | pwr_NumberOfRiskPools
Namespace Prefix: | pwr_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Revenue From Contract With Customer, Percentage Of Revenue Recognized Over Time + References No definition available. + Details
Name: | pwr_RevenueFromContractWithCustomerPercentageOfRevenueRecognizedOverTime
Namespace Prefix: | pwr_
Data Type: | dtr-types1:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Revenue recognition. + References No definition available. + Details
Name: | pwr_RevenueRecognitionLineItems
Namespace Prefix: | pwr_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 42 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-42 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 21 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482907/825-10-50-21 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 20 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482907/825-10-50-20 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 18 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18 Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 20 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20 + Details
Name: | us-gaap_ConcentrationRiskPercentage1
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8 + Details
Name: | us-gaap_ContractWithCustomerLiabilityRevenueRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right to consideration is unconditional, classified as current. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 4 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479837/606-10-45-4 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8 + Details
Name: | us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLossCurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right to consideration is unconditional, classified as noncurrent. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 4 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479837/606-10-45-4 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 45 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479837/606-10-45-1 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-8 + Details
Name: | us-gaap_ContractWithCustomerReceivableAfterAllowanceForCreditLossNoncurrent
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 22 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22 Reference 2: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 55 -Paragraph 48 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482785/280-10-55-48 Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (f) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 30 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30 Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 270 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Subparagraph (i) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482964/270-10-50-1 Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (ee) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 7: http://fasb.org/us-gaap/role/ref/otherTransitionRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 32 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-32 Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 220 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(2)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2 Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 220 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(1)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147483621/220-10-S99-2 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Topic 235 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08(g)(1)(ii)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480678/235-10-S99-1 Reference 11: http://www.xbrl.org/2003/role/disclosureRef -Topic 323 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147481687/323-10-50-3 Reference 12: http://www.xbrl.org/2003/role/disclosureRef -Topic 825 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 28 -Subparagraph (f) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482907/825-10-50-28 Reference 13: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(i)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(ii)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A Reference 15: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(iii)(A)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A Reference 16: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(iv)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A Reference 17: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(5)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1A Reference 18: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(i)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B Reference 19: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iii)(A)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B Reference 20: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iii)(B)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B Reference 21: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iv)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B Reference 22: http://www.xbrl.org/2003/role/disclosureRef -Topic 470 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(5)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480097/470-10-S99-1B Reference 23: http://www.xbrl.org/2003/role/exampleRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 31 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-31 + Details
Name: | us-gaap_GrossProfit
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Unbilled amounts due for services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the entity and, at a minimum, one other party. An example would be amounts associated with contracts or programs where the recognized revenue for performance thereunder exceeds the amounts billed under the terms thereof as of the date of the balance sheet. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 912 -SubTopic 310 -Name Accounting Standards Codification -Section 45 -Paragraph 2 -Publisher FASB -URI https://asc.fasb.org/1943274/2147478345/912-310-45-2 + Details
Name: | us-gaap_UnbilledContractsReceivable
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | us-gaap_LossContingenciesByNatureOfContingencyAxis=pwr_ProjectContractTerminationMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=pwr_FinancialInstrumentsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CreditConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | pwr_CreditRiskGroupAxis=pwr_SecondaryPoolMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=pwr_LimetreeBayRefiningLLCMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=pwr_OneCustomerMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=pwr_RenewableEnergyMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BalanceSheetLocationAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=pwr_ProjectsInProgressMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=pwr_ProjectsInProgressIncreasedCostMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_CapitalizedCostsOfUnprovedPropertiesExcludedFromAmortizationByPropertyOrProjectAxis=pwr_CanadaLargeRenewableTransmissionProjectMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=pwr_SolarFacilityIncreasedCostsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TypeOfArrangementAxis=pwr_SolarFacilityDecreasedProductivityMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |