Note 13 - Industry, Segment and Geographic Financial Information (Tables)
|
12 Months Ended |
Dec. 31, 2024 |
Notes Tables |
|
Schedule of Segment Reporting Information, by Segment [Table Text Block] |
|
|
Year ended |
|
|
|
December 31, |
|
|
|
2024 |
|
|
2023 |
|
Net Sales: |
|
|
|
|
|
|
Distribution |
|
$ |
441,940 |
|
|
$ |
325,262 |
|
Solutions |
|
|
23,667 |
|
|
|
26,751 |
|
|
|
|
465,607 |
|
|
|
352,013 |
|
Cost of Sales: |
|
|
|
|
|
|
Distribution |
|
$ |
363,648 |
|
|
$ |
271,899 |
|
Solutions |
|
|
10,879 |
|
|
|
15,867 |
|
|
|
|
374,527 |
|
|
|
287,766 |
|
Direct Costs: |
|
|
|
|
|
|
Distribution |
|
$ |
31,888 |
|
|
$ |
22,467 |
|
Solutions |
|
|
5,455 |
|
|
|
5,238 |
|
|
|
|
37,343 |
|
|
|
27,705 |
|
Segment Income: (1) |
|
|
|
|
|
|
Distribution |
|
$ |
46,404 |
|
|
$ |
30,896 |
|
Solutions |
|
|
7,333 |
|
|
|
5,646 |
|
Segment Income |
|
|
53,737 |
|
|
|
36,542 |
|
|
|
|
|
|
|
|
General and administrative |
|
$ |
19,165 |
|
|
$ |
16,625 |
|
Acquisition related costs |
|
|
2,311 |
|
|
|
629 |
|
Depreciation and amortization expense |
|
|
4,269 |
|
|
|
2,798 |
|
Interest, net |
|
|
917 |
|
|
|
927 |
|
Foreign currency transaction loss |
|
|
(273 |
) |
|
|
(636 |
) |
Change in fair value of acquisition contingent consideration |
|
|
3,618 |
|
|
|
— |
|
Income before taxes |
|
$ |
25,018 |
|
|
$ |
16,781 |
|
|
|
As of |
|
|
As of |
|
|
|
December 31, |
|
|
December 31, |
|
Selected Assets by Segment: |
|
2024 |
|
|
2023 |
|
|
|
|
|
|
|
|
Distribution |
|
$ |
394,809 |
|
|
$ |
242,927 |
|
Solutions |
|
|
21,882 |
|
|
|
37,992 |
|
Segment Select Assets |
|
|
416,691 |
|
|
|
280,919 |
|
Corporate Assets |
|
|
52,488 |
|
|
|
54,179 |
|
Total Assets |
|
$ |
469,179 |
|
|
$ |
335,098 |
|
|
Schedule of Revenue from External Customers and Long-Lived Assets, by Geographical Areas [Table Text Block] |
|
|
Year ended |
|
|
|
December 31, 2024 |
|
|
|
Distribution |
|
|
Solutions |
|
|
Total |
|
Geography |
|
|
|
|
|
|
|
|
|
|
|
USA |
|
$ |
333,197 |
|
|
$ |
8,652 |
|
|
$ |
341,849 |
|
Europe and United Kingdom |
|
|
82,039 |
|
|
|
13,889 |
|
|
|
95,928 |
|
Canada |
|
|
26,704 |
|
|
|
1,126 |
|
|
|
27,830 |
|
Total net sales |
|
$ |
441,940 |
|
|
$ |
23,667 |
|
|
$ |
465,607 |
|
|
|
|
|
|
|
|
|
|
|
Timing of Revenue Recognition |
|
|
|
|
|
|
|
|
|
|
|
Transferred at a point in time where the Company is principal (1) |
|
$ |
399,360 |
|
|
$ |
15,847 |
|
|
$ |
415,207 |
|
Transferred at a point in time where the Company is agent (2) |
|
|
42,580 |
|
|
|
7,820 |
|
|
|
50,400 |
|
Total net sales |
|
$ |
441,940 |
|
|
$ |
23,667 |
|
|
$ |
465,607 |
|
|
|
Year ended |
|
|
|
December 31, 2023 |
|
|
|
Distribution |
|
|
Solutions |
|
|
Total |
|
Geography |
|
|
|
|
|
|
|
|
|
|
|
USA |
|
$ |
244,261 |
|
|
$ |
15,425 |
|
|
$ |
259,686 |
|
Europe and United Kingdom |
|
|
57,253 |
|
|
|
10,167 |
|
|
|
67,420 |
|
Canada |
|
|
23,748 |
|
|
|
1,159 |
|
|
|
24,907 |
|
Total net sales |
|
$ |
325,262 |
|
|
$ |
26,751 |
|
|
$ |
352,013 |
|
|
|
|
|
|
|
|
|
|
|
Timing of Revenue Recognition |
|
|
|
|
|
|
|
|
|
|
|
Transferred at a point in time where the Company is principal (1) |
|
$ |
286,051 |
|
|
$ |
19,853 |
|
|
$ |
305,904 |
|
Transferred at a point in time where the Company is agent (2) |
|
|
39,211 |
|
|
|
6,898 |
|
|
|
46,109 |
|
Total net sales |
|
$ |
325,262 |
|
|
$ |
26,751 |
|
|
$ |
352,013 |
|
|
Long-Lived Assets by Geographic Areas [Table Text Block] |
|
|
December 31, |
|
|
December 31, |
|
Identifiable Assets by Geographic Areas |
|
2024 |
|
|
2023 |
|
USA |
|
$ |
278,957 |
|
|
$ |
171,080 |
|
Canada |
|
|
34,352 |
|
|
|
23,994 |
|
Europe and United Kingdom |
|
|
155,870 |
|
|
|
140,024 |
|
Total |
|
$ |
469,179 |
|
|
$ |
335,098 |
|
|