XML 54 R40.htm IDEA: XBRL DOCUMENT v3.22.4
Summary of Significant Accounting Policies and Estimates - Allowance for Credit Losses (Details) - USD ($)
$ in Thousands
12 Months Ended
Dec. 31, 2022
Dec. 31, 2021
Dec. 31, 2020
Allowance for Doubtful Accounts Receivable [Roll Forward]      
Balance at beginning of year $ 10,110 $ 10,709  
Bad debt expense (benefit) 2,670 (1,452) $ 5,253
Deductions for uncollectible receivables written off, net of recoveries (1,206) (986)  
Credit allowance of acquired receivables on the acquisition date 667 1,839  
Balance at end of year 12,241 10,110 10,709
Service      
Allowance for Doubtful Accounts Receivable [Roll Forward]      
Balance at beginning of year 3,294 4,637  
Bad debt expense (benefit) 2,431 (970)  
Deductions for uncollectible receivables written off, net of recoveries (804) (742)  
Credit allowance of acquired receivables on the acquisition date 324 369  
Balance at end of year 5,245 3,294 4,637
Construction      
Allowance for Doubtful Accounts Receivable [Roll Forward]      
Balance at beginning of year 6,758 6,028  
Bad debt expense (benefit) 232 (496)  
Deductions for uncollectible receivables written off, net of recoveries (402) (244)  
Credit allowance of acquired receivables on the acquisition date 343 1,470  
Balance at end of year 6,931 6,758 6,028
Other.      
Allowance for Doubtful Accounts Receivable [Roll Forward]      
Balance at beginning of year 58 44  
Bad debt expense (benefit) 7 14  
Balance at end of year $ 65 $ 58 $ 44