diff --git a/components/checkout/FeatureSlideshow.tsx b/components/checkout/FeatureSlideshow.tsx
index 7502ac7..79b8c12 100644
--- a/components/checkout/FeatureSlideshow.tsx
+++ b/components/checkout/FeatureSlideshow.tsx
@@ -4,7 +4,7 @@ import { useState, useEffect, useCallback } from 'react'
import Image from 'next/image'
import { AnimatePresence, motion } from 'framer-motion'
import { PulseMockup } from '@/components/marketing/mockups/pulse-mockup'
-import { PulseFeaturesCarousel } from '@/components/marketing/mockups/pulse-features-carousel'
+import { PagesCard, ReferrersCard, LocationsCard, TechnologyCard, PeakHoursCard } from '@/components/marketing/mockups/pulse-features-carousel'
import { FunnelMockup } from '@/components/marketing/mockups/funnel-mockup'
import { EmailReportMockup } from '@/components/marketing/mockups/email-report-mockup'
@@ -13,9 +13,21 @@ interface Slide {
mockup: React.ReactNode
}
+function FeatureCard({ children }: { children: React.ReactNode }) {
+ return (
+
+ {children}
+
+ )
+}
+
const slides: Slide[] = [
{ headline: 'Your traffic, at a glance.', mockup: },
- { headline: 'Everything you need to know about your visitors.', mockup: },
+ { headline: 'See which pages perform best.', mockup: },
+ { headline: 'Know where your visitors come from.', mockup: },
+ { headline: 'Visitors from around the world.', mockup: },
+ { headline: 'Understand your audience's tech stack.', mockup: },
+ { headline: 'Find your peak traffic hours.', mockup: },
{ headline: 'See where visitors drop off.', mockup: },
{ headline: 'Reports delivered to your inbox.', mockup: },
]
diff --git a/components/marketing/mockups/pulse-features-carousel.tsx b/components/marketing/mockups/pulse-features-carousel.tsx
index be2def2..1201b18 100644
--- a/components/marketing/mockups/pulse-features-carousel.tsx
+++ b/components/marketing/mockups/pulse-features-carousel.tsx
@@ -113,7 +113,7 @@ function BarRow({
// ─── Card 1: Pages ───────────────────────────────────────────────────────────
-function PagesCard() {
+export function PagesCard() {
const data = [
{ label: '/', value: 142 },
{ label: '/products/drop', value: 68 },
@@ -169,7 +169,7 @@ function getReferrerIcon(name: string, favicon?: string) {
const FAVICON_URL = 'https://www.google.com/s2/favicons'
-function ReferrersCard() {
+export function ReferrersCard() {
const data = [
{ label: 'Direct', value: 186 },
{ label: 'Google', value: 94, domain: 'google.com' },
@@ -206,7 +206,7 @@ function ReferrersCard() {
// ─── Card 3: Locations (Real Dotted Map) ─────────────────────────────────────
-function LocationsCard() {
+export function LocationsCard() {
const mockData = [
{ country: 'CH', pageviews: 320 },
{ country: 'US', pageviews: 186 },
@@ -300,7 +300,7 @@ const BROWSER_ICONS: Record = {
Opera: '/icons/browsers/opera.svg',
}
-function TechnologyCard() {
+export function TechnologyCard() {
const data = [
{ label: 'Chrome', value: 412 },
{ label: 'Safari', value: 189 },
@@ -381,7 +381,7 @@ function getHighlightColor(value: number, max: number): string {
return HIGHLIGHT_COLORS[4]
}
-function PeakHoursCard() {
+export function PeakHoursCard() {
const max = Math.max(...MOCK_GRID.flat())
// Find best time