Quarterly report [Sections 13 or 15(d)]

Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Disaggregation of Revenue (Details)

v3.25.2
Revenue, Contract Assets and Liabilities and Other Contract Matters - Summary of Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2025
Jun. 30, 2024
Jun. 30, 2025
Jun. 30, 2024
Disaggregation of Revenue [Line Items]        
Revenue $ 37,538 $ 41,262 $ 77,811 $ 84,143
Long-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue 13,760 18,203 33,444 34,819
Short-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue 23,778 23,059 44,367 49,324
Eliminations        
Disaggregation of Revenue [Line Items]        
Revenue (285) (268) (561) (468)
Eliminations | Long-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue (9) (3) (78) (3)
Eliminations | Short-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue (276) (265) (483) (465)
Services | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue 21,978 22,767 41,833 48,301
Services | Operating Segments | Long-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue 141 514 359 763
Services | Operating Segments | Short-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue 21,837 22,253 41,474 47,538
Fabrication | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue 15,845 18,727 36,539 35,865
Fabrication | Operating Segments | Long-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue 13,628 17,656 33,163 33,614
Fabrication | Operating Segments | Short-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue 2,217 1,071 3,376 2,251
Shipyard Division | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue   36   445
Shipyard Division | Operating Segments | Long-Term Contract with Customer        
Disaggregation of Revenue [Line Items]        
Revenue   36   445
Fixed-price and unit-rate        
Disaggregation of Revenue [Line Items]        
Revenue 7,896 17,229 19,080 33,762
Fixed-price and unit-rate | Eliminations        
Disaggregation of Revenue [Line Items]        
Revenue (9) (3) (78) (3)
Fixed-price and unit-rate | Services | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue 141 514 359 763
Fixed-price and unit-rate | Fabrication | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue 7,764 16,682 18,799 32,557
Fixed-price and unit-rate | Shipyard Division | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue   36   445
Time And Materials And Cost Reimbursable        
Disaggregation of Revenue [Line Items]        
Revenue 28,987 23,634 56,835 49,624
Time And Materials And Cost Reimbursable | Services | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue 20,906 21,589 39,095 46,316
Time And Materials And Cost Reimbursable | Fabrication | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue 8,081 2,045 17,740 3,308
Other        
Disaggregation of Revenue [Line Items]        
Revenue 655 399 1,896 757
Other | Eliminations        
Disaggregation of Revenue [Line Items]        
Revenue (276) (265) (483) (465)
Other | Services | Operating Segments        
Disaggregation of Revenue [Line Items]        
Revenue $ 931 $ 664 $ 2,379 $ 1,222