2023 Q4 Form 10-K Financial Statement
#000142322123000016 Filed on December 15, 2023
Income Statement
Concept | 2023 Q4 | 2023 |
---|---|---|
Revenue | $295.5M | $1.131B |
YoY Change | -3.92% | -7.44% |
Cost Of Revenue | $215.5M | $853.1M |
YoY Change | -10.25% | -10.49% |
Gross Profit | $80.02M | $277.5M |
YoY Change | 18.62% | 3.36% |
Gross Profit Margin | 27.08% | 24.55% |
Selling, General & Admin | $29.33M | $124.0M |
YoY Change | -0.03% | 5.85% |
% of Gross Profit | 36.65% | 44.67% |
Research & Development | ||
YoY Change | ||
% of Gross Profit | ||
Depreciation & Amortization | $11.19M | $42.87M |
YoY Change | 17.15% | 6.87% |
% of Gross Profit | 13.99% | 15.45% |
Operating Expenses | $40.52M | $124.0M |
YoY Change | 4.19% | 5.85% |
Operating Profit | $39.50M | $110.7M |
YoY Change | 38.25% | -0.52% |
Interest Expense | -$1.565M | $8.136M |
YoY Change | 120.42% | 217.94% |
% of Operating Profit | -3.96% | 7.35% |
Other Income/Expense, Net | -$6.110M | -$5.519M |
YoY Change | -4592.65% | -630.16% |
Pretax Income | $31.82M | $97.05M |
YoY Change | 13.67% | -11.59% |
Income Tax | $22.44M | $14.55M |
% Of Pretax Income | 70.52% | 14.99% |
Net Earnings | $27.38M | $82.50M |
YoY Change | 11.01% | -6.61% |
Net Earnings / Revenue | 9.27% | 7.3% |
Basic Earnings Per Share | $2.51 | |
Diluted Earnings Per Share | $0.82 | $2.50 |
COMMON SHARES | ||
Basic Shares Outstanding | 33.00M shares | 32.82M shares |
Diluted Shares Outstanding | 33.03M shares |
Balance Sheet
Concept | 2023 Q4 | 2023 |
---|---|---|
SHORT-TERM ASSETS | ||
Cash & Short-Term Investments | $58.47M | $58.47M |
YoY Change | 6.14% | 6.14% |
Cash & Equivalents | $58.47M | $58.47M |
Short-Term Investments | ||
Other Short-Term Assets | $11.56M | $11.56M |
YoY Change | 33.4% | 33.4% |
Inventory | $97.96M | $97.96M |
Prepaid Expenses | ||
Receivables | $97.31M | $97.31M |
Other Receivables | $8.298M | $8.298M |
Total Short-Term Assets | $273.6M | $273.6M |
YoY Change | -2.52% | -2.52% |
LONG-TERM ASSETS | ||
Property, Plant & Equipment | $250.7M | $297.3M |
YoY Change | 38.95% | 25.75% |
Goodwill | $183.0M | |
YoY Change | 32.72% | |
Intangibles | ||
YoY Change | ||
Long-Term Investments | ||
YoY Change | ||
Other Assets | $3.188M | $3.188M |
YoY Change | -31.62% | -31.62% |
Total Long-Term Assets | $557.5M | $557.5M |
YoY Change | 25.59% | 25.59% |
TOTAL ASSETS | ||
Total Short-Term Assets | $273.6M | $273.6M |
Total Long-Term Assets | $557.5M | $557.5M |
Total Assets | $831.1M | $831.1M |
YoY Change | 14.7% | 14.7% |
SHORT-TERM LIABILITIES | ||
YoY Change | ||
Accounts Payable | $74.37M | $74.37M |
YoY Change | -4.54% | -4.54% |
Accrued Expenses | $50.32M | $56.52M |
YoY Change | -3.44% | -5.55% |
Deferred Revenue | ||
YoY Change | ||
Short-Term Debt | $0.00 | $0.00 |
YoY Change | ||
Long-Term Debt Due | $2.365M | $2.365M |
YoY Change | 126.1% | 126.1% |
Total Short-Term Liabilities | $134.7M | $134.7M |
YoY Change | -3.7% | -3.7% |
LONG-TERM LIABILITIES | ||
Long-Term Debt | $66.44M | $66.44M |
YoY Change | 124.23% | 124.23% |
Other Long-Term Liabilities | $14.75M | $55.36M |
YoY Change | 9.48% | -18.63% |
Total Long-Term Liabilities | $14.75M | $121.8M |
YoY Change | 9.48% | 24.71% |
TOTAL LIABILITIES | ||
Total Short-Term Liabilities | $134.7M | $134.7M |
Total Long-Term Liabilities | $14.75M | $121.8M |
Total Liabilities | $285.6M | $285.6M |
YoY Change | 9.93% | 9.93% |
SHAREHOLDERS EQUITY | ||
Retained Earnings | $409.3M | |
YoY Change | 21.3% | |
Common Stock | $372.0K | |
YoY Change | 0.0% | |
Preferred Stock | ||
YoY Change | ||
Treasury Stock (at cost) | $77.57M | |
YoY Change | 2.72% | |
Treasury Stock Shares | ||
Shareholders Equity | $545.6M | $545.6M |
YoY Change | ||
Total Liabilities & Shareholders Equity | $831.1M | $831.1M |
YoY Change | 14.7% | 14.7% |
Cashflow Statement
Concept | 2023 Q4 | 2023 |
---|---|---|
OPERATING ACTIVITIES | ||
Net Income | $27.38M | $82.50M |
YoY Change | 11.01% | -6.61% |
Depreciation, Depletion And Amortization | $11.19M | $42.87M |
YoY Change | 17.15% | 6.87% |
Cash From Operating Activities | $44.49M | $147.1M |
YoY Change | -7.52% | 50.11% |
INVESTING ACTIVITIES | ||
Capital Expenditures | $14.94M | $37.39M |
YoY Change | -209.59% | 12.89% |
Acquisitions | $91.30M | |
YoY Change | ||
Other Investing Activities | $70.00K | -$91.05M |
YoY Change | 180.0% | -57363.52% |
Cash From Investing Activities | -$14.87M | -$128.4M |
YoY Change | 9.27% | 289.66% |
FINANCING ACTIVITIES | ||
Cash Dividend Paid | ||
YoY Change | ||
Common Stock Issuance & Retirement, Net | $5.593M | |
YoY Change | -15.26% | |
Debt Paid & Issued, Net | ||
YoY Change | ||
Cash From Financing Activities | -42.84M | -$16.15M |
YoY Change | 53.31% | -64.8% |
NET CHANGE | ||
Cash From Operating Activities | 44.49M | $147.1M |
Cash From Investing Activities | -14.87M | -$128.4M |
Cash From Financing Activities | -42.84M | -$16.15M |
Net Change In Cash | -13.21M | $3.381M |
YoY Change | -301.42% | -77.51% |
FREE CASH FLOW | ||
Cash From Operating Activities | $44.49M | $147.1M |
Capital Expenditures | $14.94M | $37.39M |
Free Cash Flow | $29.55M | $109.7M |
YoY Change | -52.14% | 69.12% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2023Q4 | us-gaap |
Finance Lease Right Of Use Asset Statement Of Financial Position Extensible List
FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#PropertyPlantAndEquipmentNet | |
CY2022Q4 | us-gaap |
Finance Lease Right Of Use Asset Statement Of Financial Position Extensible List
FinanceLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#PropertyPlantAndEquipmentNet | |
CY2022Q4 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligationsCurrent | |
CY2023Q4 | us-gaap |
Finance Lease Liability Current Statement Of Financial Position Extensible List
FinanceLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligationsCurrent | |
CY2022Q4 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligations | |
CY2023Q4 | us-gaap |
Finance Lease Liability Noncurrent Statement Of Financial Position Extensible List
FinanceLeaseLiabilityNoncurrentStatementOfFinancialPositionExtensibleList
|
http://fasb.org/us-gaap/2023#LongTermDebtAndCapitalLeaseObligations | |
CY2023 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost Credit Expected Return Loss Statement Of Income Or Comprehensive Income Extensible List
DefinedBenefitPlanNetPeriodicBenefitCostCreditExpectedReturnLossStatementOfIncomeOrComprehensiveIncomeExtensibleList
|
http://fasb.org/us-gaap/2023#OtherNonoperatingIncomeExpense | |
CY2023 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost Credit Excluding Service Cost Statement Of Income Or Comprehensive Income Extensible List
DefinedBenefitPlanNetPeriodicBenefitCostCreditExcludingServiceCostStatementOfIncomeOrComprehensiveIncomeExtensibleList
|
http://fasb.org/us-gaap/2023#OtherNonoperatingIncomeExpense | |
CY2023 | dei |
Document Period End Date
DocumentPeriodEndDate
|
2023-10-31 | |
CY2023 | dei |
Current Fiscal Year End Date
CurrentFiscalYearEndDate
|
--10-31 | |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
843000 | usd |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
289000 | usd |
CY2023Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
97311000 | usd |
CY2022Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
96018000 | usd |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
97959000 | usd |
CY2022Q4 | us-gaap |
Inventory Net
InventoryNet
|
120890000 | usd |
CY2023Q4 | us-gaap |
Income Tax Receivable
IncomeTaxReceivable
|
8298000 | usd |
CY2022Q4 | us-gaap |
Income Tax Receivable
IncomeTaxReceivable
|
0 | usd |
CY2023Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
11558000 | usd |
CY2022Q4 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
8664000 | usd |
CY2023Q4 | us-gaap |
Assets Current
AssetsCurrent
|
273600000 | usd |
CY2022Q4 | us-gaap |
Assets Current
AssetsCurrent
|
280665000 | usd |
CY2023Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
368763000 | usd |
CY2022Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
348528000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
250664000 | usd |
CY2022Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
180400000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
46620000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
56000000 | usd |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
182956000 | usd |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
137855000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
74115000 | usd |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
65035000 | usd |
CY2023Q4 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
3188000 | usd |
CY2022Q4 | us-gaap |
Other Assets Noncurrent
OtherAssetsNoncurrent
|
4662000 | usd |
CY2023Q4 | us-gaap |
Assets
Assets
|
831143000 | usd |
CY2022Q4 | us-gaap |
Assets
Assets
|
724617000 | usd |
CY2023Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
74371000 | usd |
CY2022Q4 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
77907000 | usd |
CY2023Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
50319000 | usd |
CY2022Q4 | us-gaap |
Accrued Liabilities Current
AccruedLiabilitiesCurrent
|
52114000 | usd |
CY2023Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
384000 | usd |
CY2022Q4 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
1049000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Current
LongTermDebtAndCapitalLeaseObligationsCurrent
|
2365000 | usd |
CY2022Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Current
LongTermDebtAndCapitalLeaseObligationsCurrent
|
1046000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
7224000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
7727000 | usd |
CY2023Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
134663000 | usd |
CY2022Q4 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
139843000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations
LongTermDebtAndCapitalLeaseObligations
|
66435000 | usd |
CY2022Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations
LongTermDebtAndCapitalLeaseObligations
|
29628000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
40361000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
49286000 | usd |
CY2023Q4 | us-gaap |
Pension And Other Postretirement Defined Benefit Plans Liabilities Noncurrent
PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent
|
0 | usd |
CY2022Q4 | us-gaap |
Pension And Other Postretirement Defined Benefit Plans Liabilities Noncurrent
PensionAndOtherPostretirementDefinedBenefitPlansLiabilitiesNoncurrent
|
3917000 | usd |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
29133000 | usd |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
22277000 | usd |
CY2023Q4 | us-gaap |
Liability For Uncertain Tax Positions Noncurrent
LiabilityForUncertainTaxPositionsNoncurrent
|
250000 | usd |
CY2022Q4 | us-gaap |
Liability For Uncertain Tax Positions Noncurrent
LiabilityForUncertainTaxPositionsNoncurrent
|
1361000 | usd |
CY2023Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
14747000 | usd |
CY2022Q4 | us-gaap |
Other Liabilities Noncurrent
OtherLiabilitiesNoncurrent
|
13470000 | usd |
CY2023Q4 | us-gaap |
Liabilities
Liabilities
|
285589000 | usd |
CY2022Q4 | us-gaap |
Liabilities
Liabilities
|
259782000 | usd |
CY2023Q4 | us-gaap |
Preferred Stock No Par Value
PreferredStockNoParValue
|
0 | |
CY2022Q4 | us-gaap |
Preferred Stock No Par Value
PreferredStockNoParValue
|
0 | |
CY2022Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
1000000 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
1000000 | shares |
CY2022Q4 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
0 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
0 | shares |
CY2022Q4 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
0 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2022Q4 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
0 | usd |
CY2022Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2022Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
125000000 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
125000000 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
37176958 | shares |
CY2022Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
37211056 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
33011119 | shares |
CY2022Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
33129250 | shares |
CY2023Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
372000 | usd |
CY2022Q4 | us-gaap |
Common Stock Value
CommonStockValue
|
372000 | usd |
CY2023Q4 | us-gaap |
Additional Paid In Capital
AdditionalPaidInCapital
|
251576000 | usd |
CY2022Q4 | us-gaap |
Additional Paid In Capital
AdditionalPaidInCapital
|
251947000 | usd |
CY2023Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
409318000 | usd |
CY2022Q4 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
337456000 | usd |
CY2023Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-38141000 | usd |
CY2022Q4 | us-gaap |
Accumulated Other Comprehensive Income Loss Net Of Tax
AccumulatedOtherComprehensiveIncomeLossNetOfTax
|
-49422000 | usd |
CY2023Q4 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
4165839 | shares |
CY2022Q4 | us-gaap |
Treasury Stock Common Shares
TreasuryStockCommonShares
|
4081806 | shares |
CY2023Q4 | us-gaap |
Treasury Stock Value
TreasuryStockValue
|
77571000 | usd |
CY2022Q4 | us-gaap |
Treasury Stock Value
TreasuryStockValue
|
75518000 | usd |
CY2023Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
545554000 | usd |
CY2022Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
464835000 | usd |
CY2023Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
831143000 | usd |
CY2022Q4 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
724617000 | usd |
CY2023 | us-gaap |
Revenues
Revenues
|
1130583000 | usd |
CY2022 | us-gaap |
Revenues
Revenues
|
1221502000 | usd |
CY2023 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
853059000 | usd |
CY2022 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
953004000 | usd |
CY2023 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
123957000 | usd |
CY2022 | us-gaap |
Selling General And Administrative Expense
SellingGeneralAndAdministrativeExpense
|
117108000 | usd |
CY2023 | us-gaap |
Restructuring Charges
RestructuringCharges
|
0 | usd |
CY2022 | us-gaap |
Restructuring Charges
RestructuringCharges
|
0 | usd |
CY2021 | us-gaap |
Restructuring Charges
RestructuringCharges
|
39000 | usd |
CY2021 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
42732000 | usd |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
81870000 | usd |
CY2021 | us-gaap |
Interest Expense
InterestExpense
|
2530000 | usd |
CY2021 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
754000 | usd |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
80094000 | usd |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
23114000 | usd |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
56980000 | usd |
CY2021 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.72 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
56980000 | usd |
CY2021 | us-gaap |
Other Comprehensive Income Loss Foreign Currency Transaction And Translation Adjustment Before Tax
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax
|
7152000 | usd |
CY2021 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Net Unamortized Gain Loss Arising During Period Before Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansNetUnamortizedGainLossArisingDuringPeriodBeforeTax
|
5477000 | usd |
CY2021 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
|
-1375000 | usd |
CY2020Q4 | us-gaap |
Stockholders Equity
StockholdersEquity
|
355759000 | usd |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
56980000 | usd |
CY2021 | us-gaap |
Other Comprehensive Income Loss Foreign Currency Transaction And Translation Adjustment Net Of Tax
OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
|
7152000 | usd |
CY2021 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
|
-1375000 | usd |
CY2021 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Net Unamortized Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
|
4102000 | usd |
CY2021 | us-gaap |
Common Stock Dividends Per Share Cash Paid
CommonStockDividendsPerShareCashPaid
|
0.32 | |
CY2021 | us-gaap |
Dividends Common Stock Cash
DividendsCommonStockCash
|
10779000 | usd |
CY2021 | us-gaap |
Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
|
11182000 | usd |
CY2021 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
1970000 | usd |
CY2021 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
16272000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
|
-819000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Defined Benefit Plans Net Unamortized Gain Loss Arising During Period Net Of Tax
OtherComprehensiveIncomeDefinedBenefitPlansNetUnamortizedGainLossArisingDuringPeriodNetOfTax
|
2739000 | usd |
CY2023 | us-gaap |
Common Stock Dividends Per Share Cash Paid
CommonStockDividendsPerShareCashPaid
|
0.32 | |
CY2023 | us-gaap |
Dividends Common Stock Cash
DividendsCommonStockCash
|
10639000 | usd |
CY2023 | us-gaap |
Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
|
5593000 | usd |
CY2023 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
2521000 | usd |
CY2023 | us-gaap |
Stock Issued During Period Value Stock Options Exercised
StockIssuedDuringPeriodValueStockOptionsExercised
|
1215000 | usd |
CY2023 | us-gaap |
Stockholders Equity Other
StockholdersEquityOther
|
567000 | usd |
CY2022 | us-gaap |
Profit Loss
ProfitLoss
|
88336000 | usd |
CY2021 | us-gaap |
Profit Loss
ProfitLoss
|
56980000 | usd |
CY2022 | us-gaap |
Depreciation Amortization And Accretion Net
DepreciationAmortizationAndAccretionNet
|
40109000 | usd |
CY2021 | us-gaap |
Depreciation Amortization And Accretion Net
DepreciationAmortizationAndAccretionNet
|
42732000 | usd |
CY2022 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
-109000 | usd |
CY2021 | us-gaap |
Gain Loss On Sale Of Property Plant Equipment
GainLossOnSaleOfPropertyPlantEquipment
|
-3039000 | usd |
CY2022 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
2291000 | usd |
CY2021 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
1970000 | usd |
CY2022 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
2097000 | usd |
CY2021 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
1785000 | usd |
CY2023 | us-gaap |
Other Operating Income Expense Net
OtherOperatingIncomeExpenseNet
|
-1529000 | usd |
CY2022 | us-gaap |
Other Operating Income Expense Net
OtherOperatingIncomeExpenseNet
|
-1905000 | usd |
CY2021 | us-gaap |
Other Operating Income Expense Net
OtherOperatingIncomeExpenseNet
|
-2126000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts And Notes Receivable
IncreaseDecreaseInAccountsAndNotesReceivable
|
-6969000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accounts And Notes Receivable
IncreaseDecreaseInAccountsAndNotesReceivable
|
-6945000 | usd |
CY2021 | us-gaap |
Increase Decrease In Accounts And Notes Receivable
IncreaseDecreaseInAccountsAndNotesReceivable
|
19017000 | usd |
CY2023 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
-30024000 | usd |
CY2022 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
32035000 | usd |
CY2021 | us-gaap |
Increase Decrease In Inventories
IncreaseDecreaseInInventories
|
31382000 | usd |
CY2023 | us-gaap |
Increase Decrease In Other Operating Assets
IncreaseDecreaseInOtherOperatingAssets
|
1880000 | usd |
CY2022 | us-gaap |
Increase Decrease In Other Operating Assets
IncreaseDecreaseInOtherOperatingAssets
|
970000 | usd |
CY2021 | us-gaap |
Increase Decrease In Other Operating Assets
IncreaseDecreaseInOtherOperatingAssets
|
1817000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
-11611000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
-3047000 | usd |
CY2021 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
7097000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
-4249000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
-3159000 | usd |
CY2021 | us-gaap |
Increase Decrease In Accrued Liabilities
IncreaseDecreaseInAccruedLiabilities
|
16212000 | usd |
CY2023 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
-9009000 | usd |
CY2022 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
-5192000 | usd |
CY2021 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
-378000 | usd |
CY2023 | us-gaap |
Increase Decrease In Pension And Postretirement Obligations
IncreaseDecreaseInPensionAndPostretirementObligations
|
-359000 | usd |
CY2022 | us-gaap |
Increase Decrease In Pension And Postretirement Obligations
IncreaseDecreaseInPensionAndPostretirementObligations
|
77000 | usd |
CY2021 | us-gaap |
Increase Decrease In Pension And Postretirement Obligations
IncreaseDecreaseInPensionAndPostretirementObligations
|
-708000 | usd |
CY2023 | us-gaap |
Increase Decrease In Other Noncurrent Liabilities
IncreaseDecreaseInOtherNoncurrentLiabilities
|
683000 | usd |
CY2022 | us-gaap |
Increase Decrease In Other Noncurrent Liabilities
IncreaseDecreaseInOtherNoncurrentLiabilities
|
305000 | usd |
CY2021 | us-gaap |
Increase Decrease In Other Noncurrent Liabilities
IncreaseDecreaseInOtherNoncurrentLiabilities
|
477000 | usd |
CY2023 | us-gaap |
Increase Decrease In Other Operating Capital Net
IncreaseDecreaseInOtherOperatingCapitalNet
|
-1642000 | usd |
CY2022 | us-gaap |
Increase Decrease In Other Operating Capital Net
IncreaseDecreaseInOtherOperatingCapitalNet
|
-194000 | usd |
CY2021 | us-gaap |
Increase Decrease In Other Operating Capital Net
IncreaseDecreaseInOtherOperatingCapitalNet
|
528000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
147052000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
97965000 | usd |
CY2021 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
78588000 | usd |
CY2023 | us-gaap |
Payments To Acquire Businesses Net Of Cash Acquired
PaymentsToAcquireBusinessesNetOfCashAcquired
|
91302000 | usd |
CY2023 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
37390000 | usd |
CY2022 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
33121000 | usd |
CY2021 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
24008000 | usd |
CY2023 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
253000 | usd |
CY2022 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
159000 | usd |
CY2021 | us-gaap |
Proceeds From Sale Of Property Plant And Equipment
ProceedsFromSaleOfPropertyPlantAndEquipment
|
5300000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-128439000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-32962000 | usd |
CY2021 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-18708000 | usd |
CY2023 | us-gaap |
Proceeds From Lines Of Credit
ProceedsFromLinesOfCredit
|
102000000 | usd |
CY2022 | us-gaap |
Proceeds From Lines Of Credit
ProceedsFromLinesOfCredit
|
70500000 | usd |
CY2021 | us-gaap |
Proceeds From Lines Of Credit
ProceedsFromLinesOfCredit
|
0 | usd |
CY2023 | us-gaap |
Repayments Of Lines Of Credit
RepaymentsOfLinesOfCredit
|
100000000 | usd |
CY2022 | us-gaap |
Repayments Of Lines Of Credit
RepaymentsOfLinesOfCredit
|
95500000 | usd |
CY2021 | us-gaap |
Repayments Of Lines Of Credit
RepaymentsOfLinesOfCredit
|
65000000 | usd |
CY2023 | us-gaap |
Payments Of Debt Issuance Costs
PaymentsOfDebtIssuanceCosts
|
0 | usd |
CY2022 | us-gaap |
Payments Of Debt Issuance Costs
PaymentsOfDebtIssuanceCosts
|
1210000 | usd |
CY2021 | us-gaap |
Payments Of Debt Issuance Costs
PaymentsOfDebtIssuanceCosts
|
0 | usd |
CY2023 | us-gaap |
Repayments Of Long Term Debt And Capital Securities
RepaymentsOfLongTermDebtAndCapitalSecurities
|
2567000 | usd |
CY2022 | us-gaap |
Repayments Of Long Term Debt And Capital Securities
RepaymentsOfLongTermDebtAndCapitalSecurities
|
1747000 | usd |
CY2021 | us-gaap |
Repayments Of Long Term Debt And Capital Securities
RepaymentsOfLongTermDebtAndCapitalSecurities
|
680000 | usd |
CY2023 | us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
10639000 | usd |
CY2022 | us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
10598000 | usd |
CY2021 | us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
10779000 | usd |
CY2023 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
1215000 | usd |
CY2022 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
689000 | usd |
CY2021 | us-gaap |
Proceeds From Stock Options Exercised
ProceedsFromStockOptionsExercised
|
16272000 | usd |
CY2023 | us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
567000 | usd |
CY2022 | us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
1413000 | usd |
CY2021 | us-gaap |
Payments Related To Tax Withholding For Share Based Compensation
PaymentsRelatedToTaxWithholdingForShareBasedCompensation
|
492000 | usd |
CY2023 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
5593000 | usd |
CY2022 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
6600000 | usd |
CY2021 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
11182000 | usd |
CY2023 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-16151000 | usd |
CY2022 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-45879000 | usd |
CY2021 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-71861000 | usd |
CY2023 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
919000 | usd |
CY2022 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
-4092000 | usd |
CY2021 | us-gaap |
Effect Of Exchange Rate On Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
421000 | usd |
CY2023 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
3381000 | usd |
CY2022 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
15032000 | usd |
CY2021 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
-11560000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
55093000 | usd |
CY2021Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
40061000 | usd |
CY2020Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
51621000 | usd |
CY2023Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
58474000 | usd |
CY2022Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
55093000 | usd |
CY2021Q4 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
|
40061000 | usd |
CY2023 | us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
3 | segment |
CY2023 | us-gaap |
Use Of Estimates
UseOfEstimates
|
<div style="margin-top:9pt;text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In preparing financial statements, we make informed judgments and estimates that affect the reported amounts of assets and liabilities as of the date of the financial statements and affect the reported amounts of revenues and expenses during the reporting period. We review our estimates on an ongoing basis, including those related to impairment of long lived assets and goodwill, pension and retirement liabilities, contingencies and income taxes. Changes in facts and circumstances may result in revised estimates and actual results may differ from these estimates. </span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A summary of our significant accounting policies consistently applied in the preparation of the accompanying consolidated financial statements follows:</span></div> | |
CY2023 | us-gaap |
Revenue Recognition Deferred Revenue
RevenueRecognitionDeferredRevenue
|
<div style="margin-top:9pt;text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Revenue from Contracts with Customers</span></div><div style="margin-top:9pt;text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Revenue recognition</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recognize revenue that reflects the consideration we expect to receive for product sales upon transfer to customers. Revenue for product sales is recognized when control of the promised products is transferred to our customers, and we are entitled to consideration in exchange for such transfer. We account for a contract when a customer provides us with a firm purchase order that identifies the products to be provided, the payment terms for those products, and when collectability of the consideration due is probable.</span></div><div style="margin-top:9pt;text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:103%">Performance obligations</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A performance obligation is a promise to provide the customer with a good or service. Our performance obligations include product sales, with each product included in a customer contract being recognized as a separate performance obligation. For contracts with multiple performance obligations, the standalone selling price of each product is generally readily observable.</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue from product sales is recognized at a point in time when the product is transferred to the customer, in accordance with the shipping terms, which is generally upon shipment. We estimate a provision for sales returns and warranty allowances to acc</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ount for product returns related to general returns and product nonconformance.</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We generally expense incremental costs of obtaining a contract when incurred because the amortization period would be less than one year. Additionally, we do not disclose the value of unsatisfied performance obligations for contracts with an original expected length of one year or less.</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Pricing and sales i</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">ncentives</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Pricing is established at or prior to the time of sale with our customers and we record sales at the agreed-upon net selling price, reflective of current and prospective discounts. </span></div><div style="margin-top:9pt;text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Shipping and handling cost</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">s</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We account for shipping and handling services as fulfillment services; accordingly, freight revenue is combined with the product deliverable rather than being accounted for as a distinct performance obligation within the terms of the agreement. Shipping and handling costs incurred by us for the delivery of goods to customers are considered a cost to fulfill the contract and are included in cost of sales in the accompanying consolidated statements of income.</span></div><div style="margin-top:9pt;text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Contract assets and liabilities</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Deferred revenue, which is not significant, is recorded when we have remaining unsatisfied performance obligations for which we have received consideration. </span></div><div style="margin-top:9pt;text-align:justify;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Disaggregation of revenue</span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We produce a wide variety of products that are used in the fenestration industry, including insulating glass spacer systems; extruded vinyl products; metal fabricated products; and astragals, thresholds and screens. In addition, we produce certain non-fenestration products, including kitchen and bath cabinet doors and components, flooring and trim moldings, solar edge tape, plastic decking, fencing, water retention barriers, conservatory roof components, and other products. </span></div><div style="margin-top:9pt;text-align:justify;text-indent:22.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes our product sales for the three years ended October 31, 2023, 2022, and 2021 into groupings by segment which we believe depicts how the nature, amount, timing and uncertainty of our revenues and cash flows are affected by economic factors. For further details regarding our results by segment, refer to Note 17, “Segment Information.”</span></div><div style="margin-top:9pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:63.081%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.864%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.115%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.115%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Year Ended October 31, </span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2022</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2021</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">NA Fenestration:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States - fenestration</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">518,396 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">609,572 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">507,634 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">International - fenestration</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,100 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,906 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,610 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States - non-fenestration</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,090 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,039 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,534 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">International - non-fenestration</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,896 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,941 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,554 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">667,482 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">687,458 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">578,332 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">EU Fenestration:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">International - fenestration</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,871 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">194,854 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,511 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">International - non-fenestration</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">58,903 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67,204 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">52,088 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">250,774 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">262,058 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">251,599 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">NA Cabinet Components:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States - fenestration</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,899 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,696 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,326 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States - non-fenestration</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195,866 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">254,726 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">230,559 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">International - non-fenestration</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,680 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,282 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,190 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">215,445 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">275,704 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">246,075 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Unallocated Corporate & Other:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Eliminations</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,118)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,718)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,857)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,118)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,718)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,857)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,130,583 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,221,502 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,072,149 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> | |
CY2023 | us-gaap |
Revenues
Revenues
|
1130583000 | usd |
CY2022 | us-gaap |
Revenues
Revenues
|
1221502000 | usd |
CY2021 | us-gaap |
Revenues
Revenues
|
1072149000 | usd |
CY2020Q3 | us-gaap |
Number Of Reporting Units
NumberOfReportingUnits
|
6 | reporting_unit |
CY2020Q3 | nx |
Number Of Reporting Units Performed Quantitative Assessment
NumberOfReportingUnitsPerformedQuantitativeAssessment
|
5 | reporting_unit |
CY2023 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
293000 | usd |
CY2022 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
133000 | usd |
CY2021 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
3060000 | usd |
CY2023 | us-gaap |
Valuation Allowances And Reserves Charged To Other Accounts
ValuationAllowancesAndReservesChargedToOtherAccounts
|
68000 | usd |
CY2022 | us-gaap |
Valuation Allowances And Reserves Charged To Other Accounts
ValuationAllowancesAndReservesChargedToOtherAccounts
|
-168000 | usd |
CY2021 | us-gaap |
Valuation Allowances And Reserves Charged To Other Accounts
ValuationAllowancesAndReservesChargedToOtherAccounts
|
80000 | usd |
CY2023 | us-gaap |
Interest Paid
InterestPaid
|
5737000 | usd |
CY2022 | us-gaap |
Interest Paid
InterestPaid
|
1982000 | usd |
CY2021 | us-gaap |
Interest Paid
InterestPaid
|
1993000 | usd |
CY2023 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
22224000 | usd |
CY2022 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
26410000 | usd |
CY2021 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
22160000 | usd |
CY2023 | us-gaap |
Proceeds From Income Tax Refunds
ProceedsFromIncomeTaxRefunds
|
2460000 | usd |
CY2022 | us-gaap |
Proceeds From Income Tax Refunds
ProceedsFromIncomeTaxRefunds
|
2235000 | usd |
CY2021 | us-gaap |
Proceeds From Income Tax Refunds
ProceedsFromIncomeTaxRefunds
|
381000 | usd |
CY2023 | nx |
Increase Decrease In Capital Expenditures Incurred But Not Yet Paid
IncreaseDecreaseInCapitalExpendituresIncurredButNotYetPaid
|
1953000 | usd |
CY2022 | nx |
Increase Decrease In Capital Expenditures Incurred But Not Yet Paid
IncreaseDecreaseInCapitalExpendituresIncurredButNotYetPaid
|
-1692000 | usd |
CY2021 | nx |
Increase Decrease In Capital Expenditures Incurred But Not Yet Paid
IncreaseDecreaseInCapitalExpendituresIncurredButNotYetPaid
|
1124000 | usd |
CY2023Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
3114000 | usd |
CY2022Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
3129000 | usd |
CY2021Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
2936000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Right Of Use Asset Accumulated Amortization
FinanceLeaseRightOfUseAssetAccumulatedAmortization
|
6691000 | usd |
CY2022Q4 | us-gaap |
Line Of Credit Facility Remaining Borrowing Capacity
LineOfCreditFacilityRemainingBorrowingCapacity
|
215000000 | usd |
CY2023Q4 | us-gaap |
Other Receivables Gross Current
OtherReceivablesGrossCurrent
|
97871000 | usd |
CY2022Q4 | us-gaap |
Other Receivables Gross Current
OtherReceivablesGrossCurrent
|
95851000 | usd |
CY2023Q4 | us-gaap |
Other Receivables
OtherReceivables
|
283000 | usd |
CY2022Q4 | us-gaap |
Other Receivables
OtherReceivables
|
456000 | usd |
CY2023Q4 | us-gaap |
Accounts Receivable Gross Current
AccountsReceivableGrossCurrent
|
98154000 | usd |
CY2022Q4 | us-gaap |
Accounts Receivable Gross Current
AccountsReceivableGrossCurrent
|
96307000 | usd |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
843000 | usd |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
289000 | usd |
CY2023Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
97311000 | usd |
CY2022Q4 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
96018000 | usd |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
289000 | usd |
CY2021Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
340000 | usd |
CY2020Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
161000 | usd |
CY2023 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
711000 | usd |
CY2022 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
314000 | usd |
CY2021 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
267000 | usd |
CY2023 | us-gaap |
Allowance For Doubtful Accounts Receivable Write Offs
AllowanceForDoubtfulAccountsReceivableWriteOffs
|
165000 | usd |
CY2022 | us-gaap |
Allowance For Doubtful Accounts Receivable Write Offs
AllowanceForDoubtfulAccountsReceivableWriteOffs
|
299000 | usd |
CY2021 | us-gaap |
Allowance For Doubtful Accounts Receivable Write Offs
AllowanceForDoubtfulAccountsReceivableWriteOffs
|
88000 | usd |
CY2023 | us-gaap |
Allowance For Doubtful Accounts Receivable Recoveries
AllowanceForDoubtfulAccountsReceivableRecoveries
|
0 | usd |
CY2022 | us-gaap |
Allowance For Doubtful Accounts Receivable Recoveries
AllowanceForDoubtfulAccountsReceivableRecoveries
|
10000 | usd |
CY2021 | us-gaap |
Allowance For Doubtful Accounts Receivable Recoveries
AllowanceForDoubtfulAccountsReceivableRecoveries
|
0 | usd |
CY2023 | us-gaap |
Translation Adjustment Functional To Reporting Currency Increase Decrease Gross Of Tax
TranslationAdjustmentFunctionalToReportingCurrencyIncreaseDecreaseGrossOfTax
|
8000 | usd |
CY2022 | us-gaap |
Translation Adjustment Functional To Reporting Currency Increase Decrease Gross Of Tax
TranslationAdjustmentFunctionalToReportingCurrencyIncreaseDecreaseGrossOfTax
|
-76000 | usd |
CY2021 | us-gaap |
Translation Adjustment Functional To Reporting Currency Increase Decrease Gross Of Tax
TranslationAdjustmentFunctionalToReportingCurrencyIncreaseDecreaseGrossOfTax
|
0 | usd |
CY2023Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
843000 | usd |
CY2022Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
289000 | usd |
CY2021Q4 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
340000 | usd |
CY2023Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
55500000 | usd |
CY2022Q4 | us-gaap |
Inventory Raw Materials
InventoryRawMaterials
|
68455000 | usd |
CY2023Q4 | us-gaap |
Inventory Finished Goods And Work In Process
InventoryFinishedGoodsAndWorkInProcess
|
43394000 | usd |
CY2022Q4 | us-gaap |
Inventory Finished Goods And Work In Process
InventoryFinishedGoodsAndWorkInProcess
|
54013000 | usd |
CY2023Q4 | us-gaap |
Other Inventory Supplies
OtherInventorySupplies
|
2179000 | usd |
CY2022Q4 | us-gaap |
Other Inventory Supplies
OtherInventorySupplies
|
1551000 | usd |
CY2023Q4 | us-gaap |
Inventory Gross
InventoryGross
|
101073000 | usd |
CY2022Q4 | us-gaap |
Inventory Gross
InventoryGross
|
124019000 | usd |
CY2023Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
3114000 | usd |
CY2022Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
3129000 | usd |
CY2023Q4 | us-gaap |
Inventory Net
InventoryNet
|
97959000 | usd |
CY2022Q4 | us-gaap |
Inventory Net
InventoryNet
|
120890000 | usd |
CY2022Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
3129000 | usd |
CY2021Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
2936000 | usd |
CY2020Q4 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
6484000 | usd |
CY2023 | us-gaap |
Valuation Allowances And Reserves Charged To Cost And Expense
ValuationAllowancesAndReservesChargedToCostAndExpense
|
210000 | usd |
CY2022 | us-gaap |
Valuation Allowances And Reserves Charged To Cost And Expense
ValuationAllowancesAndReservesChargedToCostAndExpense
|
494000 | usd |
CY2021 | us-gaap |
Valuation Allowances And Reserves Charged To Cost And Expense
ValuationAllowancesAndReservesChargedToCostAndExpense
|
-568000 | usd |
CY2023Q4 | us-gaap |
Land And Land Improvements
LandAndLandImprovements
|
11268000 | usd |
CY2022Q4 | us-gaap |
Land And Land Improvements
LandAndLandImprovements
|
10702000 | usd |
CY2023Q4 | us-gaap |
Buildings And Improvements Gross
BuildingsAndImprovementsGross
|
149093000 | usd |
CY2022Q4 | us-gaap |
Buildings And Improvements Gross
BuildingsAndImprovementsGross
|
105696000 | usd |
CY2023Q4 | us-gaap |
Machinery And Equipment Gross
MachineryAndEquipmentGross
|
429743000 | usd |
CY2022Q4 | us-gaap |
Machinery And Equipment Gross
MachineryAndEquipmentGross
|
384023000 | usd |
CY2023Q4 | us-gaap |
Construction In Progress Gross
ConstructionInProgressGross
|
29323000 | usd |
CY2022Q4 | us-gaap |
Construction In Progress Gross
ConstructionInProgressGross
|
28507000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
619427000 | usd |
CY2022Q4 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
528928000 | usd |
CY2023Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
368763000 | usd |
CY2022Q4 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
348528000 | usd |
CY2023Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
250664000 | usd |
CY2022Q4 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
180400000 | usd |
CY2023 | us-gaap |
Depreciation
Depreciation
|
27600000 | usd |
CY2022 | us-gaap |
Depreciation
Depreciation
|
26900000 | usd |
CY2021 | us-gaap |
Depreciation
Depreciation
|
28800000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
46620000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Right Of Use Asset
OperatingLeaseRightOfUseAsset
|
56000000 | usd |
CY2022Q4 | us-gaap |
Finance Lease Right Of Use Asset Accumulated Amortization
FinanceLeaseRightOfUseAssetAccumulatedAmortization
|
3726000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
58496000 | usd |
CY2022Q4 | us-gaap |
Finance Lease Right Of Use Asset
FinanceLeaseRightOfUseAsset
|
22003000 | usd |
CY2023Q4 | nx |
Leases Rightof Use Asset
LeasesRightofUseAsset
|
105116000 | usd |
CY2022Q4 | nx |
Leases Rightof Use Asset
LeasesRightofUseAsset
|
78003000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
7224000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Liability Current
OperatingLeaseLiabilityCurrent
|
7727000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
2676000 | usd |
CY2022Q4 | us-gaap |
Finance Lease Liability Current
FinanceLeaseLiabilityCurrent
|
1336000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
40361000 | usd |
CY2022Q4 | us-gaap |
Operating Lease Liability Noncurrent
OperatingLeaseLiabilityNoncurrent
|
49286000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
52309000 | usd |
CY2022Q4 | us-gaap |
Finance Lease Liability Noncurrent
FinanceLeaseLiabilityNoncurrent
|
17816000 | usd |
CY2023Q4 | nx |
Leases Liability
LeasesLiability
|
102570000 | usd |
CY2022Q4 | nx |
Leases Liability
LeasesLiability
|
76165000 | usd |
CY2023 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
9145000 | usd |
CY2022 | us-gaap |
Operating Lease Cost
OperatingLeaseCost
|
9934000 | usd |
CY2023 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
3285000 | usd |
CY2022 | us-gaap |
Finance Lease Right Of Use Asset Amortization
FinanceLeaseRightOfUseAssetAmortization
|
1332000 | usd |
CY2023 | us-gaap |
Finance Lease Interest Expense
FinanceLeaseInterestExpense
|
2425000 | usd |
CY2022 | us-gaap |
Finance Lease Interest Expense
FinanceLeaseInterestExpense
|
583000 | usd |
CY2023 | us-gaap |
Variable Lease Cost
VariableLeaseCost
|
1663000 | usd |
CY2022 | us-gaap |
Variable Lease Cost
VariableLeaseCost
|
977000 | usd |
CY2023 | us-gaap |
Lease Cost
LeaseCost
|
16518000 | usd |
CY2022 | us-gaap |
Lease Cost
LeaseCost
|
12826000 | usd |
CY2023 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
2397 | usd |
CY2022 | us-gaap |
Finance Lease Principal Payments
FinanceLeasePrincipalPayments
|
1162 | usd |
CY2023 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
2425 | usd |
CY2022 | us-gaap |
Finance Lease Interest Payment On Liability
FinanceLeaseInterestPaymentOnLiability
|
583 | usd |
CY2023 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
9179 | usd |
CY2022 | us-gaap |
Operating Lease Payments
OperatingLeasePayments
|
9955 | usd |
CY2023 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
7509 | usd |
CY2022 | us-gaap |
Right Of Use Asset Obtained In Exchange For Operating Lease Liability
RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
|
13872 | usd |
CY2023 | us-gaap |
Right Of Use Asset Obtained In Exchange For Finance Lease Liability
RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
|
26531 | usd |
CY2022 | us-gaap |
Right Of Use Asset Obtained In Exchange For Finance Lease Liability
RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability
|
6467 | usd |
CY2023Q4 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P10Y8M12D | |
CY2022Q4 | us-gaap |
Operating Lease Weighted Average Remaining Lease Term1
OperatingLeaseWeightedAverageRemainingLeaseTerm1
|
P10Y9M18D | |
CY2023Q4 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P18Y8M12D | |
CY2022Q4 | us-gaap |
Finance Lease Weighted Average Remaining Lease Term1
FinanceLeaseWeightedAverageRemainingLeaseTerm1
|
P13Y8M12D | |
CY2023Q4 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.0409 | |
CY2022Q4 | us-gaap |
Operating Lease Weighted Average Discount Rate Percent
OperatingLeaseWeightedAverageDiscountRatePercent
|
0.0384 | |
CY2023Q4 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.0452 | |
CY2022Q4 | us-gaap |
Finance Lease Weighted Average Discount Rate Percent
FinanceLeaseWeightedAverageDiscountRatePercent
|
0.0378 | |
CY2023Q4 | us-gaap |
Line Of Credit Facility Remaining Borrowing Capacity
LineOfCreditFacilityRemainingBorrowingCapacity
|
305000000 | usd |
CY2023 | us-gaap |
Debt Instrument Interest Rate During Period
DebtInstrumentInterestRateDuringPeriod
|
0.0601 | |
CY2022 | us-gaap |
Debt Instrument Interest Rate During Period
DebtInstrumentInterestRateDuringPeriod
|
0.0216 | |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Next Twelve Months
LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
|
8825000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Next Twelve Months
FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
|
5061000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Two
LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
|
7597000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Two
FinanceLeaseLiabilityPaymentsDueYearTwo
|
4979000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Three
LesseeOperatingLeaseLiabilityPaymentsDueYearThree
|
6268000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Three
FinanceLeaseLiabilityPaymentsDueYearThree
|
4812000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Four
LesseeOperatingLeaseLiabilityPaymentsDueYearFour
|
5214000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Four
FinanceLeaseLiabilityPaymentsDueYearFour
|
4671000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due Year Five
LesseeOperatingLeaseLiabilityPaymentsDueYearFive
|
4312000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due Year Five
FinanceLeaseLiabilityPaymentsDueYearFive
|
4534000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due After Year Five
LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
|
28097000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due After Year Five
FinanceLeaseLiabilityPaymentsDueAfterYearFive
|
57936000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Payments Due
LesseeOperatingLeaseLiabilityPaymentsDue
|
60313000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Payments Due
FinanceLeaseLiabilityPaymentsDue
|
81993000 | usd |
CY2023Q4 | us-gaap |
Lessee Operating Lease Liability Undiscounted Excess Amount
LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
|
12728000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Undiscounted Excess Amount
FinanceLeaseLiabilityUndiscountedExcessAmount
|
27008000 | usd |
CY2023Q4 | us-gaap |
Operating Lease Liability
OperatingLeaseLiability
|
47585000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability
FinanceLeaseLiability
|
54985000 | usd |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
137855000 | usd |
CY2021Q4 | us-gaap |
Goodwill
Goodwill
|
149205000 | usd |
CY2023 | us-gaap |
Goodwill Acquired During Period
GoodwillAcquiredDuringPeriod
|
41393000 | usd |
CY2023 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
3708000 | usd |
CY2022 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
-11350000 | usd |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
182956000 | usd |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
137855000 | usd |
CY2023Q4 | nx |
Numberof Reportable Unitswith Goodwill Balances
NumberofReportableUnitswithGoodwillBalances
|
6 | unit |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
238275000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
164160000 | usd |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Gross
FiniteLivedIntangibleAssetsGross
|
216386000 | usd |
CY2022Q4 | us-gaap |
Finite Lived Intangible Assets Accumulated Amortization
FiniteLivedIntangibleAssetsAccumulatedAmortization
|
151351000 | usd |
CY2023 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
12100000 | usd |
CY2022 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
11900000 | usd |
CY2021 | us-gaap |
Amortization Of Intangible Assets
AmortizationOfIntangibleAssets
|
12800000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Next Twelve Months
FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
|
11278000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Two
FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
|
10051000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Three
FiniteLivedIntangibleAssetsAmortizationExpenseYearThree
|
9976000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Four
FiniteLivedIntangibleAssetsAmortizationExpenseYearFour
|
9977000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseYearFive
|
4743000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Amortization Expense After Year Five
FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive
|
28090000 | usd |
CY2023Q4 | us-gaap |
Finite Lived Intangible Assets Net
FiniteLivedIntangibleAssetsNet
|
74115000 | usd |
CY2021 | us-gaap |
Impairment Of Intangible Assets Finitelived
ImpairmentOfIntangibleAssetsFinitelived
|
0 | usd |
CY2023 | us-gaap |
Impairment Of Intangible Assets Finitelived
ImpairmentOfIntangibleAssetsFinitelived
|
0 | usd |
CY2022 | us-gaap |
Impairment Of Intangible Assets Finitelived
ImpairmentOfIntangibleAssetsFinitelived
|
0 | usd |
CY2023Q4 | us-gaap |
Debt Instrument Unamortized Discount Premium Net
DebtInstrumentUnamortizedDiscountPremiumNet
|
1200000 | usd |
CY2023Q4 | us-gaap |
Letters Of Credit Outstanding Amount
LettersOfCreditOutstandingAmount
|
5000000 | usd |
CY2023Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
18184000 | usd |
CY2022Q4 | us-gaap |
Employee Related Liabilities Current
EmployeeRelatedLiabilitiesCurrent
|
23878000 | usd |
CY2023Q4 | us-gaap |
Other Employee Related Liabilities Current
OtherEmployeeRelatedLiabilitiesCurrent
|
7754000 | usd |
CY2022Q4 | us-gaap |
Other Employee Related Liabilities Current
OtherEmployeeRelatedLiabilitiesCurrent
|
7232000 | usd |
CY2023Q4 | us-gaap |
Customer Refund Liability Current
CustomerRefundLiabilityCurrent
|
5237000 | usd |
CY2022Q4 | us-gaap |
Customer Refund Liability Current
CustomerRefundLiabilityCurrent
|
7456000 | usd |
CY2023Q4 | us-gaap |
Defined Benefit Pension Plan Liabilities Current
DefinedBenefitPensionPlanLiabilitiesCurrent
|
1969000 | usd |
CY2022Q4 | us-gaap |
Defined Benefit Pension Plan Liabilities Current
DefinedBenefitPensionPlanLiabilitiesCurrent
|
0 | usd |
CY2023Q4 | us-gaap |
Deferred Compensation Liability Current
DeferredCompensationLiabilityCurrent
|
4189000 | usd |
CY2022Q4 | us-gaap |
Deferred Compensation Liability Current
DeferredCompensationLiabilityCurrent
|
0 | usd |
CY2023Q4 | us-gaap |
Deferred Revenue Current
DeferredRevenueCurrent
|
1021000 | usd |
CY2022Q4 | us-gaap |
Deferred Revenue Current
DeferredRevenueCurrent
|
792000 | usd |
CY2023Q4 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
15000 | usd |
CY2022Q4 | us-gaap |
Product Warranty Accrual Classified Current
ProductWarrantyAccrualClassifiedCurrent
|
13000 | usd |
CY2023Q4 | us-gaap |
Accrued Professional Fees Current
AccruedProfessionalFeesCurrent
|
3572000 | usd |
CY2022Q4 | us-gaap |
Accrued Professional Fees Current
AccruedProfessionalFeesCurrent
|
3136000 | usd |
CY2023Q4 | nx |
Accruedotherbusinesstaxes
Accruedotherbusinesstaxes
|
1980000 | usd |
CY2022Q4 | nx |
Accruedotherbusinesstaxes
Accruedotherbusinesstaxes
|
2864000 | usd |
CY2023Q4 | nx |
Accrued Liabilities Freight
AccruedLiabilitiesFreight
|
1071000 | usd |
CY2022Q4 | nx |
Accrued Liabilities Freight
AccruedLiabilitiesFreight
|
666000 | usd |
CY2023Q4 | us-gaap |
Accrued Utilities Current And Noncurrent
AccruedUtilitiesCurrentAndNoncurrent
|
1389000 | usd |
CY2022Q4 | us-gaap |
Accrued Utilities Current And Noncurrent
AccruedUtilitiesCurrentAndNoncurrent
|
539000 | usd |
CY2023Q4 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
3938000 | usd |
CY2022Q4 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
5538000 | usd |
CY2023Q4 | us-gaap |
Accrued Liabilities Current And Noncurrent
AccruedLiabilitiesCurrentAndNoncurrent
|
50319000 | usd |
CY2022Q4 | us-gaap |
Accrued Liabilities Current And Noncurrent
AccruedLiabilitiesCurrentAndNoncurrent
|
52114000 | usd |
CY2023Q4 | us-gaap |
Debt Instrument Unamortized Discount Premium Net
DebtInstrumentUnamortizedDiscountPremiumNet
|
1200000 | usd |
CY2022Q4 | us-gaap |
Debt Instrument Unamortized Discount Premium Net
DebtInstrumentUnamortizedDiscountPremiumNet
|
1528000 | usd |
CY2023Q4 | us-gaap |
Debt And Capital Lease Obligations
DebtAndCapitalLeaseObligations
|
68800000 | usd |
CY2022Q4 | us-gaap |
Debt And Capital Lease Obligations
DebtAndCapitalLeaseObligations
|
30674000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Current
LongTermDebtAndCapitalLeaseObligationsCurrent
|
2365000 | usd |
CY2022Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Current
LongTermDebtAndCapitalLeaseObligationsCurrent
|
1046000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations
LongTermDebtAndCapitalLeaseObligations
|
66435000 | usd |
CY2022Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations
LongTermDebtAndCapitalLeaseObligations
|
29628000 | usd |
CY2023Q4 | us-gaap |
Debt Instrument Unamortized Discount Premium Net
DebtInstrumentUnamortizedDiscountPremiumNet
|
1200000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Next Twelve Months
LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths
|
0 | usd |
CY2023Q4 | nx |
Finance Lease Liability And Other Financing Obligations To Be Paid Year One
FinanceLeaseLiabilityAndOtherFinancingObligationsToBePaidYearOne
|
5076000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Repayments Of Principal In Next Twelve Months
LongTermDebtAndCapitalLeaseObligationsRepaymentsOfPrincipalInNextTwelveMonths
|
5076000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Two
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo
|
0 | usd |
CY2023Q4 | nx |
Finance Lease Liability And Other Financing Obligations To Be Paid Year Two
FinanceLeaseLiabilityAndOtherFinancingObligationsToBePaidYearTwo
|
4979000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Maturities Repayments Of Principal In Year Two
LongTermDebtAndCapitalLeaseObligationsMaturitiesRepaymentsOfPrincipalInYearTwo
|
4979000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Three
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree
|
0 | usd |
CY2023Q4 | nx |
Finance Lease Liability And Other Financing Obligations To Be Paid Year Three
FinanceLeaseLiabilityAndOtherFinancingObligationsToBePaidYearThree
|
4812000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Maturities Repayments Of Principal In Year Three
LongTermDebtAndCapitalLeaseObligationsMaturitiesRepaymentsOfPrincipalInYearThree
|
4812000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Four
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour
|
15000000 | usd |
CY2023Q4 | nx |
Finance Lease Liability And Other Financing Obligations To Be Paid Year Four
FinanceLeaseLiabilityAndOtherFinancingObligationsToBePaidYearFour
|
4671000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Maturities Repayments Of Principal In Year Four
LongTermDebtAndCapitalLeaseObligationsMaturitiesRepaymentsOfPrincipalInYearFour
|
19671000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal In Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFive
|
0 | usd |
CY2023Q4 | nx |
Finance Lease Liability And Other Financing Obligations To Be Paid Year Five
FinanceLeaseLiabilityAndOtherFinancingObligationsToBePaidYearFive
|
4534000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Maturities Repayments Of Principal In Year Five
LongTermDebtAndCapitalLeaseObligationsMaturitiesRepaymentsOfPrincipalInYearFive
|
4534000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt Maturities Repayments Of Principal After Year Five
LongTermDebtMaturitiesRepaymentsOfPrincipalAfterYearFive
|
0 | usd |
CY2023Q4 | nx |
Finance Lease Liability And Other Financing Obligations To Be Paid After Year Five
FinanceLeaseLiabilityAndOtherFinancingObligationsToBePaidAfterYearFive
|
57936000 | usd |
CY2023Q4 | us-gaap |
Long Term Debt And Capital Lease Obligations Maturities Repayments Of Principal After Year Five
LongTermDebtAndCapitalLeaseObligationsMaturitiesRepaymentsOfPrincipalAfterYearFive
|
57936000 | usd |
CY2023Q4 | nx |
Finance Lease Liability And Other Financing Obligations To Be Paid
FinanceLeaseLiabilityAndOtherFinancingObligationsToBePaid
|
82008000 | usd |
CY2023Q4 | nx |
Long Term Debt And Capital Lease Obligations Gross
LongTermDebtAndCapitalLeaseObligationsGross
|
97008000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Undiscounted Excess Amount
FinanceLeaseLiabilityUndiscountedExcessAmount
|
27008000 | usd |
CY2023Q4 | us-gaap |
Finance Lease Liability Undiscounted Excess Amount
FinanceLeaseLiabilityUndiscountedExcessAmount
|
27008000 | usd |
CY2023Q4 | nx |
Finance Lease Liability And Other Financing Obligations
FinanceLeaseLiabilityAndOtherFinancingObligations
|
55000000 | usd |
CY2023Q4 | us-gaap |
Debt Longterm And Shortterm Combined Amount
DebtLongtermAndShorttermCombinedAmount
|
70000000 | usd |
CY2022Q4 | us-gaap |
Defined Benefit Plan Benefit Obligation
DefinedBenefitPlanBenefitObligation
|
32529000 | usd |
CY2021Q4 | us-gaap |
Defined Benefit Plan Benefit Obligation
DefinedBenefitPlanBenefitObligation
|
42379000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Service Cost
DefinedBenefitPlanServiceCost
|
383000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Service Cost
DefinedBenefitPlanServiceCost
|
860000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
1558000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
806000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Actuarial Gain Loss
DefinedBenefitPlanActuarialGainLoss
|
-1315000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Actuarial Gain Loss
DefinedBenefitPlanActuarialGainLoss
|
6944000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Benefit Obligation Benefits Paid
DefinedBenefitPlanBenefitObligationBenefitsPaid
|
389000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Benefit Obligation Benefits Paid
DefinedBenefitPlanBenefitObligationBenefitsPaid
|
349000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Administration Expenses
DefinedBenefitPlanAdministrationExpenses
|
356000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Administration Expenses
DefinedBenefitPlanAdministrationExpenses
|
604000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Settlements Benefit Obligation
DefinedBenefitPlanSettlementsBenefitObligation
|
35040000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Settlements Benefit Obligation
DefinedBenefitPlanSettlementsBenefitObligation
|
3619000 | usd |
CY2023Q4 | us-gaap |
Defined Benefit Plan Benefit Obligation
DefinedBenefitPlanBenefitObligation
|
0 | usd |
CY2022Q4 | us-gaap |
Defined Benefit Plan Benefit Obligation
DefinedBenefitPlanBenefitObligation
|
32529000 | usd |
CY2022Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
28612000 | usd |
CY2021Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
37642000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Actual Return On Plan Assets
DefinedBenefitPlanActualReturnOnPlanAssets
|
862000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Actual Return On Plan Assets
DefinedBenefitPlanActualReturnOnPlanAssets
|
-4458000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Contributions By Employer
DefinedBenefitPlanContributionsByEmployer
|
6311000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Contributions By Employer
DefinedBenefitPlanContributionsByEmployer
|
0 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Plan Assets Benefits Paid
DefinedBenefitPlanPlanAssetsBenefitsPaid
|
389000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Plan Assets Benefits Paid
DefinedBenefitPlanPlanAssetsBenefitsPaid
|
349000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Administration Expenses
DefinedBenefitPlanAdministrationExpenses
|
356000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Administration Expenses
DefinedBenefitPlanAdministrationExpenses
|
604000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Settlements Plan Assets
DefinedBenefitPlanSettlementsPlanAssets
|
35040000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Settlements Plan Assets
DefinedBenefitPlanSettlementsPlanAssets
|
3619000 | usd |
CY2023Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
0 | usd |
CY2022Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
28612000 | usd |
CY2023Q4 | nx |
Defined Benefit Plan Funded Unfunded Statusof Plan
DefinedBenefitPlanFundedUnfundedStatusofPlan
|
0 | usd |
CY2022Q4 | nx |
Defined Benefit Plan Funded Unfunded Statusof Plan
DefinedBenefitPlanFundedUnfundedStatusofPlan
|
3917000 | usd |
CY2023Q4 | us-gaap |
Defined Benefit Plan Accumulated Other Comprehensive Income Net Gains Losses Before Tax
DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax
|
0 | usd |
CY2022Q4 | us-gaap |
Defined Benefit Plan Accumulated Other Comprehensive Income Net Gains Losses Before Tax
DefinedBenefitPlanAccumulatedOtherComprehensiveIncomeNetGainsLossesBeforeTax
|
-3600000 | usd |
CY2023Q4 | us-gaap |
Defined Benefit Plan Pension Plans With Accumulated Benefit Obligations In Excess Of Plan Assets Aggregate Accumulated Benefit Obligation
DefinedBenefitPlanPensionPlansWithAccumulatedBenefitObligationsInExcessOfPlanAssetsAggregateAccumulatedBenefitObligation
|
0 | usd |
CY2022Q4 | us-gaap |
Defined Benefit Plan Pension Plans With Accumulated Benefit Obligations In Excess Of Plan Assets Aggregate Accumulated Benefit Obligation
DefinedBenefitPlanPensionPlansWithAccumulatedBenefitObligationsInExcessOfPlanAssetsAggregateAccumulatedBenefitObligation
|
32500000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Service Cost
DefinedBenefitPlanServiceCost
|
383000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Service Cost
DefinedBenefitPlanServiceCost
|
860000 | usd |
CY2021 | us-gaap |
Defined Benefit Plan Service Cost
DefinedBenefitPlanServiceCost
|
850000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
1558000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
806000 | usd |
CY2021 | us-gaap |
Defined Benefit Plan Interest Cost
DefinedBenefitPlanInterestCost
|
756000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1465000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1991000 | usd |
CY2021 | us-gaap |
Defined Benefit Plan Expected Return On Plan Assets
DefinedBenefitPlanExpectedReturnOnPlanAssets
|
1960000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-42000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-6000 | usd |
CY2021 | us-gaap |
Defined Benefit Plan Amortization Of Gains Losses
DefinedBenefitPlanAmortizationOfGainsLosses
|
-143000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Recognized Net Gain Loss Due To Settlements1
DefinedBenefitPlanRecognizedNetGainLossDueToSettlements1
|
-5431000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Recognized Net Gain Loss Due To Settlements1
DefinedBenefitPlanRecognizedNetGainLossDueToSettlements1
|
-396000 | usd |
CY2021 | us-gaap |
Defined Benefit Plan Recognized Net Gain Loss Due To Settlements1
DefinedBenefitPlanRecognizedNetGainLossDueToSettlements1
|
-222000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
5949000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
77000 | usd |
CY2021 | us-gaap |
Defined Benefit Plan Net Periodic Benefit Cost
DefinedBenefitPlanNetPeriodicBenefitCost
|
11000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Contributions By Employer
DefinedBenefitPlanContributionsByEmployer
|
6300000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Contributions By Employer
DefinedBenefitPlanContributionsByEmployer
|
0 | usd |
CY2021 | us-gaap |
Defined Benefit Plan Contributions By Employer
DefinedBenefitPlanContributionsByEmployer
|
500000 | usd |
CY2023Q4 | nx |
Number Of Defined Contribution Plans
NumberOfDefinedContributionPlans
|
2 | plan |
us-gaap |
Defined Contribution Plan Employer Matching Contribution Percent Of Match
DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
|
1 | ||
us-gaap |
Defined Contribution Plan Employer Matching Contribution Percent
DefinedContributionPlanEmployerMatchingContributionPercent
|
0.05 | ||
us-gaap |
Defined Contribution Plan Employer Matching Contribution Percent Of Match
DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
|
1 | ||
us-gaap |
Defined Contribution Plan Employer Matching Contribution Percent Of Match
DefinedContributionPlanEmployerMatchingContributionPercentOfMatch
|
0.50 | ||
us-gaap |
Defined Contribution Plan Employer Matching Contribution Percent
DefinedContributionPlanEmployerMatchingContributionPercent
|
0.05 | ||
CY2023 | us-gaap |
Defined Benefit Plan Amounts Recognized In Other Comprehensive Income Loss Net Gain Loss Before Tax
DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax
|
-1915000 | usd |
CY2022 | us-gaap |
Defined Benefit Plan Amounts Recognized In Other Comprehensive Income Loss Net Gain Loss Before Tax
DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax
|
495000 | usd |
CY2021 | us-gaap |
Defined Benefit Plan Amounts Recognized In Other Comprehensive Income Loss Net Gain Loss Before Tax
DefinedBenefitPlanAmountsRecognizedInOtherComprehensiveIncomeLossNetGainLossBeforeTax
|
5112000 | usd |
CY2023 | nx |
Defined Benefit Plan Amortizationof Gainslosses Net
DefinedBenefitPlanAmortizationofGainslossesNet
|
-42000 | usd |
CY2022 | nx |
Defined Benefit Plan Amortizationof Gainslosses Net
DefinedBenefitPlanAmortizationofGainslossesNet
|
-6000 | usd |
CY2021 | nx |
Defined Benefit Plan Amortizationof Gainslosses Net
DefinedBenefitPlanAmortizationofGainslossesNet
|
-143000 | usd |
CY2023 | us-gaap |
Defined Benefit Plan Recognized Net Gain Loss Due To Settlements1
DefinedBenefitPlanRecognizedNetGainLossDueToSettlements1
|
-5431000 | usd |
CY2023 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
|
3558000 | usd |
CY2022 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
|
897000 | usd |
CY2021 | us-gaap |
Other Comprehensive Income Loss Pension And Other Postretirement Benefit Plans Adjustment Before Tax
OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentBeforeTax
|
5477000 | usd |
CY2023Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0.0536 | |
CY2021Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationDiscountRate
|
0.0277 | |
CY2023 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
|
0.0536 | |
CY2022 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
|
0.0277 | |
CY2021 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Discount Rate
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostDiscountRate
|
0.0260 | |
CY2023Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Rate Of Compensation Increase
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease
|
0 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Rate Of Compensation Increase
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease
|
0 | |
CY2021Q4 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Benefit Obligation Rate Of Compensation Increase
DefinedBenefitPlanAssumptionsUsedCalculatingBenefitObligationRateOfCompensationIncrease
|
0 | |
CY2023 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Rate Of Compensation Increase
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
|
0 | |
CY2022 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Rate Of Compensation Increase
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
|
0 | |
CY2021 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Rate Of Compensation Increase
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostRateOfCompensationIncrease
|
0 | |
CY2023 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.0550 | |
CY2022 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.0550 | |
CY2021 | us-gaap |
Defined Benefit Plan Assumptions Used Calculating Net Periodic Benefit Cost Expected Long Term Return On Assets
DefinedBenefitPlanAssumptionsUsedCalculatingNetPeriodicBenefitCostExpectedLongTermReturnOnAssets
|
0.0600 | |
CY2022Q4 | us-gaap |
Defined Benefit Plan Fair Value Of Plan Assets
DefinedBenefitPlanFairValueOfPlanAssets
|
28612000 | usd |
CY2023 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
6500000 | usd |
CY2022 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
6800000 | usd |
CY2021 | us-gaap |
Defined Contribution Plan Employer Discretionary Contribution Amount
DefinedContributionPlanEmployerDiscretionaryContributionAmount
|
6300000 | usd |
CY2023Q4 | us-gaap |
Other Deferred Compensation Arrangements Liability Current And Noncurrent
OtherDeferredCompensationArrangementsLiabilityCurrentAndNoncurrent
|
2000000 | usd |
CY2022Q4 | us-gaap |
Other Deferred Compensation Arrangements Liability Current And Noncurrent
OtherDeferredCompensationArrangementsLiabilityCurrentAndNoncurrent
|
1900000 | usd |
CY2023Q4 | us-gaap |
Deferred Compensation Liability Current And Noncurrent
DeferredCompensationLiabilityCurrentAndNoncurrent
|
3900000 | usd |
CY2022Q4 | us-gaap |
Deferred Compensation Liability Current And Noncurrent
DeferredCompensationLiabilityCurrentAndNoncurrent
|
3300000 | usd |
CY2023 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
2631000 | usd |
CY2022 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
11553000 | usd |
CY2021 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
10993000 | usd |
CY2023 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
1860000 | usd |
CY2022 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
740000 | usd |
CY2021 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
3447000 | usd |
CY2023 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
4907000 | usd |
CY2022 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
7037000 | usd |
CY2021 | us-gaap |
Current Foreign Tax Expense Benefit
CurrentForeignTaxExpenseBenefit
|
6889000 | usd |
CY2023 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
9398000 | usd |
CY2022 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
19330000 | usd |
CY2021 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
21329000 | usd |
CY2023 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
4637000 | usd |
CY2022 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
2127000 | usd |
CY2021 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-842000 | usd |
CY2023 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
1015000 | usd |
CY2022 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-229000 | usd |
CY2021 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-277000 | usd |
CY2023 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
-505000 | usd |
CY2022 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
199000 | usd |
CY2021 | us-gaap |
Deferred Foreign Income Tax Expense Benefit
DeferredForeignIncomeTaxExpenseBenefit
|
2904000 | usd |
CY2023 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
5147000 | usd |
CY2022 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
2097000 | usd |
CY2021 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
1785000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
14545000 | usd |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
21427000 | usd |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
23114000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
42586000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
64850000 | usd |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Domestic
IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
|
36879000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
54460000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
44913000 | usd |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Foreign
IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign
|
43215000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
97046000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
109763000 | usd |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
80094000 | usd |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.210 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.210 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation At Federal Statutory Income Tax Rate
EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate
|
0.210 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.018 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.016 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation State And Local Income Taxes
EffectiveIncomeTaxRateReconciliationStateAndLocalIncomeTaxes
|
0.023 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Foreign Income Tax Rate Differential
EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
|
0.011 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Foreign Income Tax Rate Differential
EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
|
0.003 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Foreign Income Tax Rate Differential
EffectiveIncomeTaxRateReconciliationForeignIncomeTaxRateDifferential
|
0.005 | |
CY2023 | nx |
Effective Income Tax Rate Reconciliation Uk Patent Box Benefit Percent
EffectiveIncomeTaxRateReconciliationUKPatentBoxBenefitPercent
|
-0.059 | |
CY2022 | nx |
Effective Income Tax Rate Reconciliation Uk Patent Box Benefit Percent
EffectiveIncomeTaxRateReconciliationUKPatentBoxBenefitPercent
|
-0.012 | |
CY2021 | nx |
Effective Income Tax Rate Reconciliation Uk Patent Box Benefit Percent
EffectiveIncomeTaxRateReconciliationUKPatentBoxBenefitPercent
|
-0.014 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Tax Credits
EffectiveIncomeTaxRateReconciliationTaxCredits
|
0.049 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Tax Credits
EffectiveIncomeTaxRateReconciliationTaxCredits
|
0.032 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Tax Credits
EffectiveIncomeTaxRateReconciliationTaxCredits
|
0.042 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Gilti Percent
EffectiveIncomeTaxRateReconciliationGiltiPercent
|
0.046 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Gilti Percent
EffectiveIncomeTaxRateReconciliationGiltiPercent
|
0.032 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Gilti Percent
EffectiveIncomeTaxRateReconciliationGiltiPercent
|
0.042 | |
CY2023 | nx |
Effective Income Tax Rate Reconciliation Permanent Differences
EffectiveIncomeTaxRateReconciliationPermanentDifferences
|
0.013 | |
CY2022 | nx |
Effective Income Tax Rate Reconciliation Permanent Differences
EffectiveIncomeTaxRateReconciliationPermanentDifferences
|
0.006 | |
CY2021 | nx |
Effective Income Tax Rate Reconciliation Permanent Differences
EffectiveIncomeTaxRateReconciliationPermanentDifferences
|
0.017 | |
CY2023 | nx |
Effective Income Tax Rate Reconciliation Tax Return To Accrual Adjustments
EffectiveIncomeTaxRateReconciliationTaxReturnToAccrualAdjustments
|
-0.023 | |
CY2022 | nx |
Effective Income Tax Rate Reconciliation Tax Return To Accrual Adjustments
EffectiveIncomeTaxRateReconciliationTaxReturnToAccrualAdjustments
|
-0.030 | |
CY2021 | nx |
Effective Income Tax Rate Reconciliation Tax Return To Accrual Adjustments
EffectiveIncomeTaxRateReconciliationTaxReturnToAccrualAdjustments
|
-0.015 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Change In Enacted Tax Rate
EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
|
0 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Change In Enacted Tax Rate
EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
|
0 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Change In Enacted Tax Rate
EffectiveIncomeTaxRateReconciliationChangeInEnactedTaxRate
|
0.039 | |
CY2023 | nx |
Effective Income Tax Rate Reconciliation Change In Uncertain Tax Position
EffectiveIncomeTaxRateReconciliationChangeInUncertainTaxPosition
|
-0.011 | |
CY2022 | nx |
Effective Income Tax Rate Reconciliation Change In Uncertain Tax Position
EffectiveIncomeTaxRateReconciliationChangeInUncertainTaxPosition
|
0 | |
CY2021 | nx |
Effective Income Tax Rate Reconciliation Change In Uncertain Tax Position
EffectiveIncomeTaxRateReconciliationChangeInUncertainTaxPosition
|
0.011 | |
CY2023 | us-gaap |
Effective Income Tax Rate Reconciliation Other Adjustments
EffectiveIncomeTaxRateReconciliationOtherAdjustments
|
-0.006 | |
CY2022 | us-gaap |
Effective Income Tax Rate Reconciliation Other Adjustments
EffectiveIncomeTaxRateReconciliationOtherAdjustments
|
0.002 | |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Other Adjustments
EffectiveIncomeTaxRateReconciliationOtherAdjustments
|
0.013 | |
CY2023 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.150 | |
CY2022 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.195 | |
CY2021 | us-gaap |
Effective Income Tax Rate Continuing Operations
EffectiveIncomeTaxRateContinuingOperations
|
0.289 | |
CY2023 | us-gaap |
Foreign Earnings Repatriated
ForeignEarningsRepatriated
|
21300000 | usd |
CY2022 | us-gaap |
Foreign Earnings Repatriated
ForeignEarningsRepatriated
|
19800000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Employee Compensation
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation
|
6148000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Employee Compensation
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation
|
8046000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Liabilities
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
|
1130000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Liabilities
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
|
1430000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Pensions
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions
|
27000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Pensions
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsPensions
|
1426000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
1159000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Inventory
DeferredTaxAssetsInventory
|
1409000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
1203000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Operating Loss Carryforwards
DeferredTaxAssetsOperatingLossCarryforwards
|
1589000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Other
DeferredTaxAssetsTaxDeferredExpenseOther
|
98000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Other
DeferredTaxAssetsTaxDeferredExpenseOther
|
0 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
11840000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Gross
DeferredTaxAssetsGross
|
13900000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
585000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Valuation Allowance
DeferredTaxAssetsValuationAllowance
|
534000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
11255000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
13366000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
21480000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
15467000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
|
18908000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Goodwill And Intangible Assets
DeferredTaxLiabilitiesGoodwillAndIntangibleAssets
|
20162000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
0 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities Other
DeferredTaxLiabilitiesOther
|
14000 | usd |
CY2023Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
40388000 | usd |
CY2022Q4 | us-gaap |
Deferred Income Tax Liabilities
DeferredIncomeTaxLiabilities
|
35643000 | usd |
CY2023Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
29133000 | usd |
CY2022Q4 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
22277000 | usd |
CY2023Q4 | us-gaap |
Operating Loss Carryforwards
OperatingLossCarryforwards
|
24900000 | usd |
CY2020Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
522000 | usd |
CY2021 | us-gaap |
Unrecognized Tax Benefits Increases Resulting From Prior Period Tax Positions
UnrecognizedTaxBenefitsIncreasesResultingFromPriorPeriodTaxPositions
|
953000 | usd |
CY2021 | us-gaap |
Unrecognized Tax Benefits Reductions Resulting From Lapse Of Applicable Statute Of Limitations
UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
|
87000 | usd |
CY2021Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
1388000 | usd |
CY2022 | us-gaap |
Unrecognized Tax Benefits Reductions Resulting From Lapse Of Applicable Statute Of Limitations
UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
|
27000 | usd |
CY2022Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
1361000 | usd |
CY2023 | us-gaap |
Unrecognized Tax Benefits Reductions Resulting From Lapse Of Applicable Statute Of Limitations
UnrecognizedTaxBenefitsReductionsResultingFromLapseOfApplicableStatuteOfLimitations
|
1111000 | usd |
CY2023Q4 | us-gaap |
Unrecognized Tax Benefits
UnrecognizedTaxBenefits
|
250000 | usd |
CY2023Q4 | us-gaap |
Liability For Uncertain Tax Positions Noncurrent
LiabilityForUncertainTaxPositionsNoncurrent
|
200000 | usd |
CY2023 | nx |
Amount Purchased Under Purchase Obligations
AmountPurchasedUnderPurchaseObligations
|
10100000 | usd |
CY2022 | nx |
Amount Purchased Under Purchase Obligations
AmountPurchasedUnderPurchaseObligations
|
11000000 | usd |
CY2023Q4 | us-gaap |
Unrecorded Unconditional Purchase Obligation Balance On First Anniversary
UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary
|
7900000 | usd |
CY2022Q4 | us-gaap |
Unrecorded Unconditional Purchase Obligation Balance On First Anniversary
UnrecordedUnconditionalPurchaseObligationBalanceOnFirstAnniversary
|
7600000 | usd |
CY2023 | nx |
Cumulative Asset Retirement Obligation Deprecation And Accretion Period
CumulativeAssetRetirementObligationDeprecationAndAccretionPeriod
|
P7Y | |
CY2023Q4 | nx |
Cumulativeassetretirmentobligation
Cumulativeassetretirmentobligation
|
2300000 | usd |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Award Vesting Period1
ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1
|
P3Y | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Number Of Shares Authorized
ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
|
3139895 | shares |
CY2020Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
1095329 | shares |
CY2020Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
18.88 | |
CY2020 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P3Y7M6D | |
CY2020Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
561000 | usd |
CY2021 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
865393 | shares |
CY2021 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
18.80 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
11632 | shares |
CY2021 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
18.22 | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
218304 | shares |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
19.37 | |
CY2021 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P3Y4M24D | |
CY2021Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
297000 | usd |
CY2022 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
35600 | shares |
CY2022 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
19.36 | |
CY2022 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
7587 | shares |
CY2022 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
19.04 | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
175117 | shares |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
19.39 | |
CY2022 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P2Y10M24D | |
CY2022Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
485000 | usd |
CY2023 | us-gaap |
Stock Issued During Period Shares Stock Options Exercised
StockIssuedDuringPeriodSharesStockOptionsExercised
|
63587 | shares |
CY2023 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Exercises In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice
|
19.12 | |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Forfeitures In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresInPeriod
|
4000 | shares |
CY2023 | us-gaap |
Share Based Compensation Arrangements By Share Based Payment Award Options Forfeitures In Period Weighted Average Exercise Price
ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsForfeituresInPeriodWeightedAverageExercisePrice
|
21.11 | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber
|
107530 | shares |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice
|
19.48 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Outstanding Weighted Average Remaining Contractual Term2
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2
|
P2Y3M18D | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Outstanding Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue
|
792000 | usd |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Vested And Expected To Vest Outstanding Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingNumber
|
107530 | shares |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Vested And Expected To Vest Outstanding Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice
|
19.48 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Vested And Expected To Vest Outstanding Weighted Average Remaining Contractual Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
|
P2Y3M18D | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Vested And Expected To Vest Outstanding Aggregate Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue
|
792000 | usd |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber
|
107530 | shares |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercisable Weighted Average Exercise Price
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice
|
19.48 | |
CY2023 | us-gaap |
Sharebased Compensation Arrangement By Sharebased Payment Award Options Vested And Expected To Vest Outstanding Weighted Average Remaining Contractual Term1
SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1
|
P2Y3M18D | |
CY2023Q4 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Vested And Expected To Vest Exercisable Aggregate Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableAggregateIntrinsicValue
|
792000 | usd |
CY2023 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
500000 | usd |
CY2022 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
200000 | usd |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Options Exercises In Period Total Intrinsic Value
ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
|
4200000 | usd |
CY2023 | nx |
Performance Shares Settledin Cash
PerformanceSharesSettledinCash
|
1 | |
CY2020Q4 | nx |
Return On Net Assets
ReturnOnNetAssets
|
20.68 | |
CY2021Q4 | nx |
Return On Net Assets
ReturnOnNetAssets
|
22.54 | |
CY2022Q4 | nx |
Return On Net Assets
ReturnOnNetAssets
|
23.49 | |
CY2021 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
42732000 | usd |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
81870000 | usd |
CY2023 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
9313000 | usd |
CY2022 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
5832000 | usd |
CY2021 | us-gaap |
Allocated Share Based Compensation Expense
AllocatedShareBasedCompensationExpense
|
7200000 | usd |
CY2023 | nx |
Incometaxeffect
Incometaxeffect
|
1396000 | usd |
CY2022 | nx |
Incometaxeffect
Incometaxeffect
|
1138000 | usd |
CY2021 | nx |
Incometaxeffect
Incometaxeffect
|
2078000 | usd |
CY2023 | us-gaap |
Allocated Share Based Compensation Expense Net Of Tax
AllocatedShareBasedCompensationExpenseNetOfTax
|
7917000 | usd |
CY2022 | us-gaap |
Allocated Share Based Compensation Expense Net Of Tax
AllocatedShareBasedCompensationExpenseNetOfTax
|
4694000 | usd |
CY2021 | us-gaap |
Allocated Share Based Compensation Expense Net Of Tax
AllocatedShareBasedCompensationExpenseNetOfTax
|
5122000 | usd |
CY2023Q4 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
125000000 | shares |
CY2023Q4 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.01 | |
CY2023Q4 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
1000000 | shares |
CY2023Q4 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0 | |
CY2023Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
37176958 | shares |
CY2022Q4 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
37211056 | shares |
CY2023Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
33011119 | shares |
CY2022Q4 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
33129250 | shares |
CY2021Q4 | us-gaap |
Stock Repurchase Program Authorized Amount1
StockRepurchaseProgramAuthorizedAmount1
|
75000000 | usd |
CY2023 | us-gaap |
Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
|
275000 | shares |
CY2022 | us-gaap |
Stock Repurchased During Period Shares
StockRepurchasedDuringPeriodShares
|
291000 | shares |
CY2023 | us-gaap |
Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
|
5600000 | usd |
CY2022 | us-gaap |
Stock Repurchased During Period Value
StockRepurchasedDuringPeriodValue
|
6600000 | usd |
CY2021 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
24008000 | usd |
CY2021Q4 | us-gaap |
Goodwill
Goodwill
|
149205000 | usd |
CY2022 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
-11350000 | usd |
CY2023 | us-gaap |
Foreign Currency Transaction Gain Loss Before Tax
ForeignCurrencyTransactionGainLossBeforeTax
|
-146000 | usd |
CY2022 | us-gaap |
Foreign Currency Transaction Gain Loss Before Tax
ForeignCurrencyTransactionGainLossBeforeTax
|
386000 | usd |
CY2021 | us-gaap |
Foreign Currency Transaction Gain Loss Before Tax
ForeignCurrencyTransactionGainLossBeforeTax
|
-98000 | usd |
CY2023 | us-gaap |
Gain Loss On Foreign Currency Derivative Instruments Not Designated As Hedging Instruments
GainLossOnForeignCurrencyDerivativeInstrumentsNotDesignatedAsHedgingInstruments
|
1000 | usd |
CY2022 | us-gaap |
Gain Loss On Foreign Currency Derivative Instruments Not Designated As Hedging Instruments
GainLossOnForeignCurrencyDerivativeInstrumentsNotDesignatedAsHedgingInstruments
|
19000 | usd |
CY2021 | us-gaap |
Gain Loss On Foreign Currency Derivative Instruments Not Designated As Hedging Instruments
GainLossOnForeignCurrencyDerivativeInstrumentsNotDesignatedAsHedgingInstruments
|
0 | usd |
CY2023 | nx |
Pension Service Benefit
PensionServiceBenefit
|
-5566000 | usd |
CY2022 | nx |
Pension Service Benefit
PensionServiceBenefit
|
783000 | usd |
CY2021 | nx |
Pension Service Benefit
PensionServiceBenefit
|
839000 | usd |
CY2023 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
248000 | usd |
CY2022 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
19000 | usd |
CY2021 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
5000 | usd |
CY2023 | us-gaap |
Other Noncash Income Expense
OtherNoncashIncomeExpense
|
-56000 | usd |
CY2022 | us-gaap |
Other Noncash Income Expense
OtherNoncashIncomeExpense
|
-166000 | usd |
CY2021 | us-gaap |
Other Noncash Income Expense
OtherNoncashIncomeExpense
|
8000 | usd |
CY2023 | us-gaap |
Other Nonoperating Gains Losses
OtherNonoperatingGainsLosses
|
-5519000 | usd |
CY2022 | us-gaap |
Other Nonoperating Gains Losses
OtherNonoperatingGainsLosses
|
1041000 | usd |
CY2021 | us-gaap |
Other Nonoperating Gains Losses
OtherNonoperatingGainsLosses
|
754000 | usd |
CY2023 | us-gaap |
Number Of Reportable Segments
NumberOfReportableSegments
|
3 | segment |
CY2023 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
23500000 | usd |
CY2022 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
24500000 | usd |
CY2021 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
21600000 | usd |
CY2023 | us-gaap |
Revenues
Revenues
|
1130583000 | usd |
CY2023 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
42866000 | usd |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
110701000 | usd |
CY2023 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
37390000 | usd |
CY2023Q4 | us-gaap |
Assets
Assets
|
831143000 | usd |
CY2022 | us-gaap |
Revenues
Revenues
|
1221502000 | usd |
CY2022 | us-gaap |
Depreciation Depletion And Amortization
DepreciationDepletionAndAmortization
|
40109000 | usd |
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
111281000 | usd |
CY2022 | us-gaap |
Segment Expenditure Addition To Long Lived Assets
SegmentExpenditureAdditionToLongLivedAssets
|
33121000 | usd |
CY2022Q4 | us-gaap |
Assets
Assets
|
724617000 | usd |
CY2021 | us-gaap |
Revenues
Revenues
|
1072149000 | usd |
CY2022Q4 | us-gaap |
Goodwill
Goodwill
|
137855000 | usd |
CY2023 | us-gaap |
Goodwill Acquired During Period
GoodwillAcquiredDuringPeriod
|
41393000 | usd |
CY2023 | us-gaap |
Goodwill Foreign Currency Translation Gain Loss
GoodwillForeignCurrencyTranslationGainLoss
|
3708000 | usd |
CY2023Q4 | us-gaap |
Goodwill
Goodwill
|
182956000 | usd |
CY2023 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
110701000 | usd |
CY2022 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
111281000 | usd |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
81870000 | usd |
CY2023 | us-gaap |
Interest Expense
InterestExpense
|
8136000 | usd |
CY2022 | us-gaap |
Interest Expense
InterestExpense
|
2559000 | usd |
CY2021 | us-gaap |
Interest Expense
InterestExpense
|
2530000 | usd |
CY2023 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
-5519000 | usd |
CY2022 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
1041000 | usd |
CY2021 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
754000 | usd |
CY2023 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
14545000 | usd |
CY2022 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
21427000 | usd |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
23114000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Including Portion Attributable To Noncontrolling Interest
IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
|
82501000 | usd |
CY2022 | us-gaap |
Income Loss From Continuing Operations Including Portion Attributable To Noncontrolling Interest
IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
|
88336000 | usd |
CY2021 | us-gaap |
Income Loss From Continuing Operations Including Portion Attributable To Noncontrolling Interest
IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
|
56980000 | usd |
CY2023 | us-gaap |
Revenues
Revenues
|
1130583000 | usd |
CY2022 | us-gaap |
Revenues
Revenues
|
1221502000 | usd |
CY2021 | us-gaap |
Revenues
Revenues
|
1072149000 | usd |
CY2023Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
554355000 | usd |
CY2022Q4 | us-gaap |
Noncurrent Assets
NoncurrentAssets
|
439290000 | usd |
CY2023 | us-gaap |
Income Loss From Continuing Operations Including Portion Attributable To Noncontrolling Interest
IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
|
82501000 | usd |
CY2023 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
32819000 | shares |
CY2023 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
2.51 | |
CY2023 | us-gaap |
Income Loss From Continuing Operations Including Portion Attributable To Noncontrolling Interest
IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
|
82501000 | usd |
CY2023 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
33026000 | shares |
CY2023 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
2.50 | |
CY2023 | ecd |
Rule10b51 Arr Adopted Flag
Rule10b51ArrAdoptedFlag
|
false | |
CY2023 | ecd |
Non Rule10b51 Arr Adopted Flag
NonRule10b51ArrAdoptedFlag
|
false | |
CY2023 | ecd |
Rule10b51 Arr Trmntd Flag
Rule10b51ArrTrmntdFlag
|
false | |
CY2023 | ecd |
Non Rule10b51 Arr Trmntd Flag
NonRule10b51ArrTrmntdFlag
|
false |