Skip to contentAmeriglide Rave 2 Straight-Run Stairlifts
- Made in the USA by Hamar
- Trusted American craftsmanship from a leading stairlift manufacturer
- Polyworm Drive System ⭐
- For a quieter & smoother ride
- Truly Maintenance-Free ⭐
- No lubrication, no service calls, and
- No messy oil residue to get onto your belongings
- Slim 11″ Profile When Folded ⭐
- The industry’s smallest stairway footprint
- Increased Battery Reserves ⭐
- More trips during power outages
- 350 lb. Weight Capacity
- Built with a rugged, heavy duty motor for long lasting performance
- Adjustable Seat Height
- For adjusting to small & tall riders
- Retractable Seat Belt
- For easier use & tidier looks
- Two Call/Send Remotes
- Optional Folding Rail
- For doors & hallways at the bottom steps
- Optional Key Lock
- To keep out unauthorized users (i.e., grandkids)
The Ameriglide Rave 2 - Smoother, Quieter Ride - No Maintenance Required!
What sets our Rave 2 apart in the stairlift industry is its patented, maintenance-free polymer drive system. Unlike the traditional steel rack-and-pinion designs used by our competitors, the Rave 2 features a polymer worm gear paired with a nylon gear track. This advanced system delivers an exceptionally smooth and quieter ride than the steel drive systems used by all other stairlift providers – and it requires no lubrication.
Rave 2 Folding Rail
Door or Hallway at the Bottom of Your Stairs?
On all straight-run stairlifts, the rail typically extends out 14–16 inches from the bottom step into the floor area. This allows for safer and easier access when getting on or off the chair. However, if there’s a doorway or narrow hallway at the base, this extension can become a tripping hazard or an obstruction to opening and closing a door.
That’s where our folding rail option can make all the difference. Like a drawbridge, a section of the bottom rail automatically lifts and folds as the stairlift travels upwards, keeping the bottom area safe & unobstructed. The rail is then lowered when the lift travels down the track. Watch video.
After exiting the lift at the bottom of the stairs, you can use one of the two included remotes to send the chair back up to an interim docking point. As it makes its way up, the rail folds up, eliminating any barrier at the foot of your stairs.
Ideal for Narrow Stairs
Industry's smallest footprint
When folded, the Harmar built Rave 2 has the smallest stairway footprint in the stairlift industry. This allows more stair access for able-bodied family members or caretakers.
Straight Stair Lift Installation in Cleveland & Northeast Ohio
We install Rave 2 straight stair lifts for homeowners across Lake, Geauga, Ashtabula and Cuyahoga counties, from Cleveland, Shaker Heights and Parma out to Mentor and our home base in Painesville. A professional straight-run installation usually takes 3 to 5 hours. The lift mounts to your steps with support brackets screwed into the stairs, not to your wall. If your stairs have a bend or a landing, you’ll need a curved stair lift instead.
The same person who measures your stairs does the install and answers your questions afterward. Curious what a chair lift for your stairs will run? See our stairlift cost page, or call 440-596-3070 for a free phone estimate.
document.addEventListener('click', function (e) {
// Only care about Elementor button anchors
var anchor = e.target.closest('a.elementor-button-link');
if (!anchor) return;// Must be inside a button widget that has data-action
var widget = anchor.closest('.elementor-widget-button[data-action]');
if (!widget) return;// If the anchor has a real link, let it behave normally
var href = anchor.getAttribute('href');
if (href && href !== '#') return;// Find the nearest Swiper this button lives in
var host = widget.closest('.swiper, .swiper-container');
var swiper = host && host.swiper;
if (!swiper) return;e.preventDefault();var action = (widget.getAttribute('data-action') || '').toLowerCase();
if (action === 'next') {
swiper.slideNext();
} else if (action === 'prev') {
swiper.slidePrev();
}
});
function openNestedAccordionByHash() {
const hash = window.location.hash.slice(1);
if (!hash) return;const details = document.getElementById(hash);
if (!details || details.tagName.toLowerCase() !== 'details') return;// Get parent accordion (the container that holds all <details>)
const accordion = details.closest('.e-n-accordion');
if (!accordion) return;// Whether the widget is configured for one-open-at-a-time
const widget = details.closest('[data-settings]');
let onlyOneOpen = false;
if (widget) {
try {
const settings = JSON.parse(widget.getAttribute('data-settings'));
onlyOneOpen = settings.max_items_expended === "one";
} catch (e) {}
}// If we're in one-open-at-a-time mode:
if (onlyOneOpen) {
const siblings = accordion.querySelectorAll('details.e-n-accordion-item');
siblings.forEach(item => {
if (item !== details) item.open = false;
});
}// Open the requested item
details.open = true;// Scroll to it
details.scrollIntoView({ behavior: 'smooth', block: 'start' });
}document.addEventListener('DOMContentLoaded', openNestedAccordionByHash);
window.addEventListener('hashchange', openNestedAccordionByHash);document.addEventListener('click', function (e) {
const link = e.target.closest('a[href^="#"]');
if (!link) return;
setTimeout(openNestedAccordionByHash, 0);
});
/**
* Toggle Collapse
*
* Wires up Elementor buttons to show/hide a target element on mobile.
*
* Setup:
* 1. Add CSS class "toggle-btn" to the Elementor button widget under Advanced → CSS Classes
* 2. Add the following custom attributes to the button under Advanced → Attributes:
* data-toggle-target | your-target-element-id
* data-show-text | Show Details
* data-hide-text | Hide Details
* 3. Add a CSS ID to the element you want to toggle under Advanced → CSS ID
*
* Notes:
* - Toggle only takes effect on mobile (max-width: 767px)
* - On desktop the target element is always visible regardless of toggle state
* - data-show-text and data-hide-text are optional, defaulting to "Show" / "Hide"
*/
document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.toggle-btn .elementor-button').forEach(function (btn) {
var targetSelector = btn.getAttribute('data-toggle-target');
var showText = btn.getAttribute('data-show-text') || btn.querySelector('.elementor-button-text').textContent;
var hideText = btn.getAttribute('data-hide-text') || 'View Less';
var target = document.querySelectorAll(targetSelector);btn.addEventListener('click', function (e) {
e.preventDefault();
var isHidden = target.forEach(function (el) {
el.classList.toggle('toggle-collapsed');
});
btn.querySelector('.elementor-button-text').textContent = isHidden ? showText : hideText;
});
});
});
( () => {
const lazyloadRunObserver = () => {
const lazyloadBackgrounds = document.querySelectorAll( `.e-con.e-parent:not(.e-lazyloaded)` );
const lazyloadBackgroundObserver = new IntersectionObserver( ( entries ) => {
entries.forEach( ( entry ) => {
if ( entry.isIntersecting ) {
let lazyloadBackground = entry.target;
if( lazyloadBackground ) {
lazyloadBackground.classList.add( 'e-lazyloaded' );
}
lazyloadBackgroundObserver.unobserve( entry.target );
}
});
}, { rootMargin: '200px 0px 200px 0px' } );
lazyloadBackgrounds.forEach( ( lazyloadBackground ) => {
lazyloadBackgroundObserver.observe( lazyloadBackground );
} );
};
const events = [
'DOMContentLoaded',
'elementor/lazyload/observe',
];
events.forEach( ( event ) => {
document.addEventListener( event, lazyloadRunObserver );
} );
} )();