v3.26.1
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2026
Mar. 31, 2026
Jun. 30, 2025
Mar. 31, 2025
Jun. 30, 2026
Jun. 30, 2025
Income Statement [Abstract]            
Revenues $ 195,238   $ 171,956   $ 366,733 $ 341,751
Cost of revenues 170,510   152,427   322,190 304,429
Gross profit 24,728   19,529   44,543 37,322
Selling, general and administrative expenses 23,171   18,732   42,230 35,117
Gain on sale of assets 0   0   (13,957) 0
Operating income (loss) 1,557   797   16,270 2,205
Other (income) expense 893   427   1,782 355
Warrant expense 3,443   0   8,420 0
Loss on extinguishment of debt 1,029   460   2,987 460
Interest expense 2,947   2,291   7,041 4,794
Income (loss) before provision for income taxes (6,755)   (2,381)   (3,960) (3,404)
Provision for income taxes 1,987   1,725   3,880 3,841
Net income (loss) from continuing operations (8,742) $ 902 (4,106) $ (3,139) (7,840) (7,245)
Net income (loss) from discontinued operations - Note 18 (1,500)   (655) $ (1,173) (1,500) (1,828)
Net income (loss) $ (10,242)   $ (4,761)   $ (9,340) $ (9,073)
Basic earnings (loss) per share            
Income (loss) from continuing operations (in dollars per share) $ (0.25)   $ (0.12)   $ (0.23) $ (0.21)
Income (loss) from discontinued operations (in dollars per share) (0.04)   (0.02)   (0.04) (0.05)
Diluted earnings (loss) per share            
Income (loss) from continuing operations (in dollars per share) (0.25)   (0.12)   (0.23) (0.21)
Income (loss) from discontinued operations (in dollars per share) $ (0.04)   $ (0.02)   $ (0.04) $ (0.05)
Weighted average shares outstanding:            
Basic (in shares) 34,769   33,799   34,481 33,747
Diluted (in shares) 34,769   33,799   34,481 33,747