Condensed Consolidated Statements of Stockholders' Equity and Redeemable Noncontrolling Interest (Unaudited) - USD ($) shares in Thousands, $ in Thousands |
Retained Earnings [Member]
Common Class A [Member]
|
Retained Earnings [Member]
Common Class B [Member]
|
Retained Earnings [Member] |
AOCI Attributable to Parent [Member] |
Common Stock Outstanding [Member]
Common Class A [Member]
|
Common Stock Outstanding [Member]
Common Class B [Member]
|
Treasury Stock, Common [Member] |
Additional Paid-in Capital [Member] |
Noncontrolling Interest [Member] |
Common Class A [Member] |
Common Class B [Member] |
Total |
Balance at Dec. 31, 2023 |
|
|
$ 307,510
|
$ (12,037)
|
$ 214
|
$ 1,065
|
$ (454)
|
$ 44,260
|
$ 0
|
|
|
$ 340,558
|
Balance (in shares) at Dec. 31, 2023 |
|
|
|
|
2,142
|
10,620
|
|
|
|
|
|
|
Net earnings |
|
|
15,874
|
0
|
$ 0
|
|
|
0
|
0
|
|
|
15,874
|
Cash dividends declared on common stock |
$ (129)
|
$ (747)
|
|
|
|
|
|
|
|
$ (129)
|
$ (747)
|
|
Issuance of restricted common stock |
|
|
0
|
0
|
$ 0
|
$ 58
|
|
$ (6)
|
$ 0
|
|
|
$ 0
|
Issuance of restricted common stock (in shares) |
|
|
|
|
|
6
|
0
|
|
|
|
|
|
Forfeiture of restricted common stock (in shares) |
|
|
|
|
0
|
(6)
|
|
0
|
0
|
|
|
0
|
Foreign currency translation adjustment, net of taxes |
|
|
0
|
(3,776)
|
$ 0
|
|
|
$ 0
|
$ 0
|
|
|
$ (3,776)
|
Unrealized losses on interest rate swap cash flow hedge, net of taxes |
|
|
|
340
|
|
|
|
|
|
|
|
340
|
Stock-based compensation expense |
|
|
0
|
0
|
0
|
|
|
804
|
0
|
|
|
804
|
Change in unfunded SERP liability, net of taxes |
|
|
0
|
15
|
0
|
|
|
$ 0
|
$ 0
|
|
|
$ 15
|
Forfeiture of restricted common stock |
|
|
0
|
0
|
$ 0
|
$ 0
|
$ 0
|
|
|
|
|
|
Forfeiture of restricted common stock (in shares) |
|
|
|
|
0
|
(6)
|
|
0
|
0
|
|
|
0
|
Forfeiture of restricted common stock |
|
|
0
|
0
|
$ 0
|
$ 0
|
0
|
|
|
|
|
|
Purchases of common stock |
|
|
0
|
0
|
$ (1)
|
$ (10)
|
(6,283)
|
|
|
|
|
$ (6,283)
|
Purchases of common stock (in shares) |
|
|
|
|
(11)
|
(98)
|
|
|
|
|
|
|
Purchases of common stock |
|
|
|
|
|
|
|
$ 11
|
|
|
|
|
Unrealized holding gains on marketable securities, net of taxes |
|
|
0
|
1
|
$ 0
|
|
|
0
|
0
|
|
|
1
|
Net earnings |
|
|
15,874
|
0
|
0
|
|
|
0
|
0
|
|
|
15,874
|
Forfeiture of restricted common stock |
|
|
(0)
|
(0)
|
(0)
|
$ (0)
|
(0)
|
|
|
|
|
|
Balance at Mar. 31, 2024 |
|
|
322,508
|
(15,457)
|
$ 213
|
$ 1,061
|
(6,737)
|
45,069
|
0
|
|
|
346,657
|
Balance (in shares) at Mar. 31, 2024 |
|
|
|
|
2,131
|
10,574
|
|
|
|
|
|
|
Balance at Dec. 31, 2023 |
|
|
307,510
|
(12,037)
|
$ 214
|
$ 1,065
|
(454)
|
44,260
|
0
|
|
|
340,558
|
Balance (in shares) at Dec. 31, 2023 |
|
|
|
|
2,142
|
10,620
|
|
|
|
|
|
|
Cash dividends declared on common stock |
|
|
|
|
|
|
|
|
|
(256)
|
(1,472)
|
|
Foreign currency translation adjustment, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
(4,775)
|
Unrealized losses on interest rate swap cash flow hedge, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
49
|
Change in unfunded SERP liability, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
30
|
Unrealized holding gains on marketable securities, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
1
|
Balance at Jun. 30, 2024 |
|
|
340,462
|
(16,732)
|
$ 212
|
$ 1,048
|
(14,629)
|
46,054
|
0
|
|
|
356,415
|
Balance (in shares) at Jun. 30, 2024 |
|
|
|
|
2,121
|
10,453
|
|
|
|
|
|
|
Balance at Mar. 31, 2024 |
|
|
322,508
|
(15,457)
|
$ 213
|
$ 1,061
|
$ (6,737)
|
45,069
|
0
|
|
|
346,657
|
Balance (in shares) at Mar. 31, 2024 |
|
|
|
|
2,131
|
10,574
|
|
|
|
|
|
|
Net earnings |
|
|
18,806
|
0
|
$ 0
|
|
|
0
|
0
|
|
|
18,806
|
Cash dividends declared on common stock |
(127)
|
(725)
|
|
|
|
|
|
|
|
(127)
|
(725)
|
|
Forfeiture of restricted common stock (in shares) |
|
|
|
|
|
(1)
|
0
|
|
|
|
|
|
Foreign currency translation adjustment, net of taxes |
|
|
0
|
(999)
|
0
|
|
|
0
|
0
|
|
|
(999)
|
Unrealized losses on interest rate swap cash flow hedge, net of taxes |
|
|
|
(291)
|
|
|
|
|
0
|
|
|
(291)
|
Stock-based compensation expense |
|
|
0
|
0
|
0
|
|
|
971
|
0
|
|
|
971
|
Change in unfunded SERP liability, net of taxes |
|
|
0
|
15
|
0
|
|
|
0
|
0
|
|
|
15
|
Forfeiture of restricted common stock |
|
|
0
|
0
|
0
|
$ (4)
|
|
|
|
|
|
|
Forfeiture of restricted common stock (in shares) |
|
|
|
|
|
(1)
|
0
|
|
|
|
|
|
Forfeiture of restricted common stock |
|
|
|
|
|
|
|
2
|
0
|
|
|
1
|
Forfeiture of restricted common stock |
|
|
0
|
0
|
0
|
$ (4)
|
|
|
|
|
|
|
Purchases of common stock |
|
|
0
|
0
|
$ (1)
|
$ (12)
|
$ (7,892)
|
|
0
|
|
|
(7,893)
|
Purchases of common stock (in shares) |
|
|
|
|
(10)
|
(117)
|
|
|
|
|
|
|
Purchases of common stock |
|
|
|
|
|
|
|
12
|
|
|
|
|
Unrealized holding gains on marketable securities, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
0
|
Net earnings |
|
|
18,806
|
0
|
$ 0
|
|
|
0
|
0
|
|
|
18,806
|
Forfeiture of restricted common stock |
|
|
0
|
(0)
|
(0)
|
$ 4
|
|
|
|
|
|
|
Forfeiture of restricted common stock |
|
|
|
|
|
|
|
2
|
0
|
|
|
1
|
Balance at Jun. 30, 2024 |
|
|
340,462
|
(16,732)
|
$ 212
|
$ 1,048
|
$ (14,629)
|
46,054
|
0
|
|
|
356,415
|
Balance (in shares) at Jun. 30, 2024 |
|
|
|
|
2,121
|
10,453
|
|
|
|
|
|
|
Balance at Dec. 31, 2024 |
|
|
345,031
|
(17,227)
|
$ 212
|
$ 1,046
|
|
31,514
|
80,586
|
|
|
360,576
|
Balance (in shares) at Dec. 31, 2024 |
|
|
|
|
2,115
|
10,425
|
|
|
|
|
|
|
Redemption value adjustment attributable to noncontrolling interest |
|
|
0
|
|
|
|
|
|
(390)
|
|
|
|
Net earnings |
|
|
17,874
|
|
|
|
|
|
838
|
|
|
17,874
|
Cash dividends declared on common stock |
(127)
|
(737)
|
|
|
|
|
|
|
|
(127)
|
(737)
|
|
Issuance of restricted common stock |
|
|
|
|
|
$ 13
|
|
(13)
|
|
|
|
0
|
Issuance of restricted common stock (in shares) |
|
|
|
|
|
129
|
|
|
|
|
|
|
Forfeiture of restricted common stock (in shares) |
|
|
|
|
|
(2)
|
|
|
|
|
|
|
Foreign currency translation adjustment, net of taxes |
|
|
|
(1,248)
|
|
|
|
|
|
|
|
(1,248)
|
Unrealized losses on interest rate swap cash flow hedge, net of taxes |
|
|
|
(588)
|
|
|
|
|
|
|
|
(588)
|
Stock-based compensation expense |
|
|
|
|
|
|
|
1,179
|
|
|
|
1,179
|
Change in unfunded SERP liability, net of taxes |
|
|
|
(28)
|
|
|
|
|
|
|
|
(28)
|
Forfeiture of restricted common stock (in shares) |
|
|
|
|
|
(2)
|
|
|
|
|
|
|
Net earnings |
|
|
17,874
|
|
|
|
|
|
838
|
|
|
17,874
|
Balance at Mar. 31, 2025 |
|
|
362,041
|
(19,091)
|
$ 212
|
$ 1,059
|
|
32,680
|
81,034
|
|
|
376,901
|
Balance (in shares) at Mar. 31, 2025 |
|
|
|
|
2,115
|
10,552
|
|
|
|
|
|
|
Balance at Dec. 31, 2024 |
|
|
345,031
|
(17,227)
|
$ 212
|
$ 1,046
|
|
31,514
|
80,586
|
|
|
360,576
|
Balance (in shares) at Dec. 31, 2024 |
|
|
|
|
2,115
|
10,425
|
|
|
|
|
|
|
Cash dividends declared on common stock |
|
|
|
|
|
|
|
|
|
(254)
|
(1,477)
|
|
Foreign currency translation adjustment, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
(708)
|
Unrealized losses on interest rate swap cash flow hedge, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
(974)
|
Change in unfunded SERP liability, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
(55)
|
Unrealized holding gains on marketable securities, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
0
|
Balance at Jun. 30, 2025 |
|
|
388,035
|
(18,964)
|
$ 212
|
$ 1,058
|
|
34,402
|
80,966
|
|
|
404,743
|
Balance (in shares) at Jun. 30, 2025 |
|
|
|
|
2,115
|
10,549
|
|
|
|
|
|
|
Balance at Mar. 31, 2025 |
|
|
362,041
|
(19,091)
|
$ 212
|
$ 1,059
|
|
32,680
|
81,034
|
|
|
376,901
|
Balance (in shares) at Mar. 31, 2025 |
|
|
|
|
2,115
|
10,552
|
|
|
|
|
|
|
Redemption value adjustment attributable to noncontrolling interest |
|
|
|
|
|
|
|
|
(890)
|
|
|
0
|
Net earnings |
|
|
26,861
|
0
|
$ 0
|
$ 0
|
|
0
|
822
|
|
|
26,861
|
Cash dividends declared on common stock |
$ (127)
|
$ (740)
|
|
|
|
|
|
|
|
$ (127)
|
$ (740)
|
|
Forfeiture of restricted common stock (in shares) |
|
|
|
|
|
(3)
|
|
|
|
|
|
|
Foreign currency translation adjustment, net of taxes |
|
|
0
|
540
|
0
|
$ 0
|
|
0
|
0
|
|
|
540
|
Unrealized losses on interest rate swap cash flow hedge, net of taxes |
|
|
0
|
(386)
|
0
|
0
|
|
0
|
0
|
|
|
(386)
|
Stock-based compensation expense |
|
|
0
|
0
|
0
|
0
|
|
1,721
|
0
|
|
|
1,721
|
Change in unfunded SERP liability, net of taxes |
|
|
0
|
(27)
|
0
|
0
|
|
0
|
0
|
|
|
(27)
|
Forfeiture of restricted common stock |
|
|
|
|
|
$ (1)
|
|
|
|
|
|
|
Forfeiture of restricted common stock (in shares) |
|
|
|
|
|
(3)
|
|
|
|
|
|
|
Forfeiture of restricted common stock |
|
|
|
|
|
|
|
(1)
|
|
|
|
|
Forfeiture of restricted common stock |
|
|
|
|
|
$ (1)
|
|
|
|
|
|
|
Unrealized holding gains on marketable securities, net of taxes |
|
|
|
|
|
|
|
|
|
|
|
0
|
Net earnings |
|
|
26,861
|
0
|
0
|
0
|
|
0
|
822
|
|
|
26,861
|
Forfeiture of restricted common stock |
|
|
|
|
|
1
|
|
|
|
|
|
|
Forfeiture of restricted common stock |
|
|
|
|
|
|
|
(1)
|
|
|
|
|
Balance at Jun. 30, 2025 |
|
|
$ 388,035
|
$ (18,964)
|
$ 212
|
$ 1,058
|
|
$ 34,402
|
$ 80,966
|
|
|
$ 404,743
|
Balance (in shares) at Jun. 30, 2025 |
|
|
|
|
2,115
|
10,549
|
|
|
|
|
|
|