v3.26.1
Note 9 - Revenue (Tables)
6 Months Ended
Jun. 30, 2026
Notes Tables  
Disaggregation of Revenue [Table Text Block]
   

Three Months Ended June 30,

   

Six Months Ended June 30,

 
   

2026

   

2025

   

2026

   

2025

 
                                 

Over time

  $ 113,199     $ 84,588     $ 206,652     $ 163,034  

Point in time

    46,277       48,594       91,078       86,263  

Net sales

  $ 159,476     $ 133,182     $ 297,730     $ 249,297