XML 14 R2.htm IDEA: XBRL DOCUMENT v3.21.2
UNAUDITED CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS AND COMPREHENSIVE INCOME - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2021
Jun. 30, 2020
Jun. 30, 2021
Jun. 30, 2020
Income Statement [Abstract]        
Revenue $ 403,614 $ 343,020 $ 766,839 $ 678,228
Direct costs 284,683 245,659 549,226 486,343
Gross profit 118,931 97,361 217,613 191,885
Selling, general and administrative expenses 84,616 80,546 162,645 159,762
Depreciation and amortization 1,192 1,380 2,394 2,773
Income from operations 33,123 15,435 52,574 29,350
Other expense, net 3,112 1,427 4,397 2,808
Income from operations, before income taxes 30,011 14,008 48,177 26,542
Income tax expense 8,823 4,123 13,728 7,551
Net income 21,188 9,885 34,449 18,991
Other comprehensive income (loss), net of tax:        
Defined benefit pension plans 3,056 0 3,103 0
Change in fair value of interest rate swaps 10 (470) 949 (1,591)
Comprehensive income $ 24,254 $ 9,415 $ 38,501 $ 17,400
Earnings per share – basic (in dollars per share) $ 1.02 $ 0.48 $ 1.66 $ 0.90
Earnings per share - diluted (in dollars per share) $ 1.00 $ 0.47 $ 1.61 $ 0.89
Weighted average shares outstanding – basic (in shares) 20,673 20,790 20,802 21,171
Weighted average shares outstanding – diluted (in shares) 21,282 21,078 21,331 21,469