XML 87 R70.htm IDEA: XBRL DOCUMENT
v3.25.0.1

Note 11 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details) - Not Designated as Hedging Instrument [Member] - USD ($) $ in Thousands | 12 Months Ended
--- | ---
Dec. 31, 2024 | Dec. 31, 2023 | Dec. 31, 2022
Gains (losses) recognized on derivatives | $ 514 | $ (98) | $ 19
Foreign Exchange Forward [Member] | Sales [Member] |  |  |
Gains (losses) recognized on derivatives | 238 | (708) | 660
Foreign Exchange Forward [Member] | Property and Equipment [Member] |  |  |
Gains (losses) recognized on derivatives | (43) | (109) | (680)
Interest Rate Swap [Member] | Interest Expense [Member] |  |  |
Gains (losses) recognized on derivatives | $ 319 | $ 719 | $ 39

X
- Definition Amount of realized and unrealized gain (loss) of derivative instruments not designated or qualifying as hedging instruments. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 4C -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4C Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Name Accounting Standards Codification -Section 50 -Paragraph 4CC -SubTopic 10 -Topic 815 -Publisher FASB -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4CC + Details
Name: | us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Details
Name: | us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_SalesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=nwpx_PropertyAndEquipmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_InterestExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |