// Store — Invictus Body Jewelry (5 categorías como cards) const STORE_CATEGORIES = [ { id: 'tradicional', name: 'Tradicional', count: 12, desc: 'Anillos, barbells y aros de acero quirúrgico y titanio.', bg: 'radial-gradient(circle at 30% 30%, #3a2a0a, #0a0a0a 70%)' }, { id: 'tops', name: 'Tops', count: 18, desc: 'Cabezas intercambiables: ópalo, Swarovski, zirconia.', bg: 'radial-gradient(circle at 70% 30%, #1a1a2a, #0a0a0a 70%)' }, { id: 'clickers', name: 'Clickers', count: 14, desc: 'Cierre a presión, diseños segmentados y decorativos.', bg: 'radial-gradient(circle at 50% 30%, #2a0808, #0a0a0a 70%)' }, { id: 'navel', name: 'Navel', count: 10, desc: 'Banana bells anatómicos para ombligo.', bg: 'radial-gradient(circle at 30% 50%, #2a1a0a, #0a0a0a 70%)' }, { id: 'nipple', name: 'Nipple', count: 8, desc: 'Sets en par para piercing de nipple.', bg: 'radial-gradient(circle at 70% 50%, #1a0a1a, #0a0a0a 70%)' }, ]; function CategoryGlyph({ id }) { if (id === 'tradicional') return ( ); if (id === 'tops') return ( ); if (id === 'clickers') return ( ); if (id === 'navel') return ( ); return ( ); } function CategoryCard({ c, i }) { return ( {c.count} PIEZAS {c.name} {c.desc} VER COLECCIÓN ); } function Store() { const [showAll, setShowAll] = useState(false); const isMobile = typeof window !== 'undefined' && window.matchMedia('(max-width: 700px)').matches; return ( Joyería Invictus Body Jewelry. Joyería profesional para piercing — explora por categoría. {STORE_CATEGORIES.map((c, i) => ( = 2 ? 'cat-extra' : ''} style={{ display: !showAll && i >= 2 && isMobile ? 'none' : 'block' }}> ))} Ver todo el catálogo ); } window.Store = Store;
{c.desc}
Joyería profesional para piercing — explora por categoría.