A hygiene sell, dressed as a soft editorial
Most carpet-cleaning sites lead with shock: harsh red "BEFORE" photos of matted, stained carpet next to a blinding "AFTER." Plush Carpet Care doesn't. It reads like a calm home-wellness or textile-care brand — soft serif type, generous air, rounded photo masks — because the buyer it's built for isn't panicking over a stain. She's a health-conscious parent thinking about dust mites, pet dander, and what a year of bare feet and playdates has pressed into the pile.
The aesthetic school sits closest to domestic wellness editorial — the visual register of a nice linen or skincare brand, not a cleaning-service flyer. Deep plum carries authority and calm; blush carries warmth and softness; everything is rounded, airy, and slow to reveal. The whole page is built to feel like the calmest thing in the room.
How the pieces are built
Brushed velvet (signature interaction)
The hero band is layered like a real carpet: the photo sits at the base, a plum-to-lavender duotone scrim over it for contrast, and a fine nap-texture layer of two repeating-linear-gradients crossed at opposing angles on top, so the surface reads as woven pile rather than a flat photo. A soft blush radial-gradient "sheen" then tracks the pointer across that texture, brightening the nap along its path like a hand brushing carpet — and settling back slowly on a long, eased CSS transition rather than snapping.
/* the sheen follows two CSS custom properties set on pointermove */
.velvet-sheen{
background:radial-gradient(340px 340px at var(--mx) var(--my),
rgba(233,201,196,.42), transparent 70%);
mix-blend-mode:overlay;
transition:left 1.1s cubic-bezier(.19,1,.22,1), top 1.1s cubic-bezier(.19,1,.22,1);
}
On touch devices and under prefers-reduced-motion, the pointer listener never attaches. Instead a slow 7-second @keyframes loop drifts the same sheen back and forth on its own — a gentle "auto-brush" so the moment still lands without asking anyone to touch a hero image on a phone.
Art-directed photography, never dropped in raw
The hero photo (a technician steam-cleaning a cream carpet, visible clean stripe) sits under a plum duotone scrim so warm-white headline text holds AA contrast at every viewport. The macro pile photo lower on the page is masked into a large rounded-corner frame with its own soft scrim, paired with a small floating "4 hrs" dry-time badge that overlaps the frame edge — a detail borrowed from print editorial, not template design.
Restraint under reduced motion
Under prefers-reduced-motion, scroll reveals resolve to their final state immediately and all transitions are disabled — nobody gets a broken half-animated page, they just get the calm, still version of the same design.
Written by hand, no framework in sight
This site was hand-coded — plain HTML, CSS, and JavaScript, written line by line. No page builders, no drag-and-drop themes, no off-the-shelf frameworks. Every detail, from the brushed-velvet hero to the sticky call bar, was engineered specifically to move a homeowner toward one action: picking up the phone.
That's the Tiny Mammoth approach to a client website: a template built to convert, not just to look good.
The conversion decisions
- The phone is never more than a glance away. It's in the sticky header, twice in the hero, again beside the quote form, and pinned in the mobile call bar — a parent mid-errand can call without hunting.
- Dual hero CTAs cover both mindsets. A direct
tel:button for "call now" and a "Get a Free Quote" button that smooth-scrolls to the form for "let me think while I type" — neither visitor is forced down the wrong path. - The trust strip answers the family objection first. 4.9★ from 600+ homes, "Certified & Insured," and "Kid & pet safe products" sit directly under the hero — the exact three worries a parent has before letting a stranger's chemicals near a crawling baby.
- The sticky mobile call bar removes the hardest step. On phones — most local-service traffic — "Call Now" stays pinned in the thumb zone, and the body is padded so it never covers content.
- The form is deliberately short. Name, phone, service, an optional room count, and an optional note — an inline thank-you state and a phone number right beside it for anyone who'd rather just call.
- A real price does the closing. "3 rooms, $139, dry in about 4 hours" removes the biggest hesitation in service pricing — not knowing the number — before anyone has to ask.
What Plush Carpet Care does differently
Every template in our library deliberately moves along a few design axes so no two feel alike. Here's where this one stakes its own ground:
Palette
Deep plum and blush instead of the blues and greens most home-service sites default to — softer, warmer, and closer to a textile or wellness brand than a trade contractor.
Typography
A soft, low-contrast optical-size serif (Fraunces) for headlines paired with gentle sans body copy (Karla) — calm and domestic, not corporate-technical.
Layout
Airy, centered editorial with generous whitespace and rounded photo masks — the calmest page in the batch, on purpose, to match a calm-hygiene sales pitch rather than an urgent-repair one.
Signature interaction
A brushed-velvet hero that brightens along the pointer's path like a hand smoothing carpet pile — a tactile, sensory metaphor instead of a before/after slider or a shock-value photo swap.
Carpet cleaning is bought by health-conscious families thinking about allergens and what a year of foot traffic really leaves in the fibers — not by people mid-panic over a single stain. A calm, sensory "soft and clean" aesthetic that sells the reward (fresh, safe, soft pile underfoot) should out-convert the industry's default shock-value before/after photography, because it matches how the actual decision gets made: at the kitchen table, thinking about the baby who crawls on that floor.
For a business owner, the practical advantages are concrete: the softer, more premium feel supports charging above the bargain-cleaner rate, the family-safety framing pre-answers the objection that stalls the most bookings, and the calm layout keeps a reader's eye moving toward the phone number and the form instead of getting stuck skimming a wall of service jargon.