v3.26.1
REVENUE RECOGNITION - Schedule of Revenue Disaggregated by Major Source (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Jun. 30, 2026
Jun. 30, 2025
Disaggregation of Revenue [Line Items]        
Total revenues $ 54,941 $ 35,541 $ 105,002 $ 67,407
Transferred Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 27,770   54,757  
Transferred At Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 27,171   50,245  
Revenue from RPO Customers        
Disaggregation of Revenue [Line Items]        
Revenues 17,079   33,903  
Revenue from Contracting Customers        
Disaggregation of Revenue [Line Items]        
Revenues 19,306   37,487  
Revenue from Other Contracts with Customers        
Disaggregation of Revenue [Line Items]        
Revenues 18,556   33,612  
Building Solutions        
Disaggregation of Revenue [Line Items]        
Total revenues 14,612   26,210  
Building Solutions | Transferred Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 0   0  
Building Solutions | Transferred At Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 14,612   26,210  
Building Solutions | Revenue from RPO Customers        
Disaggregation of Revenue [Line Items]        
Revenues 0   0  
Building Solutions | Revenue from Contracting Customers        
Disaggregation of Revenue [Line Items]        
Revenues 0   0  
Building Solutions | Revenue from Other Contracts with Customers        
Disaggregation of Revenue [Line Items]        
Revenues 14,612   26,210  
Business Services        
Disaggregation of Revenue [Line Items]        
Total revenues 36,385 35,541 71,390 67,407
Business Services | Transferred Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 25,375 25,535 49,678 48,655
Business Services | Transferred At Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 11,010 10,006 21,712 18,752
Business Services | Revenue from RPO Customers        
Disaggregation of Revenue [Line Items]        
Revenues 17,079 17,428 33,903 33,170
Business Services | Revenue from Contracting Customers        
Disaggregation of Revenue [Line Items]        
Revenues 19,306 $ 18,113 37,487 $ 34,237
Business Services | Revenue from Other Contracts with Customers        
Disaggregation of Revenue [Line Items]        
Revenues 0   0  
Energy Services        
Disaggregation of Revenue [Line Items]        
Total revenues 3,944   7,402  
Energy Services | Transferred Over Time        
Disaggregation of Revenue [Line Items]        
Revenues 2,395   5,079  
Energy Services | Transferred At Point In Time        
Disaggregation of Revenue [Line Items]        
Revenues 1,549   2,323  
Energy Services | Revenue from RPO Customers        
Disaggregation of Revenue [Line Items]        
Revenues 0   0  
Energy Services | Revenue from Contracting Customers        
Disaggregation of Revenue [Line Items]        
Revenues 0   0  
Energy Services | Revenue from Other Contracts with Customers        
Disaggregation of Revenue [Line Items]        
Revenues $ 3,944   $ 7,402