XML 88 R73.htm IDEA: XBRL DOCUMENT v3.24.0.1
Construction Contracts - Additional Information (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2023
Dec. 31, 2022
Dec. 31, 2021
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Construction receivables retentions $ 28,700 $ 8,300  
Billing in excess of construction contract costs $ 21,414 17,515 $ 4,881
Minimum | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Expected completion of contracts 12 months    
Maximum | Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-01-01      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Expected completion of contracts 24 months    
Construction      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Billing in excess of construction contract costs $ 38,200 24,700  
Portion Attributable To Pending Contracts      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]      
Deferred precontract costs 1,900 1,300  
Amortization of pre-contract costs $ 200 $ 1,100