XML 57 R43.htm IDEA: XBRL DOCUMENT
v3.24.0.1

Note 18 - Accumulated Other Comprehensive Loss (Tables) | 12 Months Ended
--- | ---
Dec. 31, 2023
Notes Tables |
Schedule of Accumulated Other Comprehensive Income (Loss) [Table Text Block] |
|  | December 31, |
|  | 2023 |  |  | 2022 |
Pension liability adjustment, net of income tax benefit of $482 and $592 |  | $ | (1,193 | ) |  | $ | (1,532 | )
Unrealized gain (loss) on foreign currency forward contracts designated as cash flow hedges, net of income tax (expense) benefit of $12 and $(33) |  |  | (13 | ) |  |  | 94 |
Unrealized gain on interest rate swaps designated as cash flow hedges, net of income tax expense of $79 and $213 |  |  | 246 |  |  |  | 649 |
Total |  | $ | (960 | ) |  | $ | (789 | )
Schedule of Changes in Accumulated Other Comprehensive Income Loss [Table Text Block] |
|  | Pension Liability Adjustment |  |  | Unrealized Gain (Loss) on Foreign Currency Forward Contracts Designated as Cash Flow Hedges |  |  | Unrealized Gain on Interest Rate Swaps Designated as Cash Flow Hedges |  |  | Total |
Balances, December 31, 2021 |  | $ | (1,487 | ) |  | $ | (195 | ) |  | $ | - |  |  | $ | (1,682 | )
Other comprehensive income (loss) before reclassifications |  |  | 41 |  |  |  | (100 | ) |  |  | 678 |  |  |  | 619 |
Amounts reclassified from Accumulated other comprehensive loss |  |  | (86 | ) |  |  | 389 |  |  |  | (29 | ) |  |  | 274 |
Net current period adjustments to Other comprehensive income |  |  | (45 | ) |  |  | 289 |  |  |  | 649 |  |  |  | 893 |
Balances, December 31, 2022 |  |  | (1,532 | ) |  |  | 94 |  |  |  | 649 |  |  |  | (789 | )
Other comprehensive income (loss) before reclassifications |  |  | 338 |  |  |  | (115 | ) |  |  | 142 |  |  |  | 365 |
Amounts reclassified from Accumulated other comprehensive loss |  |  | 1 |  |  |  | 8 |  |  |  | (545 | ) |  |  | (536 | )
Net current period adjustments to Other comprehensive loss |  |  | 339 |  |  |  | (107 | ) |  |  | (403 | ) |  |  | (171 | )
Balances, December 31, 2023 |  | $ | (1,193 | ) |  | $ | (13 | ) |  | $ | 246 |  |  | $ | (960 | )
Reclassification out of Accumulated Other Comprehensive Income [Table Text Block] |
|  | Amount reclassified from Accumulated Other Comprehensive Loss |  | Affected line item in the Consolidated
Details about Accumulated Other |  | Year Ended December 31, |  | Statements
Comprehensive Loss Components |  | 2023 |  |  | 2022 |  |  | 2021 |  | of Operations
Pension liability adjustment: |  |  |  |  |  |  |  |  |  |  |  |  |
Net periodic pension cost: |  |  |  |  |  |  |  |  |  |  |  |  |
Service cost |  | $ | (13 | ) |  | $ | (13 | ) |  | $ | (7 | ) | Cost of sales
Non-service cost |  |  | 11 |  |  |  | 127 |  |  |  | 110 |  | Other income
Associated income tax (expense) benefit |  |  | 1 |  |  |  | (28 | ) |  |  | (25 | ) | Income tax expense
|  |  | (1 | ) |  |  | 86 |  |  |  | 78 |  |
Unrealized gain (loss) on foreign currency forward contracts: |  |  |  |  |  |  |  |  |  |  |  |  |
Gain (loss) on cash flow hedges |  |  | 99 |  |  |  | 163 |  |  |  | (72 | ) | Net sales
Loss on cash flow hedges |  |  | (109 | ) |  |  | (680 | ) |  |  | - |  | Property and equipment
Associated income tax benefit |  |  | 2 |  |  |  | 128 |  |  |  | 18 |  | Income tax expense
|  |  | (8 | ) |  |  | (389 | ) |  |  | (54 | ) |
Unrealized gain on interest rate swaps: |  |  |  |  |  |  |  |  |  |  |  |  |
Gain on cash flow hedges |  |  | 719 |  |  |  | 39 |  |  |  | - |  | Interest expense
Associated income tax expense |  |  | (174 | ) |  |  | (10 | ) |  |  | - |  | Income tax expense
|  |  | 545 |  |  |  | 29 |  |  |  | - |  |
Total reclassifications for the period |  | $ | 536 |  |  | $ | (274 | ) |  | $ | 24 |  |

X
- Definition Represents schedule of changes in accumulated other comprehensive income loss. + References No definition available. + Details
Name: | nwpx_ScheduleOfChangesInAccumulatedOtherComprehensiveIncomeLossTableTextBlock
Namespace Prefix: | nwpx_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of information about items reclassified out of accumulated other comprehensive income (loss). + References No definition available. + Details
Name: | us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the components of accumulated other comprehensive income (loss). + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 14A -Publisher FASB -URI https://asc.fasb.org//1943274/2147482790/220-10-45-14A Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 830 -SubTopic 30 -Name Accounting Standards Codification -Section 50 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147481674/830-30-50-1 Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 830 -SubTopic 30 -Name Accounting Standards Codification -Section 45 -Paragraph 20 -Publisher FASB -URI https://asc.fasb.org//1943274/2147481694/830-30-45-20 + Details
Name: | us-gaap_ScheduleOfAccumulatedOtherComprehensiveIncomeLossTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

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