XML 66 R53.htm IDEA: XBRL DOCUMENT v3.22.4
Concentration of Risk and Enterprise-Wide Disclosures (Details)
$ in Thousands
12 Months Ended
Dec. 31, 2022
USD ($)
customer
Dec. 31, 2021
USD ($)
customer
Dec. 31, 2020
USD ($)
customer
Concentration Risk [Line Items]      
Allowance for credit losses $ (606) $ (323)  
Contract revenues $ 748,322 $ 601,360 $ 709,942
Foreign      
Concentration Risk [Line Items]      
Contract revenues, percent 0.90% 0.50% 1.80%
Customer concentration risk | Trade and contract retainage receivables      
Concentration Risk [Line Items]      
Gross receivables $ 158,237 $ 129,875  
Allowance for credit losses (606) (323)  
Net receivables $ 157,631 $ 129,552  
Number of customers exceeding the 10% benchmark percentage | customer 0 0  
Concentration risk, percentage 100.00% 100.00%  
Customer concentration risk | Contract revenues      
Concentration Risk [Line Items]      
Number of customers exceeding the 10% benchmark percentage | customer 0 0  
Contract revenues $ 748,322 $ 601,360 $ 709,942
Concentration risk, percentage 100.00% 100.00% 100.00%
Customer concentration risk | Federal Government | Trade and contract retainage receivables      
Concentration Risk [Line Items]      
Gross receivables $ 4,612 $ 6,563  
Concentration risk, percentage 3.00% 5.00%  
Customer concentration risk | Federal Government | Contract revenues      
Concentration Risk [Line Items]      
Contract revenues $ 80,116 $ 54,480 $ 51,793
Concentration risk, percentage 11.00% 9.00% 7.00%
Customer concentration risk | State Governments | Trade and contract retainage receivables      
Concentration Risk [Line Items]      
Gross receivables $ 3,111 $ 61  
Concentration risk, percentage 2.00%    
Customer concentration risk | State Governments | Contract revenues      
Concentration Risk [Line Items]      
Contract revenues $ 62,516 $ 4,790 $ 27,574
Concentration risk, percentage 8.00% 1.00% 4.00%
Customer concentration risk | Local Governments | Trade and contract retainage receivables      
Concentration Risk [Line Items]      
Gross receivables $ 16,197 $ 11,923  
Concentration risk, percentage 10.00% 9.00%  
Customer concentration risk | Local Governments | Contract revenues      
Concentration Risk [Line Items]      
Number of customers exceeding the 10% benchmark percentage | customer     1
Contract revenues $ 125,015 $ 120,311 $ 202,839
Concentration risk, percentage 17.00% 20.00% 29.00%
Customer concentration risk | Local Governments | Contract revenues | Customer One      
Concentration Risk [Line Items]      
Concentration risk, percentage     11.40%
Customer concentration risk | Private Companies | Trade and contract retainage receivables      
Concentration Risk [Line Items]      
Gross receivables $ 134,317 $ 111,328  
Concentration risk, percentage 85.00% 86.00%  
Customer concentration risk | Private Companies | Contract revenues      
Concentration Risk [Line Items]      
Contract revenues $ 480,675 $ 421,779 $ 427,736
Concentration risk, percentage 64.00% 70.00% 60.00%