{"product_id":"lo-scoop-bar","title":"LO Scoop Bar","description":"\u003cbody\u003e\n\n\n\u003cmeta charset=\"UTF-8\"\u003e\n\u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"\u003e\n\n\u003ctitle\u003eLittle Obsessed™ Scoop Bar\u003c\/title\u003e\n\n\u003cstyle\u003e\n* {\n  box-sizing: border-box;\n}\n\nbody {\n  margin: 0;\n  font-family: Arial, sans-serif;\n  background:\n    radial-gradient(circle at 20% 20%, rgba(255,255,255,.9), transparent 20%),\n    linear-gradient(135deg, #fff5fa, #f8e5f0, #fff);\n  color: #4a3440;\n  overflow-x: hidden;\n}\n\n.scoop-bar {\n  min-height: 100vh;\n  position: relative;\n  padding: 70px 20px;\n  text-align: center;\n  overflow: hidden;\n}\n\n\/* FLOATING BEADS *\/\n\n.bead {\n  position: absolute;\n  width: 18px;\n  height: 18px;\n  border-radius: 50%;\n  background: linear-gradient(135deg, #fff, #e9b7ce);\n  box-shadow: 0 4px 15px rgba(180,100,140,.25);\n  animation: float 6s infinite ease-in-out;\n}\n\n.bead:nth-child(1) { left: 8%; top: 20%; animation-delay: 0s; }\n.bead:nth-child(2) { left: 85%; top: 15%; animation-delay: 1s; }\n.bead:nth-child(3) { left: 15%; top: 75%; animation-delay: 2s; }\n.bead:nth-child(4) { left: 78%; top: 72%; animation-delay: 3s; }\n.bead:nth-child(5) { left: 50%; top: 8%; animation-delay: 1.5s; }\n\n@keyframes float {\n  0%,100% {\n    transform: translateY(0) rotate(0deg);\n  }\n  50% {\n    transform: translateY(-30px) rotate(180deg);\n  }\n}\n\n\/* MAIN CARD *\/\n\n.card {\n  position: relative;\n  z-index: 2;\n  max-width: 900px;\n  margin: auto;\n  padding: 55px 30px;\n  border-radius: 35px;\n  background: rgba(255,255,255,.72);\n  backdrop-filter: blur(14px);\n  box-shadow: 0 25px 70px rgba(150,90,120,.18);\n  border: 1px solid rgba(255,255,255,.9);\n}\n\n.logo {\n  font-size: 15px;\n  letter-spacing: 5px;\n  text-transform: uppercase;\n  font-weight: bold;\n  animation: glow 2s infinite alternate;\n}\n\n@keyframes glow {\n  from { opacity: .65; }\n  to { opacity: 1; }\n}\n\nh1 {\n  font-size: clamp(42px, 8vw, 82px);\n  margin: 15px 0 5px;\n  line-height: .95;\n  background: linear-gradient(90deg,#b87999,#e3a8c4,#9f6684);\n  -webkit-background-clip: text;\n  color: transparent;\n}\n\n.subtitle {\n  font-size: clamp(18px, 3vw, 25px);\n  margin: 20px auto;\n  max-width: 650px;\n}\n\n.tagline {\n  display: inline-block;\n  margin: 15px;\n  padding: 12px 22px;\n  border-radius: 50px;\n  background: #fff;\n  box-shadow: 0 8px 25px rgba(160,90,120,.12);\n  font-weight: bold;\n}\n\n\/* SCOOP OPTIONS *\/\n\n.scoops {\n  display: flex;\n  justify-content: center;\n  gap: 18px;\n  flex-wrap: wrap;\n  margin: 40px 0;\n}\n\n.scoop {\n  width: 180px;\n  padding: 25px 15px;\n  border-radius: 25px;\n  background: linear-gradient(145deg,#fff,#f8dce9);\n  box-shadow: 0 12px 30px rgba(150,90,120,.15);\n  transition: .35s;\n  cursor: pointer;\n}\n\n.scoop:hover {\n  transform: translateY(-12px) rotate(-2deg) scale(1.04);\n}\n\n.scoop-icon {\n  font-size: 45px;\n  animation: bounce 2s infinite;\n}\n\n@keyframes bounce {\n  0%,100% { transform: translateY(0); }\n  50% { transform: translateY(-8px); }\n}\n\n.scoop h3 {\n  margin: 12px 0 5px;\n}\n\n.scoop p {\n  font-size: 14px;\n}\n\n\/* MYSTERY AREA *\/\n\n.mystery {\n  margin-top: 45px;\n}\n\n.mystery h2 {\n  font-size: clamp(25px,5vw,42px);\n}\n\n.reveal-box {\n  margin: 25px auto;\n  width: 190px;\n  height: 190px;\n  border-radius: 50%;\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  background:\n    radial-gradient(circle at 30% 30%, #fff, #e7b2ca);\n  box-shadow:\n    0 0 0 10px rgba(255,255,255,.6),\n    0 0 50px rgba(220,130,170,.35);\n  font-size: 70px;\n  cursor: pointer;\n  transition: .4s;\n}\n\n.reveal-box:hover {\n  transform: scale(1.08) rotate(8deg);\n}\n\n.reveal-box.revealing {\n  animation: reveal 1s ease;\n}\n\n@keyframes reveal {\n  0% { transform: scale(1) rotate(0); }\n  50% { transform: scale(1.25) rotate(180deg); }\n  100% { transform: scale(1) rotate(360deg); }\n}\n\n#result {\n  min-height: 35px;\n  font-weight: bold;\n  font-size: 20px;\n}\n\n\/* CTA *\/\n\n.cta {\n  display: inline-block;\n  margin-top: 25px;\n  padding: 17px 38px;\n  border-radius: 50px;\n  background: linear-gradient(90deg,#c984a7,#e5aec7);\n  color: white;\n  text-decoration: none;\n  font-weight: bold;\n  letter-spacing: 1px;\n  box-shadow: 0 10px 30px rgba(170,90,130,.3);\n  transition: .3s;\n}\n\n.cta:hover {\n  transform: translateY(-5px) scale(1.05);\n}\n\n.rules {\n  margin: 35px auto 0;\n  max-width: 650px;\n  font-size: 14px;\n  line-height: 1.7;\n  opacity: .75;\n}\n\n.sparkle {\n  position: absolute;\n  font-size: 25px;\n  animation: sparkle 3s infinite;\n}\n\n@keyframes sparkle {\n  0%,100% { opacity: .2; transform: scale(.7); }\n  50% { opacity: 1; transform: scale(1.2); }\n}\n\u003c\/style\u003e\n\n\n\n\n\u003csection class=\"scoop-bar\"\u003e\n\n  \u003cdiv class=\"bead\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"bead\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"bead\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"bead\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"bead\"\u003e\u003c\/div\u003e\n\n  \u003cdiv class=\"sparkle\" style=\"left:25%;top:18%;\"\u003e✦\u003c\/div\u003e\n  \u003cdiv class=\"sparkle\" style=\"right:20%;top:35%;\"\u003e✧\u003c\/div\u003e\n  \u003cdiv class=\"sparkle\" style=\"left:12%;top:55%;\"\u003e✦\u003c\/div\u003e\n\n  \u003cdiv class=\"card\"\u003e\n\n    \u003cdiv class=\"logo\"\u003e\n      LITTLE OBSESSED™\n    \u003c\/div\u003e\n\n    \u003ch1\u003e\n      SCOOP BAR 🎀\n    \u003c\/h1\u003e\n\n    \u003cp class=\"subtitle\"\u003e\n      Where every scoop hides a surprise.\n    \u003c\/p\u003e\n\n    \u003cdiv class=\"tagline\"\u003e\n      🫧 SCOOP • REVEAL • OBSESS 🫧\n    \u003c\/div\u003e\n\n    \u003cp\u003e\n      Pick your scoop size, discover your mystery bead,\n      and find out what little surprise is waiting for you!\n    \u003c\/p\u003e\n\n    \u003cdiv class=\"scoops\"\u003e\n\n      \u003cdiv class=\"scoop\"\u003e\n        \u003cdiv class=\"scoop-icon\"\u003e🥄\u003c\/div\u003e\n        \u003ch3\u003eMINI SCOOP\u003c\/h3\u003e\n        \u003cp\u003eA little taste of the magic.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"scoop\"\u003e\n        \u003cdiv class=\"scoop-icon\"\u003e🎀\u003c\/div\u003e\n        \u003ch3\u003eREGULAR SCOOP\u003c\/h3\u003e\n        \u003cp\u003eThe perfect surprise treat.\u003c\/p\u003e\n      \u003c\/div\u003e\n\n      \u003cdiv class=\"scoop\"\u003e\n        \u003cdiv class=\"scoop-icon\"\u003e💗\u003c\/div\u003e\n        \u003ch3\u003eLARGE SCOOP\u003c\/h3\u003e\n        \u003cp\u003eGo BIG on the fun!\u003c\/p\u003e\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"mystery\"\u003e\n\n      \u003ch2\u003e\n        👀 WHAT WILL YOUR BEAD REVEAL?\n      \u003c\/h2\u003e\n\n      \u003cp\u003e\n        Tap the mystery bead and let the magic begin!\n      \u003c\/p\u003e\n\n      \u003cdiv class=\"reveal-box\" onclick=\"revealMystery()\" id=\"mysteryBall\"\u003e\n        🫧\n      \u003c\/div\u003e\n\n      \u003cdiv id=\"result\"\u003e\n        Your surprise is waiting...\n      \u003c\/div\u003e\n\n    \u003c\/div\u003e\n\n    \u003ca href=\"#\" class=\"cta\"\u003e\n      🎀 ENTER THE SCOOP BAR\n    \u003c\/a\u003e\n\n    \u003cdiv class=\"rules\"\u003e\n      You choose the scoop. The beads choose your surprise.\n      \u003cbr\u003e\n      Every scoop contains mystery beads that reveal your special item.\n      \u003cbr\u003e\u003cbr\u003e\n      ✨ All sales are final. ✨\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n\u003c\/section\u003e\n\n\u003cscript\u003e\n\nconst surprises = [\n  \"🎀 You revealed a cute surprise!\",\n  \"💗 Your bead found something special!\",\n  \"✨ Ooooh... you've unlocked a mystery item!\",\n  \"🫧 Your scoop has spoken!\",\n  \"🎁 Surprise unlocked!\",\n  \"🌸 Something Little Obsessed is coming your way!\"\n];\n\nfunction revealMystery() {\n\n  const ball = document.getElementById(\"mysteryBall\");\n  const result = document.getElementById(\"result\");\n\n  ball.classList.remove(\"revealing\");\n\n  void ball.offsetWidth;\n\n  ball.classList.add(\"revealing\");\n\n  result.innerHTML = \"🫧 MIXING THE BEADS...\";\n\n  setTimeout(() =\u003e {\n\n    const random =\n      surprises[Math.floor(Math.random() * surprises.length)];\n\n    result.innerHTML = random;\n\n  }, 1000);\n}\n\n\u003c\/script\u003e\n\n\n\u003c\/body\u003e","brand":"Little Obsessed","offers":[{"title":"Mini","offer_id":43544351342640,"sku":null,"price":189.0,"currency_code":"ZAR","in_stock":true},{"title":"Regular","offer_id":43544351375408,"sku":null,"price":289.0,"currency_code":"ZAR","in_stock":true},{"title":"Large","offer_id":43544351408176,"sku":null,"price":499.0,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0690\/0085\/5600\/files\/rn-image_picker_lib_temp_16e51527-b325-452b-92d2-7eace0bdfdb2.png?v=1788085252","url":"https:\/\/littleobsessed.co.za\/products\/lo-scoop-bar","provider":"Little Obsessed","version":"1.0","type":"link"}