ArticPools

Arctic Pool & Spa — Premium Marketing Site

A custom, high-conversion marketing site for Arctic Pool & Spa Services (Southwest Florida). Built with Next.js (App Router) + Tailwind CSS.


Quick start

cd arctic-pools
npm install
npm run dev

Then open http://localhost:3000.

To build for production:

npm run build
npm start

File structure

arctic-pools/
├── app/
│   ├── layout.jsx              # Root shell — fonts, navbar, footer, intro
│   ├── globals.css             # Brand tokens + utility classes
│   ├── page.jsx                # Home page (composes all sections)
│   ├── services/page.jsx       # Services detail page
│   ├── about/page.jsx          # About / story page
│   └── contact/page.jsx        # Contact form + map + sidebar
├── components/
│   ├── BubbleIntro.jsx         # Canvas bubble + glass-reveal load animation
│   ├── Navbar.jsx              # Sticky blur navbar + mobile drawer
│   ├── Footer.jsx              # Footer with brand, links, contact
│   ├── FloatingCall.jsx        # Mobile sticky "Call Now" button
│   ├── QuoteModal.jsx          # Quote-request modal (mailto handler)
│   ├── RevealOnScroll.jsx      # Tiny IntersectionObserver wrapper
│   ├── Hero.jsx                # Headline, CTAs, trust strip, parallax bg
│   ├── TrustBar.jsx            # 4-up trust signals card
│   ├── Services.jsx            # Hover-lift service cards
│   ├── VisualProof.jsx         # Real photos w/ brand overlay
│   ├── WhyUs.jsx               # Image + 4 reasons grid
│   ├── Testimonials.jsx        # 3-up review cards
│   └── CTA.jsx                 # Full-width conversion block
├── tailwind.config.js          # Brand colors, animations, shadows
├── postcss.config.js
├── next.config.mjs             # Allows Unsplash/Pexels image hosts
├── jsconfig.json               # `@/*` import alias
└── package.json

Brand system

Extracted from the truck wrap photo and codified in tailwind.config.js:

Token Hex Usage
ink #04111E Page background
midnight #072742 Section backdrops
deep #0B3C5D Deep electric blue (gradient)
aqua #00BFFF Glow / accent / hover
ice #7FDBFF Soft cyan
frost #E6F6FF Body text on dark

Reusable utility classes live in app/globals.css: btn-primary, btn-ghost, card, card-hover, chip, heading-xl, heading-lg, text-glow (animated shimmer gradient), water-grid.


Key features


Customizing


Deployment

The site deploys cleanly to Vercel, Cloudflare Pages, or any host supporting Next.js 14. From the project directory:

# Vercel
npx vercel

# Cloudflare Pages (build command)
npm run build && npx @cloudflare/next-on-pages