{"product_id":"littleneeds™-uv-dummy-sterilizer","title":"LittleNeeds™ UV Dummy Sterilizer","description":"\u003c!-- LittleNeeds™ DummyClean UV Sterilizer – Luxury Interactive 3D Product Block\n     Shopify: paste into \"Custom liquid\" block OR a page\/product description (HTML mode).\n     Works best if you upload your product image and replace the IMAGE URL below.\n--\u003e\n\u003csection aria-label=\"LittleNeeds DummyClean product feature\" class=\"ln-wrap\"\u003e\n\u003cdiv class=\"ln-bg\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"ln-shell\"\u003e\n\u003cdiv id=\"lnCard\" class=\"ln-card\"\u003e\n\u003cdiv aria-hidden=\"true\" class=\"ln-glow\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003cdiv class=\"ln-grid\"\u003e\n\u003c!-- LEFT: Product Visual --\u003e\n\u003cdiv class=\"ln-visual\"\u003e\n\u003cdiv class=\"ln-badge\"\u003eLittleNeeds™\u003c\/div\u003e\n\u003cdiv class=\"ln-orb\"\u003e\n\u003cdiv class=\"ln-orb-inner\"\u003e\n\u003cimg loading=\"lazy\" alt=\"LittleNeeds DummyClean UV Sterilizer\" class=\"ln-img\"\u003e\n\u003cdiv aria-hidden=\"true\" class=\"ln-shine\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv aria-hidden=\"true\" class=\"ln-shadow\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ln-mini\"\u003e\n\u003cspan class=\"ln-dot\"\u003e\u003c\/span\u003e \u003cspan class=\"ln-mini-text\"\u003e3-minute cycle\u003c\/span\u003e \u003cspan class=\"ln-sep\"\u003e•\u003c\/span\u003e \u003cspan class=\"ln-mini-text\"\u003eOne-touch\u003c\/span\u003e \u003cspan class=\"ln-sep\"\u003e•\u003c\/span\u003e \u003cspan class=\"ln-mini-text\"\u003eUV glow\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c!-- RIGHT: Copy + Actions --\u003e\n\u003cdiv class=\"ln-content\"\u003e\n\u003cp class=\"ln-kicker\"\u003eLuxury hygiene, made effortless\u003c\/p\u003e\n\u003ch2 class=\"ln-title\"\u003eDummyClean \u003cspan class=\"ln-title-accent\"\u003eUV\u003c\/span\u003e Sterilizer\u003c\/h2\u003e\n\u003cp class=\"ln-sub\"\u003eA premium sterilizing capsule that keeps your baby’s dummy \u003cstrong\u003efresh, clean, and ready\u003c\/strong\u003e—anytime, anywhere.\u003c\/p\u003e\n\u003cul class=\"ln-list\"\u003e\n\u003cli\u003e\n\u003cspan class=\"ln-ic\"\u003e✨\u003c\/span\u003e \u003cspan\u003e\u003cstrong\u003eInstant peace of mind\u003c\/strong\u003e in a quick 3-minute cycle\u003c\/span\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cspan class=\"ln-ic\"\u003e🦠\u003c\/span\u003e \u003cspan\u003eHelps \u003cstrong\u003ereduce germs \u0026amp; bacteria\u003c\/strong\u003e for cleaner comfort\u003c\/span\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cspan class=\"ln-ic\"\u003e🧼\u003c\/span\u003e \u003cspan\u003e\u003cstrong\u003eNo boiling, no chemicals, no mess\u003c\/strong\u003e—just press \u0026amp; go\u003c\/span\u003e\n\u003c\/li\u003e\n\u003cli\u003e\n\u003cspan class=\"ln-ic\"\u003e🎒\u003c\/span\u003e \u003cspan\u003e\u003cstrong\u003eTravel-ready\u003c\/strong\u003e design that looks beautiful anywhere\u003c\/span\u003e\n\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cdiv class=\"ln-actions\"\u003e\n\u003c!-- Option A: Link to your product --\u003e \u003ca href=\"\/products\/your-product-handle\" class=\"ln-btn ln-btn-primary\"\u003e Shop DummyClean \u003cspan class=\"ln-btn-arrow\"\u003e→\u003c\/span\u003e \u003c\/a\u003e \u003c!-- Option B: Open a small “How it works” drawer --\u003e \u003cbutton aria-expanded=\"false\" id=\"lnHowBtn\" type=\"button\" class=\"ln-btn ln-btn-ghost\"\u003e How it works \u003c\/button\u003e\n\u003c\/div\u003e\n\u003cdiv hidden=\"\" id=\"lnDrawer\" class=\"ln-drawer\"\u003e\n\u003cdiv class=\"ln-drawer-inner\"\u003e\n\u003cdiv class=\"ln-steps\"\u003e\n\u003cdiv class=\"ln-step\"\u003e\n\u003cspan class=\"ln-step-n\"\u003e1\u003c\/span\u003e Open the lid\u003c\/div\u003e\n\u003cdiv class=\"ln-step\"\u003e\n\u003cspan class=\"ln-step-n\"\u003e2\u003c\/span\u003e Place the dummy inside\u003c\/div\u003e\n\u003cdiv class=\"ln-step\"\u003e\n\u003cspan class=\"ln-step-n\"\u003e3\u003c\/span\u003e Close the lid\u003c\/div\u003e\n\u003cdiv class=\"ln-step\"\u003e\n\u003cspan class=\"ln-step-n\"\u003e4\u003c\/span\u003e Press power (3 min)\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cp class=\"ln-note\"\u003eTip: Keep it in your diaper bag for clean comfort on the go.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"ln-trust\"\u003e\n\u003cspan class=\"ln-pill\"\u003ePremium finish\u003c\/span\u003e \u003cspan class=\"ln-pill\"\u003eMinimal design\u003c\/span\u003e \u003cspan class=\"ln-pill\"\u003eFast cycle\u003c\/span\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv aria-hidden=\"true\" class=\"ln-hint\"\u003eMove your mouse \/ tilt your phone ✨\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/section\u003e\n\u003cstyle\u003e\n  \/* ====== Palette inspired by your image blues ======\n     - ice blue: #CFEFFF\n     - glow cyan: #66D4FF\n     - vibrant blue: #2AA7FF\n     - deep navy: #0B2A4A\n  *\/\n  .ln-wrap {\n    position: relative;\n    padding: clamp(20px, 3vw, 44px);\n    overflow: hidden;\n    font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Inter, Roboto, Helvetica, Arial, sans-serif;\n    color: #0b2a4a;\n  }\n\n  .ln-bg {\n    position: absolute;\n    inset: -40%;\n    background:\n      radial-gradient(closest-side at 20% 25%, rgba(102, 212, 255, 0.38), transparent 60%),\n      radial-gradient(closest-side at 78% 30%, rgba(42, 167, 255, 0.32), transparent 62%),\n      radial-gradient(closest-side at 55% 80%, rgba(207, 239, 255, 0.55), transparent 55%),\n      linear-gradient(135deg, rgba(207,239,255,0.60), rgba(255,255,255,0.15));\n    filter: blur(18px);\n    transform: translateZ(0);\n    pointer-events: none;\n  }\n\n  .ln-shell {\n    max-width: 1100px;\n    margin: 0 auto;\n    position: relative;\n    z-index: 1;\n  }\n\n  .ln-card {\n    position: relative;\n    border-radius: 28px;\n    background: rgba(255,255,255,0.58);\n    backdrop-filter: blur(10px);\n    -webkit-backdrop-filter: blur(10px);\n    border: 1px solid rgba(102, 212, 255, 0.25);\n    box-shadow:\n      0 18px 60px rgba(11, 42, 74, 0.16),\n      0 2px 0 rgba(255,255,255,0.7) inset;\n    transform-style: preserve-3d;\n    transition: transform 200ms ease, box-shadow 200ms ease;\n    overflow: hidden;\n  }\n\n  .ln-glow {\n    position: absolute;\n    inset: -2px;\n    background:\n      radial-gradient(800px 400px at var(--mx, 50%) var(--my, 40%),\n        rgba(102,212,255,0.35),\n        rgba(42,167,255,0.14),\n        transparent 60%);\n    opacity: 0.9;\n    pointer-events: none;\n    mix-blend-mode: screen;\n    transform: translateZ(1px);\n  }\n\n  .ln-grid {\n    display: grid;\n    grid-template-columns: 1.02fr 1fr;\n    gap: clamp(16px, 2.6vw, 34px);\n    align-items: center;\n    padding: clamp(18px, 3vw, 38px);\n  }\n\n  @media (max-width: 900px) {\n    .ln-grid { grid-template-columns: 1fr; }\n  }\n\n  \/* LEFT *\/\n  .ln-visual {\n    position: relative;\n    transform: translateZ(18px);\n  }\n\n  .ln-badge {\n    display: inline-flex;\n    align-items: center;\n    gap: 10px;\n    padding: 10px 14px;\n    border-radius: 999px;\n    background: rgba(207, 239, 255, 0.75);\n    border: 1px solid rgba(42, 167, 255, 0.24);\n    color: #0b2a4a;\n    font-weight: 700;\n    letter-spacing: 0.2px;\n    box-shadow: 0 10px 25px rgba(11, 42, 74, 0.10);\n  }\n\n  .ln-orb {\n    margin-top: 18px;\n    position: relative;\n    width: min(420px, 100%);\n    aspect-ratio: 1 \/ 1;\n    display: grid;\n    place-items: center;\n    margin-left: auto;\n    margin-right: auto;\n  }\n\n  .ln-orb-inner {\n    width: 92%;\n    height: 92%;\n    border-radius: 999px;\n    background:\n      radial-gradient(circle at 35% 25%, rgba(255,255,255,0.95), rgba(207,239,255,0.55) 35%, rgba(42,167,255,0.12) 65%, rgba(11,42,74,0.06));\n    border: 1px solid rgba(102,212,255,0.25);\n    box-shadow:\n      0 24px 70px rgba(11, 42, 74, 0.18),\n      0 2px 0 rgba(255,255,255,0.75) inset;\n    transform-style: preserve-3d;\n    overflow: hidden;\n    position: relative;\n  }\n\n  .ln-img {\n    width: 100%;\n    height: 100%;\n    object-fit: contain;\n    padding: 26px;\n    transform: translateZ(28px) scale(1.02);\n    filter: drop-shadow(0 26px 30px rgba(11, 42, 74, 0.18));\n  }\n\n  .ln-shine {\n    position: absolute;\n    inset: -40%;\n    background:\n      radial-gradient(circle at var(--mx, 40%) var(--my, 40%),\n        rgba(255,255,255,0.65),\n        rgba(102,212,255,0.22),\n        transparent 55%);\n    transform: translateZ(32px);\n    pointer-events: none;\n    mix-blend-mode: screen;\n  }\n\n  .ln-shadow {\n    position: absolute;\n    bottom: 8%;\n    width: 62%;\n    height: 14%;\n    border-radius: 999px;\n    background: rgba(11, 42, 74, 0.18);\n    filter: blur(18px);\n    transform: translateZ(0);\n  }\n\n  .ln-mini {\n    margin-top: 10px;\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px;\n    justify-content: center;\n    align-items: center;\n    color: rgba(11, 42, 74, 0.82);\n    font-weight: 600;\n  }\n\n  .ln-dot {\n    width: 10px;\n    height: 10px;\n    border-radius: 999px;\n    background: radial-gradient(circle at 30% 30%, #CFEFFF, #2AA7FF);\n    box-shadow: 0 0 18px rgba(102, 212, 255, 0.9);\n  }\n\n  .ln-sep { opacity: 0.45; }\n\n  \/* RIGHT *\/\n  .ln-content {\n    transform: translateZ(22px);\n  }\n\n  .ln-kicker {\n    margin: 0 0 10px 0;\n    font-weight: 800;\n    letter-spacing: 0.18em;\n    text-transform: uppercase;\n    font-size: 12px;\n    color: rgba(11, 42, 74, 0.65);\n  }\n\n  .ln-title {\n    margin: 0 0 10px 0;\n    font-size: clamp(26px, 3vw, 44px);\n    line-height: 1.08;\n    letter-spacing: -0.02em;\n  }\n\n  .ln-title-accent {\n    color: #2AA7FF;\n    text-shadow: 0 0 22px rgba(102, 212, 255, 0.6);\n  }\n\n  .ln-sub {\n    margin: 0 0 18px 0;\n    font-size: 16px;\n    line-height: 1.55;\n    color: rgba(11, 42, 74, 0.86);\n    max-width: 52ch;\n  }\n\n  .ln-list {\n    margin: 0;\n    padding: 0;\n    list-style: none;\n    display: grid;\n    gap: 12px;\n  }\n\n  .ln-list li {\n    display: grid;\n    grid-template-columns: 34px 1fr;\n    gap: 10px;\n    align-items: start;\n    padding: 12px 12px;\n    border-radius: 16px;\n    background: rgba(255,255,255,0.62);\n    border: 1px solid rgba(102, 212, 255, 0.18);\n    box-shadow: 0 10px 25px rgba(11, 42, 74, 0.08);\n  }\n\n  .ln-ic {\n    width: 34px;\n    height: 34px;\n    display: grid;\n    place-items: center;\n    border-radius: 12px;\n    background: radial-gradient(circle at 30% 30%, rgba(207,239,255,0.85), rgba(42,167,255,0.22));\n    border: 1px solid rgba(42,167,255,0.22);\n    box-shadow: 0 0 20px rgba(102,212,255,0.25);\n  }\n\n  .ln-actions {\n    margin-top: 18px;\n    display: flex;\n    flex-wrap: wrap;\n    gap: 12px;\n    align-items: center;\n  }\n\n  .ln-btn {\n    appearance: none;\n    border: none;\n    cursor: pointer;\n    text-decoration: none;\n    font-weight: 800;\n    letter-spacing: 0.2px;\n    border-radius: 16px;\n    padding: 12px 16px;\n    transition: transform 120ms ease, box-shadow 160ms ease, background 160ms ease, border-color 160ms ease;\n    display: inline-flex;\n    align-items: center;\n    gap: 10px;\n    user-select: none;\n    transform: translateZ(24px);\n  }\n\n  .ln-btn:active { transform: translateZ(24px) scale(0.98); }\n\n  .ln-btn-primary {\n    color: white;\n    background: linear-gradient(135deg, #2AA7FF, #66D4FF);\n    box-shadow: 0 18px 40px rgba(42, 167, 255, 0.28);\n  }\n\n  .ln-btn-primary:hover {\n    box-shadow: 0 22px 55px rgba(42, 167, 255, 0.34);\n    transform: translateZ(24px) translateY(-1px);\n  }\n\n  .ln-btn-ghost {\n    color: rgba(11,42,74,0.9);\n    background: rgba(255,255,255,0.5);\n    border: 1px solid rgba(102, 212, 255, 0.26);\n    box-shadow: 0 12px 28px rgba(11, 42, 74, 0.10);\n  }\n\n  .ln-btn-ghost:hover {\n    background: rgba(207,239,255,0.55);\n    transform: translateZ(24px) translateY(-1px);\n  }\n\n  .ln-btn-arrow { font-size: 18px; line-height: 0; }\n\n  .ln-drawer {\n    margin-top: 14px;\n    border-radius: 18px;\n    background: rgba(207,239,255,0.40);\n    border: 1px solid rgba(42,167,255,0.18);\n    overflow: hidden;\n    transform: translateZ(18px);\n  }\n\n  .ln-drawer-inner {\n    padding: 14px 14px 16px 14px;\n  }\n\n  .ln-steps {\n    display: grid;\n    gap: 10px;\n  }\n\n  .ln-step {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    font-weight: 700;\n    color: rgba(11, 42, 74, 0.88);\n  }\n\n  .ln-step-n {\n    width: 28px;\n    height: 28px;\n    border-radius: 10px;\n    display: grid;\n    place-items: center;\n    color: white;\n    background: linear-gradient(135deg, #2AA7FF, #66D4FF);\n    box-shadow: 0 10px 22px rgba(42, 167, 255, 0.24);\n    font-size: 13px;\n  }\n\n  .ln-note {\n    margin: 12px 0 0 0;\n    color: rgba(11, 42, 74, 0.70);\n    font-weight: 600;\n    font-size: 14px;\n  }\n\n  .ln-trust {\n    margin-top: 14px;\n    display: flex;\n    flex-wrap: wrap;\n    gap: 10px;\n  }\n\n  .ln-pill {\n    padding: 8px 12px;\n    border-radius: 999px;\n    background: rgba(255,255,255,0.55);\n    border: 1px solid rgba(102,212,255,0.18);\n    color: rgba(11,42,74,0.78);\n    font-weight: 800;\n    font-size: 13px;\n  }\n\n  .ln-hint {\n    padding: 10px 14px 16px;\n    text-align: center;\n    color: rgba(11,42,74,0.58);\n    font-weight: 700;\n    letter-spacing: 0.02em;\n  }\n\n  \/* Reduce motion *\/\n  @media (prefers-reduced-motion: reduce) {\n    .ln-card, .ln-btn { transition: none !important; }\n  }\n\u003c\/style\u003e\n\u003cp\u003e \u003c\/p\u003e","brand":"LittleNeeds","offers":[{"title":"Default Title","offer_id":51411834667304,"sku":null,"price":499.99,"currency_code":"ZAR","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0976\/0240\/4648\/files\/ChatGPTImageFeb10_2026_08_12_38PM.png?v=1770747220","url":"https:\/\/www.littleneeds.co.za\/products\/littleneeds%e2%84%a2-uv-dummy-sterilizer","provider":"LittleNeeds","version":"1.0","type":"link"}