XML 46 R34.htm IDEA: XBRL DOCUMENT
v3.25.2

Segment Information (Tables) | 6 Months Ended
--- | ---
Jun. 30, 2025
Segment Reporting Information, Revenue for Reportable Segment [Abstract] |
Reconciliation Of Sales To Earnings Before Income Taxes by Segment | The following tables illustrate certain measurements used by management to assess the performance of the segments described above (in thousands):
| Three Months Ended June 30, 2025
| Residential |  | Agtech |  | Infrastructure |  | Total
Net sales | $ | 230,258 |  |  | $ | 54,092 |  |  | $ | 25,167 |  |  | $ | 309,517 |
Less (1): |  |  |  |  |  |  |
Operating expenses (2) | 186,647 |  |  | 54,586 |  |  | 18,084 |  |  | 259,317 |
Segment profit (loss) | 43,611 |  |  | (494) |  |  | 7,083 |  |  | 50,200 |
Reconciliation of segment profit |  |  |
Unallocated corporate expenses |  |  |  |  |  |  | (10,694) |
Interest expense, net |  |  |  |  |  |  | (354) |
Other income, net |  |  |  |  |  |  | 105 |
Income before taxes from continuing operations |  |  |  |  |  |  | $ | 39,257 |
| Three Months Ended June 30, 2024
| Residential |  | Agtech |  | Infrastructure |  | Total
Net sales | $ | 214,316 |  |  | $ | 34,508 |  |  | $ | 24,800 |  |  | $ | 273,624 |
Less (1): |  |  |  |  |  |  |
Operating expenses (2) | 171,003 |  |  | 32,226 |  |  | 18,585 |  |  | 221,814 |
Segment profit | 43,313 |  |  | 2,282 |  |  | 6,215 |  |  | 51,810 |
Reconciliation of segment profit |  |  |
Unallocated corporate expenses |  |  |  |  |  |  | (10,988) |
Interest income, net |  |  |  |  |  |  | 1,495 |
Other expense, net |  |  |  |  |  |  | (186) |
Income before taxes from continuing operations |  |  |  |  |  |  | $ | 42,131 |
| Six Months Ended June 30, 2025
| Residential |  | Agtech |  | Infrastructure |  | Total
Net sales | $ | 410,252 |  |  | $ | 99,132 |  |  | $ | 46,490 |  |  | $ | 555,874 |
Less (1): |  |  |  |  |  |  |
Operating expenses (2) | 335,381 |  |  | 96,241 |  |  | 34,149 |  |  | 465,771 |
Segment profit | 74,871 |  |  | 2,891 |  |  | 12,341 |  |  | 90,103 |
Reconciliation of segment profit |  |  |
Unallocated corporate expenses |  |  |  |  |  |  | (21,942) |
Interest income, net |  |  |  |  |  |  | 1,283 |
Other income, net |  |  |  |  |  |  | 29 |
Income before taxes from continuing operations |  |  |  |  |  |  | $ | 69,473 |
| Six Months Ended June 30, 2024
| Residential |  | Agtech |  | Infrastructure |  | Total
Net sales | $ | 399,427 |  |  | $ | 68,535 |  |  | $ | 46,672 |  |  | $ | 514,634 |
Less (1): |  |  |  |  |  |  |
Operating expenses (2) | 321,768 |  |  | 63,645 |  |  | 35,561 |  |  | 420,974 |
Segment profit | 77,659 |  |  | 4,890 |  |  | 11,111 |  |  | 93,660 |
Reconciliation of segment profit |  |  |
Unallocated corporate expenses |  |  |  |  |  |  | (22,746) |
Interest income, net |  |  |  |  |  |  | 2,245 |
Other income, net |  |  |  |  |  |  | 166 |
Income before taxes from continuing operations |  |  |  |  |  |  | $ | 73,325 |
Footnotes: (1)The significant expense category and amounts align with the segment-level information that is regularly provided to the CODM. (2)Operating expenses for each reportable segment includes inventory and manufacturing expenses, employee compensation, depreciation and amortization, freight services, other costs of sales expenses, and other selling, general and administrative expenses. The following table is the reported segment’s and unallocated corporate reported depreciation and amortization (in thousands):
| Three Months Ended June 30, |  | Six Months Ended June 30,
| 2025 |  | 2024 |  | 2025 |  | 2024
Residential | $ | 3,239 |  |  | $ | 2,507 |  |  | $ | 5,766 |  |  | $ | 5,098 |
Agtech | 4,539 |  |  | 808 |  |  | 7,299 |  |  | 1,638 |
Infrastructure | 699 |  |  | 747 |  |  | 1,400 |  |  | 1,492 |
Unallocated corporate expenses | 817 |  |  | 641 |  |  | 1,635 |  |  | 1,238 |
Total depreciation and amortization | $ | 9,294 |  |  | $ | 4,703 |  |  | $ | 16,100 |  |  | $ | 9,466 |
The following table is the reported segment's and unallocated corporate assets as of (in thousands):
| June 30, 2025 |  | December 31, 2024
Residential | $ | 665,811 |  |  | $ | 497,317 |
Agtech | 298,960 |  |  | 156,941 |
Infrastructure | 81,750 |  |  | 78,366 |
Unallocated corporate assets | 66,495 |  |  | 295,350 |
Assets of discontinued operations | 369,736 |  |  | 391,436 |
Total assets | $ | 1,482,752 |  |  | $ | 1,419,410 |
Disaggregation of Revenue | The following presents disaggregated revenue by timing of transfer of control to customers by reported segment (in thousands):
| Three Months Ended June 30, 2025
| Residential |  | Agtech |  | Infrastructure |  | Total
Point in Time | $ | 230,258 |  |  | $ | 144 |  |  | $ | 11,674 |  |  | $ | 242,076 |
Over Time | — |  |  | 53,948 |  |  | 13,493 |  |  | 67,441 |
Total net sales | $ | 230,258 |  |  | $ | 54,092 |  |  | $ | 25,167 |  |  | $ | 309,517 |
| Three Months Ended June 30, 2024
| Residential |  | Agtech |  | Infrastructure |  | Total
Point in Time | $ | 212,524 |  |  | $ | 189 |  |  | $ | 10,839 |  |  | $ | 223,552 |
Over Time | 1,792 |  |  | 34,319 |  |  | 13,961 |  |  | 50,072 |
Total net sales | $ | 214,316 |  |  | $ | 34,508 |  |  | $ | 24,800 |  |  | $ | 273,624 |
| Six Months Ended June 30, 2025
| Residential |  | Agtech |  | Infrastructure |  | Total
Point in Time | $ | 410,252 |  |  | $ | 420 |  |  | $ | 19,554 |  |  | $ | 430,226 |
Over Time | — |  |  | 98,712 |  |  | 26,936 |  |  | 125,648 |
Total net sales | $ | 410,252 |  |  | $ | 99,132 |  |  | $ | 46,490 |  |  | $ | 555,874 |
| Six Months Ended June 30, 2024
| Residential |  | Agtech |  | Infrastructure |  | Total
Point in Time | $ | 395,856 |  |  | $ | 2,528 |  |  | $ | 17,149 |  |  | $ | 415,533 |
Over Time | 3,571 |  |  | 66,007 |  |  | 29,523 |  |  | 99,101 |
Total net sales | $ | 399,427 |  |  | $ | 68,535 |  |  | $ | 46,672 |  |  | $ | 514,634 |

X
- Definition Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 5 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5 + Details
Name: | us-gaap_DisaggregationOfRevenueTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 25 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-25 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-22 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 30 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482810/280-10-50-30 + Details
Name: | us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References No definition available. + Details
Name: | us-gaap_SegmentReportingInformationRevenueAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration