v3.26.1
REVENUE FROM CUSTOMERS - Narrative (Details) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Jun. 30, 2026
Jun. 30, 2025
Jun. 30, 2026
Jun. 30, 2025
Dec. 31, 2025
Disaggregation of Revenue [Line Items]          
Contracts receivable unpaid project contract price $ 2.9   $ 2.9   $ 2.9
Increase on revenue from performance obligations satisfied in previous period $ 83.1 $ 42.0 $ 138.9 $ 72.5  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-07-01          
Disaggregation of Revenue [Line Items]          
Remaining performance obligation expected to be recognized over next twelve months 74.00%   74.00%    
Remaining performance obligation period 12 months   12 months    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-07-01          
Disaggregation of Revenue [Line Items]          
Remaining performance obligation period      
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-07-01 | Minimum          
Disaggregation of Revenue [Line Items]          
Remaining performance obligation period 12 months   12 months    
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-07-01 | Maximum          
Disaggregation of Revenue [Line Items]          
Remaining performance obligation period 24 months   24 months