v3.26.3
Operating Segments (Tables)
9 Months Ended
Sep. 30, 2026
Segment Reporting [Abstract]  
Schedule of Condensed Consolidated Segment Information
Condensed consolidated segment information for the three and nine months ended September 30, 2026 and 2025 were as follows:
Three Months Ended
September 30,
Nine Months Ended
September 30,
(in thousands)2026202520262025
Statement of Operations Data:
Revenue:
ODR$150,650 $141,382 $378,875 $340,723 
GCR79,810 43,201 163,901 119,209 
Total revenue230,460 184,583 542,776 459,932 
Cost of revenue:
ODR112,441 105,703 286,922 247,294 
GCR64,179 34,195 133,551 91,408 
Total cost of revenue176,620 139,898 420,473 338,702 
Gross profit:
ODR38,209 35,679 91,953 93,429 
GCR15,631 9,006 30,350 27,801 
Total gross profit53,840 44,685 122,303 121,230 
Selling, general and administrative(1)
34,591 28,330 90,821 81,480 
Acquisition-related retention expense and contingent consideration571 610 950 1,832 
Amortization of intangibles3,615 2,400 7,084 6,020 
Operating income$15,063 $13,345 $23,448 $31,898 
Other (expenses) income:
Interest expense(1,243)(1,223)(2,717)(2,312)
Interest income96 88 112 792 
Gain on disposition of property and equipment129 367 448 1,107 
Loss on early debt extinguishment(250)— (250)— 
(Loss) gain on change in fair value of interest rate swap(6)(22)54 (175)
Total other expenses(1,274)(790)(2,353)(588)
Income before income taxes$13,789 $12,555 $21,095 $31,310 
(1)    Included within selling, general and administrative expenses was $1.6 million and $1.9 million of non-cash stock-based compensation expense for the three months ended September 30, 2026 and 2025, respectively, and $5.5 million and $5.2 million for the nine months ended September 30, 2026 and 2025, respectively.