PageSourceSearch

https://batteriesnorthwest.com/

html batteriesnorthwest.com collected 2026-10-08 18:08:18 UTC 31,122 bytes, 320 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3 <head>
4  <meta charset="utf-8"/>
5  <meta content="width=device-width, initial-scale=1.0" name="viewport"/>
6  <!-- Primary Meta -->
7  <title>
8   Batteries Northwest
9  </title>
10  <meta content="Batteries Northwest is a trusted battery supplier based in Salem, Oregon, providing high-quality batteries, battery accessories, chargers, and diagnostic equipment for automotive, commercial, industrial, marine, RV, golf cart, powersports, and backup power applications. With decades of industry experience, Batteries Northwest is committed to delivering reliable products, competitive pricing, and knowledgeable customer service to both retail customers and businesses throughout Oregon and the Pacific Northwest." name="description"/>
11  <meta content="index, follow" name="robots"/>
12  <!-- Open Graph / Social -->
13  <meta content="website" property="og:type"/>
14  <meta content="https://batteriesnorthwest.com" property="og:url"/>
15  <meta content="Batteries Northwest " property="og:title"/>
16  <meta content="Batteries Northwest is a trusted battery supplier based in Salem, Oregon, providing high-quality batteries, battery accessories, chargers, and diagnostic equipment for automotive, commercial, industrial, marine, RV, golf cart, powersports, and backup power applications. With decades of industry experience, Batteries Northwest is committed to delivering reliable products, competitive pricing, and knowledgeable customer service to both retail customers and businesses throughout Oregon and the Pacific Northwest." property="og:description"/>
17  <meta content="https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/render/image/public/base44-prod/public/6995ef20b8f5ee4cf0712257/41dbef9af_BNWFlagLogoVector.jpg?width=1200&amp;height=630&amp;resize=contain" property="og:image"/>
18  <meta content="Batteries Northwest " property="og:site_name"/>
19  <!-- Twitter Card -->
20  <meta content="summary_large_image" name="twitter:card"/>
21  <meta content="Batteries Northwest " name="twitter:title"/>
22  <meta content="Batteries Northwest is a trusted battery supplier based in Salem, Oregon, providing high-quality batteries, battery accessories, chargers, and diagnostic equipment for automotive, commercial, industrial, marine, RV, golf cart, powersports, and backup power applications. With decades of industry experience, Batteries Northwest is committed to delivering reliable products, competitive pricing, and knowledgeable customer service to both retail customers and businesses throughout Oregon and the Pacific Northwest." name="twitter:description"/>
23  <meta content="https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/render/image/public/base44-prod/public/6995ef20b8f5ee4cf0712257/41dbef9af_BNWFlagLogoVector.jpg?width=1200&amp;height=630&amp;resize=contain" name="twitter:image"/>
24  <!-- Local Business Schema -->
25  
25<script type="application/ld+json">
26   {
27      "@context": "https://schema.org",
28      "@type": "Store",
29      "@id": "https://batteriesnorthwest.com/#store",
30      "name": "Batteries Northwest",
31      "description": "Salem, Oregon's battery experts since 1985. Car, truck, marine, RV, powersports, and industrial batteries.",
32      "url": "https://batteriesnorthwest.com",
33      "telephone": "+15033622684",
34      "email": "[email protected]",
35      "foundingDate": "1985",
36      "address": {
37        "@type": "PostalAddress",
38        "streetAddress": "2725 Portland Rd NE",
39        "addressLocality": "Salem",
40        "addressRegion": "OR",
41        "postalCode": "97301",
42        "addressCountry": "US"
43      },
44      "geo": {
45        "@type": "GeoCoordinates",
46        "latitude": 44.9795,
47        "longitude": -123.0129
48      },
49      "openingHoursSpecification": [
50        {
51          "@type": "OpeningHoursSpecification",
52          "dayOfWeek": ["Monday","Tuesday","Wednesday","Thursday","Friday"],
53          "opens": "08:00",
54          "closes": "17:00"
55        }
56      ],
57      "priceRange": "$$",
58      "image": "https://media.base44.com/images/public/6995ef20b8f5ee4cf0712257/7638eed67_BNWSTOREFRONTPHOTO.jpg"
59    }
60  </script>
60
61  <!-- Organization Schema -->
62  
62<script type="application/ld+json">
63   {
64      "@context": "https://schema.org",
65      "@type": "Organization",
66      "@id": "https://batteriesnorthwest.com/#organization",
67      "name": "Batteries Northwest",
68      "url": "https://batteriesnorthwest.com",
69      "logo": "https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/object/public/base44-prod/public/user_691e155000dbce28f2053eab/5ddf9c62d_BNWFlagLogoVector1.jpg",
70      "description": "Salem, Oregon's battery experts since 1985. Car, truck, marine, RV, powersports, and industrial batteries.",
71      "telephone": "+15033622684",
72      "email": "[email protected]",
73      "foundingDate": "1985",
74      "address": {
75        "@type": "PostalAddress",
76        "streetAddress": "2725 Portland Rd NE",
77        "addressLocality": "Salem",
78        "addressRegion": "OR",
79        "postalCode": "97301",
80        "addressCountry": "US"
81      },
82      "sameAs": [
83        "https://www.facebook.com/BatteriesNorthwest",
84        "https://www.instagram.com/batteriesnorthwest"
85      ]
86    }
87  </script>
87
88  <!-- Favicon -->
89  <link href="https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/object/public/base44-prod/public/user_691e155000dbce28f2053eab/5ddf9c62d_BNWFlagLogoVector1.jpg" rel="icon" type="image/svg+xml"/>
90  <!-- Performance: preconnect to external origins -->
91  <link href="https://media.base44.com" rel="preconnect"/>
92  <link href="https://qtrypzzcjebvfcihiynt.supabase.co" rel="preconnect"/>
93  <!-- Preload hero image (LCP) -->
94  <link as="image" href="https://media.base44.com/images/public/6995ef20b8f5ee4cf0712257/7638eed67_BNWSTOREFRONTPHOTO.jpg" rel="preload"/>
95  <!-- Google Ads Tag (AW-18096727551) -->
vendor: 69 bytes, lines 95-96
95
96  <script async="" src="https://www.googletagmanager.com/gtag/js?id=
96AW-18096727551
vendor: 17 bytes, lines 96-98
96">
97  </script>
98  
98<script>
99   
vendor: 145 bytes, lines 99-102
99window.dataLayer = window.dataLayer || [];
100      function gtag(){dataLayer.push(arguments);}
101      gtag('js', new Date());
102      gtag('config', '
102AW-18096727551
vendor: 6 bytes, lines 102-103
102');
103  
103</script>
103
104  <link href="/manifest.json" rel="manifest"/>
105  
105<script crossorigin="" src="/assets/index-C2hxFi9F.js" type="module">
106  </script>
106
107  <link crossorigin="" href="/assets/index-3W2zMOy8.css" rel="stylesheet"/>
108  <meta content="https://batteriesnorthwest.com" name="twitter:url"/>
109  
109<script>
110   (function () {
111  var titles = {"/": "Batteries Northwest ", "/about": "About | Batteries Northwest ", "/admin": "Admin | Batteries Northwest ", "/admin-remap": "Admin Remap | Batteries Northwest ", "/adminremap": "Admin Remap | Batteries Northwest ", "/cart": "Cart | Batteries Northwest ", "/checkout": "Checkout | Batteries Northwest ", "/contact": "Contact | Batteries Northwest ", "/dealers": "Dealers | Batteries Northwest ", "/fa-qs": "FAQs | Batteries Northwest ", "/faqs": "FAQs | Batteries Northwest ", "/product-detail": "Product Detail | Batteries Northwest ", "/productdetail": "Product Detail | Batteries Northwest ", "/products": "Products | Batteries Northwest ", "/dealerlogin": "Dealer Login | Batteries Northwest ", "/dealer-login": "Dealer Login | Batteries Northwest ", "/dealer-signup": "Dealer Signup | Batteries Northwest ", "/dealersignup": "Dealer Signup | Batteries Northwest ", "/dealerdashboard": "Dealer Dashboard | Batteries Northwest ", "/dealer-dashboard": "Dealer Dashboard | Batteries Northwest ", "/batteryrecycling": "Battery Recycling | Batteries Northwest ", "/battery-recycling": "Battery Recycling | Batteries Northwest ", "/warrantyinformation": "Warranty Information | Batteries Northwest ", "/warranty-information": "Warranty Information | Batteries Northwest ", "/dealers/business-support": "Dealers / Business Support | Batteries Northwest ", "/dealers/save-you-money": "Dealers / Save You Money | Batteries Northwest ", "/dealers/bulk-pricing": "Dealers / Bulk Pricing | Batteries Northwest ", "/shop": "Shop | Batteries Northwest ", "/home": "Batteries Northwest "};
112  // PascalCase boundaries -> "-", mirroring _PASCAL_BOUNDARY_RE without lookbehind
113  // (old Safari fails to PARSE a lookbehind, taking the whole script down).
114  var dashed = function (s) {
115    return s.replace(/([a-z0-9])([A-Z])/g, "$1-$2").replace(/([A-Z])([A-Z][a-z])/g, "$1-$2");
116  };
117  var decode = function (s) {
118    // A %2F inside ONE segment must not become a structural separator: /blog/foo%2Fbar is a
119    // dynamic slug, and letting it split would match a static /blog/foo/bar and write ITS title.
120    try { var d = decodeURIComponent(s); return d.indexOf("/") < 0 ? d : s; } catch (e) { return s; }
121  };
122  var segments = function (path) { return path.split("/").filter(Boolean).map(decode); };
123  var norm = function (path) {
124    var parts = segments(path).map(function (s) { return dashed(s).toLowerCase(); });
125    return parts.length ? "/" + parts.join("/") : "/";
126  };
127  var lastPath = location.pathname, written = document.title, on = true;
128  var sync = function () {
129    // Path only: a hash/query change is the same page, and the SDK strips its own auth
130    // params with replaceState -- neither must clobber a server-rendered title in place.
131    if (!on || location.pathname === lastPath) return;
132    lastPath = location.pathname;
133    if (document.title !== written) { on = false; return; }
134    // Write ONLY a title the map proves. An unmapped path is a dynamic route (/blog/:slug) the
135    // map cannot carry, and writing a placeholder there is destructive, not merely vague: the
136    // prerender worker runs no setUserAgent, so its capture browser reads as human and executes
137    // this script, and coordinator.js's settle wait explicitly tolerates a full navigation --
138    // a redirect landing on an unmapped path would bake the placeholder into the stored
139    // snapshot. Leaving the title alone degrades to today's behavior instead.
140    // Exact lookup only. A dash-stripped retry here would let a genuinely different /set-up
141    // claim /setup: the map carries a dash-free key only where a PascalCase boundary put the
142    // dashes there, and the client cannot tell the two apart. The map emits every reachable
143    // shape per segment instead (_client_url_variants).
144    var title = titles[norm(location.pathname)];
145    if (title === undefined) return;
146    document.title = title;
147    // Re-read: the setter stores verbatim but the getter strips and collapses whitespace, so
148    // keeping the assigned string would make the next sync() read our own write as the app's.
149    written = document.title;
150  };
151  var wrap = function (fn) {
152    // The history entry is already pushed by the time sync() runs, so a throw here would
153    // surface inside the host app's router and break navigation. This is injected into apps
154    // we cannot test, so it swallows rather than trusting the trace.
155    return function () {
156      var r = fn.apply(this, arguments);
157      try { sync(); } catch (e) {}
158      return r;
159    };
160  };
161  history.pushState = wrap(history.pushState);
162  history.replaceState = wrap(history.replaceState);
163  window.addEventListener("popstate", sync);
164})();
165  </script>
165
166  <meta content="yes" name="mobile-web-app-capable"/>
167  <meta content="black" name="apple-mobile-web-app-status-bar-style"/>
168  <meta content="Batteries Northwest " name="apple-mobile-web-app-title"/>
169  <link href="https://batteriesnorthwest.com" rel="canonical"/>
170  
170<script data-seo-source="builder" type="application/ld+json">
171   {"name": "Batteries Northwest ", "@context": "https://schema.org", "@type": "WebSite", "url": "https://batteriesnorthwest.com"}
172  </script>
172
173  
173<script data-seo-source="builder" type="application/ld+json">
174   {"name": "Batteries Northwest ", "logo": "https://qtrypzzcjebvfcihiynt.supabase.co/storage/v1/object/public/base44-prod/public/6995ef20b8f5ee4cf0712257/41dbef9af_BNWFlagLogoVector.jpg", "@context": "https://schema.org", "@type": "Organization", "url": "https://batteriesnorthwest.com"}
175  </script>
175
176  
176<script data-seo-source="builder" type="application/ld+json">
177   {"@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [{"name": "What is Batteries Northwest ?", "@type": "Question", "acceptedAnswer": {"@type": "Answer", "text": "Batteries Northwest  manages 5 data types including products. Helps you organize, track, and share your work in 1 place for teams and solo users."}}]}
178  </script>
178
179  
179<script>
180   (function(){var SAMPLING_RATE=1.0;var sid=(crypto.randomUUID&&crypto.randomUUID())||(Date.now()+'-'+Math.random().toString(36).slice(2));function samplingValue(v){var h=2166136261;for(var i=0;i<v.length;i++){h^=v.charCodeAt(i);h=Math.imul(h,16777619);}return(h>>>0)/4294967296;}var _sampledOut=samplingValue(sid)>=SAMPLING_RATE;window.Base44=window.Base44||{};if(_sampledOut){var _noop=function(){};window.Base44.recordings=Object.freeze({version:'1',setUserID:_noop,setUserAnonymousID:_noop,setMetadata:_noop,event:_noop,issue:_noop,start:_noop,stop:_noop,isActive:function(){return false;},getSessionID:function(){return null;},getSessionURL:function(){return null;},forceFlushBatch:_noop});try{console.debug('[base44 recordings] session sampled out');}catch(_){}return;}var s=document.createElement('script');window.Base44.__preQ=window.Base44.__preQ||[];if(!window.Base44.recordings){var _pre=function(m){return function(){if(window.Base44.__preQ.length<100)window.Base44.__preQ.push([m,Array.prototype.slice.call(arguments)]);};};window.Base44.recordings={version:'1',setUserID:_pre('setUserID'),setUserAnonymousID:_pre('setUserAnonymousID'),setMetadata:_pre('setMetadata'),event:_pre('event'),issue:_pre('issue'),start:_pre('start'),stop:_pre('stop'),isActive:function(){return false;},getSessionID:function(){return null;},getSessionURL:function(){return null;},forceFlushBatch:_pre('forceFlushBatch')};}s.src='https://unpkg.com/[email protected]/dist/rrweb.umd.cjs';s.integrity='sha384-vi2VGEOczLoSZVrAqXzYd5VWgeBvxiOEgda6/sVzRK+lvhbs9TuqZ474UUptLXLB';s.crossOrigin='anonymous';s.async=true;s.onload=function(){if(!window.rrweb)return;var _started=false;var APP_ID="6995ef20b8f5ee4cf0712257";var INGEST_TOKEN="36AWmwzOlaheR1fdlhLGl7RrxpVv4EqAflch1QsSwKQ";var NETWORK_IGNORE_HEADERS=["cookie", "set-cookie", "authorization", "x-api-key"];var buffer=[];var lastFlush=Date.now();var recorderStopFn=null;var _stopRequested=false;var MAX_SESSION_MS=1800000;var IDLE_TIMEOUT_MS=900000;var lastActivityAt=0;var idleTimer=null;var maxTimer=null;var _sdkActive=null;var _sdkPending=[];var SDK_CAP=256;var sdkSafe=function(v){try{return String(v).slice(0,SDK_CAP);}catch(_){return '';}};var sdkDeep=function(v){try{return JSON.parse(JSON.stringify(v||{}));}catch(_){return {};}};var sdkEmit=function(method,payload){if(_sampledOut)return;var ev={method:method,payload:payload||{}};if(_sdkActive){try{_sdkActive('base44_sdk',Object.assign({method:method},payload||{}));}catch(_){}return;}if(_sdkPending.length<100)_sdkPending.push(ev);};window.Base44=window.Base44||{};window.Base44.recordings=Object.freeze({version:'1',setUserID:function(id){sdkEmit('setUserID',{value:sdkSafe(id)});},setUserAnonymousID:function(id){sdkEmit('setUserAnonymousID',{value:sdkSafe(id)});},setMetadata:function(key,value){if(_sampledOut)return;if(typeof key!=='string'||key.length>64)return;var v;try{v=JSON.parse(JSON.stringify(value));}catch(_){return;}sdkEmit('setMetadata',{key:key,value:v});},event:function(name,payload){if(_sampledOut)return;if(typeof name!=='string')return;sdkEmit('event',{name:name.slice(0,64),payload:sdkDeep(payload)});},issue:function(name,payload){if(_sampledOut)return;if(typeof name!=='string')return;sdkEmit('issue',{name:name.slice(0,64),payload:sdkDeep(payload)});},start:function(){},stop:function(){stopRecording('manual',true);},isActive:function(){return !_sampledOut&&!_stopRequested&&!!recorderStopFn;},getSessionID:function(){return _sampledOut?null:sid;},getSessionURL:function(){return null;},forceFlushBatch:function(){if(_sampledOut)return;try{flush(false);}catch(_){}}});if(window.Base44.__preQ&&window.Base44.__preQ.length){var _pq=window.Base44.__preQ;window.Base44.__preQ=[];for(var _qi=0;_qi<_pq.length;_qi++){var _m=_pq[_qi][0],_a=_pq[_qi][1];try{var _fn=window.Base44.recordings[_m];if(typeof _fn==='function')_fn.apply(null,_a);}catch(_){}}}function redactUrl(u){try{u=String(u||'');var q=u.indexOf('?');if(q>=0)u=u.slice(0,q);var h=u.indexOf('#');if(h>=0)u=u.slice(0,h);return u;}catch(_){return'';}}function redactText(s){try{s=String(s||'');return s.replace(/https?:\/\/[^\s)'\"]+|\/[^\s)'\"]*[?#][^\s)'\"]*/g,function(m){return redactUrl(m);});}catch(_){return'';}}function stopRecording(reason,dropBuffered){if(_stopRequested){if(dropBuffered)buffer.length=0;return;}if(!dropBuffered){try{flush(false);}catch(_){}}_stopRequested=true;buffer.length=0;if(idleTimer){try{clearTimeout(idleTimer);}catch(_){}idleTimer=null;}if(maxTimer){try{clearTimeout(maxTimer);}catch(_){}maxTimer=null;}if(recorderStopFn){try{recorderStopFn();recorderStopFn=null;}catch(_){}}
180try{if(reason)console.debug('[base44 recordings] stopped: '+reason);}catch(_){}}function scheduleIdleStop(){if(_stopRequested)return;if(idleTimer){try{clearTimeout(idleTimer);}catch(_){}}var wait=IDLE_TIMEOUT_MS-(Date.now()-lastActivityAt);if(wait<0)wait=0;idleTimer=setTimeout(function(){if(_stopRequested)return;if(Date.now()-lastActivityAt>=IDLE_TIMEOUT_MS)stopRecording('idle_timeout',false);else scheduleIdleStop();},wait);}function markActivity(){if(_stopRequested)return;lastActivityAt=Date.now();scheduleIdleStop();}function isMeaningfulActivityEvent(ev){try{return !!(ev&&ev.type===3&&ev.data&&((ev.data.source===2&&(ev.data.type===2||ev.data.type===4||ev.data.type===9))||ev.data.source===3||ev.data.source===5));}catch(_){return false;}}function sessionLifetimeCapture(){lastActivityAt=Date.now();maxTimer=setTimeout(function(){stopRecording('max_duration',false);},MAX_SESSION_MS);scheduleIdleStop();}function flush(ka){if(_stopRequested){buffer.length=0;return;}if(!buffer.length)return;var tok=null;try{tok=localStorage.getItem('base44_access_token');}catch(_){}var payload={app_id:APP_ID,session_id:sid,events:buffer.splice(0),page_url:redactUrl(location.href),user_agent:navigator.userAgent,access_token:tok};lastFlush=Date.now();var opts={method:'POST',headers:{'Content-Type':'application/json','X-Base44-Recording-Token':INGEST_TOKEN},body:JSON.stringify(payload)};if(ka)opts.keepalive=true;fetch('/api/runtime/session-recordings/ingest',opts).then(function(r){try{var skip=r.headers.get('X-Base44-Recording-Skip');if(skip==='excluded'||skip==='admin'){stopRecording('excluded',true);return;}if(skip==='sampled'){stopRecording('sampled',true);return;}}catch(_){}if(!r.ok){try{console.warn('session-recordings ingest http',r.status);}catch(_){}try{if(r.status===429&&r.headers.get('X-Base44-Recording-Limit')==='reached'){stopRecording('quota_reached',true);}}catch(_){}}}).catch(function(e){try{console.warn('session-recordings ingest err',e);}catch(_){}});}function devtoolsCapture(){if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var add=window.rrweb.record.addCustomEvent;var inside=false;function safe(fn){return function(){if(inside)return;inside=true;try{return fn.apply(this,arguments);}finally{inside=false;}};}['log','info','warn','error','debug'].forEach(function(level){var orig=console[level];if(!orig)return;console[level]=function(){try{add('console',{level:level});}catch(_){}return orig.apply(console,arguments);};});window.addEventListener('error',safe(function(e){add('error',{message:redactText(String(e.message||'unknown')),source:redactUrl(e.filename||''),line:e.lineno||0,col:e.colno||0,stack:e.error&&e.error.stack?redactText(String(e.error.stack).slice(0,1000)):''});}));window.addEventListener('unhandledrejection',safe(function(e){var r=e.reason||{};add('error',{message:redactText(String(r.message||r||'unhandled rejection')),stack:r.stack?redactText(String(r.stack).slice(0,1000)):'',rejection:true});}));if(window.fetch){var of=window.fetch.bind(window);window.fetch=function(input,init){var t0=performance.now();var method=(init&&init.method)||(input&&input.method)||'GET';var url=typeof input==='string'?input:(input&&input.url)||'';if(url.indexOf('/api/runtime/session-recordings/ingest')>=0)return of(input,init);var rurl=redactUrl(url);return of(input,init).then(function(r){try{add('network',{kind:'fetch',method:method,url:rurl,status:r.status,duration:Math.round(performance.now()-t0)});}catch(_){}return r;}).catch(function(e){try{add('network',{kind:'fetch',method:method,url:rurl,status:0,duration:Math.round(performance.now()-t0),error:String(e&&e.message||e)});}catch(_){}throw e;});};}if(window.XMLHttpRequest){var xp=window.XMLHttpRequest.prototype;var oo=xp.open,os=xp.send;xp.open=function(m,u){this.__gp_m=m;this.__gp_u=u;return oo.apply(this,arguments);};xp.send=function(){var xhr=this,t0=performance.now();xhr.addEventListener('loadend',function(){try{if((xhr.__gp_u||'').indexOf('/api/runtime/session-recordings/ingest')<0)add('network',{kind:'xhr',method:xhr.__gp_m||'GET',url:redactUrl(xhr.__gp_u),status:xhr.status,duration:Math.round(performance.now()-t0)});}catch(_){}});return os.apply(this,arguments);};}}var EMAIL_RE=/([a-zA-Z0-9._%+-]+)@([a-zA-Z0-9.-]+\.[a-zA-Z]{2,})/g;var MASK_EMAILS=true;var MASK_NUMBERS=false;var CAPTURE_IFRAMES=true;function maskTextFn(text){if(!MASK_EMAILS||typeof text!=='string')return text;return text.replace(EMAIL_RE,'[email]');}function performanceCapture(){if(!('PerformanceObserver' in window))return;if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var addPerf=window.rrweb.record.addCustomEvent;function emit(metric,value){try{addPerf('performance',{metric:metric,value:value,timestamp:Date.now()});}catch(_){}}try{new PerformanceObserver(function(list){var entries=list.getEntries();var last=entries[entries.length-1];if(last)emit('LCP',Math.round(last.renderTime||last.loadTime||last.startTime||0));}).observe({type:'largest-contentful-paint',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];emit('FID',Math.round(e.processingStart-e.startTime));}}).observe({type:'first-input',buffered:true});}catch(_){}try{var clsValue=0;new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];if(!e.hadRecentInput){clsValue+=e.value;}}emit('CLS',Math.round(clsValue*1000)/1000);}).observe({type:'layout-shift',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];if(e.name==='first-contentful-paint')emit('FCP',Math.round(e.startTime));}}).observe({type:'paint',buffered:true});}catch(_){}try{new PerformanceObserver(function(list){var entries=list.getEntries();for(var i=0;i<entries.length;i++){var e=entries[i];emit('TTFB',Math.round(e.responseStart));}}).observe({type:'navigation',buffered:true});}catch(_){}}function issueCapture(){if(_sampledOut)return;if(!(window.rrweb&&window.rrweb.record&&window.rrweb.record.addCustomEvent))return;var addIssue=window.rrweb.record.addCustomEvent;var _crashEmitted=false;function emitIssue(kind){var page='';try{page=location.pathname;}catch(_){}try{addIssue('base44_issue',{kind:kind,page:page});}catch(_){}}var isReload=false;try{if(performance.getEntriesByType){var navEntry=performance.getEntriesByType('navigation')[0];if(navEntry&&navEntry.type==='reload')isReload=true;}}catch(_){}if(!isReload){try{if(performance.navigation&&performance.navigation.type===1)isReload=true;}catch(_){}}if(isReload)emitIssue('page_refresh');try{window.addEventListener('unhandledrejection',function(){try{if(_crashEmitted)return;_crashEmitted=true;emitIssue('app_crash');}catch(_){}},true);}catch(_){}}function startRecord(){if(_started)return;if(_stopRequested){try{console.debug('[base44 recordings] stop requested before start; not recording');}catch(_){}return;}if(_sampledOut){try{console.debug('[base44 recordings] session sampled out');}catch(_){}return;}_started=true;var maskInputOptions={password:true,email:true};if(MASK_NUMBERS){maskInputOptions.number=true;maskInputOptions.tel=true;maskInputOptions.date=true;}var recordOpts={emit:function(ev){if(_stopRequested)return;if(isMeaningfulActivityEvent(ev))markActivity();try{if(ev&&ev.type===4&&ev.data&&typeof ev.data.href==='string')ev.data.href=redactUrl(ev.data.href);}catch(_){}buffer.push(ev);if(ev.type===2){flush(false);return;}if(buffer.length>=50||Date.now()-lastFlush>5000)flush(false);},maskAllInputs:true,maskInputOptions:maskInputOptions,maskTextFn:maskTextFn,maskTextSelector:'.session-record-mask,[data-no-record]',blockSelector:'.session-record-block,[data-no-record-block]',recordCanvas:false,inlineStylesheet:true,checkoutEveryNms:60000};if(CAPTURE_IFRAMES)recordOpts.iframe=true;recorderStopFn=window.rrweb.record(recordOpts);if(window.rrweb.record.addCustomEvent){_sdkActive=window.rrweb.record.addCustomEvent;for(var _i=0;_i<_sdkPending.length;_i++){var _e=_sdkPending[_i];try{_sdkActive('base44_sdk',Object.assign({method:_e.method},_e.payload||{}));}catch(_){}}_sdkPending=[];}devtoolsCapture();performanceCapture();issueCapture();sessionLifetimeCapture();setTimeout(function(){try{window.rrweb.record.takeFullSnapshot&&window.rrweb.record.takeFullSnapshot(true);}catch(_){}},1500);setInterval(function(){flush(false);},5000);window.addEventListener('beforeunload',function(){flush(true);});}function whenReady(){var tries=0;function check(){var root=document.getElementById('root')||document.querySelector('main')||document.body;if(root&&root.childElementCount>0)return startRecord();if(++tries>50)return startRecord();setTimeout(check,100);}check();}
180if(document.readyState==='complete')whenReady();else window.addEventListener('load',whenReady);};(document.head||document.body).appendChild(s);})();
181  </script>
181
182 </head>
183 <body>
184  <div id="root">
185   <div data-seo-source="builder" id="seo-snapshot" style="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;">
186    <main>
187     <header>
188      <h1>
189       Batteries Northwest
190      </h1>
191      <p>
192       Batteries Northwest is a trusted battery supplier based in Salem, Oregon, providing high-quality batteries, battery accessories, chargers, and diagnostic equipment for automotive, commercial, industrial, marine, RV, golf cart, powersports, and backup power applications. With decades of industry experience, Batteries Northwest is committed to delivering reliable products, competitive pricing, and knowledgeable customer service to both retail customers and businesses throughout Oregon and the Pacific Northwest.
193      </p>
194     </header>
195     <nav aria-label="Pages">
196      <h2>
197       Pages
198      </h2>
199      <ul>
200       <li>
201        <a href="/About">
202         About
203        </a>
204        — About on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
205       </li>
206       <li>
207        <a href="/Admin">
208         Admin
209        </a>
210        — Admin on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
211       </li>
212       <li>
213        <a href="/AdminRemap">
214         Admin Remap
215        </a>
216        — Admin Remap on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
217       </li>
218       <li>
219        <a href="/Cart">
220         Cart
221        </a>
222        — Cart on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
223       </li>
224       <li>
225        <a href="/Checkout">
226         Checkout
227        </a>
228        — Checkout on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
229       </li>
230       <li>
231        <a href="/Contact">
232         Contact
233        </a>
234        — Contact on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
235       </li>
236       <li>
237        <a href="/Dealers">
238         Dealers
239        </a>
240        — Dealers on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
241       </li>
242       <li>
243        <a href="/FAQs">
244         FA Qs
245        </a>
246        — FAQs on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
247       </li>
248       <li>
249        <a href="/ProductDetail">
250         Product Detail
251        </a>
252        — Product Detail on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
253       </li>
254       <li>
255        <a href="/Products">
256         Products
257        </a>
258        — Products on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
259       </li>
260       <li>
261        <a href="/DealerLogin">
262         Dealer Login
263        </a>
264        — Dealer Login on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
265       </li>
266       <li>
267        <a href="/DealerSignup">
268         Dealer Signup
269        </a>
270        — Dealer Signup on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
271       </li>
272       <li>
273        <a href="/DealerDashboard">
274         Dealer Dashboard
275        </a>
276        — Dealer Dashboard on Batteries Northwest . A modern, professional e-commerce platform for Batteries Northwest, offering a w.
277       </li>
278       <li>
279        <a href="/BatteryRecycling">
280         Battery Recycling
281        </a>
282        — Battery Recycling on Batteries Northwest. Batteries Northwest is a trusted battery supplier based in Salem, Oregon.
283       </li>
284       <li>
285        <a href="/WarrantyInformation">
286         Warranty Information
287        </a>
288        — Warranty Information on Batteries Northwest. Batteries Northwest is a trusted battery supplier based in Salem, Oregon.
289       </li>
290       <li>
291        <a href="/dealers/business-support">
292         Business Support
293        </a>
294        — Dealers / Business Support on Batteries Northwest. Batteries Northwest is a trusted battery supplier based in Salem, Oregon.
295       </li>
296       <li>
297        <a href="/dealers/save-you-money">
298         Save You Money
299        </a>
300        — Dealers / Save You Money on Batteries Northwest. Batteries Northwest is a trusted battery supplier based in Salem, Oregon.
301       </li>
302       <li>
303        <a href="/dealers/bulk-pricing">
304         Bulk Pricing
305        </a>
306        — Dealers / Bulk Pricing on Batteries Northwest. Batteries Northwest is a trusted battery supplier based in Salem, Oregon.
307       </li>
308       <li>
309        <a href="/Shop">
310         Shop
311        </a>
312        — Shop on Batteries Northwest. Batteries Northwest is a trusted battery supplier based in Salem, Oregon.
313       </li>
314      </ul>
315     </nav>
316    </main>
317   </div>
318  </div>
319 </body>
320</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.