Build a single-page product launch / showcase landing page using React + Vite + Tailwind CSS + TypeScript + Framer Motion (motion/react) + lucide-react. The product is a fictional premium wireless headphone called "Aura Pro." The aesthetic is "Apple meets Dieter Rams" white/light backgrounds, bold editorial typography, massive product video, generous whitespace, and liquid glass UI accents. LIGHT theme only.
VISUAL HIERARCHY
Product hero video → Product name → Price → CTA → Features → Specs → Reviews
ANTI-PATTERNS (do NOT add)
* No dark mode toggle light only
* No decorative gradient blobs, mesh gradients, or aurora effects
* No hamburger menu hide nav links on mobile, show only logo + "Buy Now" CTA
* No parallax or scroll-hijacking
* No component libraries beyond lucide-react all UI hand-built
* No gradients on text
* No border-radius larger than 1.5rem on any element
* No colored section backgrounds only white or very light gray
FONTS
Import: https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Inter:wght@300;400;500;600;700&display=swap
- Headings: Instrument Serif → font-display
- Body/UI: Inter → font-body
COLOR THEME (HSL, light)
--background: 0 0% 100% --foreground: 0 0% 8%
--accent: 225 80% 56% ← blue #2563EB, used ONLY on: "Add to Bag" CTA, price text, selected color swatch ring
LIQUID GLASS (light variant)
.liquid-glass { background: rgba(255,255,255,0.5); backdrop-filter: blur(20px); border: 1px solid rgba(0,0,0,0.06); box-shadow: 0 1px 3px rgba(0,0,0,0.04), inset 0 1px 0 rgba(255,255,255,0.8); }
.liquid-glass-strong { background: rgba(255,255,255,0.7); backdrop-filter: blur(40px); border: 1px solid rgba(0,0,0,0.08); }
Note: NO ::before gradient border trick subtle border + box-shadow is sufficient for light theme.
SECTIONS
1. NAVBAR sticky, z-50, liquid-glass backdrop when scrolled. Logo "aura PRO" (Instrument Serif + tiny superscript). Center links (hidden mobile). "Buy" button with ShoppingBag icon, dark pill style.
2. HERO centered. Tagline above h1. "Aura Pro" at text-6xl→text-9xl (Instrument Serif). Product video below heading (aspect-[16/10], max-w-4xl, rounded-3xl). Price in accent blue "$549" + "or $45.75/mo". "Add to Bag" (accent blue) + "Learn more" (underline) CTA pair.
3. FEATURES bg-card section. Video banner (aspect-[21/9]). 4-card grid: Spatial Audio (Volume2 icon), 40-Hour Battery (Battery icon), Crystal Voice (Mic icon), Seamless Switch (Bluetooth icon). Each card: white bg, rounded-2xl, border.
4. PRODUCT DEEP DIVE 55/45 split. Left: lifestyle video (aspect-[4/5]). Right: editorial heading "Designed to be forgotten." + 3 detail blocks (Materials, Adaptive Fit, Sustainability).
5. SPECS bg-card, 8-cell grid using gap-px trick (1px borders via bg color). Cells: 40mm driver, 20Hz–40kHz, 40hrs battery, 254g weight, Bluetooth 5.3, 30dB ANC, USB-C, 3-device multipoint.
6. REVIEWS 3 cards, white bg, border. Each: 5 filled Star icons, blockquote, reviewer name + role.
7. BUY CTA DARK inverted section (bg-foreground). "Make it yours." heading in white. Color picker (3 swatches: Midnight/Silver/Ivory, useState for selection). "$549" price. "Add to Bag" button (white bg, dark text).
8. FOOTER copyright left, Privacy/Terms/Support center, Twitter/Instagram/Youtube icons right.
PERFORMANCE
- Hero video: preload="auto"
- All other videos: preload="none", IntersectionObserver (play at 50%, pause at 10%)
- Framer Motion: ease: [0.16, 1, 0.3, 1], useReducedMotion() on all animated elements
- Mobile: Framer Motion scroll animations disabled below 768px (render at final state)
- Glass effects: only navbar uses persistent backdrop-filter; others are below-fold
KEY DEPS: motion ^12.35.0, lucide-react ^0.462.0
Icons: ShoppingBag, ArrowUpRight, ArrowDown, Volume2, Battery, Mic, Bluetooth, Star, Twitter, Instagram, Youtube