XML 38 R86.htm IDEA: XBRL DOCUMENT v2.4.1.9
Covered Loans Receivable (Troubled Debt Restructured Loans) (Details) (USD $)
12 Months Ended
Dec. 31, 2014
contract
Dec. 31, 2013
contract
Covered Loans    
Financing Receivable, Modifications [Line Items]    
Performing TDRs, Covered TDRs $ 10,289,000hfwa_FinancingReceivableModificationsAccruingRecordedInvestment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
$ 4,211,000hfwa_FinancingReceivableModificationsAccruingRecordedInvestment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
Nonaccrual TDRs, Covered TDRs 2,246,000hfwa_FinancingReceivableModificationsNonAccruingRecordedInvestment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
7,000hfwa_FinancingReceivableModificationsNonAccruingRecordedInvestment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
Performing TDRs, Allowance for loan losses on covered TDRs 1,000hfwa_AllowanceforLoanLossesonFinancingReceivableModificationsAccruingRecordedInvestment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
660,000hfwa_AllowanceforLoanLossesonFinancingReceivableModificationsAccruingRecordedInvestment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
Nonaccrual TDRs, Allowance for loan losses on covered TDRs 2,000hfwa_AllowanceforLoanLossesonFinancingReceivableModificationsNonAccruingRecordedInvestment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
0hfwa_AllowanceforLoanLossesonFinancingReceivableModificationsNonAccruingRecordedInvestment
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
Covered Loans | Troubled Debt Restructured Loans    
Financing Receivable, Modifications [Line Items]    
Unfunded commitments related to credits classified as covered TDRs 0us-gaap_LoansAndLeasesReceivableImpairedCommitmentToLend
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
0us-gaap_LoansAndLeasesReceivableImpairedCommitmentToLend
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
Number of Contracts 12us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
[1] 3us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
[1]
Outstanding Principal Balance 12,516,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
[1],[2] 3,792,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
[1],[2]
Number of loans modified that subsequently defaulted 0us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
0us-gaap_FinancingReceivableModificationsSubsequentDefaultNumberOfContracts1
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
Covered Loans | Troubled Debt Restructured Loans | Extended Maturity [Member]    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 1us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ hfwa_LoanRestructuringModificationAxis
= hfwa_ExtendedMaturityMember
[1]  
Related specific valuation allowance for TDRs 0us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ hfwa_LoanRestructuringModificationAxis
= hfwa_ExtendedMaturityMember
 
Covered Loans | Troubled Debt Restructured Loans | One-to-four Family Residential    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OneToFourFamilyResidentialMember
[1] 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OneToFourFamilyResidentialMember
[1]
Outstanding Principal Balance 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OneToFourFamilyResidentialMember
[1],[2] 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OneToFourFamilyResidentialMember
[1],[2]
Covered Loans | Troubled Debt Restructured Loans | Extended Maturity [Member]    
Financing Receivable, Modifications [Line Items]    
Number of Contracts   2us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_ExtendedMaturityMember
[1]
Outstanding Principal Balance   13,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_ExtendedMaturityMember
Related specific valuation allowance for TDRs 1,000us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_ExtendedMaturityMember
 
Covered Loans | Troubled Debt Restructured Loans | Commercial Business    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 11us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
3us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
[1]
Outstanding Principal Balance 12,088,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
3,792,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
[1],[2]
Covered Loans | Troubled Debt Restructured Loans | Commercial Business | Commercial and Industrial    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 7us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_CommercialAndIndustrialMember
[1] 3us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_CommercialAndIndustrialMember
[1]
Outstanding Principal Balance 3,394,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_CommercialAndIndustrialMember
[1],[2] 3,792,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_CommercialAndIndustrialMember
[1],[2]
Covered Loans | Troubled Debt Restructured Loans | Commercial Business | Owner-occupied Commercial Real Estate    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 2us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OwnerOccupiedCommercialRealEstateMember
[1] 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OwnerOccupiedCommercialRealEstateMember
[1]
Outstanding Principal Balance 1,133,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OwnerOccupiedCommercialRealEstateMember
[1],[2] 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OwnerOccupiedCommercialRealEstateMember
[1],[2]
Covered Loans | Troubled Debt Restructured Loans | Commercial Business | Non-owner Occupied Commercial Real Estate    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 2us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_NonOwnerOccupiedCommercialRealEstateMember
[1] 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_NonOwnerOccupiedCommercialRealEstateMember
[1]
Outstanding Principal Balance 7,561,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_NonOwnerOccupiedCommercialRealEstateMember
[1],[2] 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_CommercialBusinessMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_NonOwnerOccupiedCommercialRealEstateMember
[1],[2]
Covered Loans | Troubled Debt Restructured Loans | Real Estate Construction and Land Development    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 1us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
[1] 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
[1]
Outstanding Principal Balance 428,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
[1],[2] 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
[1],[2]
Covered Loans | Troubled Debt Restructured Loans | Real Estate Construction and Land Development | One-to-four Family Residential    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OneToFourFamilyResidentialMember
[1] 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OneToFourFamilyResidentialMember
[1]
Outstanding Principal Balance 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OneToFourFamilyResidentialMember
[1],[2] 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_OneToFourFamilyResidentialMember
[1],[2]
Covered Loans | Troubled Debt Restructured Loans | Real Estate Construction and Land Development | Five or More Family Residential and Commercial Properties    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 1us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_FiveOrMoreFamilyResidentialAndCommercialPropertiesMember
[1] 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_FiveOrMoreFamilyResidentialAndCommercialPropertiesMember
[1]
Outstanding Principal Balance 428,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_FiveOrMoreFamilyResidentialAndCommercialPropertiesMember
[1],[2] 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_RealEstateConstructionAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= hfwa_FiveOrMoreFamilyResidentialAndCommercialPropertiesMember
[1],[2]
Covered Loans | Troubled Debt Restructured Loans | Consumer    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_ConsumerMember
[1] 0us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_ConsumerMember
[1]
Outstanding Principal Balance 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_ConsumerMember
[1],[2] 0us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_CoveredloansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ us-gaap_ProductOrServiceAxis
= hfwa_ConsumerMember
[1],[2]
Purchased Impaired Covered Loans [Member] | Troubled Debt Restructured Loans | Washington Banking    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 11us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_PurchasedImpairedCoveredLoansMember
/ us-gaap_BusinessAcquisitionAxis
= hfwa_WashingtonBankingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
[1]  
Outstanding Principal Balance 10,300,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_PurchasedImpairedCoveredLoansMember
/ us-gaap_BusinessAcquisitionAxis
= hfwa_WashingtonBankingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
 
Related specific valuation allowance for TDRs 0us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_PurchasedImpairedCoveredLoansMember
/ us-gaap_BusinessAcquisitionAxis
= hfwa_WashingtonBankingMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
 
Purchased Impaired Covered Loans [Member] | Troubled Debt Restructured Loans | Payment Deferral    
Financing Receivable, Modifications [Line Items]    
Number of Contracts 4us-gaap_FinancingReceivableModificationsNumberOfContracts2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_PurchasedImpairedCoveredLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ hfwa_LoanRestructuringModificationAxis
= hfwa_PaymentDeferralMember
[1]  
Outstanding Principal Balance 7,700,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_PurchasedImpairedCoveredLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ hfwa_LoanRestructuringModificationAxis
= hfwa_PaymentDeferralMember
 
Purchased Impaired Covered Loans [Member] | Troubled Debt Restructured Loans | Extended Maturity [Member]    
Financing Receivable, Modifications [Line Items]    
Outstanding Principal Balance $ 2,200,000us-gaap_FinancingReceivableModificationsPostModificationRecordedInvestment2
/ us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis
= hfwa_PurchasedImpairedCoveredLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hfwa_TroubledDebtRestructuredLoansMember
/ hfwa_LoanRestructuringModificationAxis
= hfwa_ExtendedMaturityMember
 
[1] Number of contracts and outstanding principal balance represent loans which have balances as of year end as certain loans may have been paid-down or charged-off during the years ended December 31, 2014 and 2013.
[2] Includes subsequent payments after modifications and reflects the balance as of period end. As the Bank did not forgive any principal or interest balance as part of the loan modification, the Bank’s recorded investment in each loan at the date of modification (pre-modification) did not change as a result of the modification (post-modification).