XML 36 R25.htm IDEA: XBRL DOCUMENT
v3.25.2

Note 6 - Share-based Compensation (Tables) | 6 Months Ended
--- | ---
Jun. 30, 2025
Notes Tables |
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] |
|  | Three Months Ended June 30, |  |  | Six Months Ended June 30, |
|  | 2025 |  |  | 2024 |  |  | 2025 |  |  | 2024 |
Cost of sales |  | $ | 275 |  |  | $ | 363 |  |  | $ | 581 |  |  | $ | 715 |
Selling, general, and administrative expense |  |  | 1,279 |  |  |  | 1,286 |  |  |  | 2,111 |  |  |  | 1,959 |
Total |  | $ | 1,554 |  |  | $ | 1,649 |  |  | $ | 2,692 |  |  | $ | 2,674 |
Schedule of Unvested Restricted Stock Units and Performance Share Awards Activity [Table Text Block] |
|  | Number of RSUs and PSAs (1) |  |  | Weighted-Average Grant Date Fair Value |
Unvested RSUs and PSAs as of December 31, 2024 |  |  | 240,071 |  |  | $ | 31.89 |
RSUs and PSAs granted |  |  | 107,065 |  |  |  | 42.41 |
RSUs and PSAs vested (2) |  |  | (117,339 | ) |  |  | 31.24 |
Unvested RSUs and PSAs as of June 30, 2025 |  |  | 229,797 |  |  |  | 37.12 |

X
- Definition Tabular disclosure of the change in restricted stock units (RSUs) and performance share awards (PSAs). + References No definition available. + Details
Name: | nwpx_ScheduleOfUnvestedRestrictedStockUnitsAndPerformanceShareAwardsActivityTableTextBlock
Namespace Prefix: | nwpx_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (h)(1) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480429/718-10-50-2 + Details
Name: | us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
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