v3.26.1
Revenue from Contracts with Customers (Details) - USD ($)
$ in Thousands
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]          
Contract assets $ 19,947   $ 19,947   $ 8,308
Contract liabilities 65,643   65,643   37,117
Beginning balance of contract liabilities and deferred revenue was recognized as revenue 16,400 $ 2,400 22,200 $ 6,900  
Revenue recognized as previous period performance obligations satisfied 100 $ 100 (600) $ (400)  
Engineering          
Disaggregation of Revenue [Line Items]          
Contract assets 12,500   12,500   8,300
Contract liabilities 63,100   63,100   $ 37,100
Data Center          
Disaggregation of Revenue [Line Items]          
Contract assets 7,400   7,400    
Contract liabilities $ 2,500   $ 2,500