v3.26.1
Revenue - Schedule of Over Time Sales (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        
Over time sales, amount $ 39,713 $ 36,200 $ 66,380 $ 60,440
Over time sales, percentage 28.70% 25.20% 25.60% 25.10%
Over time input method        
Disaggregation of Revenue        
Over time sales, amount $ 11,320 $ 6,884 $ 21,173 $ 14,627
Over time sales, percentage 8.20% 4.80% 8.20% 6.10%
Over time output method        
Disaggregation of Revenue        
Over time sales, amount $ 28,393 $ 29,316 $ 45,207 $ 45,813
Over time sales, percentage 20.50% 20.40% 17.40% 19.00%