| Schedule of Comprehensive Income |
Comprehensive income consists of the following: | | | | | | | | | | | | | | | | | | | | | | | | | Three Months Ended June 30, | | Six Months Ended June 30, | | | 2026 | | 2025 | | 2026 | | 2025 | Net income | $ | 23,071 | | | $ | 21,421 | | | $ | 36,899 | | | $ | 27,457 | | | | | | | | | | Other comprehensive income (loss): | | | | | | | | Cash flow hedging gain (loss), net of income tax (income tax expense (benefit) of $766 and $(2,188) for the three months ended June 30, 2026 and 2025, respectively, and $1,746 and $(3,361) for the six months ended June 30, 2026 and 2025, respectively) | 2,394 | | | (6,840) | | | 5,456 | | | (10,508) | | Pension liability, net of income tax (income tax expense of $68 and $86 for the three months ended June 30, 2026 and 2025, respectively, and $136 and $172 for the six months ended June 30, 2026 and 2025, respectively) | 213 | | | 268 | | | 426 | | | 536 | | | Foreign currency translation adjustment | (1,292) | | | 10,986 | | | (2,959) | | | 15,851 | | | | | | | | | | Comprehensive income | $ | 24,386 | | | $ | 25,835 | | | $ | 39,822 | | | $ | 33,336 | |
|
| Schedule of Accumulated Other Comprehensive Loss |
Accumulated other comprehensive loss consists of the following:
| | | | | | | | | | | | | | | | | | | | | | | | | Cash Flow Hedging Gain (Loss) | | Pension Liability | | Cumulative Translation Adjustments | | Accumulated Other Comprehensive Loss | | Balance, December 31, 2025 | $ | (905) | | | $ | (14,287) | | | $ | (31,103) | | | $ | (46,295) | | | | | | | | | | | Other comprehensive income (loss) before reclassifications, net of tax | 5,945 | | | — | | | (2,959) | | | 2,986 | | Amounts reclassified from accumulated other comprehensive income (loss) before taxa | (646) | | | 563 | | | — | | | (83) | | | Income tax | 157 | | | (137) | | | — | | | 20 | | | | | | | | | | Net current-period other comprehensive income (loss) | 5,456 | | | 426 | | | (2,959) | | | 2,923 | | | | | | | | | | | Balance, June 30, 2026 | $ | 4,551 | | | $ | (13,861) | | | $ | (34,062) | | | $ | (43,372) | |
| | | | | | | | | | | | | | | | | | | | | | | | | Cash Flow Hedging Gain (Loss) | | Pension Liability | | Cumulative Translation Adjustments | | Accumulated Other Comprehensive Loss | | Balance, December 31, 2024 | $ | 4,297 | | | $ | (16,880) | | | $ | (46,274) | | | $ | (58,857) | | | | | | | | | | Other comprehensive gain (loss) before reclassifications, net of tax | (10,306) | | | — | | | 15,851 | | | 5,545 | | Amounts reclassified from accumulated other comprehensive income (loss) before taxa | (266) | | | 708 | | | — | | | 442 | | | Income tax | 64 | | | (172) | | | — | | | (108) | | | | | | | | | | Net current-period other comprehensive income (loss) | (10,508) | | | 536 | | | 15,851 | | | 5,879 | | | | | | | | | | | Balance, June 30, 2025 | $ | (6,211) | | | $ | (16,344) | | | $ | (30,423) | | | $ | (52,978) | |
(a) The cash flow hedging gain (loss) and pension liability accumulated other comprehensive loss components are included in sales or cost of sales and as a component of net periodic pension cost, respectively. Refer to Note 6 and Note 12, respectively, for further details.
|