Revenue, Receivables and Contract Assets and Liabilities |
3 Months Ended | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
May 31, 2025 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Revenue from Contract with Customer [Abstract] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Revenue, Receivables and Contract Assets and Liabilities | Revenue, Receivables and Contract Assets and Liabilities Revenue The following table disaggregates total revenue by timing of recognition (see Note 12 for disclosure of revenue by segment):
Revenue is recognized at the time products are shipped from our manufacturing facilities, which is when control is transferred to our customer. Revenue is also recognized over time using an input method and an output method. The contracts for the businesses that recognize revenue following an over-time input method have a single, bundled performance obligation, as these businesses generally provide interrelated products and services and integrate these products and services into a combined output specified by the customer. The customer obtains control of this combined output, generally integrated window systems or installed window and curtainwall systems, over time. We measure progress on these contracts following an input method, by comparing total costs incurred to-date to the total estimated costs for the contract, and record that proportion of the total contract price as revenue in the period. Contract costs include materials, labor and other direct costs related to contract performance. We believe this method of recognizing revenue is consistent with our progress in satisfying our contract obligations. Revenue is also recognized following an over-time output method based upon units produced. The customer is considered to have control over the products at the time of production, as the products are highly customized with no alternative use, and we have an enforceable right to payment for performance completed over the production period. We believe this over-time output method of recognizing revenue reasonably depicts the fulfillment of our performance obligations under our contracts. Receivables Receivables reflected in the financial statements represent the net amount expected to be collected. An allowance for credit losses is established based on expected losses. Expected losses are estimated by reviewing individual accounts, considering aging, financial condition of the debtor, recent payment history, current and forecasted economic conditions and other relevant factors. Upon billing, aging of receivables is monitored until collection. An account is considered current when it is within agreed upon payment terms. An account is written off when it is determined that the asset is no longer collectible.
The following table summarizes the activity in the allowance for credit losses for the three-month period ended:
Contract assets and liabilities Contract assets consist of retainage, costs and earnings in excess of billings and other unbilled amounts typically generated when revenue recognized exceeds the amount billed to the customer. Retainage on construction contracts represents amounts withheld by our customers on long-term projects until the project reaches a level of completion where amounts are released to us from the customer. Contract liabilities consist of billings in excess of costs and earnings and other deferred revenue on contracts. The time period between when performance obligations are complete and payment is due is not significant. In certain parts of our business that recognize revenue over time, progress billings follow an agreed-upon schedule of values.
The changes in contract assets and contract liabilities were mainly due to timing of project activity within our businesses that operate under long-term contracts.
Some of our contracts have an expected duration of longer than a year, with performance obligations extending over that time frame. Generally, these contracts are found in our businesses that typically operate with long-term contracts, which recognize revenue over time. The transaction prices associated with unsatisfied performance obligations at May 31, 2025 are expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:
Long-term contracts are often modified to account for changes in contract specifications and requirements of work to be performed. We consider contract modifications to exist when the modification, generally through a change order, either creates new or changes existing enforceable rights and obligations, and we evaluate these types of modifications to determine whether they may be considered distinct performance obligations. In most cases, these contract modifications are for goods or services that are not distinct from the existing contract, due to the significant integration service provided in the context of the contract. Therefore, these modifications are accounted for as part of the existing contract. The effect of a contract modification on the transaction price and our measure of progress is recognized as an adjustment to revenue, generally on a cumulative catch-up basis. The net cumulative catch-up adjustments on our longer-term contracts for changes in estimates had the following effect on the respective periods shown:
|