319 lines
16 KiB
TypeScript
319 lines
16 KiB
TypeScript
import type { Metadata } from "next";
|
||
import Image from "next/image";
|
||
import { Card, CardContent } from "@/components/ui/card";
|
||
import { Button } from "@/components/ui/button";
|
||
import { businessConfig } from "@/lib/seo-config";
|
||
import { Phone, CheckCircle2, Shield, Clock, MapPin } from "lucide-react";
|
||
import Link from "next/link";
|
||
import { PublicPageHeader, PublicSurface } from "@/components/public-surface";
|
||
|
||
export const metadata: Metadata = {
|
||
title: "Vending Machine Moving & Relocation Services | Rocky Mountain Vending",
|
||
description:
|
||
"Professional vending machine moving services in Utah. Safe relocation of snack, beverage, and combo machines. Stair climbing, tight spaces, secure transport. Fully insured. Serving Ogden, Salt Lake City, Provo, and surrounding areas.",
|
||
keywords: [
|
||
"vending machine moving Utah",
|
||
"vending machine relocation",
|
||
"vending machine moving services",
|
||
"professional vending machine movers",
|
||
"Utah vending machine transport",
|
||
],
|
||
openGraph: {
|
||
title: "Vending Machine Moving & Relocation Services | Rocky Mountain Vending",
|
||
description:
|
||
"Professional vending machine moving services in Utah. Safe relocation of snack, beverage, and combo machines. Fully insured.",
|
||
url: `${businessConfig.website}/services/moving`,
|
||
type: "website",
|
||
},
|
||
alternates: {
|
||
canonical: `${businessConfig.website}/services/moving`,
|
||
},
|
||
};
|
||
|
||
export default function MovingServicesPage() {
|
||
return (
|
||
<div className="container mx-auto max-w-6xl px-4 py-10 md:py-14">
|
||
<PublicPageHeader
|
||
align="center"
|
||
eyebrow="Moving Services"
|
||
title="Vending Machine Moving & Relocation Services"
|
||
description="Professional vending machine moving in Utah for snack, beverage, and combo machines, with careful transport, safer handling, and cleaner scheduling from pickup to placement."
|
||
/>
|
||
|
||
{/* Introduction Section */}
|
||
<section className="mb-12">
|
||
<Card className="border-border/50 shadow-md">
|
||
<CardContent className="p-6 md:p-8">
|
||
<div className="prose prose-lg max-w-none">
|
||
<p className="text-muted-foreground leading-relaxed mb-4">
|
||
At Rocky Mountain Vending LLC, we specialize in the safe and efficient relocation of vending machines of
|
||
all types and sizes — from compact snack machines to full-size refrigerated beverage and combo units.
|
||
Whether you're rearranging equipment within a building, moving to a new location, or removing an old
|
||
machine, our experienced team handles every detail to minimize downtime and protect your investment.
|
||
</p>
|
||
<p className="text-muted-foreground leading-relaxed mb-4">
|
||
Vending machines are heavy (often 400–900+ lbs), delicate, and require specialized handling to avoid
|
||
damage to internal components like compressors, electronics, glass fronts, or refrigeration systems.
|
||
Attempting a DIY move can lead to costly repairs, injuries, or property damage. We use proven techniques
|
||
and professional-grade equipment to ensure a smooth, damage-free process every time.
|
||
</p>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
</section>
|
||
|
||
{/* Image Gallery Section */}
|
||
<section className="mb-12">
|
||
<h2 className="text-3xl font-bold mb-8 tracking-tight text-balance">
|
||
Professional Vending Machine Moving in Action
|
||
</h2>
|
||
<div className="grid gap-8 md:grid-cols-3">
|
||
{/* Image 1 */}
|
||
<Card className="border-border/50 shadow-md overflow-hidden hover:border-secondary/50 transition-colors">
|
||
<CardContent className="p-0">
|
||
<div className="relative w-full bg-muted" style={{ height: '600px' }}>
|
||
<Image
|
||
src="/images/vending-machine-moving-service-1.png"
|
||
alt="Vending machine securely packaged for transport with dark green protective blankets, clear shrink wrap, bright yellow straps, and yellow corner protectors on wooden pallet - professional moving service in Utah"
|
||
width={4032}
|
||
height={3024}
|
||
className="w-full h-full object-contain"
|
||
sizes="(max-width: 768px) 100vw, 33vw"
|
||
priority={false}
|
||
/>
|
||
</div>
|
||
<div className="p-4">
|
||
<p className="text-sm text-muted-foreground">
|
||
Our experienced team uses professional-grade equipment and proven techniques to safely relocate vending machines of all sizes, ensuring your equipment arrives damage-free.
|
||
</p>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
|
||
{/* Image 2 */}
|
||
<Card className="border-border/50 shadow-md overflow-hidden hover:border-secondary/50 transition-colors">
|
||
<CardContent className="p-0">
|
||
<div className="relative w-full bg-muted" style={{ height: '600px' }}>
|
||
<Image
|
||
src="/images/vending-machine-moving-service-2.png"
|
||
alt="Vending machine wrapped in dark blue protective blankets and clear shrink wrap with yellow straps, foam padding, and safety markings secured on wooden pallets for safe transport"
|
||
width={4032}
|
||
height={3024}
|
||
className="w-full h-full object-contain"
|
||
sizes="(max-width: 768px) 100vw, 33vw"
|
||
priority={false}
|
||
/>
|
||
</div>
|
||
<div className="p-4">
|
||
<p className="text-sm text-muted-foreground">
|
||
Every move is carefully planned and executed with attention to detail, protecting both your vending machine and your property throughout the relocation process.
|
||
</p>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
|
||
{/* Image 3 */}
|
||
<Card className="border-border/50 shadow-md overflow-hidden hover:border-secondary/50 transition-colors">
|
||
<CardContent className="p-0">
|
||
<div className="relative w-full bg-muted" style={{ height: '600px' }}>
|
||
<Image
|
||
src="/images/vending-machine-moving-service-3.webp"
|
||
alt="Utah vending machine moving professionals transporting commercial vending equipment with secure transport methods and fully insured relocation services"
|
||
width={4032}
|
||
height={3024}
|
||
className="w-full h-full object-contain"
|
||
sizes="(max-width: 768px) 100vw, 33vw"
|
||
priority={false}
|
||
/>
|
||
</div>
|
||
<div className="p-4">
|
||
<p className="text-sm text-muted-foreground">
|
||
From stair climbing to tight spaces, we handle challenging access situations with specialized equipment designed for heavy vending machine transport.
|
||
</p>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
</div>
|
||
</section>
|
||
|
||
{/* Specialized Moving Capabilities Section */}
|
||
<section className="mb-12">
|
||
<h2 className="text-3xl font-bold mb-8 tracking-tight text-balance">Our Specialized Moving Capabilities</h2>
|
||
<div className="grid gap-6 md:grid-cols-2">
|
||
<Card className="border-border/50 shadow-md hover:border-secondary/50 transition-colors">
|
||
<CardContent className="p-6">
|
||
<div className="flex items-start gap-4">
|
||
<div className="flex-shrink-0 w-12 h-12 rounded-lg bg-primary/10 flex items-center justify-center">
|
||
<CheckCircle2 className="w-6 h-6 text-primary" />
|
||
</div>
|
||
<div>
|
||
<h3 className="text-xl font-semibold mb-2">Stair Climbing Expertise</h3>
|
||
<p className="text-muted-foreground">
|
||
Equipped with powered stair-climbing dollies and hand trucks designed specifically for heavy vending
|
||
equipment, we safely navigate stairs — up or down, straight or curved — without risking strain or
|
||
tipping.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
|
||
<Card className="border-border/50 shadow-md hover:border-secondary/50 transition-colors">
|
||
<CardContent className="p-6">
|
||
<div className="flex items-start gap-4">
|
||
<div className="flex-shrink-0 w-12 h-12 rounded-lg bg-primary/10 flex items-center justify-center">
|
||
<CheckCircle2 className="w-6 h-6 text-primary" />
|
||
</div>
|
||
<div>
|
||
<h3 className="text-xl font-semibold mb-2">Tight Spaces & Challenging Access</h3>
|
||
<p className="text-muted-foreground">
|
||
Narrow hallways, elevators, doorways, ramps, or multi-level buildings are no problem. We measure
|
||
pathways in advance and use low-profile dollies, straps, and protective padding to maneuver through
|
||
confined areas.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
|
||
<Card className="border-border/50 shadow-md hover:border-secondary/50 transition-colors">
|
||
<CardContent className="p-6">
|
||
<div className="flex items-start gap-4">
|
||
<div className="flex-shrink-0 w-12 h-12 rounded-lg bg-primary/10 flex items-center justify-center">
|
||
<Shield className="w-6 h-6 text-primary" />
|
||
</div>
|
||
<div>
|
||
<h3 className="text-xl font-semibold mb-2">Secure Transport</h3>
|
||
<p className="text-muted-foreground">
|
||
Machines are fully secured upright (critical for refrigerated units) using heavy-duty straps,
|
||
ramps, and lift gates on our enclosed trailers to prevent shifting during transit.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
|
||
<Card className="border-border/50 shadow-md hover:border-secondary/50 transition-colors">
|
||
<CardContent className="p-6">
|
||
<div className="flex items-start gap-4">
|
||
<div className="flex-shrink-0 w-12 h-12 rounded-lg bg-primary/10 flex items-center justify-center">
|
||
<Shield className="w-6 h-6 text-primary" />
|
||
</div>
|
||
<div>
|
||
<h3 className="text-xl font-semibold mb-2">Floor & Property Protection</h3>
|
||
<p className="text-muted-foreground">
|
||
We use mats, corner guards, and non-marking equipment to safeguard floors, walls, doors, and
|
||
elevators from scratches or dents.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
|
||
<Card className="border-border/50 shadow-md hover:border-secondary/50 transition-colors md:col-span-2">
|
||
<CardContent className="p-6">
|
||
<div className="flex items-start gap-4">
|
||
<div className="flex-shrink-0 w-12 h-12 rounded-lg bg-primary/10 flex items-center justify-center">
|
||
<CheckCircle2 className="w-6 h-6 text-primary" />
|
||
</div>
|
||
<div>
|
||
<h3 className="text-xl font-semibold mb-2">Full Preparation & Setup</h3>
|
||
<p className="text-muted-foreground">
|
||
We empty product and coin/cash if needed, disconnect utilities safely, protect fragile parts,
|
||
transport securely, and reposition/level the machine at the new site. Reconnection and testing
|
||
available upon request.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
|
||
<Card className="border-border/50 shadow-md hover:border-secondary/50 transition-colors md:col-span-2">
|
||
<CardContent className="p-6">
|
||
<div className="flex items-start gap-4">
|
||
<div className="flex-shrink-0 w-12 h-12 rounded-lg bg-primary/10 flex items-center justify-center">
|
||
<MapPin className="w-6 h-6 text-primary" />
|
||
</div>
|
||
<div>
|
||
<h3 className="text-xl font-semibold mb-2">Indoor-to-Indoor or Building-to-Building</h3>
|
||
<p className="text-muted-foreground">
|
||
From simple on-site repositioning to full relocations across Northern Utah (Ogden, Salt Lake City,
|
||
Layton, Provo, Park City, and surrounding areas).
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</CardContent>
|
||
</Card>
|
||
</div>
|
||
</section>
|
||
|
||
{/* Why Choose Us Section */}
|
||
<section className="mb-12">
|
||
<h2 className="text-3xl font-bold mb-8 tracking-tight text-balance">Why Choose Us for Your Vending Move?</h2>
|
||
<Card className="border-border/70">
|
||
<CardContent className="p-6 md:p-8">
|
||
<ul className="space-y-4">
|
||
<li className="flex items-start gap-3">
|
||
<CheckCircle2 className="w-6 h-6 text-primary flex-shrink-0 mt-0.5" />
|
||
<span className="text-muted-foreground">
|
||
<strong className="text-foreground">Years of hands-on vending industry experience</strong> — we
|
||
understand the unique vulnerabilities of snack, drink, combo, and refrigerated machines.
|
||
</span>
|
||
</li>
|
||
<li className="flex items-start gap-3">
|
||
<Shield className="w-6 h-6 text-primary flex-shrink-0 mt-0.5" />
|
||
<span className="text-muted-foreground">
|
||
<strong className="text-foreground">Fully insured</strong> for complete peace of mind.
|
||
</span>
|
||
</li>
|
||
<li className="flex items-start gap-3">
|
||
<Clock className="w-6 h-6 text-primary flex-shrink-0 mt-0.5" />
|
||
<span className="text-muted-foreground">
|
||
<strong className="text-foreground">Minimal disruption:</strong> Fast, coordinated service scheduled
|
||
around your business hours.
|
||
</span>
|
||
</li>
|
||
<li className="flex items-start gap-3">
|
||
<CheckCircle2 className="w-6 h-6 text-primary flex-shrink-0 mt-0.5" />
|
||
<span className="text-muted-foreground">
|
||
<strong className="text-foreground">One-machine or multi-machine jobs</strong> handled efficiently.
|
||
</span>
|
||
</li>
|
||
<li className="flex items-start gap-3">
|
||
<Shield className="w-6 h-6 text-primary flex-shrink-0 mt-0.5" />
|
||
<span className="text-muted-foreground">
|
||
<strong className="text-foreground">Commitment to safety</strong> for our team, your staff, and your
|
||
equipment.
|
||
</span>
|
||
</li>
|
||
</ul>
|
||
</CardContent>
|
||
</Card>
|
||
</section>
|
||
|
||
{/* CTA Section */}
|
||
<section className="mb-12">
|
||
<PublicSurface className="p-10 text-center md:p-12">
|
||
<h2 className="text-2xl md:text-3xl font-bold text-foreground mb-4 tracking-tight text-balance">
|
||
Ready to Schedule a Hassle-Free Vending Machine Move?
|
||
</h2>
|
||
<p className="text-muted-foreground mb-8 max-w-2xl mx-auto text-lg leading-relaxed">
|
||
Contact us today for a custom quote based on machine type, pickup/drop-off locations, access challenges,
|
||
and any stairs or special requirements involved. We're here to make your relocation simple and stress-free!
|
||
</p>
|
||
<div className="flex flex-col sm:flex-row gap-4 justify-center">
|
||
<Button asChild size="lg" className="text-lg h-12 px-8 font-semibold rounded-full">
|
||
<Link href="/contact-us#contact-form">Request a Quote</Link>
|
||
</Button>
|
||
<Button asChild size="lg" variant="outline" className="text-lg h-12 px-8 font-semibold rounded-full">
|
||
<a href={businessConfig.phoneUrl} className="flex items-center gap-2">
|
||
<Phone className="w-5 h-5" />
|
||
{businessConfig.phone}
|
||
</a>
|
||
</Button>
|
||
</div>
|
||
</PublicSurface>
|
||
</section>
|
||
</div>
|
||
);
|
||
}
|