XML 76 R80.htm IDEA: XBRL DOCUMENT v2.4.1.9
Accumulated Other Comprehensive Loss - Schedule of Reclassifications of Accumulated Other Comprehensive Income (Loss) (Detail) (USD $)
In Thousands, unless otherwise specified
3 Months Ended 12 Months Ended
Dec. 31, 2014
Sep. 30, 2014
Jun. 30, 2014
Mar. 31, 2014
Dec. 31, 2013
Sep. 30, 2013
Jun. 30, 2013
Mar. 31, 2013
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Cost of Sales                 $ (362,722)us-gaap_CostOfRevenue $ (299,209)us-gaap_CostOfRevenue $ (329,794)us-gaap_CostOfRevenue
Tax (expense) benefit                 (4,651)us-gaap_IncomeTaxExpenseBenefit (12,358)us-gaap_IncomeTaxExpenseBenefit (8,388)us-gaap_IncomeTaxExpenseBenefit
Net Income (loss) (13,996)us-gaap_NetIncomeLoss 5,021us-gaap_NetIncomeLoss 3,192us-gaap_NetIncomeLoss (12,104)us-gaap_NetIncomeLoss (17,006)us-gaap_NetIncomeLoss 1,016us-gaap_NetIncomeLoss 5,561us-gaap_NetIncomeLoss 9,506us-gaap_NetIncomeLoss (17,887)us-gaap_NetIncomeLoss (923)us-gaap_NetIncomeLoss 16,244us-gaap_NetIncomeLoss
Net sales 102,158us-gaap_SalesRevenueNet 116,505us-gaap_SalesRevenueNet 101,988us-gaap_SalesRevenueNet 82,647us-gaap_SalesRevenueNet 85,641us-gaap_SalesRevenueNet 78,527us-gaap_SalesRevenueNet 87,942us-gaap_SalesRevenueNet 107,335us-gaap_SalesRevenueNet 403,298us-gaap_SalesRevenueNet 359,445us-gaap_SalesRevenueNet 388,902us-gaap_SalesRevenueNet
Amount Reclassified from Accumulated Other Comprehensive Income (Loss) [Member]                      
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Net Income (loss)                 (112)us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
(167)us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
(334)us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
Amount Reclassified from Accumulated Other Comprehensive Income (Loss) [Member] | Defined Benefit Pension Items [Member]                      
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Net Income (loss)                 (114)us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(239)us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(313)us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Amount Reclassified from Accumulated Other Comprehensive Income (Loss) [Member] | Defined Benefit Pension Items [Member] | Net Periodic Pension Cost [Member]                      
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Cost of Sales                 (182)us-gaap_CostOfRevenue
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_PensionCostsMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(372)us-gaap_CostOfRevenue
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_PensionCostsMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
(417)us-gaap_CostOfRevenue
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_PensionCostsMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Amount Reclassified from Accumulated Other Comprehensive Income (Loss) [Member] | Defined Benefit Pension Items [Member] | Associated Tax Expense Benefit [Member]                      
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Tax (expense) benefit                 68us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= nwpx_IncomeTaxExpenseBenefitMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
133us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= nwpx_IncomeTaxExpenseBenefitMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
104us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= nwpx_IncomeTaxExpenseBenefitMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember
Amount Reclassified from Accumulated Other Comprehensive Income (Loss) [Member] | Gains (Losses) on Cash Flow Hedges [Member]                      
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Net Income (loss)                 2us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
72us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(21)us-gaap_NetIncomeLoss
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Amount Reclassified from Accumulated Other Comprehensive Income (Loss) [Member] | Gains (Losses) on Cash Flow Hedges [Member] | Associated Tax Expense Benefit [Member]                      
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Tax (expense) benefit                 (1)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= nwpx_IncomeTaxExpenseBenefitMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(42)us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= nwpx_IncomeTaxExpenseBenefitMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
19us-gaap_IncomeTaxExpenseBenefit
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= nwpx_IncomeTaxExpenseBenefitMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Amount Reclassified from Accumulated Other Comprehensive Income (Loss) [Member] | Gains (Losses) on Cash Flow Hedges [Member] | Gain on Cash Flow Derivative [Member]                      
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Net sales                 6us-gaap_SalesRevenueNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_GainLossOnDerivativeInstrumentsMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
114us-gaap_SalesRevenueNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_GainLossOnDerivativeInstrumentsMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
(40)us-gaap_SalesRevenueNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_GainLossOnDerivativeInstrumentsMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember
Amount Reclassified from Accumulated Other Comprehensive Income (Loss) [Member] | Gains (Losses) on Cash Flow Hedges [Member] | Hedge ineffectiveness [Member]                      
Reclassification Adjustment out of Accumulated Other Comprehensive Income [Line Items]                      
Net sales                 $ (3)us-gaap_SalesRevenueNet
/ us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis
= us-gaap_CashFlowHedgingMember
/ us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis
= us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_AccumulatedNetGainLossFromDesignatedOrQualifyingCashFlowHedgesMember