v3.26.1
Share based awards (Tables)
6 Months Ended
Jun. 30, 2026
Share-Based Payment Arrangement [Abstract]  
Schedule of Stock Option Activity
The following table summarizes option activity for the six months ended June 30, 2026:
 Options
Outstanding
Number of Shares 
Weighted
Average
Exercise
Price
Weighted
Average
Remaining
Contractual
Life
Outstanding at December 31, 2025639,184 $179.12 3.90
Granted— — 
Exercised(22,693)$117.69 
Expired(31,560)$116.06 
Outstanding at June 30, 2026584,931 $184.91 3.59
Exercisable at June 30, 2026508,795 $179.86 3.23
Schedule of Weighted Average Fair Values and Assumptions Used The weighted average grant date fair values and assumptions used were as follows:
Six Months Ended
June 30,
2026
June 30,
2025
Weighted average grant date fair value$— $64.42 
Assumptions:  
Expected volatility— 35 %
Dividend yield— — %
Risk-free interest rate— 4.00 %
Expected life— 4.4 years
Schedule of RSU and PSU Activity The following table summarizes RSU and PSU activity for the six months ended June 30, 2026:
PSU
Outstanding
Number of
Shares
PSU
Weighted
Average Grant Date
Fair Value
RSU
Outstanding
Number of
Shares
RSU
Weighted
Average Grant Date
Fair Value
Outstanding at December 31, 202516,474 $185.18 1,476,169 $162.53 
Granted— — — — 
Shares vested— — (564,191)$132.81 
Cash Settled— — (18,470)$127.17 
Forfeited(6,177)$185.18 (64,869)$180.69 
Outstanding at June 30, 202610,297 $185.18 828,639 $182.14 
Schedule of Stock Compensation Expense
Stock compensation expense for the three and six months ended June 30, 2026 and June 30, 2025 has been allocated as follows:
Three Months EndedSix Months Ended
June 30,
2026
June 30,
2025
June 30,
2026
June 30,
2025
(in thousands)
Direct costs$12,422 $9,290 $30,718 $14,671 
Selling, general and administrative7,014 6,143 15,700 13,056 
Total$19,436 $15,433 $46,418 $27,727