Contracts in Progress (Tables)  | 
6 Months Ended | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Jun. 30, 2024  | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Contracts in Progress [Abstract] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Billings in Excess of Costs and Estimated Earnings and Costs and Estimated Earnings in Excess of Billings | 
Billings in excess of costs and estimated earnings as of June 30, 2024 and December 31, 2023 are as follows: 
 
 
 
 
 
 
 
 
 Costs and estimated earnings in excess of billings as of June 30, 2024 and December 31, 2023 are as follows: 
 
 
 
  | 
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| X | ||||||||||
- Definition Contracts In Progress [Abstract] No definition available. 
  | 
| X | ||||||||||
- Definition Tabular disclosure of long-term contract or program. No definition available. 
  |