v3.25.2
CONDENSED CONSOLIDATED STATEMENTS OF CHANGES IN SHAREHOLDERS' EQUITY (UNAUDITED) - USD ($)
$ in Thousands
Total
Restricted Stock
Share-Based Payment Arrangement, Tranche One
Restricted Stock
Share-Based Payment Arrangement, Tranche Two
Stock Option Awards
Common Stock
Retained Earnings
Accumulated Other Comprehensive Income (Loss)
Beginning balance (in shares) at Dec. 31, 2023         13,304,339    
Beginning balance at Dec. 31, 2023 $ 294,978       $ 130,136 $ 165,310 $ (468)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Net Income 18,396         18,396  
Issuance of restricted stock awards (in shares)         16,698    
Vesting of restricted stock units (in shares)         65,078    
Exercise of stock options (in shares)         67,690    
Exercise of stock options 574       $ 574    
Stock-based compensation 2,279       $ 2,279    
Other comprehensive income (loss), net of tax 466           466
Ending balance (in shares) at Jun. 30, 2024         13,453,805    
Ending balance at Jun. 30, 2024 316,693       $ 132,989 183,706 (2)
Beginning balance (in shares) at Mar. 31, 2024         13,407,320    
Beginning balance at Mar. 31, 2024 303,709       $ 131,601 172,110 (2)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Net Income 11,596         11,596  
Issuance of restricted stock awards (in shares)         16,698    
Vesting of restricted stock units (in shares)         7,237    
Exercise of stock options (in shares)         22,550    
Exercise of stock options 289       $ 289    
Stock-based compensation 1,099       $ 1,099    
Other comprehensive income (loss), net of tax 0            
Ending balance (in shares) at Jun. 30, 2024         13,453,805    
Ending balance at Jun. 30, 2024 316,693       $ 132,989 183,706 (2)
Beginning balance (in shares) at Dec. 31, 2024         14,935,298    
Beginning balance at Dec. 31, 2024 438,704       $ 228,177 210,529 (2)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Net Income 20,758         20,758  
Issuance of restricted stock awards (in shares)         9,713    
Vesting of restricted stock units (in shares)         72,707    
Vesting of restricted stock units, net of 27,383 shares held to cover for taxes (2,381)       $ (2,381)    
Exercise of stock options (in shares)         52,700    
Exercise of stock options, net of 5,720 shares held to cover for exercise and taxes 21       $ 21    
Stock-based compensation 4,534       4,534    
Stock issuance and net proceeds from public offering, adjustment 72       $ 72    
Other comprehensive income (loss), net of tax 1           1
Ending balance (in shares) at Jun. 30, 2025         15,070,418    
Ending balance at Jun. 30, 2025 461,709       $ 230,423 231,287 (1)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Shares held to cover for exercise and taxes (in shares)   326 27,383 5,720      
Beginning balance (in shares) at Mar. 31, 2025         15,009,225    
Beginning balance at Mar. 31, 2025 449,917       $ 229,659 220,259 (1)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Net Income 11,028         11,028  
Issuance of restricted stock awards (in shares)         9,713    
Vesting of restricted stock units (in shares)         17,136    
Vesting of restricted stock units, net of 27,383 shares held to cover for taxes (1,411)       $ (1,411)    
Exercise of stock options (in shares)         34,344    
Exercise of stock options 181       $ 181    
Stock-based compensation 1,994       $ 1,994    
Other comprehensive income (loss), net of tax 0            
Ending balance (in shares) at Jun. 30, 2025         15,070,418    
Ending balance at Jun. 30, 2025 $ 461,709       $ 230,423 $ 231,287 $ (1)
Increase (Decrease) in Stockholders' Equity [Roll Forward]              
Shares held to cover for exercise and taxes (in shares)   326 16,092 1,654