XML 36 R44.htm IDEA: XBRL DOCUMENT v2.4.1.9
LOANS RECEIVABLE AND ALLOWANCE FOR LOAN LOSSES - Loan Portfolio Summarized by Aging Categories of Performing Loans and Nonaccrual Loans (Detail) (USD $)
In Thousands, unless otherwise specified
Mar. 31, 2015
Dec. 31, 2014
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current $ 712,234us-gaap_FinancingReceivableRecordedInvestmentCurrent $ 688,902us-gaap_FinancingReceivableRecordedInvestmentCurrent
30-59 Days Past Due 1,539us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue 1,203us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
60-89 Days Past Due 92us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue 409us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
Total Past Due 1,631us-gaap_FinancingReceivableRecordedInvestmentPastDue 1,612us-gaap_FinancingReceivableRecordedInvestmentPastDue
Non- Accrual 13,888us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus 14,432us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
Total Loans 727,753us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome 704,946us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
Commercial real estate    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Total Loans 340,069us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
322,006us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Commercial real estate | Owner-occupied    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 108,175us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
97,571us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
30-59 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Total Past Due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Non- Accrual 3,224us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
3,288us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Total Loans 111,399us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
100,859us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Commercial real estate | Non-owner occupied    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 149,212us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
142,621us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
30-59 Days Past Due 73us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Total Past Due 73us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Non- Accrual 1,636us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
1,680us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Total Loans 150,921us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
144,301us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Commercial real estate | Multi-family    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 28,222us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
27,211us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
30-59 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Total Past Due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Non- Accrual 721us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
320us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Total Loans 28,943us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
27,531us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_MultiFamilyMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Commercial real estate | Non-owner occupied residential    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 47,799us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
47,706us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
30-59 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
109us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
60-89 Days Past Due 45us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Total Past Due 45us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
109us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Non- Accrual 962us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
1,500us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Total Loans 48,806us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
49,315us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_NonOwnerOccupiedResidentialMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Acquisition and development    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Total Loans 32,122us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
30,161us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Acquisition and development | 1-4 family residential construction    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 5,883us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
5,924us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
30-59 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Total Past Due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Non- Accrual 0us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Total Loans 5,883us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
5,924us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_OneToFourFamilyResidentialConstructionMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Acquisition and development | Commercial and land development    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 26,158us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
24,114us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
30-59 Days Past Due 30us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Total Past Due 30us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Non- Accrual 51us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
123us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Total Loans 26,239us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
24,237us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_CommercialAndLandDevelopmentMember
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_AcquisitionAndDevelopmentPortfolioSegmentMember
Commercial and industrial    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 46,526us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
46,558us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
30-59 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
Total Past Due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
Non- Accrual 2,216us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
2,437us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
Total Loans 48,742us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
48,995us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_CommercialAndIndustrialPortfolioSegmentMember
Municipal    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 60,661us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
61,191us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
30-59 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
Total Past Due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
Non- Accrual 0us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
0us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
Total Loans 60,661us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
61,191us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= orrf_MunicipalMember
Residential mortgage    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Total Loans 240,287us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
236,702us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Residential mortgage | First lien    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 120,451us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
120,806us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
30-59 Days Past Due 930us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
776us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
60-89 Days Past Due 47us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
400us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Total Past Due 977us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
1,176us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Non- Accrual 4,324us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
4,509us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Total Loans 125,752us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
126,491us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_FirstLienMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Residential mortgage | Home equity - term    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 19,543us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
20,640us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
30-59 Days Past Due 209us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
135us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Total Past Due 209us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
135us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Non- Accrual 160us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
70us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Total Loans 19,912us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
20,845us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= orrf_HomeEquityTermMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Residential mortgage | Home equity - lines of credit    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 93,769us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
88,745us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
30-59 Days Past Due 284us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
142us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Total Past Due 284us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
142us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Non- Accrual 570us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
479us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Total Loans 94,623us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
89,366us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_HomeEquityMember
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_ResidentialPortfolioSegmentMember
Installment and other loans    
Financing Receivable, Recorded Investment, Past Due [Line Items]    
Current 5,835us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
5,815us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
30-59 Days Past Due 13us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
41us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
60-89 Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
9us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
90+ (still accruing) Days Past Due 0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
0us-gaap_FinancingReceivableRecordedInvestment90DaysPastDueAndStillAccruing
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Total Past Due 13us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
50us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Non- Accrual 24us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
26us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
Total Loans $ 5,872us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember
$ 5,891us-gaap_LoansAndLeasesReceivableNetOfDeferredIncome
/ us-gaap_StatementBusinessSegmentsAxis
= us-gaap_AllOtherSegmentsMember