{"product_id":"cherry-blossom-dress","title":"Cherry Blossom Dress","description":"\u003cstyle\u003e\n  .lo-cherry-dress {\n    max-width: 920px;\n    margin: 30px auto;\n    padding: 38px 28px;\n    border-radius: 30px;\n    background: linear-gradient(135deg, #fff8fb, #ffffff, #fff0f6);\n    color: #49363f;\n    font-family: Arial, Helvetica, sans-serif;\n    text-align: center;\n    position: relative;\n    overflow: hidden;\n    box-shadow: 0 18px 50px rgba(190, 110, 145, .15);\n  }\n\n  \/* Floating cherry blossoms *\/\n  .cherry {\n    position: absolute;\n    font-size: 22px;\n    opacity: .45;\n    pointer-events: none;\n    animation: blossomFloat 7s infinite ease-in-out;\n  }\n\n  .cherry1 {\n    left: 7%;\n    top: 15%;\n  }\n\n  .cherry2 {\n    right: 8%;\n    top: 22%;\n    animation-delay: 1.5s;\n  }\n\n  .cherry3 {\n    left: 15%;\n    bottom: 12%;\n    animation-delay: 3s;\n  }\n\n  .cherry4 {\n    right: 15%;\n    bottom: 18%;\n    animation-delay: 4.5s;\n  }\n\n  .cherry5 {\n    left: 48%;\n    top: 8%;\n    animation-delay: 2s;\n  }\n\n  @keyframes blossomFloat {\n    0%, 100% {\n      transform: translateY(0) rotate(0deg);\n      opacity: .25;\n    }\n\n    50% {\n      transform: translateY(-20px) rotate(15deg);\n      opacity: .8;\n    }\n  }\n\n  \/* Soft glow *\/\n  .lo-cherry-dress::before {\n    content: \"\";\n    position: absolute;\n    width: 260px;\n    height: 260px;\n    background: #f8dce8;\n    border-radius: 50%;\n    filter: blur(70px);\n    opacity: .35;\n    top: -130px;\n    left: -100px;\n    animation: glowMove 6s infinite alternate ease-in-out;\n  }\n\n  @keyframes glowMove {\n    from {\n      transform: translate(0, 0);\n    }\n\n    to {\n      transform: translate(100px, 80px);\n    }\n  }\n\n  \/* Badge *\/\n  .lo-cherry-badge {\n    display: inline-block;\n    padding: 9px 18px;\n    border-radius: 50px;\n    background: #f7dce8;\n    color: #a15d7b;\n    font-size: 10px;\n    font-weight: 900;\n    letter-spacing: 2px;\n    animation: badgeFloat 3s infinite ease-in-out;\n  }\n\n  @keyframes badgeFloat {\n    0%, 100% {\n      transform: translateY(0);\n    }\n\n    50% {\n      transform: translateY(-5px);\n    }\n  }\n\n  \/* Title *\/\n  .lo-cherry-title {\n    font-size: 40px;\n    line-height: 1.1;\n    margin: 20px 0 12px;\n    font-weight: 900;\n    letter-spacing: -1.5px;\n  }\n\n  .lo-cherry-title span {\n    color: #c36f91;\n  }\n\n  .lo-cherry-intro {\n    max-width: 730px;\n    margin: 0 auto 25px;\n    font-size: 16px;\n    line-height: 1.8;\n  }\n\n  .lo-cherry-intro strong {\n    color: #a65b79;\n  }\n\n  \/* Animated flower *\/\n  .lo-flower {\n    width: 105px;\n    height: 105px;\n    margin: 25px auto;\n    border-radius: 50%;\n    background: rgba(255,255,255,.85);\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    font-size: 55px;\n    box-shadow: 0 10px 30px rgba(180, 100, 135, .12);\n    animation: flowerPulse 3s infinite ease-in-out;\n  }\n\n  @keyframes flowerPulse {\n    0%, 100% {\n      transform: scale(1) rotate(-3deg);\n    }\n\n    50% {\n      transform: scale(1.08) rotate(3deg);\n    }\n  }\n\n  \/* Features *\/\n  .lo-cherry-features {\n    display: grid;\n    grid-template-columns: repeat(3, 1fr);\n    gap: 13px;\n    margin-top: 20px;\n  }\n\n  .lo-cherry-feature {\n    padding: 20px 15px;\n    border-radius: 20px;\n    background: rgba(255,255,255,.82);\n    border: 1px solid #f0dce5;\n    transition: all .35s ease;\n    cursor: pointer;\n    opacity: 0;\n    transform: translateY(20px);\n    animation: reveal .7s forwards;\n  }\n\n  .lo-cherry-feature:nth-child(1) {\n    animation-delay: .1s;\n  }\n\n  .lo-cherry-feature:nth-child(2) {\n    animation-delay: .25s;\n  }\n\n  .lo-cherry-feature:nth-child(3) {\n    animation-delay: .4s;\n  }\n\n  .lo-cherry-feature:nth-child(4) {\n    animation-delay: .55s;\n  }\n\n  .lo-cherry-feature:nth-child(5) {\n    animation-delay: .7s;\n  }\n\n  .lo-cherry-feature:nth-child(6) {\n    animation-delay: .85s;\n  }\n\n  @keyframes reveal {\n    to {\n      opacity: 1;\n      transform: translateY(0);\n    }\n  }\n\n  .lo-cherry-feature:hover {\n    transform: translateY(-8px) scale(1.02);\n    box-shadow: 0 15px 30px rgba(180, 100, 135, .14);\n  }\n\n  .lo-cherry-icon {\n    display: block;\n    font-size: 27px;\n    margin-bottom: 8px;\n  }\n\n  .lo-cherry-feature strong {\n    display: block;\n    color: #a15d79;\n    font-size: 13px;\n    margin-bottom: 6px;\n    text-transform: uppercase;\n    letter-spacing: .5px;\n  }\n\n  .lo-cherry-feature p {\n    margin: 0;\n    font-size: 12px;\n    line-height: 1.55;\n  }\n\n  \/* Interactive button *\/\n  .lo-cherry-btn {\n    margin-top: 30px;\n    padding: 15px 28px;\n    border: none;\n    border-radius: 50px;\n    background: #c36f91;\n    color: #fff;\n    font-size: 13px;\n    font-weight: 900;\n    letter-spacing: 1px;\n    cursor: pointer;\n    box-shadow: 0 8px 22px rgba(190, 100, 140, .25);\n    transition: .3s ease;\n  }\n\n  .lo-cherry-btn:hover {\n    transform: scale(1.07);\n    box-shadow: 0 12px 30px rgba(190, 100, 140, .35);\n  }\n\n  \/* Hidden message *\/\n  .lo-cherry-message {\n    display: none;\n    max-width: 620px;\n    margin: 20px auto 0;\n    padding: 18px;\n    border-radius: 18px;\n    background: #fff0f6;\n    color: #87516a;\n    font-size: 14px;\n    font-weight: 600;\n    line-height: 1.6;\n    animation: popCherry .45s ease;\n  }\n\n  @keyframes popCherry {\n    from {\n      opacity: 0;\n      transform: scale(.85);\n    }\n\n    to {\n      opacity: 1;\n      transform: scale(1);\n    }\n  }\n\n  .lo-cherry-brand {\n    margin-top: 30px;\n    font-size: 10px;\n    letter-spacing: 4px;\n    font-weight: 900;\n    color: #b17891;\n  }\n\n  \/* Mobile *\/\n  @media (max-width: 650px) {\n\n    .lo-cherry-dress {\n      padding: 28px 18px;\n    }\n\n    .lo-cherry-title {\n      font-size: 31px;\n    }\n\n    .lo-cherry-intro {\n      font-size: 14px;\n    }\n\n    .lo-cherry-features {\n      grid-template-columns: 1fr;\n    }\n  }\n\u003c\/style\u003e\n\n\n\u003cdiv class=\"lo-cherry-dress\"\u003e\n\n  \u003c!-- Floating blossoms --\u003e\n  \u003cdiv class=\"cherry cherry1\"\u003e🌸\u003c\/div\u003e\n  \u003cdiv class=\"cherry cherry2\"\u003e🌸\u003c\/div\u003e\n  \u003cdiv class=\"cherry cherry3\"\u003e🌸\u003c\/div\u003e\n  \u003cdiv class=\"cherry cherry4\"\u003e🌸\u003c\/div\u003e\n  \u003cdiv class=\"cherry cherry5\"\u003e✿\u003c\/div\u003e\n\n  \u003c!-- Badge --\u003e\n  \u003cspan class=\"lo-cherry-badge\"\u003e\n    LITTLE OBSESSED™ • GIRLS COLLECTION\n  \u003c\/span\u003e\n\n  \u003c!-- Title --\u003e\n  \u003ch2 class=\"lo-cherry-title\"\u003e\n    A Little Bit of \u003cspan\u003eMagic\u003c\/span\u003e 🌸\n  \u003c\/h2\u003e\n\n  \u003cp class=\"lo-cherry-intro\"\u003e\n    Let her bloom in our enchanting \u003cstrong\u003eCherry Blossom Dress\u003c\/strong\u003e.\n    Designed for little moments and beautiful memories, this sweet dress\n    brings a touch of dreamy charm to every twirl, smile and adventure.\n  \u003c\/p\u003e\n\n  \u003c!-- Animated flower --\u003e\n  \u003cdiv class=\"lo-flower\"\u003e\n    🌸\n  \u003c\/div\u003e\n\n  \u003c!-- Features --\u003e\n  \u003cdiv class=\"lo-cherry-features\"\u003e\n\n    \u003cdiv class=\"lo-cherry-feature\"\u003e\n      \u003cspan class=\"lo-cherry-icon\"\u003e🌸\u003c\/span\u003e\n      \u003cstrong\u003eCherry Blossom Charm\u003c\/strong\u003e\n      \u003cp\u003e\n        A dreamy floral-inspired look that's perfect for little girls.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"lo-cherry-feature\"\u003e\n      \u003cspan class=\"lo-cherry-icon\"\u003e🎀\u003c\/span\u003e\n      \u003cstrong\u003eSweet \u0026amp; Feminine\u003c\/strong\u003e\n      \u003cp\u003e\n        A beautiful silhouette made for twirling, playing and posing.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"lo-cherry-feature\"\u003e\n      \u003cspan class=\"lo-cherry-icon\"\u003e✨\u003c\/span\u003e\n      \u003cstrong\u003ePicture Perfect\u003c\/strong\u003e\n      \u003cp\u003e\n        Made for birthdays, family photos, outings and special occasions.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"lo-cherry-feature\"\u003e\n      \u003cspan class=\"lo-cherry-icon\"\u003e💕\u003c\/span\u003e\n      \u003cstrong\u003eEveryday Magic\u003c\/strong\u003e\n      \u003cp\u003e\n        Pretty enough for special days and sweet enough for everyday wear.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"lo-cherry-feature\"\u003e\n      \u003cspan class=\"lo-cherry-icon\"\u003e🩰\u003c\/span\u003e\n      \u003cstrong\u003eTwirl Ready\u003c\/strong\u003e\n      \u003cp\u003e\n        Because every little girl deserves a dress made for magical moments.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"lo-cherry-feature\"\u003e\n      \u003cspan class=\"lo-cherry-icon\"\u003e🌷\u003c\/span\u003e\n      \u003cstrong\u003eLittle Obsessed Pick\u003c\/strong\u003e\n      \u003cp\u003e\n        A dreamy addition to her little wardrobe that you'll adore.\n      \u003c\/p\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003c!-- Interactive button --\u003e\n  \u003cbutton class=\"lo-cherry-btn\" onclick=\"loCherryMagic()\"\u003e\n    🌸 Unlock the Magic\n  \u003c\/button\u003e\n\n  \u003cdiv class=\"lo-cherry-message\" id=\"loCherryMessage\"\u003e\n    ✨ \u003cstrong\u003eMagic unlocked!\u003c\/strong\u003e\u003cbr\u003e\n    She's ready to twirl, bloom and make every moment a little more beautiful. 🌸💕\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"lo-cherry-brand\"\u003e\n    LITTLE OBSESSED™\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\n\u003cscript\u003e\n  function loCherryMagic() {\n\n    const message = document.getElementById(\"loCherryMessage\");\n    const button = document.querySelector(\".lo-cherry-btn\");\n\n    if (message.style.display === \"block\") {\n\n      message.style.display = \"none\";\n      button.innerHTML = \"🌸 Unlock the Magic\";\n\n    } else {\n\n      message.style.display = \"block\";\n      button.innerHTML = \"✨ Magic Unlocked!\";\n\n    }\n  }\n\u003c\/script\u003e","brand":"Little Obsessed","offers":[{"title":"2-3 years","offer_id":43513141329968,"sku":null,"price":189.0,"currency_code":"ZAR","in_stock":true},{"title":"3-4 years","offer_id":43513141362736,"sku":null,"price":189.0,"currency_code":"ZAR","in_stock":true},{"title":"4-5 years","offer_id":43513141395504,"sku":null,"price":189.0,"currency_code":"ZAR","in_stock":true},{"title":"5-6 years","offer_id":43513141428272,"sku":null,"price":189.0,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0690\/0085\/5600\/files\/cherrydressgirls.webp?v=1787311416","url":"https:\/\/littleobsessed.co.za\/products\/cherry-blossom-dress","provider":"Little Obsessed","version":"1.0","type":"link"}