// Reusable abstract CSS/SVG visual compositions — no real photos. // Each composition is a self-contained piece of "imagery" built from gradients, blurs, lines. const Visual = { // Soft warm glow with organic shapes — for hero HeroBloom: ({ className = "" }) => (
), // Editorial portrait placeholder — abstract face/silhouette suggestion Portrait: ({ tone = "champ", label = "PORTRAIT", className = "" }) => { const tones = { champ: ["#e8d5b7", "#d4a574", "#8a7560"], blush: ["#f0d7d2", "#d9a89e", "#8a6560"], ivory: ["#fbf6ec", "#efe6d6", "#bfb09a"], ink: ["#3a2a20", "#1a1410", "#c9a961"], }; const [c1, c2, c3] = tones[tone] || tones.champ; return ( ); }, // Abstract still-life: bottle/jar shapes for product imagery Stilllife: ({ className = "" }) => ( ), // Concentric arches — used as decorative section header Arches: ({ className = "" }) => ( ), // Tiny ornament glyph Glyph: ({ className = "" }) => ( ), }; window.Visual = Visual;