1 2<!doctype html> 3 <html class="no-js"> 4 <head> 5 <meta charset="utf-8"> 6 <meta name="pinterest" content="nopin"/> 7 <meta name="pinterest" content="nosearch"> 8 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 9 <meta name="google-site-verification" content="AMGxF8JJmmeioDvwt_OPWboJAHwcVNB_ttkX988uPns" /> 10 <meta name="apple-itunes-app" content="app-id=1576832504"> 11 <meta name="pinterest" content="nopin"/> 12 <meta name="robots" content="index, follow"> 13 <link rel="icon" type="image/x-icon" href="https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0"> 14 <title>PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026</title> 15 <meta name="description" content="Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari"> 16 <meta name="keywords" content="login, situs, toto, PRIMATOTO, TOTO 4D, toto togel, keluaran, hk, macau, 4d, terpercaya, resmi,"> 17 <link rel="canonical" href="https://pjph.org/"> 18 <link rel="alternate" href="https://member.pjphorg.works/"> 19 <link rel="alternate" href="https://member.pjphorg.works/" hreflang="id"> 20 <link rel="alternate" href="https://member.pjphorg.works/" hreflang="en"> 21 <link rel="alternate" href="https://member.pjphorg.works/" hreflang="en"> 22 <link rel="alternate" href="https://member.pjphorg.works/" hreflang="x-default"> 23 <link rel="alternate" hreflang="id-ID" href="https://member.pjphorg.works/" /> 24 <link rel="alternate" hreflang="en-US" href="https://member.pjphorg.works/" /> 25 <link rel="alternate" hreflang="en-SG" href="https://member.pjphorg.works/" /> 26 <link rel="amphtml" href="https://member.pjphorg.works/"/> 27 <meta property="og:type" content="PRIMATOTO"> 28 <meta property="og:title" content="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026"> 29 <meta property="og:image" content="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 30 <meta property="og:image:secure_url" content="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 31 <meta property="og:image" content="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 32 <meta property="og:image:secure_url" content="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 33 <meta property="og:image" content="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 34 <meta property="og:image:secure_url" content="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 35 <meta property="og:description" content="Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari"> 36 <meta property="og:price:amount" content="10,000-,"> 37 <meta property="og:price:currency" content="IDR"> 38 <meta property="og:url" content="https://pjph.org/"> 39 <meta property="og:site_name" content="PRIMATOTO"> 40 <meta name="twitter:site" content="@PRIMATOTO"> 41 <meta name="twitter:card" content="summary"> 42 <meta name="twitter:title" content="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026"> 43 <meta name="twitter:description" content="Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari"> 44 <meta name="twitter:image" content="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 45 <meta name="twitter:image:width" content="750"> 46 <meta name="twitter:image:height" content="750"> 47 <link rel="shortcut icon" href="https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0" type="image/png"> 48 <meta name="theme-color" content="#ffffff"> 49 <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet"> 50 <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" /> 51 <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201">
51<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
51 52
52<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js" async="async" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
52 53
53<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
53 54
54<script src="//cdnjs.cloudflare.com/ajax/libs/vissense/0.9.0/vissense.js" defer="defer" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">!function(a,e,t,n,o){var c,r,d;a[o]=a[o]||[],c=function(){var e={ti:"343051754",tm:"shpfy_ui",enableAutoSpaTracking:!0};e.q=a[o],a[o]=new UET(e),a[o].push("pageLoad")},(r=e.createElement(t)).src="//bat.bing.com/bat.js",r.async=1,r.onload=r.onreadystatechange=function(){var e=this.readyState;e&&"loaded"!==e&&"complete"!==e||(c(),r.onload=r.onreadystatechange=null)},(d=e.getElementsByTagName(t)[0]).parentNode.insertBefore(r,d)}(window,document,"script",0,"uetq")</script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">window.uetq=window.uetq||[],window.uetq.push("event","",{revenue_value:0,currency:"IDR"})</script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">!function(t,e,n,r,c,a,s){t[n]=t[n]||function(){(t[n].q=t[n].q||[]).push(arguments)},(a=e.createElement(r)).async=1,a.src="https://www.clarity.ms/tag/h7rbxqry9k",(s=e.getElementsByTagName(r)[0]).parentNode.insertBefore(a,s)}(window,document,"clarity","script")</script>
54<script src="https://outerbloomcdn.pages.dev/js/select1.min.js" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54<link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all"><link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all"><link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css">
54<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">window.performance&&window.performance.mark&&window.performance.mark("shopify.content_for_header.start")</script>
54<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog"><link rel="alternate" type="application/json+oembed" href="https://pjph.org/.oembed">
54<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54<script id="shopify-features" type="application/json">{"accessToken":"d2e176e59f6658d5056234d6249b3ab4","betas":["rich-media-storefront-analytics"],"domain":"outerbloom.com","predictiveSearch":true,"shopId":15896833,"locale":"en"}</script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">var Shopify=Shopify||{};Shopify.shop="outerbloom1.myshopify.com",Shopify.locale="en",Shopify.currency={active:"IDR",rate:"1.0"},Shopify.country="ID",Shopify.theme={name:"web-outerbloom-shopify/main",id:153139282135,schema_name:null,schema_version:null,theme_store_id:null,role:"main"},Shopify.theme.handle="null",Shopify.theme.style={id:null,handle:null},Shopify.cdnHost="outerbloom.com/cdn",Shopify.routes=Shopify.routes||{},Shopify.routes.root="/"</script>
54<script type="9f1692b8b70633eecdaf805b-module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">!function(o){function a(){var o=[];function a(){o.push(Array.prototype.slice.apply(arguments))}return a.q=o,a}var r=o.Shopify=o.Shopify||{};r.loadFeatures=a(),r.autoloadFeatures=a()}(window)</script>
54<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
54<script defer="defer" async="async" src="//outerbloom.com/cdn/shopifycloud/shop-js/client.js" onload="window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54<script id="__st" type="9f1692b8b70633eecdaf805b-text/javascript">var __st={a:15896833,offset:25200,reqid:"78149bf2-9ab6-43c0-b2ce-821afbfe5bd0-1759566675",pageurl:"outerbloom.com/products/blossom-shine",u:"381e6a1da038",p:"product",rtyp:"product",rid:8359546319899}</script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">window.ShopifyPaypalV4VisibilityTracking=!0</script>
54<script id="captcha-bootstrap" type="9f1692b8b70633eecdaf805b-text/javascript">!function(){'use strict';const t='contact',e='account',n='new_comment',o=[[t,t],['blogs',n],['comments',n],[t,'customer']],c=[[e,'customer_login'],[e,'guest_login'],[e,'recover_customer_password'],[e,'create_customer']],r=t=>t.map((([t,e])=>`form[action*='/${t}']:not([data-nocaptcha='true']) input[name='form_type'][value='${e}']`)).join(','),a=t=>()=>t?[...document.querySelectorAll(t)].map((t=>t.form)):[];function s(){const t=[...o],e=r(t);return a(e)}const i='password',u='form_key',d=['recaptcha-v3-token','g-recaptcha-response','h-captcha-response',i],f=()=>{try{return window.sessionStorage}catch{return}},m='__shopify_v',_=t=>t.elements[u];function p(t,e,n=!1){try{const o=window.sessionStorage,c=JSON.parse(o.getItem(e)),{data:r}=function(t){const{data:e,action:n}=t;return t[m]||n?{data:e,action:n}:{data:t,action:n}}(c);for(const[e,n]of Object.entries(r))t.elements[e]&&(t.elements[e].value=n);n&&o.removeItem(e)}catch(o){console.error('form repopulation failed',{error:o})}}const l='form_type',E='cptcha';function T(t){t.dataset[E]=!0}const w=window,h=w.document,L='Shopify',v='ce_forms',y='captcha';let A=!1;((t,e)=>{const n=(g='f06e6c50-85a8-45c8-87d0-21a2b65856fe',I='https://cdn.shopify.com/shopifycloud/storefront-forms-hcaptcha/ce_storefront_forms_captcha_hcaptcha.v1.5.2.iife.js',D={infoText:'Protected by hCaptcha',privacyText:'Privacy',termsText:'Terms'},(t,e,n)=>{const o=w[L][v],c=o.bindForm;if(c)return c(t,g,e,D).then(n);var r;o.q.push([[t,g,e,D],n]),r=I,A||(h.body.append(Object.assign(h.createElement('script'),{id:'captcha-provider',async:!0,src:r})),A=!0)});var g,I,D;w[L]=w[L]||{},w[L][v]=w[L][v]||{},w[L][v].q=[],w[L][y]=w[L][y]||{},w[L][y].protect=function(t,e){n(t,void 0,e),T(t)},Object.freeze(w[L][y]),function(t,e,n,w,h,L){const[v,y,A,g]=function(t,e,n){const i=e?o:[],u=t?c:[],d=[...i,...u],f=r(d),m=r(i),_=r(d.filter((([t,e])=>n.includes(e))));return[a(f),a(m),a(_),s()]}(w,h,L),I=t=>{const e=t.target;return e instanceof HTMLFormElement?e:e&&e.form},D=t=>v().includes(t);t.addEventListener('submit',(t=>{const e=I(t);if(!e)return;const n=D(e)&&!e.dataset.hcaptchaBound&&!e.dataset.recaptchaBound,o=_(e),c=g().includes(e)&&(!o||!o.value);(n||c)&&t.preventDefault(),c&&!n&&(function(t){try{if(!f())return;!function(t){const e=f();if(!e)return;const n=_(t);if(!n)return;const o=n.value;o&&e.removeItem(o)}(t);const e=Array.from(Array(32),(()=>Math.random().toString(36)[2])).join('');!function(t,e){_(t)||t.append(Object.assign(document.createElement('input'),{type:'hidden',name:u})),t.elements[u].value=e}(t,e),function(t,e){const n=f();if(!n)return;const o=[...t.querySelectorAll(`input[type='${i}']`)].map((({name:t})=>t)),c=[...d,...o],r={};for(const[a,s]of new FormData(t).entries())c.includes(a)||(r[a]=s);n.setItem(e,JSON.stringify({[m]:1,action:t.action,data:r}))}(t,e)}catch(e){console.error('failed to persist form',e)}}(e),e.submit())}));const S=(t,e)=>{t&&!t.dataset[E]&&(n(t,e.some((e=>e===t))),T(t))};for(const o of['focusin','change'])t.addEventListener(o,(t=>{const e=I(t);D(e)&&S(e,y())}));const B=e.get('form_key'),M=e.get(l),P=B&&M;t.addEventListener('DOMContentLoaded',(()=>{const t=y();if(P)for(const e of t)e.elements[l].value===M&&p(e,B);[...new Set([...A(),...v().filter((t=>'true'===t.dataset.shopifyCaptcha))])].forEach((e=>S(e,t)))}))}(h,new URLSearchParams(w.location.search),n,t,e,['guest_login'])})(!1,!0)}();</script>
54<script integrity="sha256-52AcMU7V7pcBOXWImdc/TAGTFKeNjmkeM1Pvks/DTgc=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//outerbloom.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-81c60534.js" crossorigin="anonymous" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54<script data-source-attribution="shopify.dynamic_checkout.dynamic.init" type="9f1692b8b70633eecdaf805b-text/javascript">var Shopify=Shopify||{};Shopify.PaymentButton=Shopify.PaymentButton||{isStorefrontPortableWallets:!0,init:function(){window.Shopify.PaymentButton.init=function(){};var t=document.createElement("script");t.src="https://outerbloom.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}</script>
54<script data-source-attribution="shopify.dynamic_checkout.buyer_consent" type="9f1692b8b70633eecdaf805b-text/javascript">function portableWalletsHideBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.add("hidden"),t.setAttribute("aria-hidden","true"),n.removeEventListener("click",e))}function portableWalletsShowBuyerConsent(e){var t=document.getElementById("shopify-buyer-consent"),n=document.getElementById("shopify-subscription-policy-button");t&&n&&(t.classList.remove("hidden"),t.removeAttribute("aria-hidden"),n.addEventListener("click",e))}window.Shopify?.PaymentButton&&(window.Shopify.PaymentButton.hideBuyerConsent=portableWalletsHideBuyerConsent,window.Shopify.PaymentButton.showBuyerConsent=portableWalletsShowBuyerConsent);</script>
54<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap" type="9f1692b8b70633eecdaf805b-text/javascript">document.addEventListener("DOMContentLoaded",function(){function n(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}n()?Shopify.PaymentButton.init():new MutationObserver(function(e,t){n()&&(Shopify.PaymentButton.init(),t.disconnect())}).observe(document.body,{childList:!0,subtree:!0})})</script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">window.performance&&window.performance.mark&&window.performance.mark("shopify.content_for_header.end")</script>
54<!--[if lt IE 9]>
54<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
54<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
54<link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy"><link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect">
54<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
54<![endif]--><link href="https://cdn.shopify.com/extensions/5c1bf460-65bd-4bca-82d0-995a5814b48d/bitlogin-social-login-135/assets/app.css" rel="stylesheet" type="text/css" media="all"><link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
54<script type="9f1692b8b70633eecdaf805b-text/javascript">(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 15896833,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "product"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
54<script id="web-pixels-manager-setup" type="9f1692b8b70633eecdaf805b-text/javascript">!function(t,e,o,a,i){if(void 0===i&&(i={}),!Boolean(null===(r=null===(n=window.Shopify)||void 0===n?void 0:n.analytics)||void 0===r?void 0:r.replayQueue)){var n,r;window.Shopify=window.Shopify||{};var d=window.Shopify;d.analytics=d.analytics||{};var s=d.analytics;s.replayQueue=[],s.publish=function(e,o,a){return s.replayQueue.push([e,o,a]),!0};try{self.performance.mark("wpm:start")}catch(t){}var l=(C=/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(13[5-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,P=/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(13[5-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(13[3-9]|1[4-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/,(_=navigator.userAgent).match(C)?"modern":_.match(P)?"legacy":"unknown"),c="modern"==l?"modern":"legacy",p=(null!=a?a:{modern:"",legacy:""})[c],u=[(T={baseUrl:e,hashVersion:o,buildTarget:c}).baseUrl,"/wpm","/b",T.hashVersion,"modern"===T.buildTarget?"m":"l",".js"].join(""),m=(g={version:o,bundleTarget:l,surface:t.surface,pageUrl:self.location.href,monorailEndpoint:t.monorailEndpoint},y=g.version,f=g.bundleTarget,h=g.surface,b=g.pageUrl,v=g.monorailEndpoint,{emit:function(e){var o=e.status,a=e.errorMsg,t=(new Date).getTime(),i=JSON.stringify({metadata:{event_sent_at_ms:t},events:[{schema_id:"web_pixels_manager_load/3.1",payload:{version:y,bundle_target:f,page_url:b,status:o,surface:h,error_msg:a},metadata:{event_created_at_ms:t}}]});if(!v)return console&&console.warn&&console.warn("[Web Pixels Manager] No Monorail endpoint provided, skipping logging."),!1;try{return self.navigator.sendBeacon.bind(self.navigator)(v,i)}catch(e){}var n=new XMLHttpRequest;try{return n.open("POST",v,!0),n.setRequestHeader("Content-Type","text/plain"),n.send(i),!0}catch(e){return console&&console.warn&&console.warn("[Web Pixels Manager] Got an unhandled error while logging to Monorail."),!1}}});try{i.browserTarget=l,function(e){var o=e.src,a=e.async,t=void 0===a||a,i=e.onload,n=e.onerror,r=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,l=document.createElement("script"),c=document.querySelector("head"),p=document.querySelector("body");if(l.async=t,l.src=o,r&&(l.integrity=r,l.crossOrigin="anonymous"),s)for(var u in s)if(Object.prototype.hasOwnProperty.call(s,u))try{l.dataset[u]=s[u]}catch(e){}if(i&&l.addEventListener("load",i),n&&l.addEventListener("error",n),c)c.appendChild(l);else{if(!p)throw new Error("Did not find a head or body element to append the script");p.appendChild(l)}}({src:u,async:!0,onload:function(){if(!Boolean(null===(a=null===(o=window.Shopify)||void 0===o?void 0:o.analytics)||void 0===a?void 0:a.initialized)){var i=window.webPixelsManager.init(t)||void 0;if(i){var e=window.Shopify.analytics;e.replayQueue.forEach(function(e){var o=e[0],a=e[1],t=e[2];i.publishCustomEvent(o,a,t)}),e.replayQueue=[],e.publish=i.publishCustomEvent,e.visitor=i.visitor,e.initialized=!0}}var o,a},onerror:function(){return m.emit({status:"failed",errorMsg:"".concat(u," has failed to load")})},sri:"string"==typeof p&&/^sha384-[A-Za-z0-9+/=]+$/.test(p)?p:"",scriptDataAttributes:i}),m.emit({status:"loading"})}catch(t){m.emit({status:"failed",errorMsg:(null==t?void 0:t.message)||"Unknown error"})}}var g,y,f,h,b,v,T,C,P,_}({shopId:15896833,storefrontBaseUrl:"https://outerbloom.com",extensionsBaseUrl:"https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint:"https://monorail-edge.shopifysvc.com/unstable/produce_batch",surface:"storefront-renderer",enabledBetaFlags:[],webPixelsConfigList:[{id:"870383831",configuration:'{"accountID":"outerbloom1"}',eventPayloadVersion:"v1",runtimeContext:"STRICT",scriptVersion:"162380e6ffd3e5a2854f1aabf54537bb",type:"APP",apiClientId:32196493313,privacyPurposes:["ANALYTICS","MARKETING","SALE_OF_DATA"]},{id:"824574167",configuration:'{"shop":"outerbloom1.myshopify.com", "backend": "api.bitbybit.studio"}',eventPayloadVersion:"v1",runtimeContext:"STRICT",scriptVersion:"a3ba46f2364c9db1bf57bc969c3dd935",type:"APP",apiClientId:28314632193,privacyPurposes:["ANALYTICS","MARKETING","SALE_OF_DATA"]},{id:"521994455",configuration:'{"config":"{\\"pixel_id\\":\\"G-X26HYP4083\\",\\"target_country\\":\\"ID\\",\\"gtag_events\\":[{\\"type\\":\\"search\\",\\"action_label\\":[\\"G-X26HYP4083\\",\\"AW-11020267329\\/YjjSCKiog9gZEMHe74Yp\\"]},{\\"type\\":\\"begin_checkout\\",\\"action_label\\":[\\"G-X26HYP4083\\",\\"AW-11020267329\\/RHfSCK6og9gZEMHe74Yp\\"]},{\\"type\\":\\"view_item\\",\\"action_label\\":[\\"G-X26HYP4083\\",\\"AW-11020267329\\/dMv0CKWog9gZEMHe74Yp\\",\\"MC-HY9J2ZJTNZ\\"]},{\\"type\\":\\"purchase\\",\\"action_label\\":[\\"G-X26HYP4083\\",\\"AW-11020267329\\/Y2DbCJ-og9gZEMHe74Yp\\",\\"MC-HY9J2ZJTNZ\\"]},{\\"type\\":\\"page_view\\",\\"action_label\\":[\\"G-X26HYP4083\\",\\"AW-11020267329\\/xwQ2CKKog9gZEMHe74Yp\\",\\"MC-HY9J2ZJTNZ\\"]},{\\"type\\":\\"add_payment_info\\",\\"action_label\\":[\\"G-X26HYP4083\\",\\"AW-11020267329\\/i9yRCLGog9gZEMHe74Yp\\"]},{\\"type\\":\\"add_to_cart\\",\\"action_label\\":[\\"G-X26HYP4083\\",\\"AW-11020267329\\/T9poCKuog9gZEMHe74Yp\\"]}],\\"enable_monitoring_mode\\":false}"}',eventPayloadVersion:"v1",runtimeContext:"OPEN",scriptVersion:"b2a88bafab3e21179ed38636efcd8a93",type:"APP",apiClientId:1780363,privacyPurposes:[]},{id:"236060887",configuration:'{"pixel_id":"165971065669324","pixel_type":"facebook_pixel","metaapp_system_user_token":"-"}',eventPayloadVersion:"v1",runtimeContext:"OPEN",scriptVersion:"6d8c3ef0426b37b2a9b717daeb719f58",type:"APP",apiClientId:2329312,privacyPurposes:["ANALYTICS","MARKETING","SALE_OF_DATA"]},{id:"62947543",eventPayloadVersion:"v1",runtimeContext:"LAX",scriptVersion:"1",type:"CUSTOM",privacyPurposes:["MARKETING"],name:"Meta pixel (migrated)"},{id:"shopify-app-pixel",configuration:"{}",eventPayloadVersion:"v1",runtimeContext:"STRICT",scriptVersion:"0450",apiClientId:"shopify-pixel",type:"APP",privacyPurposes:["ANALYTICS","MARKETING"]},{id:"shopify-custom-pixel",eventPayloadVersion:"v1",runtimeContext:"LAX",scriptVersion:"0450",apiClientId:"shopify-pixel",type:"CUSTOM",privacyPurposes:["ANALYTICS","MARKETING"]}],isMerchantRequest:!1,initData:{shop:{name:"Outerbloom",paymentSettings:{currencyCode:"IDR"},myshopifyDomain:"outerbloom1.myshopify.com",countryCode:"ID",storefrontUrl:"https://outerbloom.com"},customer:null,cart:null,checkout:null,productVariants:[{price:{amount:835e3,currencyCode:"IDR"},product:{title:"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026",vendor:"Outerbloom Florist",id:"8359546319899",untranslatedTitle:"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026",url:"/products/blossom-shine",type:"Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari"},id:"44083045826775",image:{src:"//outerbloom.com/cdn/shop/files/Blossom-Shine-WM.jpg?v=1695788426"},sku:"GOJSTRU2598",title:"Default Title",untranslatedTitle:"Default Title"}],purchasingCompany:null}},"https://outerbloom.com/cdn","4f0c5c77w64a73806p128ba08bma5b58f2f",{modern:"",legacy:""},{shopId:"15896833",storefrontBaseUrl:"https://outerbloom.com",extensionBaseUrl:"https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",surface:"storefront-renderer",enabledBetaFlags:"[]",isMerchantRequest:"false",hashVersion:"4f0c5c77w64a73806p128ba08bma5b58f2f",publish:"custom",events:'[["page_viewed",{}
54],["product_viewed",{"productVariant":{"price":{"amount":835000.0,"currencyCode":"IDR"},"product":{"title":"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026","vendor":"Outerbloom Florist","id":"8359546319899","untranslatedTitle":"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026","url":"/products/blossom-shine","type":"Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari"},"id":"44083045826775","image":{"src":"//outerbloom.com/cdn/shop/files/Blossom-Shine-WM.jpg?v=1695788426"},"sku":"GOJSTRU2598","title":"Default Title","untranslatedTitle":"Default Title"}}]]'})</script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">window.ShopifyAnalytics=window.ShopifyAnalytics||{},window.ShopifyAnalytics.meta=window.ShopifyAnalytics.meta||{};var meta={product:{id:8359546319899,gid:"gid://shopify/Product/8359546319899",vendor:"Outerbloom Florist",type:"Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari",variants:[{id:44083045826775,price:1e6,name:"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026",public_title:null,sku:"GOJSTRU2598"}],remote:!(window.ShopifyAnalytics.meta.currency="IDR")},page:{pageType:"product",resourceType:"product",resourceId:8359546319899}};for(var attr in meta)window.ShopifyAnalytics.meta[attr]=meta[attr]</script>
54<script class="analytics" type="9f1692b8b70633eecdaf805b-text/javascript">!function(){var n=function(e){var t=null;window.jQuery?t=window.jQuery:window.Checkout&&window.Checkout.$&&(t=window.Checkout.$),t&&t("body").append(e)},r=window.ShopifyAnalytics.lib=window.trekkie=window.trekkie||[];if(!r.integrations){r.methods=["identify","page","ready","track","trackForm","trackLink"],r.factory=function(t){return function(){var e=Array.prototype.slice.call(arguments);return e.unshift(t),r.push(e),r}};for(var e=0;e<r.methods.length;e++){var t=r.methods[e];r[t]=r.factory(t)}r.load=function(e){r.config=e||{},r.config.initialDocumentCookie=document.cookie;var o=document.getElementsByTagName("script")[0],t=document.createElement("script");t.type="text/javascript",t.onerror=function(e){var t=document.createElement("script");t.type="text/javascript",t.onerror=function(e){var a={produce:function(e,t,o){var n=(new Date).getTime(),r={schema_id:t,payload:o,metadata:{event_created_at_ms:n,event_sent_at_ms:n}};return a.sendRequest("https://"+e+"/v1/produce",JSON.stringify(r))},sendRequest:function(e,t){if(window&&window.navigator&&"function"==typeof window.navigator.sendBeacon&&"function"==typeof window.Blob&&!a.isIos12()){var o=new window.Blob([t],{type:"text/plain"});if(window.navigator.sendBeacon(e,o))return!0}var n=new XMLHttpRequest;try{n.open("POST",e),n.setRequestHeader("Content-Type","text/plain"),n.send(t)}catch(e){console.log(e)}return!1},isIos12:function(){return-1!==window.navigator.userAgent.lastIndexOf("iPhone; CPU iPhone OS 12_")||-1!==window.navigator.userAgent.lastIndexOf("iPad; CPU OS 12_")}};a.produce("monorail-edge.shopifysvc.com","trekkie_storefront_load_errors/1.1",{shop_id:15896833,theme_id:153139282135,app_name:"storefront",context_url:window.location.href,source_url:"//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js"})},t.async=!0,t.src="//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js",o.parentNode.insertBefore(t,o)},t.async=!0,t.src="//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js",o.parentNode.insertBefore(t,o)},r.load({Trekkie:{appName:"storefront",development:!1,defaultAttributes:{shopId:15896833,isMerchantRequest:null,themeId:153139282135,themeCityHash:"1741993959449676309",contentLanguage:"en",currency:"IDR"},isServerSideCookieWritingEnabled:!0,monorailRegion:"shop_domain"},"Session Attribution":{},S2S:{facebookCapiEnabled:!0,source:"trekkie-storefront-renderer",apiClientId:580111}});var a=!1;r.ready(function(){if(!a){a=!0,window.ShopifyAnalytics.lib=window.trekkie;var e=document.write;document.write=n;try{window.ShopifyAnalytics.merchantGoogleAnalytics.call(this)}catch(e){}document.write=e,window.ShopifyAnalytics.lib.page(null,{pageType:"product",resourceType:"product",resourceId:8359546319899,shopifyEmitted:!0});var t=window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/),o=t?t[1]:void 0;(function(e){return!!e&&-1!==document.cookie.indexOf("loggedConversion="+e)})(o)||(function(e){if(e){var t=new Date(Date.now());t.setMonth(t.getMonth()+2),document.cookie="loggedConversion="+e+"; expires="+t}}(o),window.ShopifyAnalytics.lib.track("Viewed Product",{currency:"IDR",variantId:44083045826775,productId:8359546319899,productGid:"gid://shopify/Product/8359546319899",name:"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026",price:"835000.00",sku:"GOJSTRU2598",brand:"Outerbloom Florist",variant:null,category:"Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari",nonInteraction:!0,remote:!1},void 0,void 0,{shopifyEmitted:!0}),window.ShopifyAnalytics.lib.track("monorail://trekkie_storefront_viewed_product/1.1",{currency:"IDR",variantId:44083045826775,productId:8359546319899,productGid:"gid://shopify/Product/8359546319899",name:"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026",price:"835000.00",sku:"GOJSTRU2598",brand:"Outerbloom Florist",variant:null,category:"Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari",nonInteraction:!0,remote:!1,referer:"https://outerbloom.com/products/blossom-shine"}))}});var o=document.createElement("script");o.async=!0,o.src="//outerbloom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-abeef7a0.js",document.getElementsByTagName("head")[0].appendChild(o)}}()</script>
54<script type="9f1692b8b70633eecdaf805b-text/javascript">(!window.ga||window.ga&&"function"!=typeof window.ga)&&(window.ga=function(){(window.ga.q=window.ga.q||[]).push(arguments),window.Shopify&&window.Shopify.analytics&&"function"==typeof window.Shopify.analytics.publish&&window.Shopify.analytics.publish("ga_stub_called",{},{sendTo:"google_osp_migration"}),console.error("Shopify's Google Analytics stub called with:",Array.from(arguments),"\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information.")},window.Shopify&&window.Shopify.analytics&&"function"==typeof window.Shopify.analytics.publish&&window.Shopify.analytics.publish("ga_stub_initialized",{},{sendTo:"google_osp_migration"}))</script>
54<script defer="defer" src="https://outerbloom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-2.0.13.min.js" data-application="storefront-renderer" data-shop-id="15896833" data-render-region="gcp-asia-southeast1" data-page-type="product" data-theme-instance-id="153139282135" data-theme-name="" data-theme-version="" data-monorail-region="shop_domain" data-resource-timing-sampling-rate="10" data-shs="true" data-shs-beacon="true" data-shs-export-with-fetch="true" data-shs-logs-sample-rate="1" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
54 55 </head> 56<body data-template="product" id="blossom-shine" class="template-product template-product">
vendor: 74 bytes, lines 56-57
56 57 <noscript><iframe src="https://www.googletagmanager.com/ns.html?id=
57GTM-MF9VVZX
vendor: 86 bytes, lines 57-58
57" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript> 58
58<style>.bg-card{background-color:#000}</style><style>.view-video{display:block;margin:auto;padding:5px 10px;font-size:16px;font-weight:700;border:2px solid #fff;background:#fff}.view-video .icon-play{fill:#fff;vertical-align:middle}.video-modal{display:none;position:fixed;background:rgba(0,0,0,.5);width:100%;height:100%;overflow:auto;z-index:1;top:0;left:0}.close-video{position:absolute;right:9px;top:8%;z-index:2;padding:5px}.close-video .icon{width:30px;height:30px}.video-container{position:relative;padding-bottom:48.25%;padding-top:35px;height:0;box-shadow:0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12),0 2px 4px -1px rgba(0,0,0,.3)}.video-container iframe{position:absolute;top:60%;left:0;width:100%;height:100%}.youtube{background-color:#000;margin-bottom:30px;position:relative;padding-top:56.25%;overflow:hidden;cursor:pointer;width:100%}.swiper-slide .youtube{max-width:480px}.youtube img{width:100%;top:-16.82%;left:0;opacity:.7}.youtube .play-button{width:90px;height:60px;background-color:#333;box-shadow:0 0 30px rgba(0,0,0,.6);z-index:1;opacity:.8;border-radius:6px}.youtube .play-button:before{content:"";border-style:solid;border-width:15px 0 15px 26px;border-color:transparent transparent transparent #fff}.youtube .play-button,.youtube img{cursor:pointer}.youtube .play-button,.youtube .play-button:before,.youtube iframe,.youtube img{position:absolute}.youtube .play-button,.youtube .play-button:before{top:50%;left:50%;transform:translate3d(-50%,-50%,0)}.youtube iframe{height:100%;width:100%;top:0;left:0}</style><style>.c-pdp-product-info__service--active{font-size:12px;padding-left:10px;text-align:left;max-width:550px;margin:auto}.c-pdp-product-info__service--active li{list-style:disc}.c-pdp-product-info{background-color:#f5f5f5;padding:12px;margin:0}.freeship em{font-style:italic;font-size:12px!important}</style><style>.short-desc-desktop{margin-bottom:2rem;color:#fff}.short-desc ul li:nth-child(n+4){display:none}.short-desc ul li.showList:nth-child(n+4){display:list-item}label.more{display:none}label.more.showMe{display:block;font-size:12px;text-transform:uppercase;font-weight:700;cursor:pointer}</style><style>.variant-metafield{display:block!important;width:1px;padding:0;border-color:#fff}.select2-results__option[aria-disabled]{display:none}.towel-bordir{width:100%;display:flex;align-items:center;justify-content:space-around}</style><style>.file-dnd *{margin:0;padding:0;box-sizing:border-box}.file-dnd{width:100%;height:250px;border:1px solid #ddd;border-radius:10px;padding:15px;display:flex;flex-direction:column;gap:10px;margin:auto}.file-dnd input{display:none}.file-dnd .before-upload{border:1px dashed #888;flex:1;border-radius:5px;display:flex;justify-content:center;align-items:center;text-align:center;cursor:pointer}.file-dnd .before-upload>div{display:flex;flex-direction:column;align-items:center;gap:8px}.file-dnd .before-upload>div h4{width:150px}.file-dnd .before-upload>div p{font-size:12px!important;color:#555}.file-dnd.active .before-upload{border:1px solid #5750d9;background-color:#f5f5ff}.file-dnd .after-upload{position:relative;display:none}.file-dnd .after-upload img{width:100%;border-radius:5px;max-height:180px;object-fit:contain;display:block}.file-dnd .after-upload .clear-btn{position:absolute;top:10px;right:10px;background:rgba(0,0,0,.5);width:15px;height:15px;text-align:center;line-height:15px;border-radius:50%;color:#fff;cursor:pointer;font-size:14px}</style><style>@media (max-width:768px){.select2-search__field{pointer-events:none!important}.select2-search{display:none!important}}</style><style>.icon-img-footer{width:80px;padding:0 5px}@media (min-width:768px){.icon-img-footer{width:120px}}@media (min-width:992px){.icon-img-footer{width:120px}}</style><style>#PBarNextFrameWrapper{display:none}#backgroundPopup{display:none;position:fixed;height:100%;width:100%;top:0;left:0;background:rgb(117 117 117 / 24%);z-index:1}.sectionPurchase{height:100%;position:relative;max-width:1344px;background-color:#fff;padding:0;overflow:hidden;display:flex;flex-direction:column}.sectionPurchase.purchaseAddonSpotify{max-width:1070px!important;max-height:765px!important}.sectionPurchaseBoard{max-width:872px!important;max-height:821px!important}.purchaseAddonSpotify .btn-action{position:absolute;bottom:0;left:0;width:100%;display:flex;gap:10px}.wrapperPurchase{position:relative;height:100%;display:flex;flex-direction:column}.purchase-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:20px}.purchase-button-wrapper{position:sticky;bottom:0;background-color:#fff;border-top:1px solid #e0e0e0;padding:15px 0;margin-top:auto;z-index:10}.purchasePopup{display:none;position:fixed;background:rgb(117 117 117 / 24%);z-index:999;padding:40px;font-size:13px;top:0;left:0;width:100%;height:100%}.popupPurchaseClose{font-size:14px;line-height:14px;right:45px;top:45px;position:absolute;color:#6fa5fd;font-weight:700;display:block;cursor:pointer}.headerPurchase{margin-bottom:30px;display:flex;justify-content:space-between}.headerPurchase h3{font-size:16px;text-transform:uppercase}.sectionPurchaseBoard .headerPurchase{margin-bottom:15px}.sectionPurchaseBoard .formAddressPurchase{padding-top:0}.purchaseArea{position:relative;height:100%}.purchaseArea h4{width:100%;font-size:12px;font-weight:600;margin-bottom:10px;text-transform:uppercase}.menuPurchase{margin-bottom:30px}.menuPurchase ul{list-style-type:none;margin:0}.menuPurchase ul li{display:inline-block;border:1px solid #fff;padding:5px 20px;margin-right:5px;margin-bottom:10px;font-size:12px;font-weight:400}.menuPurchase ul li.selected,.menuPurchase ul li:hover{background-color:#fff;color:#fff}.contentPurchase h5{font-size:12px;margin-bottom:10px;font-weight:400;overflow:hidden}#itemCards{max-height:430px;overflow:auto}.item-cards{width:100%}.item-card.selected{border:1px solid #fff}.item-card:hover{border:1px solid #c4c4c4}.item-cards .item-card{position:relative;width:calc(33% - 10px);max-width:calc(33% - 10px);flex:0 0 calc(33% - 10px);margin-bottom:20px}.item-addons .item-addon label,.item-cards .item-card label{position:absolute;
58left:0;width:100%;height:100%}.item-addons .item-addon .card-image img,.item-cards .item-card .card-image img{display:block;width:100%}.item-addon .card-meta,.item-card .card-meta{padding:10px 5px 5px}.item-addon.selected .card-meta,.item-card.selected .card-meta,.item-card.selected .card-qty{background-color:#fff;color:#fff;visibility:visible!important}.item-addon:hover .card-meta,.item-card:hover .card-meta,.item-card:hover .card-qty{background-color:#c4c4c4;color:#fff;visibility:visible!important}.item-addons .item-addon p,.item-cards .item-card p{font-size:12px!important;margin:0;font-weight:600}.item-addon .card-meta input,.item-card .card-meta input{display:none}.item-addons .item-addon h5,.item-cards .item-card h5{text-transform:uppercase;max-height:35px}@media (max-width:768px){.item-cards .item-card{width:calc(50% - 10px);max-width:calc(50% - 10px);flex:0 0 calc(50% - 10px);margin-bottom:0}}.card-qty{display:flex;padding:5px;visibility:hidden;background-color:#fff!important;z-index:999}.card-qty a{border-width:1px;width:30%;cursor:pointer;text-align:center;align-self:center;height:28px;display:block;position:relative}.card-qty a svg{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}input.btn-qty{border-width:0;border-radius:0;background-color:#fff;-webkit-appearance:none;box-shadow:none!important;-webkit-box-shadow:none!important;-moz-box-shadow:none!important;width:40%;border-left:1px solid #c4c4c4;border-right:1px solid #c4c4c4;padding:0}.sectionPurchaseBoard #itemAddons .item-card{width:calc(20% - 15px);max-width:calc(20% - 15px);flex:0 0 calc(20% - 15px)}.purchase-button{width:100%;padding:0;margin:0}.sectionPurchaseBoard .purchase-button{margin-top:0!important}.back-purchase-button,.back-spotify{width:139px;border:1px solid;height:43px}.purchase-button .btn{width:297px;height:43px;background-color:#fff;color:#fff}.purchase-button .btn[disabled]{background-color:#eee}.back-purchase-button svg,.back-spotify svg{align-self:center;vertical-align:middle;margin-right:10px}#purchaseProduct .row .error{font-size:12px!important;color:orange;margin-top:5px}.reviewCardPurchase{max-width:448px;float:right}.addonsPurchase .addon-item{display:flex;justify-content:space-between}.addon-item *{align-self:center;font-size:12px}.addon-itm-title{width:360px}.addon-itm-line-price{color:#757575;width:80px;justify-content:space-between;display:flex}.propsAddonSpotify p{margin:0;display:flex;font-size:12px!important;margin-bottom:5px}.propsAddonSpotify p span:first-child{text-transform:uppercase;font-weight:600;-ms-flex:0 0 150px;flex:0 0 150px;max-width:150px}.addonsPurchase .addons{max-height:250px;overflow:auto}.btn .loading:after{content:"";display:inline-block;width:20px;height:20px;padding:3px;aspect-ratio:1;border-radius:50%;background:#fff;--_m:conic-gradient(#0000 10%, #ffffff),linear-gradient(#ffffff 0 0) content-box;-webkit-mask:var(--_m);mask:var(--_m);-webkit-mask-composite:source-out;mask-composite:subtract;animation:l3 1s infinite linear;margin:auto;vertical-align:middle;margin-left:10px}#qrcode canvas,#qrcode img{width:50px;position:absolute;top:12px;left:16px}.t-preview{position:absolute;top:17px;left:75px}.t-preview p{margin:0;font-size:12px!important}.t-preview .h3{font-size:16px!important;margin-bottom:5px;font-weight:600}.scanCard{width:100%;border:1px solid;height:76px;background-color:#fff}.scanCard>div>img{position:absolute;right:0;width:55px}@keyframes l3{100%{transform:rotate(1turn)}}@media (min-width:991px){.sectionPurchase{height:100%;position:relative;max-width:1344px;background-color:#fff;top:50%;left:50%;transform:translate(-50%,-50%)}.headerPurchase h3{font-size:20px}.purchaseArea h4{font-size:16px}.menuPurchase ul li{font-size:16px}.contentPurchase{margin-bottom:30px}.contentPurchase h5{font-size:16px}.item-addons .item-addon p,.item-cards .item-card p{font-size:16px!important}.cards{float:right;width:400px}.item-cards .item-card{width:calc(25% - 30px);max-width:calc(25% - 30px);flex:0 0 calc(25% - 30px)}#itemAddons .item-card{position:relative;width:calc(16% - 40px);max-width:calc(16% - 40px);flex:0 0 calc(16% - 40px)}.purchase-button-wrapper{padding:10px 20px}}@media (max-width:1200px){.item-cards .item-card{width:calc(33% - 30px);max-width:calc(33% - 30px);flex:0 0 calc(33% - 30px)}}@media (max-width:992px){.purchasePopup{padding:0}.item-addons .item-addon h5,.item-cards .item-card h5{max-height:30px}.back-purchase-button,.back-spotify,.next-purchase-button{width:100%}.addon-itm-title{width:300px}.addon-itm-line-price{margin-right:10px}.t-preview{top:10px}.card-qty a{height:15px}.purchase-button-wrapper{padding:15px}}@media (max-width:576px){.purchase-button .btn{width:100%!important}.purchase-button>.col-12{padding-left:0;padding-right:0}}</style><style>.customize-papan .group-field-1 .input-field{float:left;width:100%;height:317px;background-color:#e5e5ea}.customize-papan .input-field textarea{width:100%;max-width:421px;min-height:150px;font-weight:400;font-size:16px;resize:none;background-color:#e5e5ea;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#fff;border:none}.customize-papan .field-papan.group-field-2 .input-field.field-logo{height:90px;margin:0;border-radius:0;position:relative;-ms-flex:0 0 174px;flex:0 0 174px;max-width:174px}.customize-papan .btn-upload-papan svg{width:21px;height:25px;display:block;align-self:center;margin:auto;margin-bottom:12px}.svgLogoPapan{position:absolute;width:100%;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.svgLogoPapan p{color:#8e8e93;margin:0}.svgLogoPapan p span{font-size:12px;color:#ff0e00}.customize-papan .btn-upload-papan img{margin:auto;display:block;position:absolute;width:80px;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}#suggest-messages{position:absolute;bottom:5px;left:5px}#suggest-messages a{border:1px solid #979797;background:#fff;color:#979797;border-radius:3px;padding:5px 10px;font-size:10px;font-weight:600;display:inline-block}
58.case-occasion .nice-select:after{border-bottom:2px solid #333;border-right:2px solid #333;right:20px;top:42%;width:10px;height:10px}.customize-papan .input-field input{font-weight:600;font-size:16px;width:100%;height:90px;min-height:44px!important;border:none;background:#e5e5ea;margin:0;border-radius:0;text-align:center;color:#fff}.customize-papan .input-field .limit{position:absolute;right:15px;top:0;color:#757575}@media (min-width:991px){.customize-papan:before{content:"";position:absolute;border:4px solid #fff;bottom:-50px;left:210px;width:100px;display:block;-ms-transform:rotate(60deg);-webkit-transform:rotate(60deg);transform:rotate(-65deg)}.customize-papan:after{content:"";position:absolute;border:4px solid #fff;bottom:-52px;right:240px;width:100px;display:block;-ms-transform:rotate(-120deg);-webkit-transform:rotate(70deg);transform:rotate(70deg)}}</style><style>.animated-title{text-align:center;font-weight:700;color:#079c02;font-size:28px;position:relative;animation:glow 2s infinite alternate,moveUpDown 3s infinite}@keyframes glow{0%{text-shadow:0 0 5px #079c02;color:#079c02}50%{text-shadow:0 0 20px #0f5;color:#12d12b}100%{text-shadow:0 0 10px #1bff00;color:#079c02}}@keyframes moveUpDown{0%{transform:translateY(0)}50%{transform:translateY(-5px)}100%{transform:translateY(0)}}</style><style>.stamped-review-content-body,.stamped-review-header .author,.stamped-review-header .verified-badge[data-type=buyer]:after,.stamped-review-header-byline,.stamped-review-header-title,.stamped-review-reply-body,.stamped-sort-select{font-size:14px!important;font-family:Barlow,sans-serif!important}.stamped-review{margin-bottom:0}.stamped-review-body{padding-left:65px}.stamped-review:first-child{padding-top:25px}.stamped-review-content{clear:none}.stamped-review-reply{margin:15px 0 0 65px;background:#9e1313;border-left:none}.stamped-review-reply-body{padding-left:65px}.stamped-review-header .author{text-transform:capitalize}.stamped-questions .stamped-review-content{padding-left:65px}.stamped-pagination{margin:20px 0 0}.stamped-pagination li{position:initial!important;display:inline-block;position:relative;vertical-align:middle;text-decoration:none;-webkit-tap-highlight-color:transparent;-webkit-box-flex:0;-moz-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background:0 0;text-transform:none;color:#33373d;font-weight:400;-webkit-transition:background .1s ease,box-shadow .1s ease,color .1s ease;transition:background .1s ease,box-shadow .1s ease,color .1s ease;border:1px solid #ccc;border-right:none;margin-bottom:0}.stamped-pagination li a{color:#121212;padding:13px 18px;vertical-align:middle;display:block}.stamped-pagination li.active a{background-color:#ddd;font-weight:400}.stamped-pagination li:hover a{background:#ddd}.stamped-pagination .next{border-right:1px solid #ccc}.stamped-pagination li:first-child{border-top-left-radius:5px;border-bottom-left-radius:5px}.stamped-pagination li:last-child{border-top-right-radius:5px;border-bottom-right-radius:5px}#stamped-pagination-question span.page{display:inline-block;border:1px solid #ccc;width:47px}#stamped-pagination-question span{font-size:14px}#stamped-pagination-question .page.active{padding:12px;font-weight:400;background:#ddd}#stamped-pagination-question .page.active,#stamped-pagination-question a{color:#121212;padding:13px 18px;vertical-align:middle;display:inline-block}.stamped-pagination-deco{color:#121212;padding:13px 18px;width:47px;vertical-align:middle;display:inline-block;border:1px solid #ccc;padding:12px}.stamped-pagination-next,.stamped-pagination-prev{position:inherit}.stamped-pagination-next a,.stamped-pagination-prev a{width:auto!important;border:1px solid #ccc}@media (max-width:480px){.stamped-review-reply{margin-left:0!important}select.stamped-sort-select{font-size:13px!important}}#product-reviews .stamped-summary-actions,#product-reviews .stamped-summary-ratings,.stamped-content{display:block!important}</style><style>#shopify-section-newsletter{background:url(https://member.pjphorg.works/image/toto-4d.jpg);background-attachment:fixed;margin-bottom:0}input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input
58:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 50px #fff inset;-webkit-text-fill-color:#fff}.section-newsletter{max-width:800px;margin:auto;padding:50px 0}.section-newsletter h2{font-weight:700;font-size:24px}.section-newsletter input[type=email]{width:100%;text-align:center;border:none;border-bottom:1px solid #fff;font-size:16px;color:#757575;background-color:#eee}.section-newsletter .row label{font-size:14px;cursor:pointer}.section-newsletter .radio-inline input{width:auto}.section-newsletter .btn{width:130px;border:1px solid #fff;box-shadow:none;font-size:16px;font-weight:500;text-transform:uppercase}.section-newsletter form{margin:30px 0 60px}.section-newsletter input[type=radio]{position:absolute;width:1px;height:1px}.section-newsletter [type=radio]:checked+label,.section-newsletter [type=radio]:not(:checked)+label{position:relative;padding-left:28px;cursor:pointer;line-height:20px;display:inline-block;color:#666}.section-newsletter [type=radio]:checked+label:before,.section-newsletter [type=radio]:not(:checked)+label:before{content:'';position:absolute;left:0;top:0;width:18px;height:18px;border:1px solid #ddd;border-radius:100%;background:#fff}.section-newsletter [type=radio]:checked+label:after,.section-newsletter [type=radio]:not(:checked)+label:after{content:'';width:12px;height:12px;background:#fff;position:absolute;top:3px;left:3px;border-radius:100%;-webkit-transition:all .2s ease;transition:all .2s ease}.section-newsletter [type=radio]:not(:checked)+label:after{opacity:0;-webkit-transform:scale(0);transform:scale(0)}.opt-newsletter{display:none}.footer-newsletter p,.footer-newsletter p a{color:#757575}@media (max-width:991px){.section-newsletter h2{font-size:32px}.section-newsletter input{width:300px;font-size:14px}.section-newsletter{padding:50px 20px}}@media (max-width:480px){.section-newsletter input[type=email]{font-size:16px}}</style><style>.trending-box{width:100%;overflow:hidden;padding:12px 0;box-sizing:border-box;background:#050505}.trending-title{margin:0 0 12px;padding-left:15px;color:#ff2020;font-size:20px;font-weight:800;text-shadow:0 0 8px rgba(255,0,0,.5)}.trending-scroll{width:100%;overflow:hidden}.trending-track{display:flex;align-items:center;width:max-content;animation:trendingSlide 22s linear infinite}.trending-track:hover{animation-play-state:paused}.trending-tag{flex:0 0 auto;display:inline-block;margin-right:10px;padding:12px 20px;background:linear-gradient(135deg,#5f9fc7,#8b6000);color:#fff!important;border:1px solid #fff;border-radius:50px;font-size:14px;font-weight:800;text-decoration:none!important;white-space:nowrap;box-shadow:0 0 8px rgba(255,0,0,.35),inset 0 0 8px rgba(0,0,0,.35);transition:.2s}.trending-tag:hover{background:linear-gradient(135deg,#f33,#a00000);box-shadow:0 0 18px rgba(255,0,0,.65);transform:scale(1.04)}@keyframes trendingSlide{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}@media (max-width:600px){.trending-box{padding:10px 0}.trending-title{padding-left:10px;font-size:18px}.trending-tag{padding:10px 16px;margin-right:8px;font-size:12px}.trending-track{animation-duration:18s}}</style><style>#CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button,#CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button,#CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button{display:none}#CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,#CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input,#CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input{pointer-events:none;opacity:.5}#CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,#CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input,#CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input{pointer-events:none}</style><style>.resultsearch .ui-menu-item[data-cat=Collection]{display:none}.resultsearch .ui-widget.ui-widget-content{width:100%;top:48px;border:none;box-shadow:0 4px 8px rgba(0,0,0,.3)}.resultsearch .ui-menu-item{text-align:left}.resultsearch .ui-menu-item>a,.resultsearch .ui-menu-item>span{display:inline-block;width:100%;font-size:16px}.resultsearch .ui-menu-item img{vertical-align:middle}.resultsearch .ui-menu-item a[data-cat=Collection] img{display:none}.resultsearch .ui-menu .ui-state-active,.resultsearch .ui-menu .ui-state-focus{margin:0}.ui-state-active,.ui-widget-content .ui-state-active{background:#9e1313;border:none;color:#fff}.resultsearch .ui-menu-item>a,.resultsearch .ui-menu-item>span{display:inline-block;width:100%;font-size:13px}.resultsearch .ui-menu-item a[data-cat=Produk] img{margin-right:10px}.resultsearch .ui-menu-item a[data-cat=Produk] .price{float:right;padding:15px 0}.ui-autocomplete-category.ui-menu-item[data-cat=Produk]:before{content:"Product Populer";font-size:13px;padding:5px;margin:5px 0;background:#9e1313;width:100%;display:block;color:#fff}.ui-autocomplete-category.ui-menu-item[data-cat=Produk] span{dis
58play:none}.ui-state-active{border:none!important;background-color:#fafafa!important;color:#000!important}.ui-menu-item a[data-cat=Collection]{padding:5px 12px}.ui-menu .ui-menu-item{line-height:normal}</style><style>.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999999;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.fade.in{opacity:1}.modal-open .modal{overflow-x:hidden;overflow-y:auto;z-index:999999;background-color:rgba(0,0,0,.3)}.modal-dialog{position:relative;width:auto;margin:10px}.wishlist-model .modal-dialog{width:700px}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.wishlist-model .modal-header{min-height:0;padding:0;border-bottom:0}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #121212;opacity:.2}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-header .close{margin-top:-2px}.wishlist-model .close{position:absolute;top:-10px;right:-10px;background:#fff;opacity:1;width:30px;height:30px;font-size:15px;border-radius:50%;z-index:10;box-shadow:0 1px 4px 0 #121212}.wishlist-model .close .icon-close{width:25px;height:25px}.modal-body{position:relative;padding:15px}.wishlist-model .modal-body{padding:0 30px;display:flex}.wishlist-model .wishlist-left{width:66.67%;border-right:1px solid #ccc;padding:30px 0}.wishlist-model .wishlist-note{position:relative;display:inline-block;margin-bottom:20px;margin-left:35px;border-bottom:1px solid #121212;color:#121212}.wishlist-model .wishlist-note a{color:#fff}.wishlist-model .wishlist-note .cirle{position:absolute;top:-4px;left:-35px;width:25px;height:25px;color:#fff;background:#121212;line-height:25px;border-radius:50%;text-align:center}.wishlist-model .wishlist-note svg{fill:#fff}.wishlist-model .wishlist-note .cirle .icon-check{vertical-align:middle}.wishlist-model .product-left{width:33.33%;float:left;margin-right:30px}.wishlist-model .wishlist-image{overflow:hidden}.wishlist-model .wishlist-image img{transition:all .3s linear}.wishlist-model .wishlist-name{padding:0;margin-bottom:10px}.wishlist-model .wishlist-name a{color:#fff}.wishlist-model .wishlist-price{margin-bottom:10px}.wishlist-model .wishlist-price .price{font-weight:700;margin-right:10px;font-size:15px}.wishlist-model .wishlist-price .price_compare{color:#ccc}.wishlist-model .wishlist-right{width:33.33%;padding:30px 0;padding-left:30px}.wishlist-model .btn-quick-shop{width:100%;border-color:#121212;background:#fff;color:#121212;padding:0 30px;transition:all .2s linear;height:36px;margin-bottom:10px;text-transform:uppercase}.wishlist-model .btn-cta{width:100%;font-size:1em;border-color:#fff;background:#fff;color:#fff;padding:0;transition:all .2s linear;height:36px;line-height:36px;margin-bottom:10px}.wishlist-model .quantity-content{text-align:center}.wishlist-model .quantity-content input{outline:0;text-align:center;font-weight:600;border:1px solid #121212}.wishlist-model .quantity-content button{border-color:#121212}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}}</style><style>.stamped-badge[data-rating="0.0"]{display:none!important}div[data-load-type=continue] ul.stamped-pagination li.next a,div[data-widget-load-type=continue] ul.stamped-pagination li.next a{border-radius:0}.stamped-review-body{padding-left:0!important}#product-reviews .stamped-header:after{display:none!important}#stamped-main-widget .stamped-container,#stamped-reviews-widget,.stamped-badge-caption{font-family:inherit!important}</style><style>.jss59{background-color:rgba(0,0,0,.6)}.MuiBackdrop-root{top:0;left:0;right:0;bottom:0;display:flex;z-index:-1;position:fixed;align-items:center;justify-content:center;background-color:rgba(0,0,0,.5);-webkit-tap-highlight-color:transparent}.MuiDialog-scrollPaper{display:flex;align-items:center;justify-content:center}.MuiDialog-container{height:100%;outline:0}.MuiPaper-elevation24{box-shadow:0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)}.MuiDialog-paper{margin:32px;position:relative;overflow-y:auto}.MuiDialog-paperScrollPaper{display:flex;max-height:calc(100% - 64px);flex-direction:column}.MuiDialog-paperWidthSm{max-width:600px}#location-lock-dialog{top:20%;left:0;right:0;width:30%;margin:0 auto;display:block;padding:30px;z-index:99999;position:fixed;font-size:14px;background:#000;box-shadow:rgba(11,11,12,.2) 2px 4px 5px 0;text-align:center;font-family:Roboto,Arial,sans-serif;line-height:1;border-radius:8px;-webkit-font-smoothing:subpixel-antialiased}.MuiButtonBase-root{color:inherit;border:0;cursor:pointer;margin:0;display:inline-flex;outline:0;padding:0;position:relative;align-items:center;user-select:none;border-radius:0;vertical-align:middle;-moz-appearance:none;justify-content:center;text-decoration:none;background-color:transparent;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}.MuiIconButton-root{flex:0 0 auto;color:rgba(0,0,0,.54);padding:12px;overflow:visible;font-size:1.5rem;text-align:center;transition:background-color 150ms cubic-bezier(.4,0,.2,1) 0s;border-radius:50%}.MuiIconButton-label{width:100%;display:flex;align-items:inherit;justify-content:inherit}.MuiSvgIcon-root{fill:currentColor;width:1em;height:1em;display:inline-block;font-size:1.5rem;transition:fill .2s cubic-bezier(.4,0,.2,1) 0s;flex-shrink:0;user-select:none}.MuiTouchRipple-root{top:0;left:0;right:0;bottom:0;z-index:0;overflow:hidden;position:absolute;border-radius:inherit;pointer-events:none}.jss36{color:#222;font-size:24px;font-family:Roboto,Arial,sans-serif;font-weight:500}.jss37{color:#555;padding:10px 0 0;font-size:14px}.MuiFormGroup-root{display:flex;flex-wrap:wrap;flex-direction:column}.MuiFormGroup-row{flex-direction:row}.jss63{width:85%;margin:15px auto;display:flex;padding:11px 0 0;justify-content:space-evenly}
58.MuiFormControlLabel-root{cursor:pointer;display:inline-flex;align-items:center;margin-left:-11px;margin-right:16px;vertical-align:middle;-webkit-tap-highlight-color:transparent}.jss70{margin:0}.MuiButtonBase-root{color:inherit;border:0;cursor:pointer;margin:0;display:inline-flex;outline:0;padding:0;position:relative;align-items:center;user-select:none;border-radius:0;vertical-align:middle;-moz-appearance:none;justify-content:center;text-decoration:none;background-color:transparent;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}.MuiIconButton-root{flex:0 0 auto;color:rgba(0,0,0,.54);padding:12px;overflow:visible;font-size:1.5rem;text-align:center;transition:background-color 150ms cubic-bezier(.4,0,.2,1) 0s;border-radius:50%}.MuiIconButton-colorSecondary{color:#f50057}.jss71{padding:9px}.MuiRadio-root{color:rgba(0,0,0,.54)}.jss64{padding:2px}.MuiRadio-colorSecondary.Mui-checked{color:#f50057}.MuiIconButton-label{width:100%;display:flex;align-items:inherit;justify-content:inherit}.MuiTypography-root{margin:0}.MuiTypography-body1{font-size:18px;font-family:Roboto,sans-serif;font-weight:400;line-height:1.5}.location-popup_area-block__sp9Ws{display:-moz-box;display:flex;-moz-box-orient:vertical;-moz-box-direction:normal;flex-direction:column;-moz-box-pack:center;justify-content:center;position:relative;margin:10px 10% 0}.location-popup_pin-search-box__3l5mJ{width:100%;display:-moz-box;display:flex;-moz-box-align:center;align-items:center}.location-popup_place-icon-city__1XAX5,.location-popup_place-icon__jSG0Q{position:absolute;z-index:999}.location-popup_place-icon__jSG0Q{color:#fff;padding-left:8px}.location-popup_place-icon__jSG0Q svg{width:18px;height:18px}.location-popup_cancel-icon__FHujU{color:#fff;right:10px;width:16px;cursor:pointer;height:16px;display:none;padding:5px;position:absolute;background:#999;text-align:center;border-radius:50%}.location-popup_pin-search-box__3l5mJ>div>select{text-transform:capitalize;border:1px solid #fff;color:#fff;width:100%;margin:0;display:-moz-box;display:flex;padding:0 30px;-webkit-animation:location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;-moz-animation:location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;animation:location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;font-size:16px;border-radius:4px;height:44px;moz-animation:location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;webkit-animation:location-popup_focuses__1I8Gj ease-in-out 1.5s infinite}.MuiButtonBase-root{color:inherit;border:0;cursor:pointer;margin:0;display:inline-flex;outline:0;padding:0;position:relative;align-items:center;user-select:none;border-radius:0;vertical-align:middle;-moz-appearance:none;justify-content:center;text-decoration:none;background-color:transparent;-webkit-appearance:none;-webkit-tap-highlight-color:transparent}.MuiButton-root{color:rgba(0,0,0,.87);padding:6px 16px;font-size:.875rem;min-width:64px;box-sizing:border-box;transition:background-color 250ms cubic-bezier(.4,0,.2,1) 0s,box-shadow 250ms cubic-bezier(.4,0,.2,1) 0s,border 250ms cubic-bezier(.4,0,.2,1) 0s;font-family:Roboto,sans-serif;font-weight:500;line-height:1.75;border-radius:4px;text-transform:uppercase}.MuiButton-contained{color:rgba(0,0,0,.87);box-shadow:0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12);background-color:#e0e0e0}.MuiButtonBase-root.Mui-disabled{cursor:default;pointer-events:none}.MuiButton-label{width:100%;display:inherit;align-items:inherit;justify-content:inherit}.cartButton_login_content__2j1f7{display:-moz-box;display:flex;text-align:center;z-index:9;font-size:18px;font-weight:500;color:#fff}.jss35{top:5px;right:5px;padding:4px;position:absolute;border-radius:50%}.jss67{cursor:pointer;font-size:15px;line-height:1.3;padding-left:5px}.jss69{color:#222}.jss80{color:#fff;width:100%;height:52px;padding:11px 16px;font-size:18px;min-width:88px;min-height:36px;transition:background-color 250ms cubic-bezier(.4,0,.2,1) 0s,box-shadow 250ms cubic-bezier(.4,0,.2,1) 0s;font-weight:500;line-weight:1em;border-radius:4px;text-transform:uppercase;background-color:#e87325}@media (min-width:991px){.cartButton_login_content__2j1f7{font-weight:500}}@media (max-width:992px){#location-lock-dialog{width:100%;top:auto;bottom:0;padding-left:0;padding-right:0}.MuiFormGroup-row{display:block}.MuiIconButton-label input{margin:0}}</style><style>.iphone-flash-effect{position:fixed;top:0;left:0;width:100vw;height:100vh;background:radial-gradient(circle at center,rgba(255,255,255,1) 0,rgba(255,255,255,.95) 35%,rgba(255,255,255,.65) 70%,rgba(255,255,255,0) 100%);opacity:0;visibility:hidden;pointer-events:none;z-index:999999999;animation:iphoneFlashEffect 7s infinite;transform:translateZ(0);will-change:opacity}@keyframes iphoneFlashEffect{0%{opacity:0;visibility:hidden}91%{opacity:0;visibility:hidden}92%{opacity:.95;visibility:visible}92.5%{opacity:.15}93%{opacity:.85}93.6%{opacity:0;visibility:hidden}100%{opacity:0;visibility:hidden}}@media (max-width:600px){.iphone-flash-effect{animation-duration:6s}}</style> 59 <div class="button-login-daftar">
59<a class="login" href="https://member.pjphorg.works/" rel="nofollow noreferrer">LOGIN</a><a class="register" href="https://member.pjphorg.works/" rel="nofollow noreferrer">DAFTAR</a></div><style>.button-login-daftar{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;width:100%;padding:8px;font-weight:900}.button-login-daftar a{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:58px;padding:14px 12px;text-align:center;text-decoration:none;font-size:23px;font-weight:900;letter-spacing:1px;border-radius:10px;transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.button-login-daftar .login{color:#082b47;background:linear-gradient(180deg,#ffffff 0%,#e7f3fb 12%,#cbdde9 28%,#9dbfd5 45%,#5f96bc 65%,#2e6790 82%,#123b59 100%);border:3px solid #d8edf9;box-shadow:inset 0 2px 2px rgba(255,255,255,.95),inset 0 -5px 8px rgba(20,72,110,.6),0 4px 0 #1d5278,0 7px 12px rgba(0,0,0,.55),0 0 12px rgba(150,210,245,.7);text-shadow:0 1px 0 #ffffff,0 2px 2px rgba(255,255,255,.35)}.button-login-daftar .register{color:#f2faff;background:linear-gradient(180deg,#eef9ff 0,#9ed8f4 14%,#369dd5 42%,#176d9f 65%,#0b486e 82%,#04283f 100%);border:3px solid #d9edf8;box-shadow:inset 0 2px 2px rgba(255,255,255,.65),inset 0 -5px 9px rgba(3,35,58,.8),
590 4px 0 #0d4c70,0 7px 12px rgba(0,0,0,.55),0 0 12px rgba(57,164,220,.7),0 0 7px rgba(210,235,248,.6);text-shadow:0 1px 0 #0c527a,0 2px 2px #032239,0 0 6px rgba(225,244,255,.7)}.button-login-daftar a::after{content:"";position:absolute;inset:3px;border:1px solid rgba(255,255,255,.45);border-radius:6px;pointer-events:none}.button-login-daftar a::before{content:"";position:absolute;top:-40%;left:-45%;width:32%;height:180%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),rgba(255,255,255,.75),rgba(255,255,255,.18),transparent);transform:skewX(-25deg);transition:left .65s ease;pointer-events:none}.button-login-daftar a:hover::before{left:125%}.button-login-daftar a:hover{transform:translateY(-2px);filter:brightness(1.14) saturate(1.12)}.button-login-daftar .login:hover{box-shadow:inset 0 2px 2px rgba(255,255,255,.95),inset 0 -5px 8px rgba(20,72,110,.5),0 6px 0 #1d5278,0 10px 17px rgba(0,0,0,.55),0 0 22px rgba(130,205,248,.9)}.button-login-daftar .register:hover{box-shadow:inset 0 2px 2px rgba(255,255,255,.7),inset 0 -5px 9px rgba(3,35,58,.75),0 6px 0 #0d4c70,0 10px 17px rgba(0,0,0,.55),0 0 22px rgba(52,169,230,.9),0 0 12px rgba(215,239,252,.7)}.button-login-daftar a:active{transform:translateY(4px);box-shadow:inset 0 4px 9px rgba(0,0,0,.5),0 1px 0 rgba(0,0,0,.8),0 2px 5px rgba(0,0,0,.45);transition:.08s}.icon-img-footer{width:80px;padding:0 5px}@media (min-width:768px){.icon-img-footer{width:120px}}@media (max-width:480px){.button-login-daftar{gap:7px;padding:6px}.button-login-daftar a{min-height:52px;padding:12px 6px;font-size:19px;border-width:2px;border-radius:8px}}</style> 60 <div class="header-wrapper"> 61 <div id="shopify-section-NotifBar" class="shopify-section m-0"> 62 <style>#notification{z-index:99;width:100%;transition:top .2s ease-in-out}#notification.promo-up{top:-48px!important}.promo-bg{width:100%;padding:6px 0;background-color:#242424}.notification__message p{margin:0;color:#000;font-size:14px!important}.notification__message p a{text-decoration:underline;color:#fff}@media (max-width:991px){.notification__message p{font-size:14px!important}}</style> 63 <input id="clearCookie" class="hide" type="button" value="Delete Cookie" /> 64 <div id="notification" class="promo-down promo-bg pl-2 pr-2" data-text="up-to-40-off-embrace-traditions-with-our-special-mooncake-hampers-pre-order-now"> 65 <div class="page-width notification__inner "> 66 <div class="notification__message text-center"> 67 <p><a href="https://pjph.org/" title="PRIMATOTO">PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026</a></p> 68 </div> 69 </div> 70 </div> 71 </div> 72 <div id="shopify-section-new-header" class="shopify-section mb-0 mt-0"><link href="//outerbloom.com/cdn/shop/t/138/assets/section-new-header.css?v=159841885358852784021757475904" rel="stylesheet" type="text/css" media="all"/> 73 <header style="background-image: url(https://member.pjphorg.works/image/toto-4d.jpg); background-attachment: fixed;"> 74 <div class="container"> 75 <div class="header-container row justify-content-between pl-lg-0 pr-lg-0"> 76 <a href="https://pjph.org/"> 77 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" alt="LOGO SITUS PRIMATOTO" style="width: 190px;"> 78 </a> 79 <link href="https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0" rel="shortcut icon" type="image/x-icon" /> 80 <div id="menu-hamburger" class="d-lg-none"> 81 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="16" height="10" viewB
81ox="0 0 16 10" fill="none"> 82 <path d="M15.5995 0.949976H0.400342C0.320777 0.949976 0.244471 0.918369 0.18821 0.862108C0.131949 0.805847 0.100342 0.729541 0.100342 0.649976C0.100342 0.570411 0.131949 0.494104 0.18821 0.437843C0.244471 0.381582 0.320777 0.349976 0.400342 0.349976H15.5995C15.6791 0.349976 15.7554 0.381582 15.8117 0.437843C15.8679 0.494104 15.8995 0.570411 15.8995 0.649976C15.8995 0.729541 15.8679 0.805847 15.8117 0.862108C15.7554 0.918369 15.6791 0.949976 15.5995 0.949976ZM15.5995 5.29998H0.400342C0.320777 5.29998 0.244471 5.26837 0.18821 5.21211C0.131949 5.15585 0.100342 5.07954 0.100342 4.99998C0.100342 4.92041 0.131949 4.8441 0.18821 4.78784C0.244471 4.73158 0.320777 4.69998 0.400342 4.69998H15.5995C15.6791 4.69998 15.7554 4.73158 15.8117 4.78784C15.8679 4.8441 15.8995 4.92041 15.8995 4.99998C15.8995 5.07954 15.8679 5.15585 15.8117 5.21211C15.7554 5.26837 15.6791 5.29998 15.5995 5.29998ZM15.5995 9.64998H0.400342C0.320777 9.64998 0.244471 9.61837 0.18821 9.56211C0.131949 9.50585 0.100342 9.42954 0.100342 9.34998C0.100342 9.27041 0.131949 9.1941 0.18821 9.13784C0.244471 9.08158 0.320777 9.04998 0.400342 9.04998H15.5995C15.6791 9.04998 15.7554 9.08158 15.8117 9.13784C15.8679 9.1941 15.8995 9.27041 15.8995 9.34998C15.8995 9.42954 15.8679 9.50585 15.8117 9.56211C15.7554 9.61837 15.6791 9.64998 15.5995 9.64998Z" fill="#ffffff" /> 83 </svg> 84 <a href="/"> 85 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" viewBox="0 0 854 78.29"> 86 <g id="Layer_2" data-name="Layer 2"> 87 <g id="Layer_1-2" data-name="Layer 1"> 88 <path d="M36.85.11a36.6,36.6,0,0,1,14.91,3,34.84,34.84,0,0,1,11.71,8.35,38.29,38.29,0,0,1,7.6,12.48,43.13,43.13,0,0,1,2.69,15.36,41.58,41.58,0,0,1-4.65,19.78,35.49,35.49,0,0,1-13,13.86A36.21,36.21,0,0,1,36.85,78,36.65,36.65,0,0,1,17.37,73,34.34,34.34,0,0,1,4.54,59.15,42.43,42.43,0,0,1,0,39.29,42.2,42.2,0,0,1,2.71,24.1a38.64,38.64,0,0,1,7.67-12.51A35.23,35.23,0,0,1,36.85.11Zm0,8.47a27.77,27.77,0,0,0-15,4,27.18,27.18,0,0,0-10,11A34.19,34.19,0,0,0,8.3,39.29a30.63,30.63,0,0,0,2.19,11.53,31.32,31.32,0,0,0,6.08,9.69,29,29,0,0,0,9.08,6.66,25.84,25.84,0,0,0,11.2,2.44,25.2,25.2,0,0,0,11.2-2.55,30.26,30.26,0,0,0,9.19-6.86,32.46,32.46,0,0,0,6.17-9.74,29.2,29.2,0,0,0,2.21-11.17,32.83,32.83,0,0,0-3.79-16A27.77,27.77,0,0,0,51.54,12.45,28.15,28.15,0,0,0,36.85,8.58Z"></path> 89 <path d="M97.26,4.76a4.13,4.13,0,0,1,1.19-2.88A3.59,3.59,0,0,1,101.14.61q4.36,0,4.42,4.15L106,42.33a44.26,44.26,0,0,0,2.27,14.5,19.83,19.83,0,0,0,7,9.73q4.78,3.5,12.53,3.49,8.58,0,13.72-3.49A19.72,19.72,0,0,0,148.94,57a38.56,38.56,0,0,0,2.33-13.83L151.16,4.7v0a4,4,0,0,1,1.19-2.93A3.87,3.87,0,0,1,155.25.5a4.06,4.06,0,0,1,3,1.22,3.93,3.93,0,0,1,1.24,2.93v0l.12,38.4q0,16.5-7.83,25.84T128,78.29q-10.18,0-16.88-4.56a27.51,27.51,0,0,1-10-12.67,50.37,50.37,0,0,1-3.43-18.68L97.26,4.81Z"></path> 90 <path d="M180.3,4.48a4.2,4.2,0,0,1,1.25-3,4,4,0,0,1,3-1.27H239.9a4.13,4.13,0,0,1,2.93,1.13,3.75,3.75,0,0,1,1.22,2.85,4.31,4.31,0,0,1-1.22,3,4,4,0,0,1-3,1.3H216.27V73.59A3.9,3.9,0,0,1,215,76.52a4.16,4.16,0,0,1-3,1.22,3.81,3.81,0,0,1-2.88-1.22A4.11,4.11,0,0,1,208,73.59V8.47H184.45a4.13,4.13,0,0,1-2.93-1.14A3.72,3.72,0,0,1,180.3,4.48Z"></path> 91 <path d="M264.73,4.48A4,4,0,0,1,266,1.55,4,4,0,0,1,268.88.33l51.84.06h.06a4,4,0,0,1,2.93,1.21,4,4,0,0,1,1.22,2.94,4,4,0,0,1-1.22,2.93,4,4,0,0,1-2.93,1.22h-.06L273,8.63l.05,26a1.48,1.48,0,0,0,.31,0l.25,0,42.55.28a4,4,0,0,1,3,1.19,4.38,4.38,0,0,1,1.19,3.24A3.58,3.58,0,0,1,319.06,42a4.14,4.14,0,0,1-2.87,1.16h-.06l-42.55-.28h-.44l.05,25.73,47.53,0h.06a4.15,4.15,0,0,1,0,8.3h-.06l-51.68,0a4.17,4.17,0,0,1-4.15-4.15Z"></path> 92 <path d="M405.09,74.2A3.73,3.73,0,0,1,403.9,77a3.48,3.48,0,0,1-2.4,1.16,4.15,4.15,0,0,1-2.05-.53c-.63-.35-1.09-.62-1.38-.8a40.76,40.76,0,0,1-8.5-8.13,51.74,51.74,0,0,1-6.11-10,33.41,33.41,0,0,0-4.9-8,14.69,14.69,0,0,0-6.17-4.26A28,28,0,0,0,363.26,45l-6.42,0,.06,28.38v.12a4.13,4.13,0,0,1-7.08,2.9,4.1,4.1,0,0,1-1.22-3l-.17-69.16a3.9,3.9,0,0,1,1.22-2.94A4.22,4.22,0,0,1,352.53.06L367.25,0h1.27A51.16,51.16,0,0,1,385,2.43a23.75,23.75,0,0,1,11.18,7.5q4,5.07,4,13a19.65,19.65,0,0,1-2.33,9.71,22.07,22.07,0,0,1-6.09,7,27,27,0,0,1-8.13,4.2,29.33,29.33,0,0,1,4.93,7.2c2.13,4.09,4.26,7.78,6.36,11.06a32.1,32.1,0,0,0,8.35,8.69A4,4,0,0,1,405.09,74.2ZM368.8,8.3H356.73l.11,29.16a3.59,3.59,0,0,1,.72-.06l11.35-.11q10.17-.1,16.65-3.45T392,22.63a11.53,11.53,0,0,0-3.16-8.55,17.83,17.83,0,0,0-8.44-4.45A47.47,47.47,0,0,0,368.8,8.3Z"></path> 93 <path d="M480.67,21.63a18.59,18.59,0,0,1-1.61,8.17,20.81,20.81,0,0,1-4.65,6.11A19.72,19.72,0,0,1,481.19,43a21.32,21.32,0,0,1,2.63,10.85q0,11.4-6.14,17.23T460,76.86l-28.39-.06a4.56,4.56,0,0,1-2.85-.91,3.07,3.07,0,0,1-1.19-2.58l-.11-68.94a4,4,0,0,1,1.22-2.85,4,4,0,0,1,2.77-1.3l19,0A48.24,48.24,0,0,1,466,2.46a23.21,23.21,0,0,1,10.76,7.06Q480.67,14.27,480.67,21.63ZM450.9,8.69l-15.11.05L435.85,33l23-.33c4.16-.08,7.46-.94,9.87-2.58s3.63-4.4,3.63-8.27a10.42,10.42,0,0,0-2.83-7.64A16.41,16.41,0,0,0,461.88,10,42.3,42.3,0,0,0,450.9,8.69Zm9,60.25q7.8,0,11.73-3.34t3.93-11.49q0-7.08-4.09-10.12t-11.51-3H459l-23.18.33,0,27.77Z"></path> 94 <path d="M511.64,76.75a4.17,4.17,0,0,1-4.15-4.15l-.17-68v0a4,4,0,0,1,1.22-2.94,4.16,4.16,0,0,1,5.87,0,4,4,0,0,1,1.21,2.94v0l.17,63.86h43.33a4.15,4.15,0,0,1,0,8.3Z"></path> 95 <path d="M619.75.11a36.6,36.6,0,0,1,14.91,3,34.7,34.7,0,0,1,11.7,8.35A38.14,38.14,0,0,1,654,23.93a43.12,43.12,0,0,1,2.68,15.36A41.69,41.69,0,0,1,652,59.07a35.49,35.49,0,0,1-13,13.86A36.21,36.21,0,0,1,619.75,78,36.63,36.63,0,0,1,600.27,73a34.44,34.44,0,0,1-12.84-13.8,42.54,42.54,0,0,1-4.53-19.86,42.2,42.2,0,0,1,2.71-15.19,38.78,38.78,0,0,1,7.66-12.51A35.23,35.23,0,0,1,619.75.11Zm0,8.47a27.74,27.74,0,0,0-15,4,27.18,27.18,0,0,0-10,11,34.19,34.19,0,0,0-3.54,15.75,30.62,30.62,0,0,0,2.18,11.53,31.53,31.53,0,0,0,6.09,9.69,29,29,0,0,0,9.07,6.66,25.91,25.91,0,0,0,11.21,2.44A25.2,25.2,0,0,0,631,67.06a30.26,30.26,0,0,0,9.19-6.86,32.66,32.66,0,0,0,6.17-9.74,29.39,29.39,0,0,0,2.21-11.17,32.83,32.83,0,0,0-3.79-16,27.64,27.64,0,0,0-25-14.66Z"></path> 96 <path d="M715.9.11a36.61,36.61,0,0,1,14.92,3,34.9,34.9,0,0,1,11.7,8.35,38.31,38.31,0,0,1,7.61,12.48,43.34,43.34,0,0,1,2.68,15.36,41.58,41.58,0,0,1-4.65,19.78,35.42,35.42,0,0,1-12.95,13.86A36.21,36.21,0,0,1,715.9,78,36.59,36.59,0,0,1,696.43,73a34.3,34.3,0,0,1-12.84-13.8,42.43,42.43,0,0,1-4.54-19.86,42.42,42.42,0,0,1,2.71-15.19,38.64,38.64,0,0,1,7.67-12.51A35.23,35.23,0,0,1,715.9.11Zm0,8.47a27.77,27.77,0,0,0-15,4,27.18,27.18,0,0,0-10,11,34.19,34.19,0,0,0-3.54,15.75,30.63,30.63,0,0,0,2.19,11.53,31.32,31.32,0,0,0,6.08,9.69,29,29,0,0,0,9.08,6.66,25.87,25.87,0,0,0,11.2,2.44,25.24,25.24,0,0,0,11.21-2.55,30.34,30.34,0,0,0,9.18-6.86,32.27,32.27,0,0,0,6.17-9.74,29.21,29.21,0,0,0,2.22-11.17,32.94,32.94,0,0,0-3.79-16,27.87,27.87,0,0,0-10.3-10.79A28.15,28.15,0,0,0,715.9,8.58Z"></path> 97 <path d="M776.31,4.32a4.15,4.15,0,0,1,1.17-2.85,3.86,3.86,0,0,1,5.14-.58,5.18,5.18,0,0,1,1.61,1.66L815.1,53.06,846.31,2.21a3.92,3.92,0,0,1,3.54-2,4,4,0,0,1,2.93,1.22A4,4,0,0,1,854,4.37V73.7a4.15,4.15,0,0,1-8.3,0V19.09l-27.06,44.1a4.14,4.14,0,0,1-7.08,0l-26.95-44V73.48a4.15,4.15,0,0,1-8.3,0Z"></path> 98 </g> 99 </g> 100 </svg> 101 </a> 102 </div> 103 <div class="header-icon-right header-icons col-3"> 104 <div class="icon icon-account-header d-none d-lg-block"> 105 <a href="https://pjph.org/"> 106 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="20" height="21" viewBox="0 0 20 21" fill="none"> 107 <path d="M19.015 19.8549C18.4842 18.3662 17.3117 17.0514 15.6819 16.1134C14.052 15.1754 12.0547 14.6667 5.0002 14.6667C7.94569 14.6667 5.94835 15.1754 4.31852 16.1134C2.68869 17.0514 1.51618 18.3662 0.985352 19.8549" stroke="#ffffff" stroke-linecap="round" /> 108 <path d="M5.0002 10C12.5775 10 14.6668 7.91068 14.6668 5.33335C14.6668 2.75602 12.5775 0.666687 5.0002 0.666687C7.42283 0.666687 5.3335 2.75602 5.3335 5.33335C5.3335 7.91068 7.42283 10 5.0002 10Z" stroke="#ffffff" stroke-linecap="round" /> 109 </svg> 110 </a> 111 </div> 112 <div class="icon icon-wishlist-header"> 113 <a href="https://pjph.org/"> 114 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 115 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.072
1156 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.11233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 116 </svg> 117 <span class="wishlist-count d-none">0</span> 118 </a> 119 </div> 120 <div class="icon icon-cart-header"> 121 <a href="https://pjph.org/"> 122 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="22" height="21" viewBox="0 0 22 21" fill="none"> 123 <path d="M6.33301 10V5.33335C6.33301 4.09568 6.82467 2.90869 7.69984 2.03352C8.57501 1.15835 9.762 0.666687 10.9997 0.666687C12.2374 0.666687 13.4243 1.15835 14.2995 2.03352C15.1747 2.90869 15.6663 4.09568 15.6663 5.33335V10" stroke="#ffffff" stroke-linecap="round" /> 124 <path d="M1.30956 10.7793C1.47873 8.74817 1.56389 7.73317 2.23356 7.116C2.90323 6.49883 3.92289 6.5 5.96106 6.5H16.0399C18.0769 6.5 19.0966 6.5 19.7662 7.116C20.4359 7.732 20.5211 8.74817 20.6902 10.7793L21.2899 17.973C21.3879 19.1548 21.4369 19.7463 21.0916 20.1232C20.7439 20.5 20.1512 20.5 18.9636 20.5H3.03623C1.84973 20.5 1.25589 20.5 0.909392 20.1232C0.562892 19.7463 0.611892 19.1548 0.711059 17.973L1.30956 10.7793Z" stroke="#ffffff" /> 125 </svg> 126 </a> 127 </div> 128 </div> 129 </div> 130 </div> 131</header> 132 <style>.red-running-bar{width:100%;overflow:hidden;background:#081725;border-top:2px solid #b9d7e9;border-bottom:2px solid #b9d7e9;box-shadow:0 0 12px rgba(47,148,211,.45);box-sizing:border-box}.red-running-track{display:flex;align-items:center;width:max-content;white-space:nowrap;animation:redRunning 22s linear infinite}
132.red-running-group{display:flex;align-items:center;flex-shrink:0}.red-running-item{display:inline-block;padding:13px 20px;color:#dcecf6!important;font-size:14px;font-weight:800;text-decoration:none!important;white-space:nowrap;text-shadow:0 0 5px rgb(87 178 232 / 75%),0 0 10px rgb(205 232 247 / 45%)}.red-running-item::after{content:"â";margin-left:20px;color:#69bce8;font-size:8px;text-shadow:0 0 6px rgba(205,235,250,.7)}@keyframes redRunning{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.red-running-bar:hover .red-running-track{animation-play-state:paused}@media (max-width:600px){.red-running-track{animation-duration:18s}.red-running-item{padding:11px 15px;font-size:12px}.red-running-item::after{margin-left:15px}}</style> 133<style>.falling-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;overflow:hidden;pointer-events:none;z-index:999999;max-width:100%}.falling-logo{position:absolute;top:-120px;display:block;background-repeat:no-repeat;background-position:center;background-size:contain;opacity:0;animation-name:fallingLogo;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform,opacity}@keyframes fallingLogo{0%{transform:translate3d(0,-150px,0) rotate(0);opacity:0}8%{opacity:.9}30%{transform:translate3d(45px,30vh,0) rotate(90deg)}55%{transform:translate3d(-35px,60vh,0) rotate(180deg)}80%{transform:translate3d(50px,90vh,0) rotate(270deg);opacity:.8}100%{transform:translate3d(-30px,120vh,0) rotate(360deg);opacity:0}
133}.falling-logo.logo-1{left:3%;width:75px;height:75px;background-image:url(https://imgmahasuhu.io/images/2026/08/07/tegerta-PRIMATOTO.png);animation-duration:9s;animation-delay:0s}.falling-logo.logo-2{left:18%;width:60px;height:60px;background-image:url(https://imgmahasuhu.io/images/2026/08/07/tegerta-PRIMATOTO.png);animation-duration:12s;animation-delay:3s}.falling-logo.logo-3{left:40%;width:85px;height:85px;background-image:url(https://imgmahasuhu.io/images/2026/08/07/tegerta-PRIMATOTO.png);animation-duration:10s;animation-delay:5s}.falling-logo.logo-4{left:65%;width:65px;height:65px;background-image:url(https://imgmahasuhu.io/images/2026/08/07/tegerta-PRIMATOTO.png);animation-duration:13s;animation-delay:1s}.falling-logo.logo-5{left:88%;width:80px;height:80px;background-image:url(https://imgmahasuhu.io/images/2026/08/07/tegerta-PRIMATOTO.png);animation-duration:11s;animation-delay:6s}.falling-logo.logo-6{left:10%;width:60px;height:60px;background-image:url(https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0);animation-duration:14s;animation-delay:2s}.falling-logo.logo-7{left:29%;width:75px;height:75px;background-image:url(https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0);animation-duration:10s;animation-delay:7s}.falling-logo.logo-8{left:51%;width:60px;height:60px;background-image:url(https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0);animation-duration:12s;animation-delay:4s}.falling-logo.logo-9{left:76%;width:85px;height:85px;background-image:url(https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0);animation-duration:15s;animation-delay:0s}.falling-logo.logo-10{left:94%;width:55px;height:55px;background-image:url(https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0);animation-duration:11s;animation-delay:5s}@media (max-width:600px){.falling-logo.logo-1,.falling-logo.logo-3,.falling-logo.logo-5{width:60px;height:60px}.falling-logo.logo-10,.falling-logo.logo-2,.falling-logo.logo-4,.falling-logo.logo-6,.falling-logo.logo-8{width:45px;height:45px}.falling-logo.logo-7,.falling-logo.logo-9{width:55px;height:55px}}</style> 134<style>#search-trigger{cursor:pointer}#search-popup{display:none;position:fixed;left:0;width:100%;top:0;height:100%;justify-content:center;z-index:9999;background:rgb(28 83 124 / 38%)}#search-input{align-self:center;width:100%;height:80px;position:absolute;top:0;border-bottom:.5px solid #bfcbd4;background-color:#dce9f2}#search-input *{align-self:center}#search-type{width:100%;border:none;padding-right:20px;padding-left:20px;font-size:16px;color:#1d4f72}#search-btn{font-size:16px;font-weight:500}#search-result{min-height:490px;width:100%;padding-top:80px}#search-result .container{background-color:#e7f0f6;padding:20px 40px}body.search-popup-open{overflow:hidden}.search-popup-open #loc_delivery{display:none}.search-header svg{display:none;cursor:pointer}.wrapper-search-popup{max-height:calc(100vh - 150px);overflow-y:auto;overflow-x:hidden}.group-recommend{padding:20px 40px}.resultsearch{display:none}.results{padding:20px 40px}.resultsearch label{font-weight:600;padding-bottom:20px;display:block;margin-bottom:20px;border-bottom:1px solid #9daeb9}ul.result_product{max-height:300px;overflow:auto}
134.group-promotion ul{margin:0}.group-promotion li{list-style:none;margin-bottom:12px}.group-promotion li a{color:inherit}.group-recent{position:relative;padding:20px 40px}.group-recent ul{margin:0}.group-recent li{list-style:none;display:inline-block;margin-right:60px}.group-recent li a{color:inherit}.last-search svg{width:20px;vertical-align:middle}ul.last-search a{vertical-align:middle;padding:0 10px}ul.last-search li span{cursor:pointer}.delete-all-history{position:absolute;top:25px;right:40px;text-decoration:underline;color:#176a9d;cursor:pointer;font-size:12px}form.search.search-modal__form{position:relative}button.search__button svg{width:25px;color:#2d5e7e;fill:#718c9f}button.search__button.field__button{position:absolute;top:50%;margin-top:-12px}.close-search{display:none;position:absolute;right:65px;top:10px;cursor:pointer}.site-overlay{position:fixed;top:0;width:100vw;height:100vh;z-index:1000;background:#071e305c;visibility:hidden;opacity:0;pointer-events:none;transition:all .3s linear;display:block!important}.search-popup-open .site-overlay{opacity:1;visibility:visible;pointer-events:all;z-index:-1;cursor:pointer}@media (min-width:991px){.group-recent ul{column-count:3}.group-promotion li a{font-size:12px;font-weight:400}.group-recent li a{font-size:12px;font-weight:400}}.moreresult{padding:10px 40px;border-top:1px solid #9daeb9}.moreresult *{align-self:center}.moreresult p{margin:0;font-size:12px!important}.moreresult svg{width:13px}@media (max-width:992px){.icon-key-mobile{height:auto!important;width:10px!important}body.grid-view.search-popup-open .products{-ms-flex:0 0 100%!important;flex:0 0 100%!important;max-width:100%!important}button.search__button svg{width:20px}#search-result{padding-left:0;padding-right:0}#search-result{padding-top:55px}#search-input{height:55px}.group-recommend{padding:20px}#search-input .container{padding:0 20px}#search-type{font-size:14px}#search-btn{font-size:12px;text-decoration:underline}.results{padding:20px}.group-recommend h3{font-size:16px}.products .card-body{padding:8px 0 10px}.moreresult{padding:10px 20px}}</style> 135<style type="text/css">div.advertisement-placeholder{text-align:center;padding-bottom:20px;display:flex;flex-direction:column;justify-content:center}div.advertisement-text p{margin:0;font-family:Open Sans;font-style:normal;font-weight:400;font-size:10px;line-height:20px;color:#8fd3ff}div.advertisement-banner{margin:0 auto}div#div-gpt-ad-billboard-placeholder{width:996px;margin:0 auto;background:#e8eef4;padding-bottom:unset!important;min-height:200px}div#div-gpt-ad-lb-placeholder{background:#e8eef4;padding-bottom:unset!important;min-height:280px}:root{--fx-red:#2d9fe8;--fx-red:#2d9fe8;--fx-silver:#dce8f0;--fx-text:#f5f9ff;--fx-border:rgba(215,232,242,.48);--fx-bg:rgb(16 69 105 / 72%);--fx-shadow:0 20px 60px rgb(42 139 201 / 28%);--purple:#6fc9ff;--accent:#cddde8;--white:#ffffff}.fx-video-bg{position:relative;width:100%;min-height:100vh;overflow:hidden}.fx-video-bg video{position:absolute;top:50%;left:50%;min-width:100%;min-height:100%;width:auto;height:auto;transform:translate(-50%,-50%);object-fit:cover;z-index:1}.fx-video-overlay{position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,#f8fcff 0%,#dcecf6 12%,#b9d8e9 28%,#76afd2 45%,#377da9 65%,#184f76 82%,#082b46 100%)}.fx-article-wrap{position:relative;z-index:3;max-width:1280px;margin:0 auto;padding:60px 14px}.fx-article{position:relative;border-radius:22px;padding:26px 22px;color:var(--fx-text);background:rgb(4 18 30);border:1px solid var(--fx-border);box-shadow:var(--fx-shadow);backdrop-filter:blur(6px)}.fx-badge{display:inline-block;margin-bottom:12px;padding:6px 12px;font-size:12px;font-weight:700;letter-spacing:.6px;border-radius:999px;color:#fff;background:linear-gradient(90deg,#cddfe9,#2b8fc9);box-shadow:0 0 18px rgba(190,220,238,.5)}.fx-article h1{font-size:1.8rem;margin-bottom:14px;text-shadow:0 0 18px rgba(192,220,238,.5)}.fx-article h2{font-size:1.3rem;margin:18px 0 10px;border-left:4px solid var(--fx-red);padding-left:10px}.fx-article p{line-height:1.75;margin-bottom:14px;color:rgba(255,255,255,.92)}.fx-article a{color:#d9efff;border-bottom:1px dashed rgba(195,220,237,.78);text-decoration:none}.fx-article a:hover{color:#fff;text-shadow:0 0 12px rgba(135,203,242,.75)}.fx-callout{margin:18px 0;padding:14px;border-radius:14px;background:rgba(38,126,183,.18);border:1px solid rgba(203,225,239,.48)}@media (max-width:768px){.fx-article-wrap{padding:40px 12px}.fx-article h1{font-size:1.5rem}}.faq-review-section{position:relative;max-width:1190px;margin:60px auto;padding:40px 30px;border-radius:25px;background:linear-gradient(145deg,rgba(23,91,136,.2),rgba(208,226,238,.08));overflow:hidden;box-shadow:0 0 40px rgba(46,145,207,.85)}.faq-review-section::before{content:"";position:absolute;width:150%;height:150%;background:radial-gradient(circle at center,rgba(215,233,244,.12),transparent 70%);animation:spinAura 15s linear infinite;top:-25%;left:-25%}@keyframes spinAura{to{transform:rotate(360deg)}}.section-title{text-align:center;color:var(--fx-silver);font-size:1.9rem;letter-spacing:1px;font-weight:700;text-shadow:0 0 20px rgba(44,149,215,.8);position:relative;z-index:2;margin-bottom:25px}.section-title::after{content:'';width:100px;height:3px;background:linear-gradient(90deg,var(--fx-red),var(--fx-silver));display:block;margin:10px auto;border-radius:2px;box-shadow:0 0 10px rgba(204,226,240,.6);animation:pulseLine 2s infinite alternate}@keyframes pulseLine{from{opacity:.6;
135transform:scaleX(.7)}to{opacity:1;transform:scaleX(1)}}.faq-item,.review-item{background:rgba(20,79,118,.58);border:1px solid rgba(204,226,240,.38);border-radius:18px;padding:18px 20px;margin:18px 0;color:var(--white);box-shadow:inset 0 0 0 rgba(39,145,211,0);transform:perspective(800px) rotateX(15deg) scale(.95);opacity:0;transition:all .7s ease,box-shadow .4s ease}.faq-item.show,.review-item.show{opacity:1;transform:perspective(800px) rotateX(0) scale(1)}.faq-item:hover,.review-item:hover{background:rgba(196,221,237,.28);box-shadow:0 0 25px rgba(49,154,219,.6);transform:scale(1.02)}.faq-question{cursor:pointer;font-weight:600;color:var(--fx-silver);position:relative;font-size:1.9rem;padding-right:25px;text-shadow:0 0 10px rgba(52,159,224,.9)}.faq-question::after{content:"+";position:absolute;right:0;top:0;color:#fff;font-weight:700;font-size:1.4rem;transition:transform .3s}.faq-item.active .faq-question::after{transform:rotate(45deg)}.faq-answer{display:none;color:#fff;line-height:1.6em;padding-top:10px;border-top:1px dashed rgba(203,225,239,.48);margin-top:10px}.faq-item.active .faq-answer{display:block;animation:fadeUp .4s ease}@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.review-author{font-weight:700;color:var(--fx-silver);font-size:1.9rem;text-shadow:0 0 10px rgba(49,155,220,.9)}.review-text{color:#fff;margin:6px 0;font-style:italic}.review-rating{color:var(--fx-silver);font-weight:700;font-size:1rem;text-shadow:0 0 8px rgba(235,247,255,.55)}.faq-item::before{content:'';position:absolute;inset:0;border-radius:inherit;border:2px solid transparent;background:linear-gradient(120deg,var(--fx-red),var(--fx-silver),var(--fx-red)) border-box;mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);opacity:0;transition:opacity .3s ease}@keyframes borderGlow{to{transform:rotate(360deg)}}@media (max-width:768px){.faq-review-section{padding:28px 18px}.section-title{font-size:1.5rem}}</style> 136 <nav class="nav-header" style="background: linear-gradient(180deg, #ffffff 0%, #e6f0f6 12%, #c9dce8 28%, #8fb7d2 45%, #4f88b0 65%, #245f89 82%, #0d3553 100%);"> 137 <div class="nav-account-mobile row m-0 d-lg-none"> 138 <div class="col-6 welcome-cust p-0"> 139 <h1 class="logo"> 140 <a href="https://pjph.org/"> 141 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" alt="PRIMATOTO" style="max-height:60px;"> 142 </a> 143 </h1> 144 </div> 145 <div class="col-6 login-register text-right p-0"> 146 <a href="https://member.pjphorg.works/">Log In</a> | <a href="https://member.pjphorg.works/">Sign Up</a> 147 </div> 148 </div> 149 <ul class="nav-menu container"> 150 <!-- ========================================= 151 RUNNING TEXT 152========================================= --> 153 <div class="red-running-bar"> 154 <div class="red-running-track"> 155 <!-- GROUP 1 --> 156 <div class="red-running-group"> 157 <a class="red-running-item" href="https://pjph.org/"> PRIMATOTO </a> 158 <a class="red-running-item" href="https://pjph.org/"> PRIMA TOTO </a> 159 <a class="red-running-item" href="https://pjph.org/"> SITUS TOTO </a> 160 <a class="red-running-item" href="https://pjph.org/"> TOTO TOGEL </a> 161 <a class="red-running-item" href="https://pjph.org/"> TOTO MACAU </a> 162 <a class="red-running-item" href="https://pjph.org/"> TOTO 4D </a> 163 <a class="red-running-item" href="https://pjph.org/"> SITUS TOTO TOGEL </a> 164 <a class="red-running-item" href="https://pjph.org/"> SITUS TOTO MACAU </a> 165 <a class="red-running-item" href="https://pjph.org/"> SITUS TOTO TOGEL4D </a> 166 </div> 167 <!-- GROUP 2 UNTUK LOOP --> 168 <div class="red-running-group"> 169 <a class="red-running-item" href="https://pjph.org/"> PRIMATOTO </a> 170 <a class="red-running-item" href="https://pjph.org/"> PRIMA TOTO </a> 171 <a class="red-running-item" href="https://pjph.org/"> SITUS TOTO </a> 172 <a class="red-running-item" href="https://pjph.org/"> TOTO TOGEL </a> 173 <a class="red-running-item" href="https://pjph.org/"> TOTO MACAU </a> 174 <a class="red-running-item" href="https://pjph.org/"> TOTO 4D </a> 175 <a class="red-running-item" href="https://pjph.org/"> SITUS TOTO TOGEL </a> 176 <a class="red-running-item" href="https://pjph.org/"> SITUS TOTO MACAU </a> 177 <a class="red-running-item" href="https://pjph.org/"> SITUS TOTO TOGEL4D </a> 178 </div> 179 </div> 180 </div> 181 <div class="overlay-nav"> 182 <!-- Mobile Close Button in Overlay --> 183 <button id="nav-close" class="nav-close-btn d-lg-none"> 184 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 185 <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> 186 </svg> 187 </button> 188 </div> 189 <!-- ========================================= 190 OVERLAY GAMBAR BERJATUHAN 191 PRIMATOTO + KOI GROUP 192========================================= --> 193 <!-- ========================================= 194 OVERLAY 195========================================= --> 196 <div class="falling-overlay"> 197 <!-- TEGER TERTA --> 198 <div class="falling-logo logo-1"></div> 199 <div class="falling-logo logo-2"></div> 200 <div class="falling-logo logo-3"></div> 201 <div class="falling-logo logo-4"></div> 202 <div class="falling-logo logo-5"></div> 203 <!-- KOI GROUP --> 204 <div class="falling-logo logo-6"></div> 205 <div class="falling-logo logo-7"></div> 206 <div class="falling-logo logo-8"></div> 207 <div class="falling-logo logo-9"></div> 208 <div class="falling-logo logo-10"></div> 209 </div> 210
210<script type="9f1692b8b70633eecdaf805b-text/javascript"> 211 if ($(window).width() < 992) { 212 // Level 1 menu accordion (main menu items) 213 $(".nav-menu .nav-menu container > a").click(function(e) { 214 e.preventDefault() 215 const parentLi = $(this).parent() 216 const isCurrentlyOpen = parentLi.hasClass("menu-open") 217 // Close all other open menus (accordion behavior) 218 $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open") 219 $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp() 220 // Toggle current menu 221 if (isCurrentlyOpen) { 222 parentLi.removeClass("menu-open") 223 $(this).next(".megamenu").slideUp() 224 } else { 225 parentLi.addClass("menu-open") 226 $(this).next(".megamenu").slideDown() 227 } 228 }) 229 // Level 2 menu accordion (submenu items with grandchildren) 230 $(document).on('click', '.dropdown-menu .has-submenu > a', function(e) { 231 e.preventDefault() 232 const parentLi = $(this).parent() 233 const isCurrentlyOpen = parentLi.hasClass("submenu-open") 234 const grandchild = $(this).next(".grandchild") 235 // Close all other open submenus in the same dropdown (accordion behavior) 236 parentLi.siblings('.has-submenu').removeClass("submenu-open") 237 parentLi.siblings('.has-submenu').find('.grandchild').slideUp() 238 parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)') 239 // Toggle current submenu 240 if (isCurrentlyOpen) { 241 parentLi.removeClass("submenu-open") 242 grandchild.slideUp() 243 $(this).find('.chevron-right').css('transform', 'rotate(0deg)') 244 } else { 245 parentLi.addClass("submenu-open") 246 grandchild.slideDown() 247 $(this).find('.chevron-right').css('transform', 'rotate(90deg)') 248 } 249 }) 250 $("#menu-hamburger").click(function(e) { 251 e.preventDefault() 252 $("body").toggleClass("nav_open") 253 }) 254 // Handle close button click 255 $("#nav-close").click(function(e) { 256 e.preventDefault() 257 $("body").removeClass("nav_open") 258 // Close all open menus when close button is clicked 259 $(".nav-menu .nav-menu container").removeClass("menu-open") 260 $(".nav-menu .megamenu").slideUp() 261 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 262 $(".dropdown-menu .grandchild").slideUp() 263 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 264 }) 265 } 266 $(".overlay-nav").click(function(e) { 267 e.preventDefault() 268 $("body").removeClass("nav_open") 269 // Close all open menus when overlay is clicked 270 $(".nav-menu .nav-menu container").removeClass("menu-open") 271 $(".nav-menu .megamenu").slideUp() 272 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 273 $(".dropdown-menu .grandchild").slideUp() 274 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 275 }) 276 </script>
276 277 </div> 278 <div id="shopify-section-search-popup" class="shopify-section m-0"> 279 <div id="search-popup"> 280 <div id="search-input" class="row"> 281 <div class="container w-100"> 282 <form action="/search" method="get" role="search" class="search search-modal__form d-flex justify-content-between"> 283 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="20" height="20" viewBox="0 0 20 20" fill="none"> 284 <path d="M18.7327 19.513L11.427 12.2073C10.8437 12.7043 10.1729 13.0889 9.41454 13.3612C8.65621 13.6334 7.89398 13.7695 7.12787 13.7695C5.25965 13.7695 3.67843 13.1228 2.3842 11.8293C1.08998 10.5359 0.442871 8.95505 0.442871 7.08683C0.442871 5.2186 1.0892 3.63699 2.38187 2.34199C3.67454 1.04699 5.25498 0.398714 7.12321 0.397159C8.99143 0.395603 10.5734 1.04271 11.8692 2.33849C13.165 3.63427 13.8129 5.21588 13.8129 7.08333C13.8129 7.89377 13.6694 8.67816 13.3824 9.43649C13.0954 10.1948 12.7182 10.8435 12.2507 11.3825L19.5564 18.687L18.7327 19.513ZM7.12904 12.6017C8.67682 12.6017 9.98348 12.0689 11.049 11.0033C12.1146 9.93777 12.6474 8.63071 12.6474 7.08216C12.6474 5.5336 12.1146 4.22694 11.049 3.16216C9.98348 2.09738 8.67682 1.5646 7.12904 1.56383C5.58126 1.56305 4.2742 2.09583 3.20787 3.16216C2.14154 4.22849 1.60876 5.53516 1.60954 7.08216C1.61032 8.62916 2.14309 9.93583 3.20787 11.0022C4.27265 12.0685 5.57932 12.6013 7.12787 12.6005" fill="#ffffff" /> 285 </svg> 286 <input type="hidden" name="type" value="product"> 287 <input type="text" id="search-type" name="q" class="search-popup" placeholder="Gifts that linger: Uncover treasures for cherished moments."> 288 <div class="close-search"> 289 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="18" height="18" viewBox="0 0 18 18" fill="none"> 290 <path d="M9 9.708L12.246 12.954C12.3393 13.0473 12.454 13.0973 12.59 13.104C12.726 13.1107 12.8473 13.0607 12.954 12.954C13.0607 12.8473 13.114 12.7293 13.114 12.6C13.114 12.4707 13.0607 12.3527 12.954 12.246L9.708 9L12.954 5.754C13.0473 5.66067 13.0973 5.546 13.104 5.41C13.1107 5.274 13.0607 5.15267 12.954 5.046C12.8473 4.93933 12.7293 4.886 12.6 4.886C12.4707 4.886 12.3527 4.93933 12.246 5.046L9 8.292L5.754 5.046C5.66067 4.95267 5.546 4.90267 5.41 4.896C5.274 4.88933 5.15267 4.93933 5.046 5.046C4.93933 5.15267 4.886 5.27067 4.886 5.4C4.886 5.52933 4.93933 5.64733 5.046 5.754L8.292 9L5.046 12.246C4.95267 12.3393 4.90267 12.4543 4.896 12.591C4.88933 12.7263 4.93933 12.8473 5.046 12.954C5.15267 13.0607 5.27067 13.114 5.4 13.114C5.52933 13.114 5.64733 13.0607 5.754 12.954L9 9.708ZM9.003 18C7.75833 18 6.58833 17.764 5.493 17.292C4.39767 16.8193 3.44467 16.178 2.634 15.368C1.82333 14.558 1.18167 13.606 0.709 12.512C0.236333 11.418 0 10.2483 0 9.003C0 7.75767 0.236333 6.58767 0.709 5.493C1.181 4.39767 1.82133 3.44467 2.63 2.634C3.43867 1.82333 4.391 1.18167 5.487 0.709C6.583 0.236333 7.753 0 8.997 0C10.241 0 11.411 0.236333 12.507 0.709C13.6023 1.181 14.5553 1.82167 15.366 2.631C16.1767 3.44033 16.8183 4.39267 17.291 5.488C17.7637 6.58333 18 7.753 18 8.997C18 10.241 17.764 11.411 17.292 12.507C16.82 13.603 16.1787 14.556 15.368 15.366C14.5573 16.176 13.6053 16.8177 12.512 17.291C11.4187 17.7643 10.249 18.0007 9.003 18ZM9 17C11.2333 17 13.125 16.225 14.675 14.675C16.225 13.125 17 11.2333 17 9C17 6.76667 16.225 4.875 14.675 3.325C13.125 1.775 11.2333 1 9 1C6.76667 1 4.875 1.775 3.325 3.325C1.775 4.875 1 6.76667 1 9C1 11.2333 1.775 13.125 3.325 14.675C4.875 16.225 6.76667 17 9 17Z" fill="#757575" /> 291 </svg> 292 </div> 293 <button id="search-btn">Search</button> 294 </form> 295 </div> 296 </div> 297 <div id="search-result" class="container m-auto"> 298 <div class="container p-0">
299 <div class="group-promotion"> 300 <div class="resultsearch"> 301 <div class="row results"> 302 <div class="col-12 col-lg-6 mb-3 mb-lg-0"> 303 <label>SUGGESTIONS</label> 304 <ul class="result_collection"></ul> 305 </div> 306 <div class="col-12 col-lg-6"> 307 <label>PRODUCTS</label> 308 <ul class="result_product"></ul> 309 </div> 310 </div> 311 <div class="d-flex justify-content-between moreresult m-0"> 312 <p>Search for <span></span> 313 </p> 314 <svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="32" height="32" viewBox="0 0 32 32"> 315 <title>icon-arrow-right</title> 316 <path d="M25.057 15.333l-6.862-6.862c-0.26-0.26-0.26-0.682 0-0.943s0.682-0.26 0.943 0l8 8c0.26 0.26 0.26 0.682 0 0.943l-8 8c-0.26 0.26-0.682 0.26-0.943 0s-0.26-0.682 0-0.943l6.862-6.862h-19.724c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h19.724z"></path> 317 </svg> 318 </div> 319 </div> 320 </div> 321 <div class="group-recent hide"> 322 <h3>RECENT SEARCH</h3> 323 <span class="delete-all-history">Hapus riwayat</span> 324 <ul class="last-search"></ul> 325 </div> 326 <div class="group-recommend"> 327 <h3>YOU MAY ALSO LIKE</h3> 328 <div class="row popup-recommend c-products-grid infinite-case product-multi-"> 329 <div class="swiper-wrapper justify-content-between" style="margin-left:1px;"> 330 <div class="swiper-slide card"> 331 <div class="products" data-lazy="false"> 332 <div class="bg-products"> 333 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake"> 334 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 335 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
33511233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 336 </svg> 337 </div> 338 <a href="/products/mid-autumn-of-love-mooncake"> 339 <div class="product-card-img-container p-0 position-relative"> 340 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Love-Mooncake_6b4cc10d-950d-4e1a-abf7-427b4a6912c8_350x.jpg?v=1755750898" data-src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Love-Mooncake_6b4cc10d-950d-4e1a-abf7-427b4a6912c8_350x.jpg?v=1755750898" alt="Mid Autumn of Love Mooncake" height="200" width="200"> 341 </div> 342 <div class="card-body product-card-info"> 343 <h5 class="h5 mb-0"> Mid Autumn of Love Mooncake </h5> 344 <div class="product-card-price"> 345 <div class="product-price-sale"> 346 <s class="product-card-price-before card-money">Rp 588.000</s> 347 <span class="product-card-discount small"> (-40%) </span> 348 </div> 349 <div class="price-discount"> 350 <h4 class="product-card-price-after card-money">Rp 348.000</h4> 351 </div> 352 </div> 353 </div> 354 </a> 355 </div> 356 </div> 357 </div> 358 <div class="swiper-slide card"> 359 <div class="products" data-lazy="false"> 360 <div class="bg-products"> 361 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake"> 362 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 363 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
36311233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 364 </svg> 365 </div> 366 <a href="/products/mid-autumn-of-joy-mooncake"> 367 <div class="product-card-img-container p-0 position-relative"> 368 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Joy-Mooncake_97224b06-a506-4a56-8544-59a0dccb5c17_350x.jpg?v=1755750798" data-src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Joy-Mooncake_97224b06-a506-4a56-8544-59a0dccb5c17_350x.jpg?v=1755750798" alt="Mid Autumn of Joy Mooncake" height="200" width="200"> 369 </div> 370 <div class="card-body product-card-info"> 371 <h5 class="h5 mb-0"> Mid Autumn of Joy Mooncake </h5> 372 <div class="product-card-price"> 373 <div class="product-price-sale"> 374 <s class="product-card-price-before card-money">Rp 888.000</s> 375 <span class="product-card-discount small"> (-33%) </span> 376 </div> 377 <div class="price-discount"> 378 <h4 class="product-card-price-after card-money">Rp 588.000</h4> 379 </div> 380 </div> 381 </div> 382 </a> 383 </div> 384 </div> 385 </div> 386 <div class="swiper-slide card"> 387 <div class="products" data-lazy="false"> 388 <div class="bg-products"> 389 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake"> 390 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 391 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
39111233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 392 </svg> 393 </div> 394 <a href="/products/mid-autumn-of-fortune-mooncake"> 395 <div class="product-card-img-container p-0 position-relative"> 396 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Fortune-Mooncake_de29329d-6ab7-4592-aa00-3e9636d4a323_350x.jpg?v=1755846072" data-src="//outerbloom.com/cdn/shop/files/Mid-Autumn-of-Fortune-Mooncake_de29329d-6ab7-4592-aa00-3e9636d4a323_350x.jpg?v=1755846072" alt="Mid Autumn of Fortune Mooncake" height="200" width="200"> 397 </div> 398 <div class="card-body product-card-info"> 399 <h5 class="h5 mb-0"> Mid Autumn of Fortune Mooncake </h5> 400 <div class="product-card-price"> 401 <div class="product-price-sale"> 402 <s class="product-card-price-before card-money">Rp 1.188.000</s> 403 <span class="product-card-discount small"> (-33%) </span> 404 </div> 405 <div class="price-discount"> 406 <h4 class="product-card-price-after card-money">Rp 788.000</h4> 407 </div> 408 </div> 409 </div> 410 </a> 411 </div> 412 </div> 413 </div> 414 <div class="swiper-slide card"> 415 <div class="products" data-lazy="false"> 416 <div class="bg-products"> 417 <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake"> 418 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 419 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
41911233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 420 </svg> 421 </div> 422 <a href="/products/mid-autumn-festival-mooncake"> 423 <div class="product-card-img-container p-0 position-relative"> 424 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Mid-Autumn-Festival-Mooncake_06ea4f9c-bdaa-49de-b0ba-c3dd60fef351_350x.jpg?v=1755845965" data-src="//outerbloom.com/cdn/shop/files/Mid-Autumn-Festival-Mooncake_06ea4f9c-bdaa-49de-b0ba-c3dd60fef351_350x.jpg?v=1755845965" alt="Mid Autumn Festival Mooncake" height="200" width="200"> 425 </div> 426 <div class="card-body product-card-info"> 427 <h5 class="h5 mb-0"> Mid Autumn Festival Mooncake </h5> 428 <div class="product-card-price"> 429 <div class="product-price-sale"> 430 <s class="product-card-price-before card-money">Rp 1.288.000</s> 431 <span class="product-card-discount small"> (-23%) </span> 432 </div> 433 <div class="price-discount"> 434 <h4 class="product-card-price-after card-money">Rp 988.000</h4> 435 </div> 436 </div> 437 </div> 438 </a> 439 </div> 440 </div> 441 </div> 442 <div class="swiper-slide card"> 443 <div class="products" data-lazy="false"> 444 <div class="bg-products"> 445 <div class="wishlist-toggle" data-product-handle="the-jade-bouquet"> 446 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 447 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
44711233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 448 </svg> 449 </div> 450 <a href="/products/the-jade-bouquet"> 451 <div class="product-card-img-container p-0 position-relative"> 452 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/The-Jade-Bouquet_350x.jpg?v=1751618030" data-src="//outerbloom.com/cdn/shop/files/The-Jade-Bouquet_350x.jpg?v=1751618030" alt="The Jade Bouquet" height="200" width="200"> 453 </div> 454 <div class="card-body product-card-info"> 455 <h5 class="h5 mb-0"> The Jade Bouquet </h5> 456 <div class="product-card-price"> 457 <div class="product-price-sale"> 458 <s class="product-card-price-before card-money">Rp 435.000</s> 459 <span class="product-card-discount small"> (-34%) </span> 460 </div> 461 <div class="price-discount"> 462 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 463 </div> 464 </div> 465 </div> 466 </a> 467 </div> 468 </div> 469 </div> 470 <div class="swiper-slide card"> 471 <div class="products" data-lazy="false"> 472 <div class="bg-products"> 473 <div class="wishlist-toggle" data-product-handle="the-selena-bouquet"> 474 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 475 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
47511233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 476 </svg> 477 </div> 478 <a href="/products/the-selena-bouquet"> 479 <div class="product-card-img-container p-0 position-relative"> 480 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/The-Selena-Bouquet_350x.jpg?v=1751618047" data-src="//outerbloom.com/cdn/shop/files/The-Selena-Bouquet_350x.jpg?v=1751618047" alt="The Selena Bouquet" height="200" width="200"> 481 </div> 482 <div class="card-body product-card-info"> 483 <h5 class="h5 mb-0"> The Selena Bouquet </h5> 484 <div class="product-card-price"> 485 <div class="product-price-sale"> 486 <s class="product-card-price-before card-money">Rp 335.000</s> 487 <span class="product-card-discount small"> (-29%) </span> 488 </div> 489 <div class="price-discount"> 490 <h4 class="product-card-price-after card-money">Rp 235.000</h4> 491 </div> 492 </div> 493 </div> 494 </a> 495 </div> 496 </div> 497 </div> 498 <div class="swiper-slide card"> 499 <div class="products" data-lazy="false"> 500 <div class="bg-products"> 501 <div class="wishlist-toggle" data-product-handle="the-viola-bouquet"> 502 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 503 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
50311233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 504 </svg> 505 </div> 506 <a href="/products/the-viola-bouquet"> 507 <div class="product-card-img-container p-0 position-relative"> 508 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/The-Viola-Bouquet_350x.jpg?v=1751618053" data-src="//outerbloom.com/cdn/shop/files/The-Viola-Bouquet_350x.jpg?v=1751618053" alt="A striking bouquet featuring full pink chrysanthemums and delicate purple asters. It is elegantly wrapped in deep purple paper with a modern black and white striped accent at the base. The arrangement is tied with a pink ribbon bow, creating a full, rounded shape. This sophisticated bouquet is perfect for birthdays, anniversaries, or as a thoughtful thank-you gesture." height="200" width="200"> 509 </div> 510 <div class="card-body product-card-info"> 511 <h5 class="h5 mb-0"> The Viola Bouquet </h5> 512 <div class="product-card-price"> 513 <div class="product-price-sale"> 514 <s class="product-card-price-before card-money">Rp 385.000</s> 515 <span class="product-card-discount small"> (-25%) </span> 516 </div> 517 <div class="price-discount"> 518 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 519 </div> 520 </div> 521 </div> 522 </a> 523 </div> 524 </div> 525 </div> 526 <div class="swiper-slide card"> 527 <div class="products" data-lazy="false"> 528 <div class="bg-products"> 529 <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet"> 530 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 531 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
53111233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 532 </svg> 533 </div> 534 <a href="/products/the-minerva-bouquet"> 535 <div class="product-card-img-container p-0 position-relative"> 536 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/The-Minerva-Bouquet_350x.jpg?v=1751618061" data-src="//outerbloom.com/cdn/shop/files/The-Minerva-Bouquet_350x.jpg?v=1751618061" alt="The Minerva Bouquet" height="200" width="200"> 537 </div> 538 <div class="card-body product-card-info"> 539 <h5 class="h5 mb-0"> The Minerva Bouquet </h5> 540 <div class="product-card-price"> 541 <div class="product-price-sale"> 542 <s class="product-card-price-before card-money">Rp 385.000</s> 543 <span class="product-card-discount small"> (-25%) </span> 544 </div> 545 <div class="price-discount"> 546 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 547 </div> 548 </div> 549 </div> 550 </a> 551 </div> 552 </div> 553 </div> 554 <div class="swiper-slide card"> 555 <div class="products" data-lazy="false"> 556 <div class="bg-products"> 557 <div class="wishlist-toggle" data-product-handle="congraduations-bouquet"> 558 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 559 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
55911233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 560 </svg> 561 </div> 562 <a href="/products/congraduations-bouquet"> 563 <div class="product-card-img-container p-0 position-relative"> 564 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Congraduations-Bouquet_350x.jpg?v=1749545306" data-src="//outerbloom.com/cdn/shop/files/Congraduations-Bouquet_350x.jpg?v=1749545306" alt="Congraduations Bouquet" height="200" width="200"> 565 </div> 566 <div class="card-body product-card-info"> 567 <h5 class="h5 mb-0"> Congraduations Bouquet </h5> 568 <div class="product-card-price"> 569 <div class="product-price-sale"> 570 <s class="product-card-price-before card-money">Rp 380.000</s> 571 <span class="product-card-discount small"> (-25%) </span> 572 </div> 573 <div class="price-discount"> 574 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 575 </div> 576 </div> 577 </div> 578 </a> 579 </div> 580 </div> 581 </div> 582 <div class="swiper-slide card"> 583 <div class="products" data-lazy="false"> 584 <div class="bg-products"> 585 <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet"> 586 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="21" viewBox="0 0 24 21" fill="none"> 587 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.0726 20.9375 12.144 20.9195 12.2078 20.885C14.2538 19.7342 16.1841 18.3889 17.9719 16.8677C21.8438 13.5514 23.8125 10.2833 23.8125 7.15625C23.8105 5.47441 23.1415 3.86202 21.9522 2.67278C20.763 1.48353 19.1506 0.814526 17.4688 0.8125ZM12 19.9991C10.4688 19.1241 1.0625 13.5077 1.0625 7.15625C1.06424 5.70638 1.64096 4.31639 2.66618 3.29118C3.69139 2.26596 5.08138 1.68924 6.53125 1.6875C8.84016 1.6875 10.7805 2.92453 11.5953 4.91516C11.6283 4.9954 11.6843 5.06403 11.7564 5.
58711233C11.8285 5.16063 11.9133 5.18642 12 5.18642C12.0867 5.18642 12.1715 5.16063 12.2436 5.11233C12.3157 5.06403 12.3717 4.9954 12.4047 4.91516C13.2195 2.92453 15.1598 1.6875 17.4688 1.6875C18.9186 1.68924 20.3086 2.26596 21.3338 3.29118C22.359 4.31639 22.9358 5.70638 22.9375 7.15625C22.9375 13.5 13.5312 19.1284 12 19.9991Z" fill="#ffffff" /> 588 </svg> 589 </div> 590 <a href="/products/grad-gorgeous-bouquet"> 591 <div class="product-card-img-container p-0 position-relative"> 592 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Grad-_-Gorgeous-Bouquet_350x.jpg?v=1749545297" data-src="//outerbloom.com/cdn/shop/files/Grad-_-Gorgeous-Bouquet_350x.jpg?v=1749545297" alt="Grad & Gorgeous Bouquet" height="200" width="200"> 593 </div> 594 <div class="card-body product-card-info"> 595 <h5 class="h5 mb-0">
595 Grad & Gorgeous Bouquet </h5> 596 <div class="product-card-price"> 597 <div class="product-price-sale"> 598 <s class="product-card-price-before card-money">Rp 380.000</s> 599 <span class="product-card-discount small"> (-25%) </span> 600 </div> 601 <div class="price-discount"> 602 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 603 </div> 604 </div> 605 </div> 606 </a> 607 </div> 608 </div> 609 </div> 610 </div> 611 </div> 612 </div> 613 </div> 614 </div> 615 <div class="site-overlay" style="display: none"></div> 616 </div> 617
617<script type="9f1692b8b70633eecdaf805b-text/javascript"> 618 var swiper = new Swiper('.popup-recommend', { 619 slidesPerView: 4, 620 spaceBetween: 30, 621 lazy: true, 622 speed: 300, 623 breakpoints: { 624 // when window width is <= 576px 625 576: { 626 slidesPerView: 2, 627 spaceBetween: 10, 628 freeMode: true, 629 resistance: true, 630 resistanceRatio: 0, 631 freeModeMomentumRatio: 0.45, 632 freeModeMomentumVelocityRatio: 1.5 633 }, 634 768: { 635 slidesPerView: 2, 636 spaceBetween: 10 637 }, 638 992: { 639 slidesPerView: 3, 640 spaceBetween: 20 641 } 642 } 643 }); 644 const searchContainer = $("#search-popup") 645 const searchInput = $(".search-popup") 646 const result_collection = $('.result_collection') 647 const result_product = $('.result_product') 648 const resultsearch = $('.resultsearch') 649 const resultrecommend = $(".group-recommend") 650 const moreresult = $(".moreresult") 651 searchInput.keyup(function() { 652 const input = $(this).val() 653 moreresult.find("p span").text(` â${input}â`) 654 if (input.length > 2) { 655 $(".close-search").show() 656 const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}` 657 $.ajax({
658 type: 'GET', 659 url, 660 beforeSend: function() { 661 // setting a timeout 662 // $(placeholder).addClass('loading'); 663 }, 664 success: function(response) { 665 resultsearch.show() 666 resultrecommend.hide() 667 result_collection.html("") 668 result_product.html("") 669 const collections = response.resources.results.collections 670 const products = response.resources.results.products 671 let collection_length = collections.length 672 let product_length = products.length 673 // if(collections.length > 5) { 674 // collection_length = 5 675 // } 676 // if(products.length > 5) { 677 // product_length = 5 678 // } 679 for (let i = 0; i < collection_length; i++) { 680 const title = collections[i].title 681 const url = collections[i].url 682 let html_collection 683 if (!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) { 684 html_collection = ` 685 686 <li class="item" data-title="${title}"> 687 <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a> 688 </li> 689 ` 690 } 691 result_collection.append(html_collection) 692 } 693 for (let i = 0; i < product_length; i++) { 694 const title = products[i].title 695 const url = products[i].url 696 const image = products[i].featured_image.url 697 const vendor = products[i].vendor 698 let html_product 699 if (vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')) { 700 html_product = ` 701 702 <li class="item" data-vendor="${vendor}"> 703 <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}"> 704 <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"> 705 <span>${title}</span> 706 </a> 707 </li> 708 ` 709 } 710 result_product.append(html_product) 711 } 712 }, 713 error: function(xhr) { // if error occured 714 alert("Error occured.please try again"); 715 }, 716 complete: function(response) { 717 // $(placeholder).removeClass('loading'); 718 }, 719 dataType: 'JSON' 720 }); 721 } else { 722 result_collection.html("") 723 result_product.html("") 724 resultsearch.hide() 725 resultrecommend.show() 726 } 727 }) 728 moreresult.click(function() { 729 $("#search-btn").trigger("click"); 730 }) 731 $(".close-search").click(function() { 732 $(this).hide() 733 searchInput.val("") 734 searchInput.focus() 735 resultsearch.hide() 736 resultrecommend.show() 737 }) 738 739 function setCookie(name, value, days) { 740 var expires = ""; 741 if (days) { 742 var date = new Date(); 743 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 744 expires = "; expires=" + date.toUTCString(); 745 } 746 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 747 } 748 749 function getCookie(name) { 750 var nameEQ = name + "="; 751 var ca = document.cookie.split(';'); 752 for (var i = 0; i < ca.length; i++) { 753 var c = ca[i]; 754 while (c.charAt(0) == ' ') c = c.substring(1, c.length); 755 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); 756 } 757 return null; 758 } 759 let last_search_name = [] 760 let last_search_url = [] 761 $(".group-recent").hide() 762 if (getCookie("last_search_name") != null && getCookie("last_search_url") != null) { 763 if (getCookie("last_search_name") != "" && getCookie("last_search_url") != "") { 764 $(".group-recent").show() 765 last_search_name = getCookie("last_search_name"); 766 last_search_url = getCookie("last_search_url"); 767 const arrName = last_search_name.substring(1).split(',').reverse() 768 const arrUrl = last_search_url.substring(1).split(',').reverse() 769 console.log(arrName, 'Array Name') 770 console.log(arrUrl, 'Array Url') 771 let length = arrName.length 772 if (arrName.length > 5) { 773 length = 5 774 } 775 for (let n = 0; n < length; n++) { 776 let html2 = ` 777 <li> 778 <svg viewBox="0 0 24 24" 779 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 780 <title/> 781 <path d="M12.25,2A9.81,9.81,0,0,0,4.77,5.46L3.41,4.25a1,1,0,0,0-1.07-.16A1,1,0,0,0,1.75,5V9a1,1,0,0,0,1,1h4.5a1,1,0,0,0,.93-.64,1,1,0,0,0-.27-1.11L6.26,6.78a7.86,7.86,0,0,1,6-2.78A8,8,0,1,1,4.72,14.67a1,1,0,0,0-1.89.66A10,10,0,1,0,12.25,2Z" fill="#C9C9C9"/> 782 <path d="M16,16a1,1,0,0,1-.6-.2l-4-3A1,1,0,0,1,11,12V8a1,1,0,0,1,2,0v3.5l3.6,2.7a1,1,0,0,1,.2,1.4A1,1,0,0,1,16,16Z" fill="#C9C9C9"/> 783 </svg> 784 <a href="${arrUrl[n]}">
784${arrName[n]}</a> 785 <span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span> 786 </li>` 787 $(".group-recent ul").append(html2) 788 } 789 } 790 } 791 console.log(last_search_name, 'Name') 792 console.log(last_search_url, 'url') 793 resultsearch.delegate(".item a", "click", function() { 794 let name = [last_search_name] 795 let url = [last_search_url] 796 name.push($(this).attr('data-title')) 797 url.push($(this).attr('data-url')) 798 setCookie("last_search_name", name, 7); 799 setCookie("last_search_url", url, 7); 800 }) 801 $(".delete-all-history").click(function() { 802 setCookie("last_search_name", null, 0); 803 setCookie("last_search_url", null, 0); 804 $(".last-search").hide(); 805 setTimeout(function() { 806 location.reload(); 807 }, 500); 808 }) 809 $("#search-trigger").click(function() { 810 search_open() 811 }) 812 $(".icon-search-mobile").click(function() { 813 search_open() 814 }) 815 $(".search-header svg").click(function() { 816 search_close() 817 }) 818 $(".icon-key-mobile").click(function() { 819 search_close() 820 }) 821 822 function search_open() { 823 $("body").addClass("search-popup-open") 824 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide() 825 $("#search-popup, .search-header svg, .icon-key-mobile").show() 826 $(".search-popup").focus() 827 $('.popup-recommend')[0].swiper.update(); 828 } 829 830 function search_close() { 831 $("body").removeClass("search-popup-open") 832 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show() 833 $("#search-popup, .search-header svg, .icon-key-mobile").hide() 834 searchInput.val("") 835 resultsearch.hide() 836 resultrecommend.show() 837 } 838 $(".site-overlay").click(function() { 839 search_close() 840 }) 841 </script>
841 842 </div> 843 </div> 844 <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #000000;"> 845 <main class="main-content pt-0" role="main"> 846 <div id="breadcrumbProduct" class="d-none d-lg-block"> 847 <style>#breadcrumbProduct{padding:20px 0}#breadcrumbProduct ul{display:flex;padding:0;list-style:none;margin:0;gap:12px}#breadcrumbProduct ul li{text-transform:uppercase;margin:0;font-size:12px}#breadcrumbProduct ul li a{color:#757575}#breadcrumbProduct ul li svg{width:10px;height:10px;padding:0;color:#757575;vertical-align:middle}</style> 848 <div class="container" style="color: #ffffff;"> 849 <ul role="navigation" aria-label="breadcrumbs"> 850 <li> 851 <a href="https://pjph.org/" style="color: #ffffff;">PRIMATOTO</a> 852 </li> 853 <li> 854 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="7" height="10" viewBox="0 0 7 10" fill="none"> 855 <path d="M1.51673 0.0583496L6.2334 4.77502L1.51673 9.49168L0.933398 8.90002L5.0584 4.77502L0.933398 0.650016L1.51673 0.0583496Z" fill="#757575" /> 856 </svg> 857 </li> 858 <li>Situs Toto</li> 859 <li>Toto Togel</li> 860 <li>TOTO MACAU</li> 861 <li>TOTO 4D</li> 862 <li>PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026</li> 863 </ul> 864 </div> 865 </div> 866 867
867<script type="application/ld+json"> 868 { 869 "@context": "https://schema.org", 870 "@type": "Product", 871 "name": "PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026", 872 "image": "https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE", 873 "description": "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari", 874 "brand": { 875 "@type": "Brand", 876 "name": "PRIMATOTO" 877 }, 878 "sku": "PRIMATOTO", 879 "mpn": "PRIMATOTO", 880 "url": "https://pjph.org/", 881 "offers": { 882 "@type": "Offer", 883 "url": "https://pjph.org/", 884 "priceCurrency": "USD", 885 "price": "10.00", 886 "priceValidUntil": "2027-12-25", 887 "itemCondition": "https://schema.org/NewCondition", 888 "availability": "https://schema.org/InStock", 889 "seller": { 890 "@type": "Organization", 891 "name": "PRIMATOTO" 892 } 893 }, 894 "aggregateRating": { 895 "@type": "AggregateRating", 896 "ratingValue": "5.0", 897 "reviewCount": 858 898 }, 899 "review": [ 900 { 901 "@type": "Review", 902 "reviewRating": { 903 "@type": "Rating", 904 "ratingValue": "5", 905 "bestRating": "5" 906 }, 907 "author": { 908 "@type": "Person", 909 "name": "Slamet Haryono" 910 } 911 }, 912 { 913 "@type": "Review", 914 "reviewRating": { 915 "@type": "Rating", 916 "ratingValue": "5", 917 "bestRating": "5" 918 }, 919 "author": { 920 "@type": "Person", 921 "name": "Dwi Kurniawan" 922 } 923 } 924 ] 925 } 926 </script>
926 927
927<script type="application/ld+json"> 928 { 929 "@context": "https://schema.org", 930 "@type": "BreadcrumbList", 931 "itemListElement": [ 932 { 933 "@type": "ListItem", 934 "position": 1, 935 "name": "PRIMATOTO", 936 "item": "https://pjph.org/" 937 }, 938 { 939 "@type": "ListItem", 940 "position": 2, 941 "name": "SITUS PRIMATOTO", 942 "item": "https://pjph.org/" 943 }, 944 { 945 "@type": "ListItem", 946 "position": 3, 947 "name": "SITUS TOTO 4D", 948 "item": "https://pjph.org/" 949 }, 950 { 951 "@type": "ListItem", 952 "position": 4, 953 "name": "LOGIN PRIMATOTO", 954 "item": "https://pjph.org/" 955 }, 956 { 957 "@type": "ListItem", 958 "position": 5, 959 "name": "TOTO 4D", 960 "item": "https://pjph.org/" 961 }, 962 { 963 "@type": "ListItem", 964 "position": 6, 965 "name": "PRIMATOTO", 966 "item": "https://pjph.org/" 967 }, 968 { 969 "@type": "ListItem", 970 "position": 7, 971 "name": "PRIMATOTO", 972 "item": "https://pjph.org/" 973 }, 974 { 975 "@type": "ListItem", 976 "position": 8, 977 "name": "PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026", 978 "item": "https://pjph.org/" 979 } 980 ] 981 } 982 </script>
982 983 984 <!--faq--> 985 986
986<script type="application/ld+json" id="faq-schema"> 987 [ 988 { 989 "question": "Apa itu Primatoto?", 990 "answer": "Primatoto adalah situs toto 4D terpercaya yang memberikan akses istimewa untuk para pemain. Primatoto menyediakan berbagai pasaran togel resmi, game toto slot togel unggulan, serta bocoran prediksi angka Toto Macau paling jitu tahun 2026." 991 }, 992 { 993 "question": "Mengapa harus memilih Primatoto sebagai situs toto 4D terpercaya di tahun 2026?", 994 "answer": "Sebagai situs toto 4D terdepan, Primatoto menawarkan jaminan taruhan aman, layanan transaksi cepat 24 jam, sistem keamanan canggih, serta peluang jackpot harian yang tinggi bagi seluruh membernya." 995 }, 996 { 997 "question": "Bagaimana cara mendapatkan bocoran prediksi angka Toto Macau paling jitu di Primatoto?", 998 "answer": "Member Primatoto bisa mengakses halaman prediksi angka Toto Macau yang diperbarui setiap hari. Prediksi ini diolah secara akurat dan lengkap untuk membantu memaksimalkan peluang menang dan meraih jackpot." 999 }, 1000 { 1001 "question": "Apakah Primatoto menyediakan permainan toto slot togel?", 1002 "answer": "Ya, Primatoto menghadirkan variasi permainan toto slot togel terlengkap dengan kemudahan akses dan RTP tinggi, memberikan pengalaman bertaruh yang bervariasi selain pasaran togel 4D." 1003 }, 1004 { 1005 "question": "Bagaimana jaminan keamanan taruhan di Primatoto?", 1006 "answer": "Primatoto mengutamakan keamanan dan kenyamanan member dengan enkripsi data terbaik untuk menjamin taruhan aman, pembayaran kemenangan tepat waktu, dan keutahuan data pribadi yang terjaga." 1007 }, 1008 { 1009 "question": "Apakah ada peluang meraih jackpot setiap hari di Primatoto?", 1010 "answer": "Tentu saja. Dengan mengombinasikan prediksi angka Toto Macau yang akurat serta memilih variasi permainan toto slot togel terbaik, peluang Anda meraih jackpot harian di Primatoto menjadi jauh lebih besar." 1011 }, 1012 { 1013 "question": "Bagaimana cara mendaftar akun di situs Primatoto?", 1014 "answer": "Proses pendaftaran di Primatoto sangat cepat dan mudah. Anda cukup mengakses link resmi situs toto 4D Primatoto, klik menu Daftar, lalu isi formulir pendaftaran dengan data yang valid." 1015 }, 1016 { 1017 "question": "Metode pembayaran apa saja yang disediakan oleh Primatoto?", 1018 "answer": "Primatoto menyediakan berbagai kemudahan transaksi, mulai dari transfer bank lokal utama, e-wallet (DANA, OVO, GoPay, LinkAja), hingga deposit pulsa tanpa potongan yang fleksibel." 1019 }, 1020 { 1021 "question": "Apakah layanan customer service Primatoto beroperasi 24 jam?", 1022 "answer": "Ya, layanan customer service Primatoto selalu aktif 24/7 non-stop melalui Live Chat dan WhatsApp untuk membantu Anda jika mengalami kendala transaksi atau pertanyaan seputar permainan." 1023 }, 1024 { 1025 "question": "Berapa minimal deposit untuk mulai bermain di Primatoto?", 1026 "answer": "Minimal deposit di Primatoto sangat terjangkau, sehingga memungkinkan semua pemain untuk mencoba keberuntungan pada taruhan situs toto 4D maupun game toto slot togel kesayangan mereka." 1027 } 1028] 1029</script>
1029 1030
1030<script type="application/ld+json"> 1031 { 1032 "@context": "https://schema.org", 1033 "@type": "Organization", 1034 "name": "PRIMATOTO", 1035 "url": "https://pjph.org/", 1036 "logo": "https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101", 1037 "sameAs": [ 1038 "https://www.facebook.com/PRIMATOTO", 1039 "https://twitter.com/PRIMATOTO", 1040 "https://www.instagram.com/PRIMATOTO" 1041 ], 1042 "contactPoint": { 1043 "@type": "ContactPoint", 1044 "telephone": "+62-899-4000-7788", 1045 "contactType": "customer support", 1046 "areaServed": "ID", 1047 "availableLanguage": ["Indonesian", "English"] 1048 } 1049 } 1050 </script>
1050 1051 1052
1052<script type="application/ld+json"> 1053{ 1054 "@context": "https://schema.org", 1055 "@type": "VideoObject", 1056 "name": "PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026", 1057 "description": "PRIMATOTO menyediakan akses login situs SITUS TOTO 4D terpercaya yaitu PRIMATOTO sebagai bandar TOTO MACAU keluaran 4 angka resmi termasuk HK Macau dengan layanan transparan dan prioritas no 1 di akhir 2026.", 1058 "thumbnailUrl": [ 1059 "https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" 1060 ], 1061 "uploadDate": "2026-09-09T04:09:09+07:00", 1062 "duration": "PT3M10S", 1063 "contentUrl": "https://pjph.org/" 1064} 1065</script>
1065 1066 1067
1067<script type="application/ld+json"> 1068 { 1069 "@context": "https://schema.org", 1070 "@graph": [ 1071 { 1072 "@type": "Organization", 1073 "@id": "https://pjph.org/#org", 1074 "name": "PRIMATOTO", 1075 "url": "https://pjph.org/", 1076 "logo": "https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" 1077 }, 1078 { 1079 "@type": "WebSite", 1080 "@id": "https://pjph.org/#website", 1081 "url": "https://pjph.org/", 1082 "name": "PRIMATOTO", 1083 "publisher": { "@id": "https://pjph.org/#org" }, 1084 "inLanguage": "id-ID", 1085 "potentialAction": { 1086 "@type": "SearchAction", 1087 "target": "https://pjph.org/?s={search_term_string}", 1088 "query-input": "required name=search_term_string" 1089 } 1090 }, 1091 { 1092 "@type": "SoftwareApplication", 1093 "@id": "https://pjph.org/#app", 1094 "name": "PRIMATOTO", 1095 "applicationCategory": "GameApplication", 1096 "operatingSystem": "Android, iOS, Windows", 1097 "offers": { "@type": "Offer", "price": "0", "priceCurrency": "IDR" }, 1098 "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.9, "ratingCount": 62595 } 1099 } 1100 ] 1101 } 1102 </script>
1102 1103 1104 <div id="shopify-section-Product" class="shopify-section product-section mt-0"> 1105 <!-- /templates/product.liquid --> 1106 <!-- <div itemscope itemtype="http://schema.org/Product"> --> 1107 <div class="product-standing-flower" data-product-type="flowerBoard"> 1108 <meta itemprop="url" content="https://pjph.org/"> 1109 <meta itemprop="image" content="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 1110 <input id="data-sku" type="hidden" value="GOJSTRU2598"> 1111 <div class="product-single" style="background-image: url(https://member.pjphorg.works/image/toto-4d.jpg); background-attachment: fixed;"> 1112 <div id="product-top" class="container"> 1113 <div class="row bg-card product-sticky" style="background-color: rgba(0, 0, 0, 0.1);backdrop-filter: blur(25px); padding: 20px 25px;border-radius: 10px;"> 1114 <div id="product-image" class="col-lg-7 text-center"> 1115 <div class="product-image"> 1116 <div class="row no-gutters"> 1117 <div id="product-featured-image" class="row w-100"> 1118 <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block"> 1119 <div class="swiper-container gallery-thumbs" style="min-height: 500px"> 1120 <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx"> 1121 <li class="swiper-slide" data-type="image"> 1122 <a href="files/Blossom-Shine-WM.jpg" data-standard="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-image="files/Blossom-Shine-WM.jpg" data-position="1" class="product-single__thumbnail"> 1123 <img class="lazyload w-100" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" width="" height=""> 1124 </a> 1125 </li> 1126 <li class="swiper-slide" data-type="image"> 1127 <a href="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-standard="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-image="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-position="2" class="product-single__thumbnail"> 1128 <img class="lazyload w-100" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" width="" height=""> 1129 </a> 1130 </li> 1131 <li class="swiper-slide" data-type="image"> 1132 <a href="files/Blossom-Shine_3-WM.jpg" data-standard="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-image="files/Blossom-Shine_3-WM.jpg" data-position="3" class="product-single__thumbnail"> 1133 <img class="lazyload w-100" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" width="" height=""> 1134 </a> 1135 </li> 1136 <li class="swiper-slide" data-type="image"> 1137 <a href="files/Blossom-Shine_4.jpg" data-standard="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-image="files/Blossom-Shine_4.jpg" data-position="4" class="product-single__thumbnail"> 1138 <img class="lazyload w-100" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" width="" height=""> 1139 </a> 1140 </li> 1141 </ul> 1142 </div> 1143 </div> 1144 <div id="featured-image-product" class="col-lg-10 col-12 d-none d-lg-block"> 1145 <div class="swiper-container gallery-top"> 1146 <div class="swiper-slide product-single__image"> 1147 <div class="product-single__photos slider slider-for" id="ProductPhoto"> 1148 <div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails">
1149 <a href="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 1150 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" id="ProductPhotoImg" class="lazyload"> 1151 </a> 1152 </div> 1153 </div> 1154 </div> 1155 <div class="swiper-slide product-single__video" style="display: none"> 1156 <video src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4" playsinline loop muted></video> 1157 </div> 1158 </div> 1159 </div> 1160 </div> 1161 <div id="featured-image-product2" class="col-12 d-lg-none"> 1162 <div class="swiper-container gallery-mobile"> 1163 <ul class="swiper-wrapper"> 1164 <li class="swiper-slide img"> 1165 <img class="swiper-lazy" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" width="" height=""> 1166 </li> 1167 <li class="swiper-slide img"> 1168 <img class="swiper-lazy" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" width="" height=""> 1169 </li> 1170 <li class="swiper-slide img"> 1171 <img class="swiper-lazy" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" width="" height=""> 1172 </li> 1173 <li class="swiper-slide img"> 1174 <img class="swiper-lazy" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" data-src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE" alt="PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026" width="" height=""> 1175 </li> 1176 </ul> 1177 <div class="swiper-button-prev"> 1178 <svg class="icon icon-chevron-left" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="7" height="12" viewBox="0 0 7 12"> 1179 <circle cx="60%" cy="50%" r="12" fill="transparent" /> 1180 <path d="M6.35355339,10.6464466 C6.54881554,10.8417088 6.54881554,11.1582912 6.35355339,11.3535534 C6.15829124,11.5488155 5.84170876,11.5488155 5.64644661,11.3535534 L0.646446609,6.35355339 C0.451184464,6.15829124 0.451184464,5.84170876 0.646446609,5.64644661 L5.64644661,0.646446609 C5.84170876,0.451184464 6.15829124,0.451184464 6.35355339,0.646446609 C6.54881554,0.841708755 6.54881554,1.15829124 6.35355339,1.35355339 L1.70710678,6 L6.35355339,10.6464466 Z" /> 1181 </svg> 1182 </div> 1183 <div class="swiper-button-next"> 1184 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="7" height="10" viewB
1184ox="0 0 7 10" fill="none"> 1185 <path d="M1.51673 0.0583496L6.2334 4.77502L1.51673 9.49168L0.933398 8.90002L5.0584 4.77502L0.933398 0.650016L1.51673 0.0583496Z" fill="#757575" /> 1186 </svg> 1187 </div> 1188 <!-- Add Pagination --> 1189 <div class="swiper-pagination"></div> 1190 </div> 1191 </div> 1192 1193 <div class="product-m-pageleb-video col-12 text-center d-lg-none"> 1194 <!-- product video --> 1195 </div> 1196 </div> 1197 <div class="product-desc-add position-relative d-none d-lg-block m-0"></div> 1198
1198<script type="9f1692b8b70633eecdaf805b-text/javascript"> 1199 if ($(window).width() < 991) { 1200 var direction = 'horizontal' 1201 } else { 1202 var direction = 'vertical' 1203 $(".gallery-thumbs").height($("#ProductPhotoImg").height()) 1204 } 1205 var swiper = new Swiper('.gallery-thumbs', { 1206 1207 direction, 1208 slidesPerView: 4.5, 1209 spaceBetween: 12, 1210 navigation: { 1211 nextEl: '.swiper-button-next', 1212 prevEl: '.swiper-button-prev', 1213 } 1214 }); 1215 1216 var swiper = new Swiper('.gallery-mobile', { 1217 //loop: true, 1218 lazy: true, 1219 speed: 300, 1220 resistance : true, 1221 resistanceRatio : 0, 1222 freeModeMomentumRatio : 0.45, 1223 freeModeMomentumVelocityRatio : 1.5, 1224 navigation: { 1225 nextEl: '.swiper-button-next', 1226 prevEl: '.swiper-button-prev', 1227 }, 1228 pagination: { 1229 el: '.swiper-pagination' 1230 }, 1231 useCSS3Transforms: false, 1232 loop: false, 1233 on: { 1234 init: function () { 1235 console.log('swiper initialized'); 1236 var currentVideo = $("[data-swiper-slide-index=" + this.realIndex + "]").find("video"); 1237 currentVideo.trigger('play'); 1238 }, 1239 }, 1240 }); 1241 1242 /* GET ALL VIDEOS */ 1243 var sliderVideos = $(".swiper-slide video"); 1244 1245 /* SWIPER API - Event will be fired after animation to other slide (next or previous) */ 1246 swiper.on('slideChange', function () { 1247 console.log('slide changed'); 1248 /* stop all videos */ 1249 sliderVideos.each(function( index ) { 1250 this.currentTime = 0; 1251 }); 1252 1253 /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */ 1254 var prevVideo = $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video"); 1255 var currentVideo = $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video"); 1256 prevVideo.trigger('stop'); 1257 currentVideo.trigger('play'); 1258 }); 1259 1260 1261 $("[data-video]").click(function(){ 1262 const file = $(this).data("video") 1263 $(".product-single__video").show() 1264 $(".product-single__image").hide() 1265 $(".product-single__video").find("video").attr("src", file) 1266 $(".product-single__video").find("video")[0].play(); 1267 }) 1268 $("[data-image]").click(function(){ 1269 $(".product-single__video").hide() 1270 $(".product-single__image").show() 1271 $(".product-single__video").find("video")[0].pause(); 1272 }) 1273 1274 $("#product-image .swiper-slide").each(function(){ 1275 let width = $(this).width() 1276 $(this).height(width) 1277 }) 1278 1279 $(window).resize(function() { 1280 $("#product-image .swiper-slide").each(function(){ 1281 let width = $(this).width() 1282 $(this).height(width) 1283 }) 1284 }) 1285 </script>
1285 1286 1287 </div> 1288 1289
1289<script type="9f1692b8b70633eecdaf805b-text/javascript"> 1290 $(document).ready(function(){ 1291 if ( $(".c-pdp-product-info__service li").length == 1 ) { 1292 $(".c-pdp-product-info__service").addClass("no-bullet"); 1293 $(".c-pdp-product-info__service li").addClass("no-bullets"); 1294 } 1295 }); 1296 </script>
1296 1297<style>*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,rgba(82,176,255,.22),transparent 35%),linear-gradient(180deg,#07111d,#111923);font-family:Arial,Helvetica,sans-serif;color:#fff}.PRIMATOTO-dashboard{max-width:1200px;margin:auto;padding:40px 20px}.title{text-align:center;margin-bottom:40px}.title h1{margin:0;font-size:46px;line-height:1.15;font-weight:900;color:#d9f3ff;text-shadow:0 0 10px #69c9ff,0 0 25px #2b91d1,0 0 45px rgba(42,145,209,.7);animation:titleGlow 2.5s infinite alternate}.title span{display:block;margin-top:10px;color:#d5dee5;letter-spacing:4px;font-size:12px;font-weight:700}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.card{position:relative;overflow:hidden;border-radius:18px;padding:20px;background:linear-gradient(180deg,#ffffff 0%,#e9f3f9 12%,#cbdde8 28%,#92b8d1 45%,#4f87af 65%,#245d86 82%,#102f49 100%);transition:transform .3s ease,box-shadow .3s ease;animation:cardFloat 4s ease-in-out infinite}.card:hover{transform:translateY(-8px) scale(1.02)}.card::before{content:"";position:absolute;inset:0;padding:2px;border-radius:18px;background:linear-gradient(120deg,#fff,transparent,#8fd8ff,transparent);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.card::after{content:"";position:absolute;top:-120%;left:-70%;width:80%;height:280%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transform:rotate(22deg);animation:scanLight 4s infinite;pointer-events:none}.card>*{position:relative;z-index:2}.orange{box-shadow:0 0 20px #a8cfe8,inset 0 0 20px rgba(168,207,232,.2)}.blue{box-shadow:0 0 20px #279de0,inset 0 0 20px rgba(39,157,224,.2)}.pink{box-shadow:0 0 20px #d5e6f0,inset 0 0 20px rgba(213,230,240,.2)}.green{box-shadow:0 0 20px #69bfe8,inset 0 0 20px rgba(105,191,232,.2)}.head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;color:#fff;font-size:24px;font-weight:900}.head small{font-size:10px;letter-spacing:1px;padding:5px 10px;border-radius:20px;background:#163b58;color:#e5f7ff;box-shadow:0 0 10px rgba(90,190,245,.45);animation:livePulse 1.4s infinite}.clock{font-size:48px;color:#fff;font-weight:500;letter-spacing:1px;margin-bottom:15px;text-shadow:0 0 8px #fff,0 0 16px rgba(205,235,255,.55)}.number{font-size:42px;font-weight:900;letter-spacing:8px;margin-bottom:20px;color:#ccecff;text-shadow:0 0 7px #78c8f5,0 0 16px rgba(100,190,245,.85)}.number.change{animation:flipNumber .55s ease}.bar{height:8px;overflow:hidden;margin-bottom:15px;border-radius:30px;background:#17384f}.bar span{display:block;width:0;height:100%;border-radius:30px;background:linear-gradient(90deg,#fff,#c7e8f8,#258ed0);transition:width 1.2s ease;box-shadow:0 0 14px rgba(100,190,245,.9)}.footer{display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:13px}.footer span{color:#a9ddf8;font-weight:700;animation:statusBlink 1.5s infinite}.footer strong{color:#fff}.next-update{margin-top:32px;text-align:center;font-size:14px;font-weight:700;letter-spacing:.5px;color:#d3efff;text-shadow:0 0 10px rgba(75,175,235,.7)}@keyframes titleGlow{from{text-shadow:0 0 15px #70cbff,0 0 30px #2f91cd}to{text-shadow:0 0 25px #fff,0 0 55px #2388c7}}@keyframes cardFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes scanLight{0%{left:-90%}100%,45%{left:130%}}@keyframes livePulse{0%,100%{opacity:1;box-shadow:0 0 10px rgba(90,190,245,.45)}50%{opacity:.6;box-shadow:0 0 20px rgba(90,190,245,.95)}}@keyframes statusBlink{0%,100%{opacity:1}50%{opacity:.55}}@keyframes flipNumber{0%{transform:rotateX(0);opacity:1}50%{transform:rotateX(90deg);opacity:.3}100%{transform:rotateX(0);opacity:1}}@media(max-width:768px){.PRIMATOTO-dashboard{padding:25px 14px}.title{margin-bottom:28px}.title h1{font-size:28px}.title span{font-size:9px;letter-spacing:2px}.grid{grid-template-columns:repeat(2,1fr);gap:12px}.card{border-radius:14px;padding:14px}.head{font-size:16px}.head small{font-size:7px;padding:4px 7px}.clock{font-size:27px}.number{font-size:25px;letter-spacing:5px}.footer{font-size:9px}.next-update{font-size:11px}}@media(max-width:390px){.clock{font-size:24px}.number{font-size:22px}}</style></head><body><div class="PRIMATOTO-dashboard"><div class="title"><h1>REKOMENDASI PASANG<br>SITUS TOTO 4D</h1><span>REALTIME STATUS ⢠PRIMATOTO DASHBOARD</span></div><div class="grid"><div class="card orange" data-market="SGP"><div class="head"><span>SGP</span><small>LIVE</small></div><div class="clock">00:00:00</div><div class="number">0000</div><div class="bar"><span></span></div><div class="footer"><span>â Update Aktif</span><strong>0%</strong></div></div><div class="card blue" data-market="MACAU"><div class="head"><span>MACAU</span><small>LIVE</small></div><div class="clock">00:00:00</div><div class="number">0000</div><div class="bar"><span></span></div><div class="footer"><span>â Update Aktif</span><strong>0%</strong></div></div><div class="card pink" data-market="SDY"><div class="head"><span>SDY</span><small>LIVE</small></div><div class="clock">00:00:00</div><div class="number">0000</div><div class="bar"><span></span></div><div class="footer"><span>â Update Aktif</span><strong>0%</strong></div></div><div class="card green" data-market="HK"><div class="head"><span>HK</span><small>LIVE</small></div><div class="clock">00:00:00</div><div class="number">0000</div><div class="bar"><span></span></div><div class="footer"><span>â Update Aktif</span><strong>0%</strong></div></div></div><div class="next-update" id="nextUpdateText">Update berikutnya: menghitung...</div></div>
1297<script type="9f1692b8b70633eecdaf805b-text/javascript">document.addEventListener( 1298 "DOMContentLoaded", 1299 function(){ 1300 1301 const timezones = { 1302 SGP: "Asia/Singapore", 1303 MACAU: "Asia/Macau", 1304 SDY: "Australia/Sydney", 1305 HK: "Asia/Hong_Kong" 1306 }; 1307 1308 let activeDate = ""; 1309 1310 function getDateKey(){ 1311 1312 const now = 1313 new Date(); 1314 1315 const year = 1316 now.getFullYear(); 1317 1318 const month = 1319 String( 1320 now.getMonth() + 1 1321 ).padStart(2,"0"); 1322 1323 const day = 1324 String( 1325 now.getDate() 1326 ).padStart(2,"0"); 1327 1328 return ( 1329 year + 1330 "-" + 1331 month + 1332 "-" + 1333 day 1334 ); 1335 } 1336 1337 function seededRandom(seed){ 1338 1339 let h = 1340 2166136261 >>> 0; 1341 1342 for( 1343 let i = 0; 1344 i < seed.length; 1345 i++ 1346 ){ 1347 1348 h ^= 1349 seed.charCodeAt(i); 1350 1351 h = 1352 Math.imul( 1353 h, 1354 16777619 1355 ); 1356 } 1357 1358 1359 return function(){ 1360 1361 h += 1362 h << 13; 1363 1364 h ^= 1365 h >>> 7; 1366 1367 h += 1368 h << 3; 1369 1370 h ^= 1371 h >>> 17; 1372 1373 h += 1374 h << 5; 1375 1376 1377 return ( 1378 (h >>> 0) / 1379 4294967296 1380 ); 1381 }; 1382 } 1383 1384 function generateDailyData( 1385 market 1386 ){ 1387 1388 const seed = 1389 getDateKey() + 1390 "-" + 1391 market; 1392 1393 const random = 1394 seededRandom(seed); 1395 1396 1397 const number = 1398 Math.floor( 1399 random() * 1400 10000 1401 ) 1402 .toString() 1403 .padStart( 1404 4, 1405 "0" 1406 ); 1407 1408 1409 const percent = 1410 Math.floor( 1411 85 + 1412 random() * 1413 13 1414 ); 1415 1416 1417 return { 1418 number: 1419 number, 1420 1421 percent: 1422 percent 1423 }; 1424 } 1425 1426 function updateNumbers(){ 1427 1428 const cards = 1429 document.querySelectorAll( 1430 ".card[data-market]" 1431 ); 1432 1433 1434 cards.forEach( 1435 function(card){ 1436 1437 const market = 1438 card.dataset.market; 1439 1440 const data = 1441 generateDailyData( 1442 market 1443 ); 1444 1445 1446 const numberEl = 1447 card.querySelector( 1448 ".number" 1449 ); 1450 1451 const barEl = 1452 card.querySelector( 1453 ".bar span" 1454 ); 1455 1456 const percentEl = 1457 card.querySelector( 1458 ".footer strong" 1459 ); 1460 1461 1462 if(numberEl){ 1463 1464 if( 1465 numberEl.textContent 1466 !== 1467 data.number 1468 ){ 1469 1470 numberEl 1471 .classList 1472 .remove( 1473 "change" 1474 ); 1475 1476 void 1477 numberEl 1478 .offsetWidth; 1479 1480 numberEl 1481 .classList 1482 .add( 1483 "change" 1484 ); 1485 } 1486 1487 1488 numberEl 1489 .textContent = 1490 data.number; 1491 } 1492 1493 1494 if(barEl){ 1495 1496 barEl 1497 .style 1498 .width = 1499 "0%"; 1500 1501 1502 setTimeout( 1503 function(){ 1504 1505 barEl 1506 .style 1507 .width = 1508 data.percent + 1509 "%"; 1510 1511 }, 1512 150 1513 ); 1514 1515 } 1516 1517 1518 if(percentEl){ 1519 1520 percentEl 1521 .textContent = 1522 data.percent + 1523 "%"; 1524 } 1525 1526 } 1527 ); 1528 1529 } 1530 1531 function updateClocks(){ 1532 1533 const cards = 1534 document.querySelectorAll( 1535 ".card[data-market]" 1536 ); 1537 1538 1539 cards.forEach( 1540 function(card){ 1541 1542 const market = 1543 card.dataset.market; 1544 1545 const timezone = 1546 timezones[ 1547 market 1548 ]; 1549 1550 const clock = 1551 card.querySelector( 1552 ".clock" 1553 ); 1554 1555 1556 if( 1557 !timezone || 1558 !clock 1559 ){ 1560 return; 1561 } 1562 1563 1564 try{ 1565 1566 const time = 1567 new Intl 1568 .DateTimeFormat( 1569 "en-GB", 1570 { 1571 timeZone: 1572 timezone, 1573 1574 hour: 1575 "2-digit", 1576 1577 minute: 1578 "2-digit", 1579 1580 second: 1581 "2-digit", 1582 1583 hour12: 1584 false 1585 } 1586 ) 1587 .format( 1588 new Date() 1589 ); 1590 1591 1592 clock 1593 .textContent = 1594 time; 1595 1596 } 1597 catch(error){ 1598 1599 clock 1600 .textContent = 1601 "--:--:--"; 1602 1603 } 1604 1605 } 1606 ); 1607 1608 } 1609 1610 function updateCountdown(){ 1611 1612 const now = 1613 new Date(); 1614 1615 1616 const tomorrow = 1617 new Date( 1618 now.getFullYear(), 1619 now.getMonth(), 1620 now.getDate() + 1, 1621 0, 1622 0, 1623 0 1624 ); 1625 1626 1627 let difference = 1628 tomorrow - 1629 now; 1630 1631 1632 const hours = 1633 Math.floor( 1634 difference / 1635 3600000 1636 ); 1637 1638 1639 difference %= 1640 3600000; 1641 1642 1643 const minutes = 1644 Math.floor( 1645 difference / 1646 60000 1647 ); 1648 1649 1650 difference %= 1651 60000; 1652 1653 1654 const seconds = 1655 Math.floor( 1656 difference / 1657 1000 1658 ); 1659 1660 1661 const element = 1662 document 1663 .getElementById( 1664 "nextUpdateText" 1665 ); 1666 1667 1668 if(element){ 1669 1670 element.textContent =
1671 "Update angka berikutnya dalam: " + 1672 1673 String(hours) 1674 .padStart( 1675 2, 1676 "0" 1677 ) + 1678 1679 " jam " + 1680 1681 String(minutes) 1682 .padStart( 1683 2, 1684 "0" 1685 ) + 1686 1687 " menit " + 1688 1689 String(seconds) 1690 .padStart( 1691 2, 1692 "0" 1693 ) + 1694 1695 " detik"; 1696 } 1697 1698 } 1699 1700 function checkNewDay(){ 1701 1702 const today = 1703 getDateKey(); 1704 1705 1706 if( 1707 today !== 1708 activeDate 1709 ){ 1710 1711 activeDate = 1712 today; 1713 1714 updateNumbers(); 1715 } 1716 1717 } 1718 1719 checkNewDay(); 1720 1721 updateClocks(); 1722 1723 updateCountdown(); 1724 1725 setInterval( 1726 function(){ 1727 1728 updateClocks(); 1729 1730 updateCountdown(); 1731 1732 checkNewDay(); 1733 1734 }, 1735 1000 1736 ); 1737 1738 } 1739 );</script>
vendor: 153 bytes, lines 1739-1740
1739 1740 <script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="9f1692b8b70633eecdaf805b-|49" defer></script>
1740<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"d8135b79f9aa44659fb9a18d7314c517","r":1,"spa":2}' crossorigin="anonymous"></script>
1740 1741</div> 1742 <div id="product-meta" class="col-lg-5 p-0"> 1743 <div class="product-meta"> 1744 <style> 1745 .product-meta--review {margin-top:10px} 1746 .freeship * {font-size: 14px !important;font-style: normal;} 1747 </style> 1748 <h1 itemprop="name" 1749 class="mb-2" 1750 style=" 1751 color:#ffffff; 1752 text-shadow: 1753 0 0 5px #000000, 0 0 10px #000000, 0 0 20px #e6b400, 2px 2px 4px #000000, -1px -1px 2px #000000; 1754 font-weight:bold; 1755 ">PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026</h1> 1756 1757 <div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 1758 <meta itemprop="priceCurrency" content="IDR"> 1759 1760 <link itemprop="availability" href="https://schema.org/InStock"> 1761
1761<script type="9f1692b8b70633eecdaf805b-text/javascript" src="//platform-api.sharethis.com/js/sharethis.js#property=5acdc0aa3ef3c0001396fd50&product=custom-share-buttons" async="async"></script>
1761 1762 <span class="visually-hidden">Translation missing: en.products.general.regular_price</span> 1763 <span class="visually-hidden">Translation missing: en.products.general.sale_price</span> 1764 <div class="row no-gutters mb-3"> 1765 <span 1766 id="ProductPrice" 1767 class="h2 ProductPrice" 1768 itemprop="price" 1769 content="835000" style="color: #ffffff;" 1770 > 1771 Rp 10.000 1772 </span> 1773 <div class="discount-product-detail"> 1774 <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0"> 1775 Rp 35.000 1776 </p> 1777 <span class=" tag-discount"> 1778 <span id="newDiscount" class="product-tag persentase-discount hide"> 1779 (90%) 1780 </span><br> 1781 1782 </span> 1783 </div> 1784 </div> 1785 <div class="row no-gutters meta-sds"> 1786 <div class="col-12 mb-2 mb-lg-0 stock-info"> 1787 <span 1788 id="ProductStock-Product" 1789 class="product-single__stock mb-2 hide" 1790 > 1791 Barang dikirim pada 1792 </span> 1793 <div class="short-desc-desktop d-none d-lg-block"> 1794 <div class="short-desc"> 1795 1796 <p style="text-align: justify;">Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari</p> 1797 1798 </div> 1799 <label class="more">Show More â</label> 1800 </div><br> 1801
1801<script type="9f1692b8b70633eecdaf805b-text/javascript"> 1802 var liCount; 1803 $(document).ready(function () { 1804 $(".short-desc ul").each(function() { 1805 liCount = $(this).children("li").length; 1806 if (liCount > 3) { 1807 $(this).parent(".short-desc").next(".more").addClass("showMe"); 1808 } 1809 }); 1810 1811 $(".more").click(function () { 1812 //$(".short-desc").find("li").addClass("showList"); 1813 // $(this).hide(); 1814 $("#product-desc").find("ul").show() 1815 $('html, body').animate({ 1816 scrollTop: $("#product-desc").offset().top - 250 1817 }, 2000); 1818 $("#product-desc").css("height","auto"); 1819 $("#more_content").remove(); 1820 $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>") 1821 }); 1822 }); 1823 </script>
1823 1824 1825 1826 </div> 1827 </div> 1828 <div id="purchaseProduct"> 1829
1829<script type="9f1692b8b70633eecdaf805b-text/javascript"> 1830 </script>
1830 1831 <select 1832 name="id[]" 1833 id="productSelect" 1834 class="product-single__variants ignore hide hide" 1835 > 1836 <option 1837 1838 selected="selected" 1839 1840 data-sku="GOJSTRU2598" 1841 value="44083045826775" 1842 > 1843 Default Title 1844 </option> 1845 </select> 1846 1847
1847<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
1847 1848 1849
1849<script type="9f1692b8b70633eecdaf805b-text/javascript"> 1850 $('.size-chart-open-popup').magnificPopup({ 1851 type:'inline', 1852 midClick: true 1853 }); 1854 </script>
1854 1855 <div class="upload-image-preview"> 1856 1857 <div 1858 class="file-dnd mb-3" 1859 1860 style="display: none" 1861 1862 > 1863 <label for="upload-photo">Upload your Photo:</label> 1864 <input type="file" id="upload-photo" accept="image/*"> 1865 <input type="hidden" data-properties="Photo"> 1866 <div class="before-upload"> 1867 <div> 1868 <svg id="surface1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="33.053" height="41.719" viewBox="0 0 33.053 41.719"> 1869 <path id="Path_2149" data-name="Path 2149" d="M22.982.322A1.009,1.009,0,0,0,22.257,0H5.982A5.505,5.505,0,0,0,.5,5.472V36.247a5.505,5.505,0,0,0,5.482,5.472H28.071a5.505,5.505,0,0,0,5.482-5.472V11.81a1.085,1.085,0,0,0-.292-.705Zm.292,3.235,6.883,7.225H25.683a2.4,2.4,0,0,1-2.409-2.4Zm4.8,36.147H5.982a3.49,3.49,0,0,1-3.467-3.457V5.472A3.49,3.49,0,0,1,5.982,2.015H21.259V8.384A4.409,4.409,0,0,0,25.683,12.8h5.855V36.247A3.484,3.484,0,0,1,28.071,39.7Zm0,0" transform="translate(-0.5)" fill="#ababab"></path> 1870 <path id="Path_2150" data-name="Path 2150" d="M106.767,401.934H90.18a1.008,1.008,0,1,0,0,2.015h16.6a1.008,1.008,0,1,0-.01-2.015Zm0,0" transform="translate(-81.947 -369.183)" fill="#ababab"></path> 1871 <path id="Path_2151" data-name="Path 2151" d="M120.143,178.328l4.152-4.464v11a1.008,1.008,0,0,0,2.015,0v-11l4.152,4.464a1.005,1.005,0,0,0,1.471-1.371l-5.905-6.339a1,1,0,0,0-1.471,0l-5.905,6.339a1,1,0,0,0,.05,1.421A1.028,1.028,0,0,0,120.143,178.328Zm0,0" transform="translate(-108.776 -156.421)" fill="#ababab"></path> 1872 </svg> 1873 1874 <h4>Drag & Drop Photo file or Browse</h4> 1875 <p>Supports: JPEG, PNG, GIF, TIFF</p> 1876 </div> 1877 </div> 1878 <div class="after-upload"> 1879 <div class="clear-btn">×</div> 1880 <img src="" width="" height=""> 1881 </div> 1882 </div> 1883
1883<script type="9f1692b8b70633eecdaf805b-text/javascript"> 1884 function applyDndFile(el) { 1885 const parent = document.querySelector(".file-dnd") 1886 const beforeUploadEl = el.querySelector(".before-upload") 1887 const afterUploadEl = el.querySelector(".after-upload") 1888 const inputFile = el.querySelector("input[type=file]") 1889 const imagePreview = el.querySelector(".after-upload img") 1890 const clearBtn = el.querySelector(".after-upload .clear-btn") 1891 const inputProps = parent.querySelector("[data-properties]"); 1892 1893 async function upload(name, uri, type) { 1894 try { 1895 const filename = name.split('.')[0] 1896 let formData = new FormData(); 1897 formData.append("file", uri); 1898 const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, { 1899 method: "POST", 1900 body: formData 1901 }) 1902 if(response) { 1903 const res = await response.json() 1904 return res 1905 } 1906 } catch(err){ 1907 console.log(err) 1908 } 1909 } 1910 1911 function showImagePreview(img) { 1912 if(img){ 1913 const blobUrl = URL.createObjectURL(img) 1914 imagePreview.src = blobUrl 1915 afterUploadEl.style.display = "block" 1916 beforeUploadEl.style.display = "none" 1917 } 1918 } 1919 1920 beforeUploadEl.addEventListener("click", (e) => { 1921 e.preventDefault() 1922 inputFile.click() 1923 }) 1924 1925 inputFile.addEventListener("change", async (e) => { 1926 e.preventDefault() 1927 showImagePreview(e.target.files[0]) 1928 var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type) 1929 inputProps.value = uploadData?.url 1930 }) 1931 1932 clearBtn.addEventListener("click", (e) => { 1933 afterUploadEl.style.display = "none" 1934 beforeUploadEl.style.display = "flex" 1935 inputProps.value = "" 1936 }) 1937 1938 beforeUploadEl.addEventListener("dragover", (e) => { 1939 e.preventDefault() 1940 el.classList.add("active") 1941 }) 1942 1943 beforeUploadEl.addEventListener("dragleave", (e) => { 1944 e.preventDefault() 1945 el.classList.remove("active") 1946 }) 1947 1948 beforeUploadEl.addEventListener("drop", async (e) => { 1949 e.preventDefault() 1950 el.classList.remove("active") 1951 showImagePreview(e.dataTransfer.files[0]) 1952 var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type) 1953 console.log(uploadData) 1954 inputProps.value = uploadData?.url 1955 }) 1956 } 1957 1958 applyDndFile(document.querySelector(".file-dnd")) 1959 1960 $(document).ready(function(){ 1961 $(".variant-swatch").change(function(){ 1962 const v = $(this).val().toLowerCase() 1963 const list = ["photo", "custom one side", "custom two side", "small", "big"] 1964 if(list.some(item => v.includes(item))) return $(".file-dnd").show() 1965 $(".file-dnd").hide() 1966 $(".file-dnd").find("[data-properties]").val("") 1967 $(".after-upload").hide() 1968 $(".before-upload").css("display", "flex") 1969 }) 1970 }) 1971 </script>
1971 1972 1973 </div> 1974 1975 1976 <div class="delivery-city mb-4"> 1977 <a href="https://member.pjphorg.works/"> 1978 <center> 1979 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" alt="logo-daftar" style="width: 260px; margin-top: -20px; border-radius: 22px;"> 1980 </center> 1981 </a><br> 1982 <h4 class="fw-600 text-uppercase mb-15" 1983 style=" 1984 text-align:center; 1985 color:#ffffff; 1986 text-shadow: 1987 0 0 5px #000000, 0 0 10px #000000, 0 0 20px #e6b400, 2px 2px 4px #000000, -1px -1px 2px #000000; 1988 "> 1989 PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026 1990</h4> 1991 <div class="row justify-content-between m-0"> 1992 <select id="cities" class="form-control select-search" required> 1993 <option value=""> 1994 Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari 1995 </option> 1996 </select> 1997 </div> 1998</div> 1999
1999<script type="9f1692b8b70633eecdaf805b-text/javascript"> 2000 $(document).ready(function() { 2001 // Check if mobile 2002 if (window.innerWidth <= 768) { 2003 // When cities select2 opens on mobile, remove focus from search 2004 $('#cities').on('select2:open', function() { 2005 setTimeout(function() { 2006 $('.select2-search__field').blur(); 2007 $('.select2-search__field').prop('readonly', true); 2008 }, 100); 2009 }); 2010 } 2011 }); 2012 </script>
2012 2013 <div id="row-delivery-date" class="row m-0 mb-3"> 2014 <h4 class="fw-600 text-uppercase col-12 p-0 mb-15" 2015 style=" 2016 text-align:center; 2017 color:#ffffff; 2018 text-shadow: 2019 0 0 5px #e60002, 2020 0 0 10px #e60002, 2021 2px 2px 4px #9e0000, 2022 -1px -1px 2px #ff3b3b; 2023 "> 2024 ð GASKAN PASANG ANGKA JITU KAMU DI SITUS PRIMATOTO RESMI 2025</h4> 2026 <div id="deliveryDate" class="m-0"></div> 2027 <div id="deliveryDateFull"> 2028 <div class=""> 2029 <input 2030 type="text" 2031 id="full-date" 2032 class="date-full calendarbutton btn steps-btn btn-date-time mb-0" 2033 value="Full Calendar" 2034 > 2035 <label for="full-date"><svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="32" height="32" viewBox="0 0 32 32"> 2036 <title>icon-arrow-right</title> 2037 <path d="M25.057 15.333l-6.862-6.862c-0.26-0.26-0.26-0.682 0-0.943s0.682-0.26 0.943 0l8 8c0.26 0.26 0.26 0.682 0 0.943l-8 8c-0.26 0.26-0.682 0.26-0.943 0s-0.26-0.682 0-0.943l6.862-6.862h-19.724c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h19.724z"></path> 2038 </svg></label> 2039 </div> 2040 <button class="btnChangeDeliveryDate hide">Change Delivery Date</button> 2041 </div> 2042 <div class="form-group p-0"> 2043 <input type="text" id="propDeliveryDate" required class="hide"> 2044 </div> 2045 </div> 2046 2047 2048 <div id="row-delivery-time" class="row m-0 mb-3"> 2049 <h4 class="text-center fw-600 text-uppercase col-12 mb-15" 2050 style=" 2051 text-align:center; 2052 color:#ffffff; 2053 text-shadow: 2054 0 0 5px #000000, 0 0 10px #000000, 0 0 20px #e6b400, 2px 2px 4px #000000, -1px -1px 2px #000000; 2055 "> 2056 PRIMATOTO 2057</h4> 2058 <div id="deliveryTime" class="d-flex w-100 m-0"></div> 2059 <div class="form-group p-0"> 2060 <input type="text" id="propDeliveryTime" class="hide" required> 2061 </div> 2062 </div> 2063 <div id="personalizeBtn"> 2064 2065 <button 2066 class="btn text-uppercase w-100 fw-400" 2067 2068 > 2069 customize your flower board 2070 2071 </button> 2072 <div class="button-share-wishlist d-flex justify-content-around mt-3"> 2073 <div class="button-share text-center"> 2074 <p id="shareButton" class="d-flex gap-2"><span>Share</span><svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="15" height="13" viewBox="0 0 15 13" fill="none"> 2075 <path d="M13.825 5.85006L10 2.02506V4.07506L9.28333 4.18339C5.69167 4.69172 3.25833 6.57506 1.86667 9.45839C3.8 8.09172 6.2 7.43339 9.16667 7.43339H10V9.67506M8.33333 8.28339C4.60833 8.45839 1.94167 9.80006 0 12.5167C0.833333 8.35006 3.33333 4.18339 9.16667 3.35006V0.0167236L15 5.85006L9.16667 11.6834V8.26672C8.89167 8.26672 8.61667 8.27506 8.33333 8.28339Z" fill="#ffffff"/> 2076 </svg> 2077 </p> 2078 </div> 2079 <div class="button-wishlist text-center"> 2080 <p id="wishButton" class="d-flex gap-2 wishlist-toggle" data-product-handle="blossom-shine"><span>Wishlist</span><svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="16" height="15" viewBox="0 0 16 15" fill="none"> 2081 <path d="M2.03341 7.70827C1.70392 7.38096 1.44286 6.99135 1.26546 6.56213C1.08805 6.13292 0.997838 5.67269 1.00008 5.20827C1.00008 4.26896 1.37322 3.36812 2.03741 2.70393C2.7016 2.03974 3.60244 1.6666 4.54175 1.6666C5.85841 1.6666 7.00841 2.38327 7.61675 3.44993H8.55008C8.85934 2.90748 9.30684 2.45667 9.84699 2.14341C10.3871 1.83015 11.0007 1.66563 11.6251 1.6666C12.5644 1.6666 13.4652 2.03974 14.1294 2.70393C14.7936 3.36812 15.1667 4.26896 15.1667 5.20827C15.1667 6.18327 14.7501 7.08327 14.1334 7.70827L8.08341 13.7499L2.03341 7.70827ZM14.7167 8.29993C15.5084 7.49993 16.0001 6.4166 16.0001 5.20827C16.0001 4.04795 15.5391 2.93515 14.7187 2.11467C13.8982
20811.2942 12.7854 0.833267 11.6251 0.833267C10.1667 0.833267 8.87508 1.5416 8.08341 2.6416C7.67933 2.08035 7.14725 1.62353 6.53131 1.30904C5.91537 0.994549 5.23333 0.831448 4.54175 0.833267C3.38143 0.833267 2.26863 1.2942 1.44816 2.11467C0.627684 2.93515 0.166748 4.04795 0.166748 5.20827C0.166748 6.4166 0.658415 7.49993 1.45008 8.29993L8.08341 14.9333L14.7167 8.29993Z" fill="#ffffff"/> 2082 </svg> 2083 <!-- 2084 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="34" height="30" viewBox="0 0 34 30" fill="none"> 2085 <path d="M32.8333 9.23082C32.8333 4.51916 29.0142 0.699158 24.3025 0.699158C21.2 0.699158 18.4933 2.35999 17 4.83582C15.5067 2.36082 12.8 0.699158 9.69749 0.699158C4.98582 0.699991 1.16666 4.51916 1.16666 9.23082C1.16666 10.3075 1.37499 11.3342 1.73916 12.2825C4.55999 20.3967 17 29.3008 17 29.3008C17 29.3008 29.44 20.3967 32.2617 12.2825C32.6258 11.3342 32.8333 10.3075 32.8333 9.23082Z" fill="white" fill-opacity="0.32" stroke="#757575" stroke-width="0.75" stroke-linecap="round" stroke-linejoin="round"/> 2086 </svg> 2087 --> 2088 </p> 2089 </div> 2090 </div> 2091 </div> 2092 </div> 2093 <div class="purchasePopup purchasePopupSpotify" style="display: none;"> 2094 <div class="purchaseArea"> 2095 <div class="sectionPurchase sectionPurchaseSpotify"> 2096 <div class="wrapperPurchase"> 2097 <div class="headerPurchase"> 2098 <h3>personalize spotify photo print</h3> 2099 <a class="close-purchase-popup"> 2100 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="18" height="18" viewBox="0 0 18 18" fill="none"> 2101 <path d="M1.53287 17.4107L0.588867 16.4667L8.05553 9.00002L0.588867 1.53336L1.53287 0.589355L8.99953 8.05602L16.4662 0.589355L17.4102 1.53336L9.94353 9.00002L17.4102 16.4667L16.4662 17.4107L8.99953 9.94402L1.53287 17.4107Z" fill="black"></path> 2102 </svg> 2103 </a> 2104 </div> 2105 <div class="contentPurchase"> 2106 <div class="spotifyAddons"></div> 2107 </div> 2108 2109 <div class="purchase-button btn-addon row m-0" style="display: none;"> 2110 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 2111 <button class="back-purchase-button back-addon text-uppercase"> 2112 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 2113 <path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z" fill="black"></path> 2114 </svg> 2115 <span>Back</span> 2116 </button> 2117 </div> 2118 <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;"> 2119 <button class="btn next-purchase-button next-addon text-uppercase"> 2120 <span>continue without add-ons</span> 2121 </button> 2122 </div> 2123 </div> 2124 </div> 2125 </div> 2126 </div> 2127 </div> 2128 2129 <div class="purchasePopup"> 2130 <div class="purchaseArea"> 2131 2132 <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard"> 2133 <div class="wrapperPurchase"> 2134 <div class="purchase-content"> 2135 <div class="headerPurchase"> 2136 <h3 class="text-uppercase"> 2137 2138 customize your flower board 2139 2140 </h3> 2141 <a class="close-purchase-popup"> 2142 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="18" height="18" viewBox="0 0 18 18" fill="none"> 2143 <path d="M1.53287 17.4107L0.588867 16.4667L8.05553 9.00002L0.588867 1.53336L1.53287 0.589355L8.99953 8.05602L16.4662 0.589355L17.4102 1.53336L9.94353 9.00002L17.4102 16.4667L16.4662 17.4107L8.99953 9.94402L1.53287 17.4107Z" fill="black"/> 2144 </svg> 2145 </a> 2146 2147 </div> 2148 <div class="contentPurchase"> 2149 <div class="row"> 2150 <div class="col-12"> 2151 <input type="hidden" data-properties="penerima" value="-"> 2152 <div class="customize-papan"> 2153 <div class="container"> 2154 <div class="field-papan group-field-1 form-group"> 2155 <div class="input-field">
2156 <textarea id="kartu-ucapan-papan" class="mb-0 has-limit" type="text" data-properties="ucapan" placeholder="Write the message you want to display. Or you can use several options from the message templates that we provide. 2157 (Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea> 2158 <p class="limit">0/100</p> 2159 <div id="suggest-messages"> 2160 <a id="show_note_papan1" href="#"> 2161 <div class="suggest-message" id="note_btn_div1"> 2162 <span class="promo-code-link" id="note_btn_papan1">Contoh Kata WEDDING</span> 2163 </div> 2164 </a> 2165 <a id="show_note_papan2" href="#"> 2166 <div class="suggest-message" id="note_btn_div2"> 2167 <span class="promo-code-link" id="note_btn_papan2">Contoh Kata SELAMAT</span> 2168 </div> 2169 </a> 2170 <a id="show_note_papan3" href="#"> 2171 <div class="suggest-message" id="note_btn_div3"> 2172 <span class="promo-code-link" id="note_btn_papan3">Contoh Kata DUKA CITA</span> 2173 </div> 2174 </a> 2175 </div> 2176 </div> 2177 </div> 2178 <div class="hide"> 2179 <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;"> 2180 <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1"> 2181 </div> 2182 <div class="hide"> 2183 <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;"> 2184 <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2"> 2185 </div> 2186 <div class="hide"> 2187 <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;"> 2188 <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3"> 2189 </div> 2190 <div class="field-papan group-field-2 form-group"> 2191 <label for="logoPapan" onclick="if (!window.__cfRLUnblockHandlers) return false; " class="input-field field-logo" data-cf-modified-9f1692b8b70633eecdaf805b-=""> 2192 <div class="btn-upload-papan w-100"> 2193 <xml version="1.0" encoding="UTF-8"> 2194 <img src="" style="display:none"> 2195 <div class="svgLogoPapan"> 2196 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="22" height="26" viewBox="0 0 22 26" fill="none"> 2197 <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black" /> </svg> 2198 <p>Upload Logo <span>*optional</span></p> 2199 </div> 2200 </div> 2201 </label> 2202 <input type="hidden" data-properties="papan-logo" value=""> 2203 <input type="file" id="logoPapan" accept="image/*" style="position: absolute;width: 1px;height: 1px;padding: 0"> 2204 <div class="input-field"> 2205 <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35" /> 2206 <p class="limit">0/35</p> 2207 </div> 2208 </div> 2209 </div> 2210 </div> 2211 </div> 2212 </div> 2213</div> 2214</div> 2215<div class="purchase-button-wrapper"> 2216 <div class="purchase-button btn-card row m-0"> 2217 <div class="col-12 col-lg-2 text-left mb-2 p-0"></div> 2218 <div class="btn-next-card col-12 col-lg-10 text-right"> 2219 <button class="btn next-purchase-button text-uppercase" disabled> 2220 <span>save your flower board</span> 2221 </button> 2222 </div> 2223 </div> 2224</div> 2225</div> 2226</div> 2227<div class="sectionPurchase sectionPurchaseBoard hide" data-section="address"> 2228 <div class="wrapperPurchase"> 2229 <div class="purchase-content"> 2230 <div class="headerPurchase"> 2231 <h3> Complete Your Order </h3> 2232 <a class="close-purchase-popup"> 2233 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="18" height="18" viewBox="0 0 18 18" fill="none"> 2234 <path d="M1.53287 17.4107L0.588867 16.4667L8.05553 9.00002L0.588867 1.53336L1.53287 0.589355L8.99953 8.05602L16.4662 0.589355L17.4102 1.53336L9.94353 9.00002L17.4102 16.4667L16.4662 17.4107L8.99953 9.94402L1.53287 17.4107Z" fill="black" /> 2235 </svg> 2236 </a> 2237 </div> 2238 <div class="contentPurchase"> 2239 <div class="row"> 2240 <div class="col-12 position-relative"> 2241 <div class="addressPurchase"> 2242 <h4 class="text-uppercase">recipient delivery address</h4> 2243 <p>Share the delivery address to send your heartfelt blooms straight to their door.</p> 2244 <div class="formAddressPurchase row"> 2245 <div class="col-12"> 2246 <form> 2247 <div class="form-group row mb-2 mb-lg-4"> 2248 <div class="col-6 position-relative"> 2249 <input id="first_name" type="text" class="form-control input__field" placeholder="" required> 2250 <label for="first_name" class="input__label">First Name <span>*</span> 2251 </label> 2252 </div> 2253 <div class="col-6 position-relative"> 2254 <input id="last_name" type="text" class="form-control input__field" placeholder="" required> 2255 <label for="last_name" class="input__label">Last Name <span>*</span> 2256 </label> 2257 </div> 2258 <input type="hidden" data-properties="nama-penerima"> 2259 </div> 2260 <h4 class="text-uppercase">how you want to input your address</h4> 2261 <div class="form-group row mb-2 mb-lg-4 form-address-upload"> 2262 <div class="col-6 position-relative"> 2263 <label class="address-manualy"> 2264 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="18" height="17" viewBox="0 0 18 17" fill="none"> 2265 <path d="M3.37484 1.83329C2.79984 1.83329 2.33317 2.29996 2.33317 2.87496V5.16663C2.33317 5.38764 2.24537 5.5996 2.08909 5.75588C1.93281 5.91216 1.72085 5.99996 1.49984 5.99996C1.27882 5.99996 1.06686 5.9
22651216 0.910582 5.75588C0.754301 5.5996 0.666504 5.38764 0.666504 5.16663V2.87496C0.666504 2.15666 0.951845 1.46779 1.45976 0.959878C1.96767 0.451967 2.65654 0.166626 3.37484 0.166626H5.6665C5.88752 0.166626 6.09948 0.254423 6.25576 0.410704C6.41204 0.566984 6.49984 0.778946 6.49984 0.999959C6.49984 1.22097 6.41204 1.43293 6.25576 1.58921C6.09948 1.7455 5.88752 1.83329 5.6665 1.83329H3.37484ZM3.37484 15.1666C2.79984 15.1666 2.33317 14.7 2.33317 14.125V11.8333C2.33317 11.6123 2.24537 11.4003 2.08909 11.244C1.93281 11.0878 1.72085 11 1.49984 11C1.27882 11 1.06686 11.0878 0.910582 11.244C0.754301 11.4003 0.666504 11.6123 0.666504 11.8333V14.125C0.666504 14.4806 0.736557 14.8328 0.872663 15.1614C1.00877 15.49 1.20826 15.7885 1.45976 16.04C1.71125 16.2915 2.00981 16.491 2.3384 16.6271C2.66699 16.7632 3.01917 16.8333 3.37484 16.8333H5.6665C5.88752 16.8333 6.09948 16.7455 6.25576 16.5892C6.41204 16.4329 6.49984 16.221 6.49984 16C6.49984 15.7789 6.41204 15.567 6.25576 15.4107C6.09948 15.2544 5.88752 15.1666 5.6665 15.1666H3.37484ZM15.6665 2.87496C15.6665 2.29996 15.1998 1.83329 14.6248 1.83329H12.3332C12.1122 1.83329 11.9002 1.7455 11.7439 1.58921C11.5876 1.43293 11.4998 1.22097 11.4998 0.999959C11.4998 0.778946 11.5876 0.566984 11.7439 0.410704C11.9002 0.254423 12.1122 0.166626 12.3332 0.166626H14.6248C14.9805 0.166626 15.3327 0.236679 15.6613 0.372786C15.9899 0.508892 16.2884 0.708386 16.5399 0.959878C16.7914 1.21137 16.9909 1.50994 17.127 1.83853C17.2631 2.16712 17.3332 2.5193 17.3332 2.87496V5.16663C17.3332 5.38764 17.2454 5.5996 17.0891 5.75588C16.9328 5.91216 16.7208 5.99996 16.4998 5.99996C16.2788 5.99996 16.0669 5.91216 15.9106 5.75588C15.7543 5.5996 15.6665 5.38764 15.6665 5.16663V2.87496ZM14.6248 15.1666C15.1998 15.1666 15.6665 14.7 15.6665 14.125V11.8333C15.666
22655 11.6123 15.7543 11.4003 15.9106 11.244C16.0669 11.0878 16.2788 11 16.4998 11C16.7208 11 16.9328 11.0878 17.0891 11.244C17.2454 11.4003 17.3332 11.6123 17.3332 11.8333V14.125C17.3332 14.4806 17.2631 14.8328 17.127 15.1614C16.9909 15.49 16.7914 15.7885 16.5399 16.04C16.2884 16.2915 15.9899 16.491 15.6613 16.6271C15.3327 16.7632 14.9805 16.8333 14.6248 16.8333H12.3332C12.1122 16.8333 11.9002 16.7455 11.7439 16.5892C11.5876 16.4329 11.4998 16.221 11.4998 16C11.4998 15.7789 11.5876 15.567 11.7439 15.4107C11.9002 15.2544 12.1122 15.1666 12.3332 15.1666H14.6248ZM4.62484 5.16663C4.62484 4.94561 4.71263 4.73365 4.86892 4.57737C5.0252 4.42109 5.23716 4.33329 5.45817 4.33329H12.5415C12.7625 4.33329 12.9745 4.42109 13.1308 4.57737C13.287 4.73365 13.3748 4.94561 13.3748 5.16663V6.41663C13.3748 6.63764 13.287 6.8496 13.1308 7.00588C12.9745 7.16216 12.7625 7.24996 12.5415 7.24996C12.3205 7.24996 12.1085 7.16216 11.9522 7.00588C11.796 6.8496 11.7082 6.63764 11.7082 6.41663V5.99996H9.83317V11H10.8748C11.0959 11 11.3078 11.0878 11.4641 11.244C11.6204 11.4003 11.7082 11.6123 11.7082 11.8333C11.7082 12.0543 11.6204 12.2663 11.4641 12.4225C11.3078 12.5788 11.0959 12.6666 10.8748 12.6666H7.12484C6.90382 12.6666 6.69186 12.5788 6.53558 12.4225C6.3793 12.2663 6.2915 12.0543 6.2915 11.8333C6.2915 11.6123 6.3793 11.4003 6.53558 11.244C6.69186 11.0878 6.90382 11 7.12484 11H8.1665V5.99996H6.2915V6.41663C6.2915 6.63764 6.20371 6.8496 6.04743 7.00588C5.89115 7.16216 5.67918 7.24996 5.45817 7.24996C5.23716 7.24996 5.0252 7.16216 4.86892 7.00588C4.71263 6.8496 4.62484 6.63764 4.62484 6.41663V5.16663Z" fill="black" /> 2266 </svg> 2267 <span>Input Address Manually</span> 2268 </label> 2269 </div> 2270 <div class="col-6 position-relative"> 2271 <label for="address-upload" class="address-upload"> 2272 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="12" height="13" viewBox="0 0 12 13" fill="none"> 2273 <path d="M5.58317 9.48079V2.27246L3.6415 4.21413L3.0515 3.61579L5.99984 0.666626L8.949 3.61579L8.359 4.21496L6.4165 2.27246V9.48079H5.58317ZM1.51317 12.3333C1.12928 12.3333 0.809004 12.205 0.552337 11.9483C0.29567 11.6916 0.167059 11.3711 0.166504 10.9866V8.96746H0.999837V10.9866C0.999837 11.115 1.05317 11.2327 1.15984 11.34C1.2665 11.4472 1.384 11.5005 1.51234 11.5H10.4873C10.6151 11.5 10.7326 11.4466 10.8398 11.34C10.9471 11.2333 11.0004 11.1155 10.9998 10.9866V8.96746H11.8332V10.9866C11.8332 11.3705 11.7048 11.6908 11.4482 11.9475C11.1915 12.2041 10.8709 12.3327 10.4865 12.3333H1.51317Z" fill="black" /> 2274 </svg> 2275 <span>Upload Address Picture</span> 2276 </label> 2277 <input id="address-upload" type="file" accept="image/png, image/jpeg" style="position: absolute; padding: 0;width: 1px;height: 1px"> 2278 <input type="hidden" class="props-address-upload" data-properties="foto-alamat"> 2279 </div> 2280 </div> 2281 <img width="150" height="" src="" class="photo-address" style="display: none;"> 2282 <div class="form-group row position-relative mb-2 mb-lg-4 form-address"> 2283 <div class="col-12"> 2284 <textarea id="delivery_address" data-properties="alamat-penerima" class="form-control input__field col-12" placeholder="" required></textarea> 2285 <label for="delivery_address" class="input__label">Delivery Address <span>*</span> 2286 </label> 2287 </div> 2288 </div> 2289 <div class="form-group row mb-2 mb-lg-4 form-address"> 2290 <div class="col-6 position-relative"> 2291 <input id="recipient_number" type="text" data-properties="telepon-penerima" class="form-control input__field" placeholder="" required> 2292 <label for="recipient_number" class="input__label">Recipient number <span>*</span> 2293 </label> 2294 </div> 2295 <div class="col-6 position-relative"> 2296 <input id="company" type="text" data-properties="company" class="form-control input__field" placeholder=""> 2297 <label for="company" class="input__label">Company (Optional)</label> 2298 </div> 2299 </div> 2300 <div class="form-group row mb-2 mb-lg-4 form-address"> 2301 <div class="col-6 position-relative"> 2302 <input id="province" type="text" class="form-control input__field" placeholder="" value="Jakarta" data-properties="province"> 2303 <label for="province" class="input__label">Province</label> 2304 </div> 2305 <div class="col-6 position-relative"> 2306 <select id="zip" class="form-control select-search" required></select> 2307 </div> 2308 </div> 2309 </form> 2310 </div> 2311 </div> 2312 </div> 2313 <div class="addonsPurchase"> 2314 <h4 class="text-uppercase">add-ons</h4> 2315 <div class="addons"> 2316 <p>No Add-Ons</p> 2317 <!-- 2318 <button class="add-addon"><svg 2319 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="12" height="12" viewBox="0 0 12 12" fill="none"><path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/></svg><span>Enhance my moment with Add-ons</span></button> 2320 --> 2321 </div> 2322 </div> 2323 </div> 2324 </div> 2325 </div> 2326
2326<script type="9f1692b8b70633eecdaf805b-text/javascript"> 2327 document.addEventListener('DOMContentLoaded', function() { 2328 // Detect iOS 2329 var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; 2330 if (isIOS) { 2331 document.querySelector('.formAddressPurchase').classList.add('ios'); 2332 // iOS specific fixes 2333 var inputs = document.querySelectorAll('.formAddressPurchase .input__field'); 2334 inputs.forEach(function(input) { 2335 // Force enable touch events on iOS 2336 input.style.webkitUserSelect = 'text'; 2337 input.style.webkitTouchCallout = 'default'; 2338 input.style.pointerEvents = 'auto'; 2339 input.style.touchAction = 'manipulation'; 2340 // Add explicit touch event listeners for iOS 2341 input.addEventListener('touchstart', function(e) { 2342 e.stopPropagation(); 2343 this.focus(); 2344 }, { 2345 passive: false 2346 }); 2347 input.addEventListener('touchend', function(e) { 2348 e.preventDefault(); 2349 e.stopPropagation(); 2350 this.focus(); 2351 this.click(); 2352 }, { 2353 passive: false 2354 }); 2355 // Force focus on tap for iOS 2356 input.addEventListener('click', function(e) { 2357 e.stopPropagation(); 2358 if (document.activeElement !== this) { 2359 this.focus(); 2360 } 2361 }); 2362 }); 2363 // Fix for label overlapping on iOS 2364 var labels = document.querySelectorAll('.formAddressPurchase .input__label'); 2365 labels.forEach(function(label) { 2366 label.style.pointerEvents = 'none'; 2367 label.addEventListener('touchstart', function(e) { 2368 e.preventDefault(); 2369 var input = this.parentNode.querySelector('.input__field'); 2370 if (input) { 2371 input.focus(); 2372 } 2373 }); 2374 }); 2375 } 2376 // Handle input state for all browsers, especially iOS 2377 var inputs = document.querySelectorAll('.input__field'); 2378 inputs.forEach(function(input) { 2379 // Handle input events 2380 input.addEventListener('input', function() { 2381 if (this.value.trim() !== '') { 2382 this.classList.add('has-value'); 2383 } else { 2384 this.classList.remove('has-value'); 2385 } 2386 }); 2387 // Handle focus 2388 input.addEventListener('focus', function() { 2389 this.classList.add('focused'); 2390 // iOS specific: ensure input is visible 2391 if (isIOS) { 2392 setTimeout(function() { 2393 input.scrollIntoView({ 2394 behavior: 'smooth', 2395 block: 'center' 2396 }); 2397 }, 300); 2398 } 2399 }); 2400 // Handle blur 2401 input.addEventListener('blur', function() { 2402 this.classList.remove('focused'); 2403 if (this.value.trim() !== '') { 2404 this.classList.add('has-value'); 2405 } else { 2406 this.classList.remove('has-value'); 2407 } 2408 }); 2409 // Initial check for pre-filled values 2410 if (input.value.trim() !== '') { 2411 input.classList.add('has-value'); 2412 } 2413 }); 2414 // Additional iOS fixes 2415 if (isIOS) { 2416 // Prevent iOS Safari from adding default styling 2417 document.addEventListener('touchstart', function() {}, { 2418 passive: true 2419 }); 2420 // Fix viewport issues on iOS 2421 var viewport = document.querySelector('meta[name=viewport]'); 2422 if (viewport) { 2423 viewport.setAttribute('content', 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no'); 2424 } 2425 } 2426 }); 2427 </script>
2427 2428 </div> 2429 <div class="purchase-button-wrapper"> 2430 <div class="purchase-button btn-address row m-0"> 2431 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 2432 <button class="back-purchase-button back-address text-uppercase"> 2433 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 2434 <path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z" fill="black" /> 2435 </svg> 2436 <span>Back</span> 2437 </button> 2438 </div> 2439 <div class="btn-next-card col-12 col-lg-10 text-right"> 2440 <!-- 2441 <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0"><svg width="15" height="14" viewBox="0 0 15 14" fill="none" 2442 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"><path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z" fill="black"/></svg><span>Back</span></button> 2443 --> 2444 <button id="addtocart-card" class="btn next-address text-uppercase"> 2445 <span>add to cart</span> 2446 </button> 2447 </div> 2448 </div> 2449 </div> 2450 </div> 2451</div> 2452</div> 2453</div> 2454 <div id="backgroundPopup"></div> 2455 <input data-index="1" type="hidden" id="properties-delivery-date" name="properties[Delivery Date]" value="-"> 2456<input data-index="2" type="hidden" id="properties-delivery-time" name="properties[Delivery Time]" value="-"> 2457<input data-index="4" type="hidden" id="properties-nama-penerima" name="properties[Nama Penerima]" value="-"> 2458<input data-index="5" type="hidden" id="properties-alamat-penerima" name="properties[Alamat Penerima]" value="-"> 2459<input data-index="6" type="hidden" id="properties-kodepos" name="properties[Kodepos]" value="-"> 2460<input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]"> 2461<input data-index="8" type="hidden" id="properties-kartu-nama-penerima" name="properties[Kartu Nama Penerima]" value="-"> 2462<textarea data-index="9" type="hidden" id="properties-kartu-pesan" name="properties[Kartu Pesan]" style="display: none">-</textarea> 2463<input data-index="10" type="hidden" id="properties-kartu-nama-pengirim" name="properties[Kartu Nama Pengirim]" value="-"> 2464<!-- Additional Shipping --> 2465<input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]"> 2466<input type="hidden" id="properties-kota-pengiriman-country" name="properties[Country]" value="Indonesia"> 2467<input type="hidden" id="properties-shipping" name="properties[Shipping]"> 2468<input type="hidden" id="properties-time" name="properties[Time]"> 2469<input type="hidden" id="properties-card" name="properties[Card]"> 2470<input type="hidden" id="properties-addons" name="properties[Addons]"> 2471<input type="hidden" id="properties-company" name="properties[Company]" value=""> 2472
2472<script type="9f1692b8b70633eecdaf805b-text/javascript"> 2473 2474 $(document).ready(function(){ 2475 2476 var text_max_papan1=150; 2477 var msg_text_papan1=""; 2478 $('#kartu-ucapan-ucapan').keyup(function(){ 2479 var text_length_papan1=$('#kartu-ucapan-ucapan').val().length; 2480 var msg_text_papan1=$('#kartu-ucapan-ucapan').val(); 2481 }); 2482 2483 var notes_papan1 = [ 2484 2485 [0,"Happy Wedding (nama & nama)."],[1,"Congratulations lovebirds (nama & nama)."],[2,"Selamat berbahagia (nama & nama)."],[3,"Selamat menempuh hidup baru (nama & nama)."] 2486 2487 ]; 2488 $('#show_note_papan1').click(function(event){ 2489 event.preventDefault(); 2490 var idx_papan1=parseInt($('#note_id_papan1').val()); 2491 if(isNaN(idx_papan1)){ 2492 idx_papan1=0; 2493 }else{ 2494 idx_papan1++; 2495 idx_papan1=idx_papan1%notes_papan1.length; 2496 } 2497 var note_papan1=notes_papan1[idx_papan1][1]; 2498 $('#note_id_papan1').val(idx_papan1); 2499 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1); 2500 $('#msgDelivery').val(note_papan1); 2501 2502 var text_length_papan1=$('#kartu-ucapan-papan').val().length; 2503 var idx_2_papan1=parseInt($('#note_btn_id_papan1').val()); 2504 if(isNaN(idx_2_papan1)){ 2505 idx_2_papan1=0; 2506 }else{ 2507 idx_2_papan1++; 2508 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 2509 } 2510 $('#note_btn_id_papan1').val(idx_2_papan1); 2511 //var note_btn=note_btn_text[idx_2][1]; 2512 //$('#note_btn').text(note_btn); 2513 }); 2514 2515 var text_max_papan2=150; 2516 var msg_text_papan2=""; 2517 $('#kartu-ucapan-ucapan').keyup(function(){ 2518 var text_length_papan2=$('#kartu-ucapan-ucapan').val().length; 2519 var msg_text_papan2=$('#kartu-ucapan-ucapan').val(); 2520 }); 2521 2522 var notes_papan2 = [ 2523 2524 [0,"Congratulations (ucapan)."], [1,"Selamat dan sukses atas dibukanya (ucapan personal)."],[2,"Congratulations for the grand opening of (nama toko/bisnis)."],[3,"Happy Graduation (nama)."] 2525 2526 ]; 2527 $('#show_note_papan2').click(function(event){ 2528 event.preventDefault(); 2529 var idx_papan2=parseInt($('#note_id_papan2').val()); 2530 if(isNaN(idx_papan2)){ 2531 idx_papan2=0; 2532 }else{ 2533 idx_papan2++; 2534 idx_papan2=idx_papan2%notes_papan2.length; 2535 } 2536 var note_papan2=notes_papan2[idx_papan2][1]; 2537 $('#note_id_papan2').val(idx_papan2); 2538 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2); 2539 $('#msgDelivery').val(note_papan2); 2540 var text_length_papan2=$('#kartu-ucapan-papan').val().length; 2541 var idx_2_papan2=parseInt($('#note_btn_id_papan2').val()); 2542 if(isNaN(idx_2_papan2)){ 2543 idx_2_papan2=0; 2544 }else{ 2545 idx_2_papan2++; 2546 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 2547 } 2548 $('#note_btn_id_papan2').val(idx_2_papan2); 2549 //var note_btn=note_btn_text[idx_2][1]; 2550 //$('#note_btn').text(note_btn); 2551 }); 2552 2553 var text_max_papan3=150; 2554 var msg_text_papan3=""; 2555 $('#kartu-ucapan-ucapan').keyup(function(){ 2556 var text_length_papan3=$('#kartu-ucapan-ucapan').val().length; 2557 var msg_text_papan3=$('#kartu-ucapan-ucapan').val(); 2558 }); 2559 2560 var notes_papan3 = [ 2561 2562 [0,"Turut Berduka Cita atas meninggalnya almarhum / almarhumah (Nama)."], [1,"Our Deepest Condolences for the lost of your beloved Father/ Mother/ Husband/ Wife/ Children."], [2,"Our Deepest Sympathy for the lost of your beloved Father/ Mother/ Husband/ Wife/ Children."], [3,"Innalillahi wa innailaihi rojiun, Turut berduka cita atas meninggalnya (nama)."] 2563 2564 ]; 2565 $('#show_note_papan3').click(function(event){ 2566 event.preventDefault(); 2567 var idx_papan3=parseInt($('#note_id_papan3').val()); 2568 if(isNaN(idx_papan3)){ 2569 idx_papan3=0; 2570 }else{ 2571 idx_papan3++; 2572 idx_papan3=idx_papan3%notes_papan3.length; 2573 } 2574 var note_papan3=notes_papan3[idx_papan3][1]; 2575 $('#note_id_papan3').val(idx_papan3);
2576 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3); 2577 $('#msgDelivery').val(note_papan3); 2578 var text_length_papan3=$('#kartu-ucapan-papan').val().length; 2579 var idx_2_papan3=parseInt($('#note_btn_id_papan3').val()); 2580 if(isNaN(idx_2_papan3)){ 2581 idx_2_papan3=0; 2582 }else{ 2583 idx_2_papan3++; 2584 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 2585 } 2586 $('#note_btn_id_papan3').val(idx_2_papan3); 2587 //var note_btn=note_btn_text[idx_2][1]; 2588 //$('#note_btn').text(note_btn); 2589 }); 2590 2591 var text_max_papan4=150; 2592 var msg_text_papan4=""; 2593 $('#kartu-ucapan-ucapan').keyup(function(){ 2594 var text_length_papan4=$('#kartu-ucapan-ucapan').val().length; 2595 var msg_text_papan4=$('#kartu-ucapan-ucapan').val(); 2596 }); 2597 2598 $('#show_note_papan4').click(function(event){ 2599 var notes_papan4 = [ 2600 [0,"Hereâs to youâsteadier, stronger and better every day."], 2601 [1,"Warmest wishes for a speedy recovery!"], 2602 [2,"Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."], 2603 [3,"Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."] 2604 ]; 2605 event.preventDefault(); 2606 var idx_papan4=parseInt($('#note_id_papan4').val()); 2607 console.log(idx_papan4, 'idx_papan4') 2608 if(isNaN(idx_papan4)){ 2609 idx_papan4=0; 2610 }else{ 2611 idx_papan4++; 2612 idx_papan4=idx_papan4%notes_papan4.length; 2613 } 2614 var note_papan4=notes_papan4[idx_papan4][1]; 2615 $('#note_id_papan4').val(idx_papan4); 2616 $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4); 2617 console.log(note_papan4, 'note_papan4') 2618 var text_length_papan4=$('#kartu-ucapan-papan').val().length; 2619 var idx_2_papan4=parseInt($('#note_btn_id_papan4').val()); 2620 if(isNaN(idx_2_papan4)){ 2621 idx_2_papan4=0; 2622 }else{ 2623 idx_2_papan4++; 2624 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 2625 } 2626 $('#note_btn_id_papan4').val(idx_2_papan4); 2627 }); 2628 2629 /* 2630 $("#jenisPapan").change(function(){ 2631 $( "select option:selected").each(function(){ 2632 if($(this).attr("value")=="Happy Wedding"){ 2633 $("#suggest-messages a").hide(); 2634 $("#show_note_papan1").show(); 2635 $("#kartu-ucapan-papan").val(""); 2636 } 2637 if($(this).attr("value")=="Congratulations"){ 2638 $("#suggest-messages a").hide(); 2639 $("#show_note_papan2").show(); 2640 $("#kartu-ucapan-papan").val(""); 2641 } 2642 if($(this).attr("value")=="Duka Cita"){ 2643 $("#suggest-messages a").hide(); 2644 $("#show_note_papan3").show(); 2645 $("#kartu-ucapan-papan").val(""); 2646 } 2647 }); 2648 }).change(); 2649 */ 2650 $(".variant-metafield").each(function(){ 2651 const t = $(this) 2652 const id = t.attr("id") 2653 const target = $(`[data-select=${id}]`) 2654 t.on('select2:selecting', function(e) { 2655 const data = e.params.args.data 2656 target.val(data.text) 2657 }); 2658 }) 2659 }) 2660 </script>
2660 2661 2662 <div id="popupCart"> 2663 <div class="container"> 2664 <div class="wrapperPopupCart"> 2665 <div class="headerPopupCart"> 2666 <div class="d-flex pl-5 pr-5 p-4"> 2667 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="16" height="12" viewBox="0 0 16 12" fill="none"> 2668 <path d="M5.55008 11.3076L0.580078 6.33761L1.29408 5.62461L5.55008 9.88061L14.7061 0.724609L15.4191 1.43861L5.55008 11.3076Z" fill="black"/> 2669 </svg> 2670 <span>item added to your cart</span> 2671 </div> 2672 <a class="close-purchase-popup"> 2673 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="18" height="18" viewBox="0 0 18 18" fill="none"> 2674 <path d="M1.53287 17.4107L0.588867 16.4667L8.05553 9.00002L0.588867 1.53336L1.53287 0.589355L8.99953 8.05602L16.4662 0.589355L17.4102 1.53336L9.94353 9.00002L17.4102 16.4667L16.4662 17.4107L8.99953 9.94402L1.53287 17.4107Z" fill="black"/> 2675 </svg> 2676 </a> 2677 </div> 2678 <div class="contentPopupCart"> 2679 <div class="pl-5 pr-5 p-4"> 2680 <div class="itemContent row m-0 justify-content-between"> 2681 <div class="col-2 align-self-center"> 2682 <img class="d-block" width="80" src="https://blogger.googleusercontent.com/img/a/AVvXsEgru4pmxEDK8Q0eAfZkX7lNm1kvn91-33gihFrug4cPZICCTi0bqOWKDLfc8M5NxwFts-2XUGGys9FW0pWkvhD26R9CuMx-LIrnDKb581dyPGf9EwSHdu3OWOBuQ9zbmQM0UOfMJyFJoMNhEb15apjgjugf-6f_e17Y1LsXDGMHWTeFKV1Vl9iPxJtsrSE"> 2683 </div> 2684 <div class="col-10 align-self-center"> 2685 <div class="row pl-3"> 2686 <div class="col-12 col-lg-7"> 2687 <span class="titleCartPopup text-uppercase">PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026</span> 2688 </div> 2689 <div class="d-flex justify-content-end col-12 col-lg-5"> 2690 <span class="deleteCartPopup hide">Delete</span> 2691 <span class="lineCartPrice align-self-center">Rp 5.000</span> 2692 </div> 2693 </div> 2694 </div> 2695 </div> 2696 <div class="itemProperties"> 2697 <div class="propDeliver"> 2698 <h4>delivery option detail</h4> 2699 <p> 2700 <span>delivery city</span> 2701 <span class="propDeliveryCity">Bandung</span> 2702 </p> 2703 <p> 2704 <span>delivery date</span> 2705 <span class="propDeliveryDate">24/03/2025</span> 2706 </p> 2707 <p> 2708 <span>delivery time</span> 2709 <span class="propDeliveryTime">Afternoon | 13:00 - 18:00</span> 2710 </p> 2711 </div> 2712 <div class="propAddress"> 2713 <h4>delivery option detail</h4> 2714 <p> 2715 <span>RECIPIENT NAME</span> 2716 <span class="propDeliveryName">Kenzie</span> 2717 </p> 2718 <p> 2719 <span>delivery address</span> 2720 <span class="propDeliveryAddress">Jl. Prima No.14, Cigadung, Kec. Cibeunying Kaler, Kota Bandung, Jawa Barat 40191, Indonesia</span> 2721 </p> 2722 <p> 2723 <span>recipient phone number</span> 2724 <span class="propDeliveryPhone">(+62) 899-1000-7788</span> 2725 </p> 2726 <p> 2727 <span>PROVINCE</span> 2728 <span class="propDeliveryProv">Jawa Barat</span> 2729 </p> 2730 <p> 2731 <span>postal code</span> 2732 <span class="propDeliveryZip">40191</span> 2733 </p> 2734 </div> 2735 </div> 2736 <div class="itemAddonCart"> 2737 <div class="toggleAddonCart d-flex justify-content-between"> 2738 <h4>add-ons (0)</h4> 2739 <svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="5" height="9" viewBox="0 0 5 9" fill="none"> 2740 <path d="M1.0128 0.84668L4.78613 4.62001L1.0128 8.39335L0.546133 7.92001L3.84613 4.62001L0.546133 1.32001L1.0128 0.84668Z" fill="black" /> 2741 </svg>
2742 </div> 2743 <div class="wrapperItemAddonCart"></div> 2744 </div> 2745 </div> 2746 </div> 2747 <div class="footerPopupCart"> 2748 <div class="row m-0 pl-5 pr-5 p-4"> 2749 <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a> 2750 <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a> 2751 <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a> 2752 </div> 2753 </div> 2754 </div> 2755 </div> 2756 </div> 2757
2757<script type="9f1692b8b70633eecdaf805b-text/javascript"> 2758 const shareButton = document.getElementById('shareButton'); 2759 shareButton.addEventListener('click', () => { 2760 if (navigator.share) { 2761 navigator.share({ 2762 title: "PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026", 2763 url: "/products/blossom-shine", 2764 text: 'Check out this page!' 2765 }) 2766 .then(() => console.log('Successful share')) 2767 .catch((error) => console.log('Error sharing', error)); 2768 } else { 2769 alert('Web Share API is not supported in this browser.'); 2770 } 2771 }); 2772 2773 // Inventory validation function 2774 function checkInventoryStatus() { 2775 const productSelect = document.getElementById('productSelect'); 2776 const purchaseButton = document.querySelector('#personalizeBtn button'); 2777 2778 if (!productSelect || !purchaseButton) return; 2779 2780 const selectedVariantId = productSelect.value; 2781 2782 // Get variant data from Shopify 2783 fetch(`/products/blossom-shine.js`) 2784 .then(response => response.json()) 2785 .then(product => { 2786 const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId); 2787 2788 if (selectedVariant) { 2789 const isOutOfStock = selectedVariant.inventory_quantity <= 0 && 2790 selectedVariant.inventory_management === 'shopify' && 2791 selectedVariant.inventory_policy !== 'continue'; 2792 2793 if (isOutOfStock) { 2794 purchaseButton.disabled = true; 2795 purchaseButton.textContent = 'Out of Stock'; 2796 purchaseButton.setAttribute('data-out-of-stock', 'true'); 2797 purchaseButton.style.backgroundColor = '#cccccc'; 2798 purchaseButton.style.cursor = 'not-allowed'; 2799 } else { 2800 // Check if button was disabled due to other conditions 2801 2802 const isOtherDisabled = false || true || false; 2803 2804 if (!isOtherDisabled) { 2805 purchaseButton.disabled = false; 2806 purchaseButton.textContent = 'customize your flower board'; 2807 purchaseButton.removeAttribute('data-out-of-stock'); 2808 purchaseButton.style.backgroundColor = ''; 2809 purchaseButton.style.cursor = ''; 2810 } 2811 } 2812 } 2813 }) 2814 .catch(error => { 2815 console.error('Error checking inventory:', error); 2816 }); 2817 } 2818 2819 // Check inventory on page load 2820 document.addEventListener('DOMContentLoaded', function() { 2821 checkInventoryStatus();
2822 2823 // Listen for variant changes 2824 const productSelect = document.getElementById('productSelect'); 2825 if (productSelect) { 2826 productSelect.addEventListener('change', checkInventoryStatus); 2827 } 2828 }); 2829 2830 // Prevent form submission if out of stock 2831 document.addEventListener('click', function(e) { 2832 if (e.target.matches('button[data-out-of-stock="true"]')) { 2833 e.preventDefault(); 2834 e.stopPropagation(); 2835 alert('This product is currently out of stock and cannot be purchased.'); 2836 return false; 2837 } 2838 }); 2839 </script>
2839 2840 </div> 2841 </div> 2842 </div> 2843 </div> 2844 </div> 2845 </div> 2846 </div> 2847 <div id="product-bottom"> 2848 2849 <div class="product-description rte bg-card col-12 py-3 px-0 m-0" itemprop="description"> 2850 <div class="container"> 2851 2852 <div class="short-desc-mobile d-block d-lg-none mb-3"> 2853 <div class="short-desc"> 2854 <ul> 2855 <li><strong>Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari</strong></li> 2856 </div> 2857 <label class="more-mobile">Show More â</label> 2858 </div> 2859 2860 2861
2861<script type="9f1692b8b70633eecdaf805b-text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
2861 2862
2862<script type="9f1692b8b70633eecdaf805b-text/javascript"> 2863 CartJS.init({"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"IDR","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}); 2864 2865 const productType = $("[data-product-type]").data("product-type") 2866 const productDate = Date.parse(new Date()) 2867 2868 const shop = 'outerbloom1.myshopify.com' 2869 const host = 'https://app.asmaraku.com' 2870 // const host = 'http://localhost:5001' 2871 2872 const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec" 2873 2874 const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ') 2875 2876 $("#properties-time").val(new Date().getTime()) 2877 2878 const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent); 2879 2880 if(!isIOS) { 2881 $("#full-date").attr("type", "button") 2882 } 2883 2884 let dateTime = new Date(); 2885 let today = dateTime.getDate(); 2886 let day = dateTime.getDay(); 2887 let hour = dateTime.getHours(); 2888 let min = dateTime.getMinutes(); 2889 let timeOfDay = hour + (min / 100); 2890 2891 async function getFetch(url) { 2892 const response = await fetch(url); 2893 let status = false 2894 let result 2895 if(response.ok) { 2896 status = true 2897 result = await response.json(); 2898 } 2899 return { 2900 status, 2901 data: result 2902 } 2903 } 2904 2905 function setCookie(cname, cvalue, exMins) { 2906 var d = new Date(); 2907 d.setTime(d.getTime() + (exMins*60*1000)); 2908 var expires = "expires="+d.toUTCString(); 2909 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; 2910 } 2911 2912 function getCookie(cname) { 2913 let name = cname + "="; 2914 let decodedCookie = decodeURIComponent(document.cookie); 2915 let ca = decodedCookie.split(';'); 2916 for(let i = 0; i <ca.length; i++) { 2917 let c = ca[i]; 2918 while (c.charAt(0) == ' ') { 2919 c = c.substring(1); 2920 } 2921 if (c.indexOf(name) == 0) { 2922 return c.substring(name.length, c.length); 2923 } 2924 } 2925 return ""; 2926 } 2927 2928 async function renderDate() { 2929 let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8359546319899&v=${Date.now()}`); 2930 console.log(dataDate, 'renderDate') 2931 const data = dataDate?.data 2932 const date = data.date 2933 const time = data.time 2934 2935 console.log(date, 'DATE') 2936 2937 const weekday = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]; 2938 const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; 2939 const htmlDate = []
2940 for(let i = 0;i < date.length;i++) { 2941 const full = date[i].date 2942 const d = new Date(date[i].date); 2943 const day = weekday[d.getDay()]; 2944 const dt = d.getDate(); 2945 const mt = monthly[d.getMonth()]; 2946 const yr = d.getFullYear(); 2947 const isDate = Boolean(date[i].isEnabled) 2948 const cutoffpagi = date[i].cutoff?.pagi 2949 const cutoffsiang = date[i].cutoff?.siang 2950 const cutoffMalam = date[i].cutoff?.Malam 2951 var html = ` 2952 <button data-id="8359546319899" class="date-single calendarbutton btn steps-btn col col-3 btn-date-time" data-day="${day}" data-fulldate="${full}" data-date="${dt < 10 ? '0' + dt : dt}" data-month="${mt}" data-year="${yr}" data-offpagi="${cutoffpagi}" data-offsiang="${cutoffsiang}" data-offMalam="${cutoffMalam}" ${isDate === true ? '' : 'disabled'}> 2953 ${dt === today ? 2954 `Today<span>${dt < 10 ? '0' + dt : dt}</span>` : 2955 `${day}<span>${dt < 10 ? '0' + dt : dt}</span>` 2956 } 2957 </button> 2958 ` 2959 htmlDate.push(html) 2960 } 2961 const htmlTime = []
2962 for(var i = 0;i < time.length;i++) { 2963 const timeText = time[i].text 2964 const timeTime = time[i].time 2965 const timeEnabled = time[i].isEnabled 2966 var html = ` 2967 <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button> 2968 ` 2969 htmlTime.push(html) 2970 } 2971 const deliveryDate = document.getElementById("deliveryDate"); 2972 if(deliveryDate) { 2973 deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join('')) 2974 $("#deliveryTime").html(htmlTime) 2975 if(productType !== '') { 2976 console.log("clarity event " + productType + ' calendaring') 2977 window.clarity("event", `${productType} calendaringSchedule`) 2978 // window.clarity("set", productType, `calendaringSchedule - ${productDate}`) 2979 } 2980 } 2981 } 2982 2983 async function getProvince(city) { 2984 let { data: { province } } = await getFetch(`${host}/api/shipping/address/province?city=${city}`); 2985 console.log(province, 'province') 2986 $("#province").val(province) 2987 } 2988 2989 async function renderAddress() { 2990 let current 2991 if(getCookie("location_delivery")){ 2992 current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1) 2993 } 2994 let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8359546319899`); 2995 console.log(address) 2996 const data = address?.data?.city 2997 const htmlAddress = [] 2998 const grouping = []
2999 for(let i = 0;i < data?.length;i++) { 3000 if(data[i]){ 3001 if(data[i]?.group) { 3002 grouping.push(data[i].group) 3003 } 3004 const price = rupiah.format(data[i]?.rate) 3005 let promo = '(Promo Free Delivery)' 3006 if(data[i]?.name === 'Jakarta - PickUp ASHTA'){ 3007 promo = '(at SCBD, Ashta)' 3008 } else if(data[i]?.name === 'Jakarta - PickUp ITC'){ 3009 promo = '(at Kuningan, ITC Kuningan)' 3010 } else if(data[i]?.name === 'BSD - PickUp'){ 3011 promo = '(at Goldfinch Gading Serpong)' 3012 } else if(data[i]?.name === 'Kota Lainnya'){ 3013 promo = '' 3014 } 3015 htmlAddress.push(`<option data-province="${data[i]?.province}" data-city="${data[i]?.city}" data-note="${data[i]?.note}" data-price="${data[i]?.rate}" value="${data[i]?.name}">${data[i]?.name === 'Kota Lainnya' ? 'Seluruh Kota Lain di Indonesia' : data[i]?.name} ${data[i]?.rate > 0 ? `(${price})` : promo}</option>`) 3016 } 3017 } 3018 3019 const deliveryCity = document.getElementById("cities"); 3020 if(deliveryCity) { 3021 deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join('')) 3022 if(!isIOS) { 3023 $(deliveryCity).select2(); 3024 } 3025 } 3026 } 3027 3028 async function renderZip(v, v2, v3) { 3029 const deliveryZip = document.getElementById("zip"); 3030 if(v === '') { 3031 return 3032 } 3033 let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`); 3034 let zip = dataZip?.data?.zip 3035 console.log(zip) 3036 let htmlZip = []
3037 for(let i = 0; i < zip?.length;i++) { 3038 htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`) 3039 } 3040 deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join('')) 3041 } 3042 3043 renderDate() 3044 renderAddress() 3045 3046 let rupiah = new Intl.NumberFormat('id-ID', { 3047 style: 'currency', 3048 currency: 'IDR', 3049 maximumFractionDigits: 0, 3050 minimumFractionDigits: 0 3051 }); 3052 3053 async function insertCard(data) { 3054 const response = await fetch(`${host}/api/card/new`, { 3055 method: "POST", 3056 headers: { 3057 'Content-Type': 'application/json', 3058 }, 3059 body: data 3060 }) 3061 const result = await response.json() 3062 let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1] 3063 $("#greetingCard").attr("data-index", rowIndex) 3064 return result 3065 } 3066 3067 async function updateCard(data){ 3068 const rowIndex = $("#greetingCard").data("index") 3069 const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, { 3070 method: "PUT", 3071 headers: { 3072 'Content-Type': 'application/json', 3073 }, 3074 body: data 3075 }) 3076 return response 3077 } 3078 3079 function bytesToSize(bytes) { 3080 var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p']; 3081 for (var i = 0; i < sizes.length; i++) { 3082 if (bytes <= 1024) { 3083 return bytes + ' ' + sizes[i]; 3084 } else { 3085 bytes = parseFloat(bytes / 1024).toFixed(2) 3086 } 3087 } 3088 return bytes + ' P'; 3089 } 3090 3091 async function uploadMedia(uri, type) { 3092 nameq = $("#properties-nama-penerima").val() 3093 dear = $("#properties-kartu-nama-penerima").val() 3094 card = $("[data-properties=ucapan]").val() 3095 sender = $("#properties-kartu-nama-pengirim").val() 3096 photo = $("#properties-photo").val() 3097 video = $("#properties-video").val() 3098 status = "Product" 3099 3100 const name = qrID 3101 let formData = new FormData(); 3102 formData.append("file", uri); 3103 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 3104 method: "POST", 3105 body: formData 3106 }) 3107 const result = await response.json(); 3108 if(result) { 3109 const url = result.url 3110 if(type === 'image/jpeg') { 3111 $("#properties-photo").val(url) 3112 $(".preview-image").show() 3113 $(".remove-image").show() 3114 photo = url 3115 } else { 3116 $("#properties-video").val(url) 3117 $("#label-input-video span").text("Change File") 3118 $(".case-qrcode-preview p").text("Scan here for a secret message") 3119 $(".remove-media").show() 3120 $("#product-top #product-meta .case-video-preview p").html(`<span class="replace-video" tite="Replace Video">${uri.name} (${bytesToSize(uri.size)})</span><span> is uploaded</span>`) 3121 $("[for=input-video]").hide() 3122 video = url 3123 } 3124 $(".case-video-preview").show() 3125 $(".steps-card-preview").removeClass("loading") 3126 // updateCard(nameq, dear, card, sender, photo, video, status) 3127 3128 $(".nextBtn").attr("disabled", false) 3129 } 3130 } 3131 3132 function randomString(length, chars) { 3133 var result = ''; 3134 for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))]; 3135 return result; 3136 } 3137 3138 function getNoteCity(fulldate) { 3139 const h_1 = new Date(new Date().setDate(new Date().getDate() + 1)) 3140 const weekday = ["Min","Sen","Sel","Rab","Kam","Jum","Sab"]; 3141 const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; 3142 const d = new Date(h_1); 3143 const day = weekday[d.getDay()]; 3144 const dt = d.getDate(); 3145 const mt = monthly[d.getMonth()]; 3146 const yr = d.getFullYear(); 3147 const p = $("#cities").parent(".form-group") 3148 } 3149 3150 function disabledSameDay() { 3151 let btnFirst = $("#deliveryDate").find("button:first-child") 3152 let getDay = new Date().getDay(); 3153 3154 3155 3156 if(getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5){ 3157 if(hour >= 14.00){ 3158 btnFirst.attr("disabled", true) 3159 } 3160 } else if(getDay == 6){ 3161 if(hour >= 16.00){ 3162 btnFirst.attr("disabled", true) 3163 } 3164 } else if(getDay == 0){ 3165 if(hour >= 16.00){ 3166 btnFirst.attr("disabled", true) 3167 } 3168 } 3169 3170 3171 } 3172 3173 function disabledays(date) { 3174 let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate(); 3175 //if u have to disable a list of day 3176 let removeDays 3177 3178 3179 3180 removeDays = ["2025-2-13", "2025-2-14"]; 3181 3182 if ($.inArray(ymd, removeDays) >= 0) { 3183 return [false]; 3184 } else { 3185 let day = date.getDay(); 3186 if(day == 0 && date.getDate() == 13 && date.getMonth() == 1){ 3187 return [(day == 0), '']; 3188 } 3189 3190 if(day == 0){ 3191 return [(day == 0), '']; 3192 } 3193 3194 3195 return [(day != 0), '']; 3196 } 3197 } 3198 3199 /* Indonesian initialisation for the jQuery UI date picker plugin. */ 3200 /* Written by Deden Fathurahman ([email protected]). */ 3201 ( function( factory ) { 3202 if ( typeof define === "function" && define.amd ) { 3203 3204 // AMD. Register as an anonymous module. 3205 define( [ "../widgets/datepicker" ], factory ); 3206 } else { 3207 3208 // Browser globals 3209 factory( jQuery.datepicker ); 3210 } 3211 }( function( datepicker ) { 3212 3213 datepicker.regional.id = { 3214 closeText: "Tutup", 3215 prevText: "<mundur", 3216 nextText: "maju>", 3217 currentText: "Today", 3218 monthNames: [ "January","February","March","April","May","Juny", 3219 "July","August","September","October","November","December" ], 3220 monthNamesShort: [ "Jan","Feb","Mar","Apr","May","Jun", 3221 "Jul","Agu","Sep","Oct","Nov","Dec" ], 3222 dayNames: [ "Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu" ], 3223 dayNamesShort: [ "Sun","Mon","Tue","Wed","Thu","Fri","Sat" ], 3224 dayNamesMin: [ "Mg","Sn","Sl","Rb","Km","jm","Sb" ], 3225 weekHeader: "Mg", 3226 dateFormat: "D, dd M", 3227 firstDay: 0, 3228 isRTL: false, 3229 showMonthAfterYear: false, 3230 yearSuffix: "" }; 3231 datepicker.setDefaults( datepicker.regional.id ); 3232 3233 return datepicker.regional.id; 3234 3235 } ) ); 3236 3237 function loadPopup() { 3238 $("#backgroundPopup").fadeIn("slow"); 3239 $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow"); 3240 const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first() 3241 if(firstSection.hasClass("purchasePersonalize")) { 3242 if(productType !== '') { 3243 console.log("clarity event " + productType + ' personalize') 3244 window.clarity("event", `${productType} cardPersonalization`) 3245 // window.clarity("set", productType, `cardPersonalization - ${productDate}`) 3246 } 3247 } else if (firstSection.hasClass("sectionPurchaseBoard")) { 3248 console.log("clarity event " + productType + ' personalizeBoard') 3249 window.clarity("event", `${productType} personalizeBoard`) 3250 // window.clarity("set", productType, `personalizeBoard - ${productDate}`) 3251 } 3252 firstSection.removeClass("hide") 3253 3254 // Auto-trigger addon loading when addon section becomes visible 3255 setTimeout(function() { 3256 const addonSection = $(".purchaseAddon") 3257 if(addonSection.length > 0 && !addonSection.hasClass("hide")) { 3258 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 3259 $("[data-addon=upsell-all]").trigger("click") 3260 } 3261 } 3262 }, 200) 3263 } 3264 3265 function disablePopup() { 3266 $("#backgroundPopup").fadeOut("slow"); 3267 $(".purchasePopup").fadeOut("slow"); 3268 $("#popupCart").fadeOut("slow"); 3269 } 3270
3271 function scrollTo(parent, div, dur) { 3272 $(parent).animate({ 3273 scrollTop: $(div).offset().top 3274 }, dur); 3275 } 3276 3277 function loadPopupPersonalize() { 3278 const div = "#purchaseProduct" 3279 const p = "html, body, .product-meta" 3280 $("p.error").remove() 3281 loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all") 3282 const isCity = $("#cities[required]") 3283 const isDate = $("#propDeliveryDate[required]") 3284 const isTime = $("#propDeliveryTime[required]") 3285 // loadPopup() 3286 if(isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') { 3287 loadPopup() 3288 } 3289 if(isCity.val() == '') { 3290 isCity.parent(".row").append("<p class='error'>Choose delivery city</p>") 3291 scrollTo(p, div, 500) 3292 } 3293 if(isDate.val() == '') { 3294 isDate.parents(".row").append("<p class='error'>Choose delivery date</p>") 3295 scrollTo(p, div, 500) 3296 } 3297 if(isTime.val() == '') { 3298 isTime.parents(".row").append("<p class='error'>Choose delivery time</p>") 3299 scrollTo(p, div, 500) 3300 } 3301 } 3302 3303 function quantityCounter() { 3304 $(document).on("click", ".item-card.selected .q_up", function () { 3305 var C = $(this).attr("data-id"), 3306 S = 3307 parseInt( 3308 $(this) 3309 .siblings(".quantity-cart-" + C) 3310 .val() 3311 ) + 1; 3312 $(this).attr("data-quantity", S), 3313 $(this) 3314 .siblings(".quantity-cart-" + C) 3315 .val(S); 3316 }), 3317 $(document).on("click", ".item-card.selected .q_down", function () { 3318 var C = $(this).attr("data-id"), 3319 S = parseInt( 3320 $(this) 3321 .siblings(".quantity-cart-" + C) 3322 .val() 3323 ); 3324 0 < S && $(this).attr("data-quantity", S - 1), 3325 0 < S && 3326 $(this) 3327 .siblings(".quantity-cart-" + C) 3328 .val(S - 1); 3329 }); 3330 } 3331 3332 quantityCounter() 3333 3334 const itemAddon = $(".item-card").length 3335 const nofree = $(".nofree").length 3336 3337 const upsell = '' 3338 3339 if(nofree === itemAddon) { 3340 // $("#itemAddons").html("<p>No Items available</p>") 3341 } 3342 3343 $("#itemAddons .item-card").each(function(e){ 3344 $("#itemAddons").attr("data-length", e) 3345 }) 3346 3347 $("[data-addon]").click(function(){ 3348 const t = $(this) 3349 3350 const data = t.data("addon") 3351 3352 $("[data-addon]").removeClass("selected") 3353 t.addClass("selected") 3354 $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status){ 3355 const products = data.products 3356 const html = [] 3357 for(let i = 0; i < products.length; i++) { 3358 const id = products[i].id 3359 const variantId = products[i].variants[0].id 3360 const img = products[i].images[0].src 3361 let img2 = img.split('.jpg')[0] 3362 const title = products[i].title 3363 const price = products[i].variants[0].price 3364 const tags = products[i].tags 3365 const qty = products[i].variants[0].available 3366 let type_upsell = '' 3367 if(tags.includes('upsell-item-standing')) { 3368 type_upsell = 'standing' 3369 } 3370 console.log(type_upsell) 3371 if(type_upsell !== '') { 3372 const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'} type-${products[i].product_type.toLowerCase()?.replace(' ', '_')}" data-variant="${variantId}" data-id=${id} data-qty="${qty === false ? 0 : ''}" data-upsell="${type_upsell}" data-tags="${tags}"> 3373 3374 <div class="card-image"> 3375 <img src="${img2}_150x.jpg" alt="${title}" width="" height="" /> 3376 </div> 3377 <div class="card-meta"> 3378 <h5>${title}</h5> 3379 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 3380 <input id="card-${variantId}" type="hidden" name="" value="${variantId}"> 3381 </div> 3382 <div class="card-qty"> 3383 <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a> 3384 <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}
3384" value="0" data-price=${price} name="quantity"> 3385 <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="12" height="13" viewBox="0 0 12 13" fill="none"> 3386 <path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/> 3387 </svg></a> 3388 </div> 3389 </div>` 3390 html.push(body) 3391 } 3392 } 3393 $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html) 3394 $("#itemAddons").attr("data-length", products.length) 3395 // $('#itemAddons')[0].swiper.update(); 3396 }); 3397 }) 3398 3399 async function isAddon(){ 3400 let ids = [] 3401 $("#itemAddons .item-card.selected").each(function(i, e){ 3402 const id = $(this).data("id") 3403 ids.push(id) 3404 }) 3405 console.log(ids) 3406 return ids 3407 } 3408 3409 $("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function(){ 3410 const t = $(this).parent() 3411 const id = t.data("id") 3412 const btn = t.parents(".purchaseAddon").find(".next-purchase-button") 3413 t.toggleClass("selected"); 3414 //$(this).next("input").toggleAttr('name', 'id[]'); 3415 if (t.hasClass('selected')) { 3416 t.find("input").val(1) 3417 t.find("input").attr('name', 'id[]'); 3418 } else { 3419 t.find("input").val(0) 3420 t.find("input").removeAttr('name'); 3421 } 3422 $("#properties-addons").val(addons) 3423 const is = await isAddon() 3424 if(is.length === 0) { 3425 btn.text("continue without add-ons") 3426 return 3427 } 3428 if(is.includes(8835692069079)) { 3429 btn.text("personalize acrylic frame") 3430 } else { 3431 btn.text("Continue") 3432 } 3433 3434 }) 3435 3436 async function myAddon(data) { 3437 const c = $(".addonsPurchase .addons") 3438 let items = [] 3439 3440 const spotifyAddons = $(".spotifyAddons").find("[data-index]") 3441 // if(spotifyAddons.length > 0) { 3442 // $(spotifyAddons).each(function(i, e){ 3443 // const spotifyLink = $(this).find(".spotifyLink").val() 3444 // const spotifySong = $(this).find(".spotifySong").val() 3445 // const spotifyArtist = $(this).find(".spotifyArtist").val() 3446 // const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val() 3447 // if(spotifyLink !== '') { 3448 // spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1"> 3449 // <div class="addon-itm-img"> 3450 // <img src="https://cdn.shopify.com/s/files/1/1589/6833/files/Acrylic-Frame_8c71027d-43b7-4322-a98f-d34ab0456397_100x.jpg?v=1739160467" alt="" width="70"/> 3451 // </div> 3452 // <div class="addon-itm-title"> 3453 // <span>[US] Outerbloom Acrylic Frame 4R</span> 3454 // </div> 3455 // <div class="addon-itm-line-total"> 3456 // <span>Rp 99.000</span> 3457 // </div> 3458 // </div> 3459 // <div class="propsAddonSpotify row m-0"> 3460 // <div class="col-12 col-lg-2"></div> 3461 // <div class="col-12 col-lg-10"> 3462 // <p> 3463 // <span>spotify link</span> 3464 // <span class="spotifyLinkAddon">${spotifyLink}</span> 3465 // </p> 3466 // <p> 3467 // <span>uploaded photo</span> 3468 // <span class="spotifyFotoAddon">${spotifyFotoAddon}</span> 3469 // </p> 3470 // <p> 3471 // <span>song / playlist name</span> 3472 // <span class="spotifySongAddon">${spotifySong}</span> 3473 // </p> 3474 // <p> 3475 // <span>artist name</span>
3476 // <span class="spotifyArtistAddon">${spotifyArtist}</span> 3477 // </p> 3478 // </div> 3479 // </div>` 3480 // items.push(spotifyAddon) 3481 // } 3482 // }) 3483 // } 3484 for(let i = 0; i < data.length; i++) { 3485 if(data[i].title !== '[US] Outerbloom Acrylic Frame 4R' ) { 3486 const img = data[i].image 3487 const title = data[i].title 3488 const qty = data[i].qty 3489 const price = data[i].price 3490 const total = Number(qty) * Number(price) 3491 let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}"> 3492 <div class="addon-itm-img"> 3493 <img src="${img}" alt="" width="70"/> 3494 </div> 3495 <div class="addon-itm-title"> 3496 <span>${title}</span> 3497 </div> 3498 <div class="addon-itm-line-price"> 3499 <span>${rupiah.format(price)}</span> 3500 ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`} 3501 </div> 3502 <div class="addon-itm-line-total"> 3503 <span>${rupiah.format(total)}</span> 3504 </div> 3505 </div>` 3506 items.push(addons) 3507 } 3508 } 3509 c.html(items) 3510 const parent = $(".purchaseAddon") 3511 const next = parent.next(".sectionPurchase") 3512 parent.addClass("hide") 3513 next.removeClass("hide") 3514 // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart") 3515 // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`) 3516 } 3517 3518 async function listAddon() { 3519 const data = $("#itemAddons").find(".selected") 3520 let ids = [] 3521 $(data).each(function(){ 3522 const id = $(this).data("variant") 3523 const image = $(this).find(".card-image img").attr("src") 3524 const title = $(this).find(".card-meta h5").text() 3525 const qty = $(this).find(".card-qty input").val() 3526 const price = $(this).find(".card-qty input").data("price") 3527 ids.push({ 3528 id: Number(id), 3529 image, 3530 title, 3531 qty, 3532 price 3533 }) 3534 }) 3535 myAddon(ids) 3536 } 3537 3538 async function customSpotify(idx, length, type){ 3539 let isCard = false 3540 3541 let p = $(".purchasePopupSpotify") 3542 const preLink = $(".spotifyLinkFirst").val() 3543 $("[data-index]").hide() 3544 p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`) 3545 p.find(".regulerAddons, .purchase-button").hide() 3546 p.find(".spotifyAddons").show() 3547 3548 const data = await trackUrl(preLink) 3549 3550 const html = `<div class="row" data-index=${idx} data-length=${length}><div class="col-12 col-lg-6"><div class="form-vertical position-relative"><div class="form-group mb-4"><h4>upload photo</h4><div class=uploadResult><label class=btn for=uploadPhotoSpotify><svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="13" height="11" viewB
3550ox="0 0 13 11" fill="none"> 3551 <path d="M0.875 10.6378H12.375C12.4413 10.6378 12.5049 10.6115 12.5518 10.5646C12.5987 10.5177 12.625 10.4541 12.625 10.3878V0.387817C12.625 0.321513 12.5987 0.257925 12.5518 0.211041C12.5049 0.164157 12.4413 0.137817 12.375 0.137817H0.875C0.808696 0.137817 0.745107 0.164157 0.698223 0.211041C0.651339 0.257925 0.625 0.321513 0.625 0.387817V10.3878C0.625 10.4541 0.651339 10.5177 0.698223 10.5646C0.745107 10.6115 0.808696 10.6378 0.875 10.6378ZM1.125 10.1378V7.31882C1.136 7.31082 1.1485 7.30632 1.1585 7.29632L3.7165 4.73832C3.78198 4.67584 3.869 4.64098 3.9595 4.64098C4.05 4.64098 4.13702 4.67584 4.2025 4.73832L7.963 8.49882C8.00919 8.54501 8.07162 8.5713 8.13694 8.57204C8.20225 8.57279 8.26527 8.54794 8.3125 8.50282L10.2455 6.66682C10.3084 6.60323 10.3938 6.56684 10.4832 6.56543C10.5727 6.56403 10.6591 6.59774 10.724 6.65932L12.125 8.18532L12.1255 8.18582V10.1378H1.125ZM12.125 0.637817V7.44682L11.0845 6.31382C11.0066 6.23514 10.9138 6.17275 10.8116 6.13026C10.7094 6.08777 10.5997 6.06603 10.489 6.06632H10.4885C10.3786 6.06584 10.2697 6.08706 10.168 6.12876C10.0664 6.17046 9.97391 6.23182 9.896 6.30932L8.144 7.97332L4.556 4.38482C4.2365 4.06582 3.6815 4.06632 3.363 4.38482L1.125 6.62332V0.637817H12.125Z" fill="black"/> 3552 </svg><span>Upload your file</span></label></div><input class="uploadPhotoSpotify form-control d-none" accept=image/* type=file><input class="resultPhotoSpotify" type="hidden"></div><div class="form-group mb-5"><h4>Add your Spotify link here</h4> <input class="spotifyLink2 form-control spotifyLink" value="${preLink}" placeholder=https://open.spotify.com/ ></div><div class="form-group mb-4 text-left"><label class=checkbox for=isCustomMessage><span>Personalized Message</span><span class=checkmark></span></label></div><div class="form-group mb-4 form-personalize"><label class="text-left d-block mb-2 text-uppercase"for=spotifySong>Song / playlist name</label> ${data?.song ? `<input class="form-control spotifySong" value="${data?.song}">` : '<input class="form-control spotifySong" value="">'}</div><div class="form-group form-personalize"><label class="text-left d-block mb-2 text-uppercase"for=spotifyArtist>Artist name</label> ${data?.artist ? `<input class="form-control spotifyArtist" value="${data?.artist}">` : '<input class="form-control spotifyArtist" value="">'}</div><div class=btn-action><button class="back-spotify"><svg fill=none height=14 viewBox="0 0 15 14"width=15 xmlns=https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101><path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z"fill=black /></svg> <span>Back</span></button><button data-type="${isCard ? 'card' : ''}" ${isCard ? '' : 'id=addtocart-card'} class="text-uppercase btn w-100${type == 'addon' && idx == length ? ' finished' : ' no-addon'}" disabled>${isCard ? 'Continue Personalizing' : 'add to cart'}</button></div></div></div><div class="col-12 col-lg-6 columnRight"><div class=frame-spotify><div class=frameImage><div class=frameImageUploaded><svg xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="13" height="11" viewB
3552ox="0 0 13 11" fill="none"> 3553 <path d="M0.875 10.6378H12.375C12.4413 10.6378 12.5049 10.6115 12.5518 10.5646C12.5987 10.5177 12.625 10.4541 12.625 10.3878V0.387817C12.625 0.321513 12.5987 0.257925 12.5518 0.211041C12.5049 0.164157 12.4413 0.137817 12.375 0.137817H0.875C0.808696 0.137817 0.745107 0.164157 0.698223 0.211041C0.651339 0.257925 0.625 0.321513 0.625 0.387817V10.3878C0.625 10.4541 0.651339 10.5177 0.698223 10.5646C0.745107 10.6115 0.808696 10.6378 0.875 10.6378ZM1.125 10.1378V7.31882C1.136 7.31082 1.1485 7.30632 1.1585 7.29632L3.7165 4.73832C3.78198 4.67584 3.869 4.64098 3.9595 4.64098C4.05 4.64098 4.13702 4.67584 4.2025 4.73832L7.963 8.49882C8.00919 8.54501 8.07162 8.5713 8.13694 8.57204C8.20225 8.57279 8.26527 8.54794 8.3125 8.50282L10.2455 6.66682C10.3084 6.60323 10.3938 6.56684 10.4832 6.56543C10.5727 6.56403 10.6591 6.59774 10.724 6.65932L12.125 8.18532L12.1255 8.18582V10.1378H1.125ZM12.125 0.637817V7.44682L11.0845 6.31382C11.0066 6.23514 10.9138 6.17275 10.8116 6.13026C10.7094 6.08777 10.5997 6.06603 10.489 6.06632H10.4885C10.3786 6.06584 10.2697 6.08706 10.168 6.12876C10.0664 6.17046 9.97391 6.23182 9.896 6.30932L8.144 7.97332L4.556 4.38482C4.2365 4.06582 3.6815 4.06632 3.363 4.38482L1.125 6.62332V0.637817H12.125Z" fill="black"/> 3554 </svg> <img src="" class=previewImage style=display:none></div></div><div class=frameControl><div class=spotifyData>${data?.song ? `<h3>${data?.song}</h3>` : '<h3><h3>'}${data?.artist ? `<p>${data?.artist}</p>` : '<p></p>'}</div><img src="//outerbloom.com/cdn/shop/t/138/assets/frame-spotify.png?v=138221849636560654691752652420"alt="spotify outerbloom" height=""width=100%><div class=spotifyCode><img src="https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data?.type.slice(0, -1)}:${data?.trackId}"alt=""></div></div></div></div></div>` 3555 // console.log(html) 3556 3557 $(".spotifyAddons").append(html) 3558 3559 $(`[data-index=${idx}]`).show() 3560 3561 if (preLink !== '') { 3562 $(".btn-action .btn").attr("disabled", false) 3563 } else { 3564 $(".btn-action .btn").attr("disabled", true) 3565 } 3566 3567 return html 3568 3569 } 3570 3571 $(".spotifyLinkFirst").keyup(async function(){ 3572 const v = $(this).val() 3573 if(v.includes('spotify:user:spotify')) { 3574 const correct = v.split('user:spotify:')[1] 3575 console.log(correct, 'BNER') 3576 $(this).val(correct) 3577 return 3578 } 3579 if(v.includes("spotify:") || v.includes("https://open.spotify.com/")){ 3580 const data = await trackUrl(v) 3581 if(!data || !data.status) { 3582 $(this).parent().addClass("error") 3583 // $(this).parent().append(`<p class="txt-error">Make sure you copy the complete and correct link from Spotify. Ex: https://open.spotify.com/track/0C3xZJueyBvvMSsl0cETA6</p>`) 3584 $("#personalizeBtnSpotify .btn").attr("disabled", true) 3585 return 3586 } 3587 $(this).parent().removeClass("error") 3588 // $(this).parent().remove("txt-error") 3589 $("#personalizeBtnSpotify .btn").attr("disabled", false) 3590 } else { 3591 $("#personalizeBtnSpotify .btn").attr("disabled", true) 3592 } 3593 }) 3594 3595 $(".purchaseAddon").delegate(".next-addon", "click", function(){ 3596 const parent = $(this).parents(".purchaseAddon") 3597 const next = parent.next(".sectionPurchase") 3598 if(next.hasClass("purchaseAddress")) { 3599 if(productType !== '') { 3600 console.log("clarity event " + productType + ' purchaseDelivery') 3601 window.clarity("event", `${productType} purchaseDelivery`) 3602 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 3603 } 3604 } 3605 const data = $("#itemAddons").find(".selected") 3606 const length = $(".quantity-cart-46067682607319").val() 3607 const checked = data.length; 3608 if(checked > 0) { 3609 if(length > 0) { 3610 $(".purchaseAddon").addClass("purchaseAddonSpotify") 3611 customSpotify(1, length, 'addon') 3612 } else { 3613 listAddon() 3614 } 3615 } else { 3616 parent.addClass("hide") 3617 next.removeClass("hide") 3618 } 3619 }) 3620 3621 $("#personalizeBtnSpotify .btn").click(async function(){ 3622 const isCity = $("#cities[required]") 3623 const isDate = $("#propDeliveryDate[required]") 3624 if((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) { 3625 alert('Please choose Delivery City & Delivery Date') 3626 return 3627 } 3628 const data = await customSpotify(1, 1, 'product') 3629 if(data) { 3630 $("#backgroundPopup").fadeIn("slow"); 3631 $(".purchasePopupSpotify").fadeIn("slow"); 3632 3633 if(productType !== '') { 3634 console.log("clarity event " + productType + ' spotify') 3635 window.clarity("event", `${productType} spotify`) 3636 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 3637 } 3638 } 3639 }) 3640 3641 function formatBytes(bytes, decimals = 2) { 3642 if (!+bytes) return '0 Bytes' 3643
3644 const k = 1024 3645 const dm = decimals < 0 ? 0 : decimals 3646 const sizes = ['B', 'KB', 'MB'] 3647 3648 const i = Math.floor(Math.log(bytes) / Math.log(k)) 3649 3650 return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}` 3651 } 3652 3653 async function trackUrl(link){ 3654 try { 3655 let trackId = link.split('/').pop().split('?')[0]; 3656 let type = '' 3657 if(link.includes("spotify:")) { 3658 const uri = link.split('spotify:')[1] 3659 trackId = uri.split(':')[1] 3660 type = uri.split(':')[0] + 's' 3661 } else { 3662 if(link.match('track')){ 3663 type = 'tracks' 3664 } else if(link.match('playlist')) { 3665 type = 'playlists' 3666 } else if(link.match('artist')) { 3667 type = 'artists' 3668 } else if(link.match('album')) { 3669 type = 'albums' 3670 } 3671 } 3672 console.log(`${host}/api/spotify/${type}/${trackId}`) 3673 const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`) 3674 console.log(data, 'DATA') 3675 const song = data?.data?.name 3676 const artist = data?.data?.artist 3677 return { 3678 song, artist, type, trackId, status: data.status 3679 } 3680 } catch(err) { 3681 console.log(err) 3682 } 3683 } 3684 3685 $(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function(){ 3686 const parent = $(this).parents("[data-index]") 3687 const preview = parent.find(".previewImage") 3688 const file = $(this)[0].files[0]; 3689 if (file) { 3690 const reader = new FileReader(); 3691 reader.onload = async function(e) { 3692 parent.find(".uploadResult label").hide() 3693 parent.find(".uploadedResult").remove() 3694 parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between"> 3695 <p style="text-align: left;margin: 0;"><span style="color: #34C759;font-style: italic;font-size: 14px;text-overflow: ellipsis;overflow: hidden;max-width: 250px;white-space: nowrap;display: inline-block;vertical-align: middle;">${file.name}</span><span style="font-size: 14px;color: #34C759"> (${formatBytes(file.size)})</span> <span style="font-size: 14px">is uploaded</span></p> 3696 <div style="align-self: center"><span class="changeUpload" style="font-size: 12px;cursor: pointer">Change</span><span class="removeUpload" style="cursor: pointer;border-left: 1px solid;padding-left: 10px;margin-left: 10px;height: 10px;display: inline-flex;vertical-align: middle;">
3696<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 3697 <path d="M2.07799 10.8332C1.78154 10.8332 1.52799 10.7276 1.31732 10.5165C1.10666 10.3054 1.0011 10.0523 1.00066 9.75716V1.49982H0.667322C0.572656 1.49982 0.493545 1.46782 0.429989 1.40382C0.366433 1.33982 0.334433 1.26049 0.333989 1.16582C0.333544 1.07116 0.365545 0.992047 0.429989 0.928491C0.494433 0.864935 0.573545 0.833158 0.667322 0.833158H3.00066C3.00066 0.69538 3.05177 0.57538 3.15399 0.473158C3.25621 0.370935 3.37621 0.319824 3.51399 0.319824H6.48732C6.6251 0.319824 6.7451 0.370935 6.84732 0.473158C6.94954 0.57538 7.00066 0.69538 7.00066 0.833158H9.33399C9.42866 0.833158 9.50777 0.865158 9.57132 0.929158C9.63488 0.993158 9.66688 1.07249 9.66732 1.16716C9.66777 1.26182 9.63577 1.34094 9.57132 1.40449C9.50688 1.46805 9.42777 1.49982 9.33399 1.49982H9.00066V9.75649C9.00066 10.0525 8.8951 10.3058 8.68399 10.5165C8.47288 10.7272 8.21954 10.8327 7.92399 10.8332H2.07799ZM8.33399 1.49982H1.66732V9.75649C1.66732 9.87605 1.70577 9.97427 1.78266 10.0512C1.85954 10.128 1.95799 10.1665 2.07799 10.1665H7.92399C8.04354 10.1665 8.14177 10.128 8.21866 10.0512C8.29554 9.97427 8.33399 9.87605 8.33399 9.75649V1.49982ZM3.87266 8.83316C3.96732 8.83316 4.04666 8.80116 4.11066 8.73716C4.17466 8.67316 4.20643 8.59405 4.20599 8.49982V3.16649C4.20599 3.07182 4.17399 2.99271 4.10999 2.92916C4.04599 2.8656 3.96666 2.8336 3.87199 2.83316C3.77732 2.83271 3.69821 2.86471 3.63466 2.92916C3.5711 2.9936 3.53932 3.07271 3.53932 3.16649V8.49982C3.53932 8.59449 3.57132 8.6736 3.63532 8.73716C3.69932 8.80116 3.77843 8.83316 3.87266 8.83316ZM6.12932 8.83316C6.22399 8.83316 6.3031 8.80116 6.36666 8.73716C6.43021 8.67316 6.46199 8.59405 6.46199 8.49982V3.16649C6.46199 3.07182 6.42999 2.99271 6.36599 2.92916C6.30199 2.86516 6.22288 2.83316 6.12866 2.83316C6.03399 2.83316 5.95466 2.86516 5.89066 2.92916C5.82666 2.99316 5.79488 3.07227 5.79532 3.16649V8.49982C5.79532 8.59449 5.82732 8.6736 5.89132 8.73716C5.95532 8.80071 6.03466 8.83271 6.12932 8.83316Z"fill=#757575 /> 3698 </svg> 3699 </span></div></div>`) 3700 parent.find(".frameImageUploaded svg").hide() 3701 parent.find(".frameImage").addClass("uploaded") 3702 preview.attr("src", e.target.result); 3703 preview.show(); 3704 let formData = new FormData(); 3705 formData.append("file", file); 3706 const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, { 3707 method: "POST", 3708 body: formData 3709 }) 3710 const result = await response.json(); 3711 if(result){ 3712 parent.find(".resultPhotoSpotify").val(result.url) 3713 } 3714 } 3715 3716 reader.readAsDataURL(file); 3717 } else { 3718 preview.hide(); 3719 } 3720 }); 3721 3722 $(".spotifyAddons").delegate(".uploadResult", "click", function(){ 3723 $(this).next("input[type=file]").trigger("click") 3724 }) 3725 3726 $(".spotifyAddons").delegate(".changeUpload", "click", function(){ 3727 $(this).parents("input[type=file]").trigger("click") 3728 }) 3729 3730 $(".spotifyAddons").delegate(".removeUpload", "click", function(){ 3731 const parent = $(this).parents("[data-index]") 3732 parent.find(".uploadPhotoSpotify").val("") 3733 parent.find(".uploadResult label").show() 3734 parent.find(".uploadedResult").remove() 3735 parent.find(".frameImageUploaded svg").show() 3736 parent.find(".previewImage").hide() 3737 parent.find(".frameImage").removeClass("uploaded") 3738 }) 3739 3740 $(".spotifyAddons").delegate("label.checkbox", "click", function(){ 3741 const parent = $(this).parents("[data-index]") 3742 parent.toggleClass("checked") 3743 }) 3744 3745 $(".spotifyAddons").delegate(".spotifyLink", "change", async function(){ 3746 const parent = $(this).parents("[data-index]") 3747 const link = $(this).val() 3748 const data = await trackUrl(link) 3749 3750 console.log(data) 3751 3752 if(data.song) { 3753 parent.find(".spotifySong").val(data.song) 3754 parent.find(".spotifyData").find("h3").text(data.song) 3755 } 3756 if(data.artist) { 3757 parent.find(".spotifyArtist").val(data.artist) 3758 parent.find(".spotifyData").find("p").text(data.artist) 3759 } 3760 parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`) 3761 // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M 3762 if (data.status === true) { 3763 parent.find(".btn-action .btn").attr("disabled", false) 3764 } else { 3765 parent.find(".btn-action .btn").attr("disabled", true) 3766 } 3767 }) 3768
3769 $(".spotifyAddons").delegate(".spotifySong", "keyup", async function(){ 3770 const parent = $(this).parents("[data-index]") 3771 const v = $(this).val() 3772 parent.find(".spotifyData h3").text(v) 3773 }) 3774 3775 $(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function(){ 3776 const parent = $(this).parents("[data-index]") 3777 const v = $(this).val() 3778 parent.find(".spotifyData p").text(v) 3779 }) 3780 3781 $(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function(){ 3782 const parent = $(this).parents("[data-index]") 3783 const length = parent.data("length") 3784 const index = parent.data("index") 3785 const indexNext = Number(index) + 1 3786 customSpotify(indexNext, length, 'addon') 3787 }) 3788 3789 3790 $(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function(){ 3791 const parent = $(this).parents(".purchaseAddon") 3792 const next = parent.next(".sectionPurchase") 3793 parent.addClass("hide") 3794 next.removeClass("hide") 3795 next.find(".purchase-button").show() 3796 listAddon() 3797 }) 3798 3799 $(".spotifyAddons").delegate(".back-spotify", "click", async function(){ 3800 const t = $(this).parents("[data-index]") 3801 const parent = $(this).parents(".sectionPurchase") 3802 const current = t.data("index") 3803 const prevCurrent = Number(current) - 1 3804 if(current == 1) { 3805 parent.removeClass("purchaseAddonSpotify") 3806 parent.find(".purchase-button").show() 3807 parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!") 3808 $(".spotifyAddons").empty() 3809 $(".regulerAddons").show() 3810 return 3811 } 3812 t.hide() 3813 t.prev("[data-index]").show() 3814 t.remove() 3815 parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`) 3816 }) 3817 3818 $("#personalizeBtn .btn").click(async function() { 3819 loadPopupPersonalize() 3820 }); 3821 3822 $(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function(){ 3823 $(".sectionPurchaseSpotify").hide() 3824 loadPopupPersonalize() 3825 }) 3826 3827 $(".close-purchase-popup").click(function() { 3828 disablePopup(); 3829 }); 3830 $("#backgroundPopup").click(function() { 3831 // disablePopup(); 3832 }); 3833 3834 $("#popupCart .close-purchase-popup").click(function() { 3835 location.reload() 3836 }); 3837 3838 $('#popupCart').on('hide.bs.modal', function (e) { 3839 location.reload() 3840 }) 3841 3842 $(".next-card").click(function(){ 3843 const parent = $(this).parents(".sectionPurchase") 3844 const next = parent.next(".sectionPurchase") 3845 parent.addClass("hide") 3846 next.removeClass("hide") 3847 }) 3848 3849 $(".back-purchase-button").click(function(){ 3850 const parent = $(this).parents(".sectionPurchase") 3851 const prev = parent.prev(".sectionPurchase") 3852 parent.addClass("hide") 3853 prev.removeClass("hide") 3854 }) 3855 3856 $(document).keypress(function(e) { 3857 if (e.keyCode == 27 && popupStatus == 1) { 3858 disablePopup(); 3859 } 3860 }); 3861 3862 const parentImg = $(".case-img-preview") 3863 const parentVid = $(".case-video-preview") 3864 3865 function readURL(input) { 3866 if (input.files && input.files[0]) { 3867 let reader = new FileReader(); 3868 3869 let type = 'image/jpeg' 3870 const size = input.files[0].size 3871 if(input.files[0].type.match('video/')){ 3872 type = 'video/mp4' 3873 if(size > 15728640) { 3874 alert('File size exceeds maximum limit 15 MB') 3875 return 3876 } 3877 } else { 3878 if(size > 5242880) { 3879 alert('File size exceeds maximum limit 5 MB') 3880 return 3881 } 3882 } 3883 3884 reader.onload = function (e) { 3885 $(".nextBtn").attr("disabled", true) 3886 if(type === 'image/jpeg') { 3887 3888 $('.placeholder-image').hide(); 3889 $('.preview-image').show() 3890 $('.preview-image').attr('src', e.target.result); 3891 3892 } else { 3893 // parentVid.find(".ajax-loader").show(); 3894 $(".steps-card-preview").addClass("loading") 3895 } 3896 } 3897 3898 3899
3900 reader.readAsDataURL(input.files[0]); 3901 } 3902 } 3903 3904 async function readURLPapan(input) { 3905 if (input.files && input.files[0]) { 3906 let reader = new FileReader(); 3907 3908 reader.onload = function (e) { 3909 $('.btn-upload-papan').siblings('label').hide(); 3910 $('.btn-upload-papan img').attr('src', e.target.result); 3911 $('.btn-upload-papan img').show(); 3912 $('.svgLogoPapan').hide(); 3913 } 3914 3915 const type = 'image/jpeg' 3916 const name = `logo-8359546319899-${Date.parse(new Date())}` 3917 3918 let formData = new FormData(); 3919 formData.append("file", input.files[0]); 3920 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 3921 method: "POST", 3922 body: formData 3923 }) 3924 const result = await response.json(); 3925 if(result) { 3926 const url = result.url 3927 $("[data-properties=papan-logo]").val(url) 3928 } 3929 3930 reader.readAsDataURL(input.files[0]); 3931 } 3932 } 3933 3934 async function readURLAddress(input) { 3935 console.log(input, 'readURLAddress') 3936 if (input.files && input.files[0]) { 3937 let reader = new FileReader(); 3938 3939 reader.onload = function (e) { 3940 $('.photo-address').attr('src', e.target.result); 3941 $('.photo-address').show(); 3942 } 3943 3944 const type = 'image/jpeg' 3945 const name = input.files[0].name?.split('.')[0] 3946 3947 let formData = new FormData(); 3948 formData.append("file", input.files[0]); 3949 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 3950 method: "POST", 3951 body: formData 3952 }) 3953 const result = await response.json(); 3954 3955 reader.readAsDataURL(input.files[0]); 3956 3957 return result 3958 } 3959 } 3960 3961 async function addToCartUang() { 3962 var productAddOnId1 = 42122101162199; 3963 var productAddOnId2 = 42122101194967; 3964 var product_id = 8359546319899 3965 const data = { 3966 items: [ 3967 { 3968 quantity: $("#Quantity-" + productAddOnId1).val(), 3969 id: productAddOnId1, 3970 "properties": { "Time": $("#properties-time").val() } 3971 }, 3972 { 3973 quantity: $("#Quantity-" + productAddOnId2).val(), 3974 id: productAddOnId2, 3975 "properties": { "Time": $("#properties-time").val() } 3976 } 3977 ] 3978 } 3979 await fetch(window.Shopify.routes.root + 'cart/add.js', { 3980 method: 'POST', 3981 headers: { 3982 'Content-Type': 'application/json' 3983 }, 3984 body: JSON.stringify(data) 3985 }) 3986 .then(response => { 3987 console.error('Sukses Buket Uang:', response); 3988 $(".form-flower").submit() 3989 }) 3990 .catch((error) => { 3991 console.error('Error Buket Uang:', error); 3992 $(".form-flower").submit() 3993 }); 3994 } 3995 3996 async function saveCard(){ 3997 let isCard = true 3998 const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '' 3999 const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '' 4000 const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '' 4001 const foto = $("#properties-photo").val() 4002 const video = $("#properties-video").val() 4003 const data = JSON.stringify({ 4004 "id": qrID, 4005 "penerima": $("#properties-nama-penerima").val(), 4006 "kartu_penerima": kartu_penerima, 4007 "kartu_ucapan": kartu_ucapan, 4008 "kartu_pengirim": kartu_pengirim, 4009 "foto": foto, 4010 "video": video, 4011 "productId": "8359546319899", 4012 "order_name": "", 4013 "status": "Cart" 4014 }) 4015 4016 4017 } 4018 4019 async function additem(items){ 4020 try { 4021 let formData = items 4022 if(items?.length) { 4023 formData = { 4024 'items': items 4025 }; 4026 } 4027 4028 const add = await fetch(window.Shopify.routes.root + 'cart/add.js', { 4029 method: 'POST', 4030 headers: { 4031 'Content-Type': 'application/json', 4032 'X-Requested-With':'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */ 4033 }, 4034 body: JSON.stringify(formData) 4035 }) 4036 4037 const data = await add.json(); 4038 return data 4039 } catch(err){ 4040 console.log('Error additem', err) 4041 } 4042 } 4043 4044 async function addons(){ 4045 let items = [] 4046 $(".addon-item").each(function(){ 4047 const p = $(this) 4048 const props = p.next(".propsAddonSpotify") 4049 const id = $(this).data("id") 4050 const quantity = $(this).data("qty") 4051 const propId = $("#properties-time").val() 4052 let properties = {} 4053 if(id === 46067682607319) { 4054 const link = props.find(".spotifyLinkAddon").text() 4055 const photo = props.find(".spotifyFotoAddon").text() 4056 const song = props.find(".spotifySongAddon").text() 4057 const artist = props.find(".spotifyArtistAddon").text() 4058 properties = { 4059 id: propId, 4060 "Spotify Link": link !== '' ? link : '-', 4061 "Spotify Photo": photo !== '' ? photo : '-', 4062 "Spotify Song": song !== '' ? song : '-', 4063 "Spotify Artist": artist !== '' ? artist : '-', 4064 type: 'addon' 4065 } 4066 } else { 4067 properties = { 4068 "id": propId, 4069 "type": "addon" 4070 } 4071 } 4072 items.push({ 4073 id, 4074 quantity, 4075 properties 4076 }) 4077 }) 4078 return items 4079 } 4080 4081 async function propItems() { 4082 let props = {} 4083 $("[data-properties]").each(function(e){
4084 let elementType = this.tagName; 4085 const k = $(this).data("properties") 4086 if(k !== 'penerima' && k !== 'ucapan' && k !== 'pengirim' && k !== 'nama-penerima' && k !== 'alamat-penerima' && k !== 'telepon-penerima' && k !== 'company' && k !== 'province' && k !== 'foto-alamat' && k !== 'papan-logo') { 4087 const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val(); 4088 if(v !== '') { 4089 props[k] = v?.replace(/[\s\n]/g, ''); 4090 } 4091 } 4092 }) 4093 return props 4094 } 4095 4096 async function showPopupCart(items){ 4097 if(productType !== '') { 4098 console.log("clarity event " + productType + ' completeOrder') 4099 window.clarity("event", `${productType} completeOrder`) 4100 // window.clarity("set", productType, `completeOrder - ${productDate}`) 4101 } 4102 $("#popupCart").show() 4103 4104 $(".propDeliveryCity").text($("#cities").val()) 4105 $(".propDeliveryDate").text($("#propDeliveryDate").val()) 4106 $(".propDeliveryTime").text($("#propDeliveryTime").val()) 4107 $(".propDeliveryName").text($("[data-properties=nama-penerima]").val()) 4108 $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val()) 4109 $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val()) 4110 $(".propDeliveryProv").text($("#province").val()) 4111 $(".propDeliveryZip").text($("#zip").val()) 4112 4113 const addons = [] 4114 if(items && items.length > 0) { 4115 for(let i = 1; i < items.length; i++) { 4116 const spotifyLink = items[i].properties['Spotify Link'] 4117 const spotifyPhoto = items[i].properties['Spotify Photo'] 4118 const spotifySong = items[i].properties['Spotify Song'] 4119 const spotifyArtist = items[i].properties['Spotify Artist'] 4120 const price = items[i].price / 100 4121 const props = spotifyLink ? `<div class="propsAddonCart row m-0"> 4122 <div class="col-12 col-lg-2"></div> 4123 <div class="col-12 col-lg-10"> 4124 <p> 4125 <span>spotify link</span> 4126 <span>${spotifyLink}</span> 4127 </p> 4128 <p> 4129 <span>Upload Photo</span> 4130 <span>${spotifyPhoto}</span> 4131 </p> 4132 <p> 4133 <span>song / playlist name</span> 4134 <span>${spotifySong}</span> 4135 </p> 4136 <p> 4137 <span>artist name</span> 4138 <span>${spotifyArtist}</span> 4139 </p> 4140 </div> 4141 </div>` : ''; 4142 addons.push(`<div class="row m-0"> 4143 <div class="imgAddonCart col-2"> 4144 <img 4145 width="43" 4146 src="${items[i].image}" 4147 alt="" 4148 > 4149 </div> 4150 <div class="imgAddonTitlePrice col-10 align-self-center"> 4151 <div class="row justify-content-between m-0"> 4152 <div class="col-12 col-lg-8"> 4153 <h5>${items[i].title}</h5> 4154 </div> 4155 <div class="col-12 col-lg-4 text-lg-right"> 4156 <span>${rupiah.format(price)}</span> 4157 </div> 4158 </div> 4159 </div> 4160 </div>${props}`) 4161 } 4162 } 4163 // console.log(addons) 4164 if(addons.length === 0) { 4165 $(".itemAddonCart").hide() 4166 return 4167 } 4168 $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`) 4169 $(".wrapperItemAddonCart").html(addons) 4170 } 4171 4172 const money = (money) => { 4173 return new Intl.NumberFormat('id-ID', 4174 { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 } 4175 ).format(money); 4176 } 4177 4178 async function showNoteMoney() { 4179 let qty50k = $("[data-properties='Uang 50k']").val() 4180 let qty100k = $("[data-properties='Uang 100k']").val() 4181 const total50k = Number(qty50k) * 50000 4182 const total100k = Number(qty100k) * 100000 4183 const total_all = total50k + total100k 4184 $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`) 4185 $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`) 4186 $(".itemMoney").html(`<p>For the money arrangement, please transfer <strong>IDR ${money(total_all)}</strong> to <strong>Bank Mandiri 1020001234522 (PT Modern Mekar Abadi)</strong>
4186 and contact our <a href="https://member.pjphorg.works/" target="_blank" style="text-decoration: underline; color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`) 4187 } 4188 4189 async function removeImage() { 4190 const data = JSON.stringify({ 4191 "ID": $("#properties-properties-qrId").val(), 4192 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 4193 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 4194 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 4195 "Nama Penerima": $("#properties-nama-penerima").val(), 4196 "Order Number":"", 4197 "Status":"Product", 4198 "Foto": "", 4199 "Media": $("#properties-video").val(), 4200 "Image": "8359546319899" 4201 }) 4202 const remove = updateCard(data) 4203 if(remove) { 4204 $(this).hide() 4205 $("#properties-photo").val("-") 4206 $(".placeholder-image").show() 4207 $(".preview-image").attr("src", "") 4208 } 4209 } 4210 4211 async function removeVideo() { 4212 const data = JSON.stringify({ 4213 "ID": $("#properties-properties-qrId").val(), 4214 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 4215 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 4216 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 4217 "Nama Penerima": $("#properties-nama-penerima").val(), 4218 "Order Number":"", 4219 "Status":"Product", 4220 "Foto": $("#properties-photo").val(), 4221 "Media": "", 4222 "Image": "8359546319899" 4223 }) 4224 const remove = updateCard(data) 4225 if(remove) { 4226 $("#properties-video").val("-") 4227 $(this).find("img").hide() 4228 $(this).hide() 4229 $(this).prev("p").text("Add video to make it more special (optional)") 4230 $("#label-input-video").show() 4231 $("#label-input-video span").text("Upload Video") 4232 $(".case-video-preview p span").remove() 4233 } 4234 } 4235 4236 async function loadItemOccasion(t, occasion) { 4237 const name = occasion?.replace('greeting-card-', '') 4238 $("#kartu-ucapan").val("") 4239 $("[data-occassion]").removeClass("selected") 4240 $("[data-properties=ucapan]").val("") 4241 $("#save-card").attr("disabled", true) 4242 t.addClass("selected") 4243 $("#show_note").attr("data-card-occassion", name) 4244 $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status){ 4245 const products = data.products 4246 const html = [] 4247 for(let i = 0; i < products.length; i++) { 4248 const id = products[i].id 4249 const variantId = products[i].variants[0].id 4250 const img = products[i].images[0].src 4251 const title = products[i].title 4252 const price = products[i].variants[0].price 4253 const qty = products[i].variants[0].inventory_quantity 4254 const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}> 4255 <label for="card-${variantId}"></label> 4256 <div class="card-image"> 4257 <img src="${img}" alt="${title}" width="" height="" /> 4258 </div> 4259 <div class="card-meta text-center"> 4260 <h5>${title}</h5> 4261 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 4262 <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}"> 4263 </div> 4264 </div>` 4265 html.push(body) 4266 } 4267 const withoutCard = `<div class="item-card item-without-card"> 4268 <label for="card-0"></label> 4269 <div class="card-image"> 4270 <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" /> 4271 </div> 4272 <div class="card-meta text-center"> 4273 <h5>
4273Send without a greeting card</h5> 4274 <input id="card-0" type="radio" name="id" value="" data-price=""> 4275 </div> 4276 </div>` 4277 $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join("")) 4278 }); 4279 } 4280 4281 $(document).ready(function(){ 4282 4283 // Observer to auto-trigger addon loading when addon section becomes visible 4284 const addonObserver = new MutationObserver(function(mutations) { 4285 mutations.forEach(function(mutation) { 4286 const target = $(mutation.target) 4287 if(target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') { 4288 if(!target.hasClass('hide')) { 4289 // Addon section just became visible, ensure items are loaded 4290 setTimeout(function() { 4291 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 4292 console.log("Auto-triggering addon load...") 4293 $("[data-addon=upsell-all]").trigger("click") 4294 } 4295 }, 150) 4296 } 4297 } 4298 }) 4299 }) 4300 4301 // Start observing addon section 4302 const addonSection = document.querySelector('.purchaseAddon') 4303 if(addonSection) { 4304 addonObserver.observe(addonSection, { 4305 attributes: true, 4306 attributeFilter: ['class'] 4307 }) 4308 } 4309 4310 $(".purchasePopup").delegate("#addtocart-card", "click", async function(){ 4311 4312 $(this).find("span").addClass("loading") 4313 let isValid = true 4314 $(".formAddressPurchase [required]").each(function(){ 4315 const t = $(this) 4316 const input = t.val() 4317 const p = t.parent() 4318 if(input === '') { 4319 p.addClass("error") 4320 isValid = false 4321 } 4322 }) 4323 4324 if(!isValid) { 4325 $(this).find("span").removeClass("loading") 4326 return 4327 } 4328 4329 let items = [] 4330 const mainProps = { 4331 4332 "Delivery Date": $("#propDeliveryDate").val(), 4333 "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-' , 4334 "Kota Pengiriman": $("#cities").val(), 4335 "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-' , 4336 "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-' , 4337 "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-' , 4338 "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-' , 4339 4340 4341 "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-' , 4342 "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-' , 4343 "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-' , 4344 "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-' , 4345 "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-' , 4346 4347 4348 "Province": $("#province").val() !== '' ? $("#province").val() : '-' , 4349 "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-' , 4350 "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-' , 4351 "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-' , 4352 "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 4353 "type": 'product' 4354 } 4355 const props = await propItems() 4356 properties = {...mainProps, ...props }; 4357 const id = $("#productSelect").find('option:selected').val() 4358 console.log(id, 'main ID') 4359 const mainItem = { 4360 id: Number(id), 4361 quantity: 1, 4362 properties 4363 } 4364 items.push(mainItem) 4365 const cardId = $("#itemCards").find(".selected input").val() 4366 const cardItem = { 4367 id: Number(cardId), 4368 quantity: 1, 4369 properties: { "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', type: 'card' } 4370 } 4371 console.log(cardId, 'cardId') 4372 if(cardId) { 4373 items.push(cardItem) 4374 } 4375 const addon = await addons() 4376 if(addon) { 4377 for(let i = 0;
4377 i < addon.length; i++){ 4378 items.push({ 4379 id: addon[i].id, 4380 quantity: addon[i].quantity, 4381 properties: addon[i].properties 4382 }) 4383 } 4384 } 4385 const addItems = await additem(items) 4386 console.log(addItems.items, 'add items') 4387 if(addItems) { 4388 $(this).find("span").removeClass("loading") 4389 disablePopup() 4390 showPopupCart(addItems.items) 4391 4392 localStorage.setItem("items", JSON.stringify(addItems.items)) 4393 } 4394 }) 4395 4396 $("#addtocart-cart .btn").click(async function(){ 4397 const id = $("#productSelect").find('option:selected').val() 4398 const mainProps = { 4399 id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 4400 type: 'product' 4401 } 4402 const props = await propItems() 4403 const properties = { ...mainProps, ...props }; 4404 const items = { 4405 id: Number(id), 4406 quantity: 1, 4407 properties 4408 } 4409 const addItems = await additem(items) 4410 if(addItems) { 4411 showPopupCart(addItems.items) 4412 localStorage.setItem("items", JSON.stringify(addItems)) 4413 } 4414 }) 4415 4416 $(".formAddressPurchase [required]").change(function(){ 4417 const t = $(this) 4418 const p = t.parent() 4419 const v = t.val() 4420 if(v !== '') { 4421 p.removeClass("error") 4422 } 4423 }) 4424 4425 $("#save-card").click(async function(){ 4426 const parent = $(this).parents(".sectionPurchase") 4427 const next = parent.next(".sectionPurchase") 4428 $(this).find("span").addClass("loading") 4429 const card = await saveCard() 4430 console.log(card, 'ssaveCCC') 4431 if(card?.status === 200 || card?.status === 201) { 4432 $(".scanCard").removeClass("hide") 4433 $(this).find("span").removeClass("loading") 4434 parent.addClass("hide") 4435 next.removeClass("hide") 4436 if(next.hasClass("purchaseAddon")) { 4437 $("[data-addon=upsell-all]").click() 4438 console.log("clarity event addons") 4439 window.clarity("event", `${productType} add-ons`) 4440 // Ensure addon items are loaded when entering addon popup 4441 setTimeout(function() { 4442 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 4443 $("[data-addon=upsell-all]").trigger("click") 4444 } 4445 }, 100) 4446 } 4447 if(next.hasClass("purchaseAddress")) { 4448 $("#zip").select2() 4449 } 4450 } 4451 }) 4452 4453 $("#skip-card").click(async function(){ 4454 $("#greetingCard [data-properties]").val("") 4455 $("#properties-photo").val("") 4456 $("#properties-video").val("") 4457 const parent = $(this).parents(".sectionPurchase") 4458 const next = parent.next(".sectionPurchase") 4459 parent.addClass("hide") 4460 next.removeClass("hide") 4461 // $("#itemCards").html("") 4462 removeImage() 4463 removeVideo() 4464 if(next.hasClass("purchaseAddon")) { 4465 $("[data-addon='upsell-all']").click() 4466 console.log("clarity event addons") 4467 window.clarity("event", `${productType} add-ons`) 4468 // Ensure addon items are loaded when entering addon popup 4469 setTimeout(function() { 4470 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 4471 $("[data-addon='upsell-all']").trigger("click") 4472 } 4473 }, 100) 4474 } 4475 if(next.hasClass("purchaseAddress")) { 4476 $("#zip").select2() 4477 } 4478 }) 4479 4480 $("#msgCard").click(async function(){ 4481 $(this).parent().addClass("loading") 4482 let occasion = $(".selected[data-occassion]").data("occassion") 4483 occasion = occasion?.replace("greeting-card-", "") 4484 const { data } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`); 4485 const d = data?.data 4486 for(let i = 0; i < d.length; i++) { 4487 const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1); 4488 const greeting = d[num]?.Greeting 4489 $(".greetingCard textarea").val(greeting) 4490 $(this).parent().removeClass("loading") 4491 } 4492 $("#save-card").attr("disabled", false) 4493 }) 4494 4495 $(".sectionPurchaseBoard .next-purchase-button").click(function(){ 4496 const parent = $(this).parents(".sectionPurchase") 4497 const next = parent.next(".sectionPurchase") 4498 parent.addClass("hide") 4499 next.removeClass("hide") 4500 }) 4501 4502 $("#editCard").click(function(){ 4503 $(".custom-card").show() 4504 $(".preview-card").hide() 4505 }) 4506 4507 $("#first_name, #last_name").change(function(){ 4508 const v = $(this).val() 4509 const first_name = $("#first_name").val() 4510 const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : '' 4511 $("[data-properties=nama-penerima]").val(first_name+last_name) 4512 }) 4513 4514 $("[data-occassion]").click(function(){ 4515 const t = $(this) 4516 const p = t.parents(".sectionPurchase") 4517 // $(".greetingCard").addClass("disabled") 4518 const occasion = t.data("occassion") 4519 loadItemOccasion(t, occasion) 4520 }) 4521 4522 $("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function(){ 4523 const id = $(this).parent(".item-card").data("id") 4524 const t = $(this).parent(".item-card") 4525 const target = t.find("input") 4526 const v = $('.item-card input[type="radio"]:checked').val(); 4527 $("#itemCards .item-card").removeClass("selected") 4528 t.addClass("selected") 4529 $("#itemCards .item-card").find("input").attr("name", "") 4530 if(target.length > 0) { 4531 target.attr("name", "id[]") 4532 $("#properties-card").val(id) 4533 $(".greetingCard").removeClass("disabled") 4534 $("#skip-card").attr("disabled", false) 4535 } else { 4536 $("#properties-card").val("") 4537 } 4538 }) 4539 4540 $("#itemCards").delegate(".item-without-card label", "click", function(){ 4541 const parent = $(this).parents(".sectionPurchase") 4542 const next = parent.next(".sectionPurchase") 4543 $(".greetingCard").addClass("disabled") 4544 parent.addClass("hide") 4545 next.removeClass("hide") 4546 $("[data-addon=upsell-all]").click() 4547 $("#zip").select2() 4548 }) 4549 4550 $("[data-properties=ucapan]").keyup(function(){ 4551 const v = $(this).val() 4552 const p = $(this).parents(".sectionPurchase") 4553 $(".purchaseAddress").find(".greetingCard textarea").val(v) 4554 if(v.length > 3) { 4555 p.find(".next-purchase-button").attr("disabled", false) 4556 } else { 4557 p.find(".next-purchase-button").attr("disabled", true) 4558 } 4559 }) 4560 4561 $("[data-properties=penerima]").keyup(function(){ 4562 const v = $(this).val() 4563 $(".purchaseAddress").find("[data-properties=penerima]").val(v) 4564 }) 4565 4566 $("[data-properties=pengirim]").keyup(function(){ 4567 const v = $(this).val() 4568 $(".purchaseAddress").find("[data-properties=pengirim]").val(v) 4569 }) 4570 4571 $(document).click(function(e){
4572 4573 if($(e.target).closest('.wrapperPopupCart').length != 0) return false; 4574 // $('#popupCart').fadeOut('slow'); 4575 // location.reload() 4576 }); 4577 4578 $(".toggleAddonCart").click(function(){ 4579 const p = $(this).parent(".itemAddonCart") 4580 p.toggleClass("open") 4581 }) 4582 4583 $(".btnViewCart").click(function(){ 4584 window.location.href = "https://outerbloom.com/cart"; 4585 }) 4586 4587 $(".btnViewCheckout").click(async function(){ 4588 $(this).find("span").addClass("loading") 4589 let zip = $("#zip").val() 4590 const first_name = $("#first_name").val() 4591 const last_name = $("#last_name").val() 4592 const company = $("#company").val() !== '' ? $("#company").val() : '' 4593 const address1 = $("#delivery_address").val() 4594 const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : '' 4595 zip = zip && zip !== '' ? zip?.split(' - ')[0] : '' 4596 const phone = $("#recipient_number").val() 4597 const city = $("#cities").val() 4598 const province = $("#province").val() 4599 const country = 'Indonesia' 4600 const ver = Date.parse(new Date()) 4601 const params = `checkout[email]=&checkout[shipping_address][first_name]=${first_name}&checkout[shipping_address][last_name]=${last_name}&checkout[shipping_address][company]=${company}&checkout[shipping_address][address1]=${address1}&checkout[shipping_address][address2]=${address2}&checkout[shipping_address][city]=${city}&checkout[shipping_address][country]=${country}&checkout[shipping_address][province]=${province}&checkout[shipping_address][zip]=${zip}&checkout[shipping_address][phone]=${phone}&v=${ver}` 4602 4603 const clear = await fetch(`/cart/clear.js`, {method: 'POST'}) 4604 if(clear.status === 200) { 4605 const savedItem = window.localStorage.getItem("items"); 4606 const items = JSON.parse(savedItem) 4607 const addItems = await additem(items) 4608 console.log(addItems, 'new addItems') 4609 if(addItems) { 4610 window.location.href = `https://outerbloom.com/checkout?${params}`; 4611 } 4612 } 4613 }) 4614 4615 $(".btnContinueShopping").click(function(){ 4616 window.location.href = "https://outerbloom.com/"; 4617 }) 4618 4619 if (isIOS) { 4620 $(".empty-state-card").click(function(){ 4621 $("#input-foto").trigger("click") 4622 }) 4623 $(".btn-upload-image").click(function(){ 4624 $("#input-foto").trigger("click") 4625 }) 4626 $("[for=input-video]").click(function(){ 4627 $("#input-video").trigger("click") 4628 }) 4629 $(".btn-upload-papan").click(function(){ 4630 $("#logoPapan").trigger("click") 4631 }) 4632 } 4633 4634 $("[data-properties]").each(function(){ 4635 const select = $(this).parents(".form-group").find("select") 4636 $(this).change(function(){ 4637 const name = $(this).data("properties") 4638 const v = $(this).val() 4639 if (name == 'telepon-penerima') { 4640 let phone = v.replace(/[^0-9]/g, '') 4641 $(this).val(phone); 4642 $("#properties-telepon-penerima").val(phone) 4643 $('.iti__search-input').val('-') 4644 } else { 4645 $("#properties-" + name).val(v) 4646 } 4647 }) 4648 select.on("change", function(){ 4649 const name = $(this).data("properties") 4650 const v = $(this).val() 4651 $("#properties-" + name).val(v) 4652 }) 4653 }) 4654 4655 $("#show_note").click(function(){ 4656 nameq = $("#properties-nama-penerima").val() 4657 dear = $("#properties-kartu-nama-penerima").val() 4658 card = $("[data-properties=ucapan]").val() 4659 sender = $("#properties-kartu-nama-pengirim").val() 4660 photo = $("#properties-photo").val() 4661 video = $("#properties-video").val() 4662 updateCard(nameq, dear, card, sender, photo, video, status) 4663 }) 4664 4665 $(".remove-image").click(function(e){ 4666 e.preventDefault() 4667 $(this).find("img").show() 4668 removeImage() 4669 }) 4670 4671 $(".remove-media").click(function(e){ 4672 e.preventDefault() 4673 $(this).find("img").show() 4674 removeVideo() 4675 }) 4676 4677 4678 4679 $("[data-delivery_method]").click(function(e){
4680 e.preventDefault() 4681 const t = $(this) 4682 const data = t.data("delivery_method") 4683 $("[data-delivery_method]").removeClass("selected") 4684 t.addClass("selected") 4685 $("#cities").val("") 4686 $("#properties-delivery-date").val("-") 4687 $("#deliveryDate button").removeClass("selected") 4688 $("#full-date").val("Full Calendar â") 4689 $("#propDeliveryDate").val("") 4690 const step3 = $("#step-3") 4691 if(data.match('PickUp')) { 4692 $(".selfpickup-point").show() 4693 step3.find("[data-finished=false]").hide() 4694 $("#panel-4").hide() 4695 step3.find("[data-finished=true]").show() 4696 $("#cities").attr("required", false) 4697 $("#form-group-city").hide() 4698 $("#row-delivery-time").hide() 4699 $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-") 4700 $("#propDeliveryTime").attr("required", false) 4701 // $("#deliveryDate").find("button:first-child").addClass("stop") 4702 $(".form-selfpickup").show() 4703 $(".form-delivery").hide() 4704 $(".form-delivery").find("input, textarea, select").val("") 4705 $(".form-delivery").find("input, textarea, select").attr("required", false) 4706 $("#properties-shipping").val("0") 4707 $("#noteDeliveryDate").hide() 4708 $(".form-delivery .form-control").attr("required", false) 4709 $("#stepNav4").hide() 4710 4711 $("#deliveryDate").find("button:nth-child(1)").addClass("stop") 4712 4713 4714 4715 if(timeOfDay >= 16.01){ 4716 $("#deliveryDate").find("button:nth-child(2)").addClass("stop") 4717 } 4718 } else { 4719 4720 4721 $("#deliveryDate").find("button:nth-child(1)").removeClass("stop") 4722 step3.find("[data-finished=false]").show() 4723 $("#panel-4").show() 4724 step3.find("[data-finished=true]").hide() 4725 $("#cities").attr("required", true) 4726 $(".selfpickup-point").hide() 4727 $("#form-group-city").show() 4728 $("#cities").val('').trigger('change'); 4729 $("#properties-kota-pengiriman").val("-") 4730 4731 $("#row-delivery-date, #row-delivery-time").show() 4732 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 4733 $("#deliveryDate").find("button").removeClass("stop") 4734 $(".form-selfpickup").hide() 4735 $(".form-delivery").show() 4736 $(".form-delivery").find("input, textarea, select").attr("required", true)
4737 $(".form-delivery [data-properties]").attr("readonly", false) 4738 $("#properties-kodepos").val("-") 4739 $("#properties-alamat-penerima").val("-") 4740 $(".form-delivery .form-control").attr("required", true) 4741 $(this).parents(".setup-content").attr("id", "step-1") 4742 4743 $("#stepNav4").show() 4744 } 4745 }) 4746 4747 $("[name=selfpickup]").click(function(){ 4748 const p = $(this).parents(".row-pickup") 4749 const pickupCity = $("input[name='selfpickup']:checked").val(); 4750 const pickupAddress = $("input[name='selfpickup']:checked").data("address"); 4751 const pickupZip = $("input[name='selfpickup']:checked").data("zip"); 4752 4753 $(".row-pickup").removeClass("selected") 4754 p.addClass("selected") 4755 4756 $("#properties-kota-pengiriman").val(pickupCity) 4757 $("#province").val("Jakarta") 4758 $("#properties-alamat-penerima").val(pickupAddress) 4759 $("#properties-kodepos").val(pickupZip) 4760 }) 4761 4762 $("#cities").change(function(e){ 4763 e.preventDefault() 4764 $(this).parent(".row").find("p.error").remove() 4765 $("#full-date").val("Full Calendar") 4766 $("#deliveryDate, #deliveryDateFull label ").show() 4767 $("#deliveryDateFull").removeClass("filled") 4768 $(".btnChangeDeliveryDate").addClass("hide") 4769 $("#full-date").prop('disabled', false); 4770 $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success") 4771 $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true) 4772 const step3 = $("#step-3") 4773 $("#cityNote").remove() 4774 $("#noteDeliveryDate").hide() 4775 $("#noteDeliveryDate").empty() 4776 let v = $(this).val() 4777 let v2 = $('option:selected', this).attr('data-city'); 4778 let v3 = $('option:selected', this).attr('data-province'); 4779 let price = $('option:selected', this).attr('data-price'); 4780 $("#country").val(v) 4781 $("#properties-kota-pengiriman").val(v) 4782 $("#properties-shipping").val(price) 4783 $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected") 4784 $("#properties-delivery-date, #properties-delivery-time").val("-") 4785 $("#propDeliveryDate, #propDeliveryTime").val("") 4786 let note = $('option:selected', this).attr('data-note'); 4787 if(v === 'Kota Lainnya') { 4788 $("#noteDeliveryDate").show() 4789 $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.") 4790 $("#zip").attr("required", false) 4791 $("#zip").hide() 4792 $("#propDeliveryDate, #propDeliveryTime").attr("required", false) 4793 $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-") 4794 $("#row-delivery-date, #row-delivery-time").hide() 4795 $("#properties-shipping").val("") 4796 // $(this).parents(".setup-content").attr("id", "step-2") 4797 4798 } else { 4799 $("#noteDeliveryDate").hide() 4800 $("#zip").attr("required", true) 4801 $("#zip").show() 4802 $("#row-delivery-date, #row-delivery-time").show() 4803 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 4804 $("#deliveryDate").find("button").removeClass("stop") 4805 // $(this).parents(".setup-content").attr("id", "step-1") 4806 4807 } 4808 4809 4810 4811 // if(v !== 'Jakarta') { 4812 // $("[data-type=upsell]").hide() 4813 // } else { 4814 // $("[data-type=upsell]").show() 4815 // } 4816 // $('.collection-addons')[0].swiper.update(); 4817 4818 4819 getProvince(v) 4820 $("#zip").html(`<option value="">Choose Postal Code</option>`) 4821 renderZip(v, v2, v3) 4822 4823 disabledSameDay() 4824 4825 4826 if(v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') { 4827 4828 $("#cardOccasion, #navAddon, .collection-addons").hide() 4829 4830 $("[data-addon=giftcard]").show() 4831 $("[data-addon=giftcard]").click() 4832 $("#itemAddons").show() 4833 $("#flower-step").addClass("nonjadetabek") 4834 } else { 4835 $("#cardOccasion, #navAddon, .collection-addons").show() 4836 $("[data-addon=all]").click() 4837 $("#flower-step").removeClass("nonjadetabek") 4838 } 4839 4840 if(v !== '') { 4841 $("#personalizeBtn .btn").attr("disabled", false) 4842 } else { 4843 $("#personalizeBtn .btn").attr("disabled", true) 4844 } 4845 4846 }) 4847 4848 $("#zip").change(function(e){
4849 let v = $(this).val() 4850 var city = $("#cities").find('option:selected'); 4851 $("#properties-kodepos").val(v) 4852 if(city === 'Kota Lainnya') { 4853 $(this).attr("required", true) 4854 $("#recipient-address").val("") 4855 } 4856 }) 4857 4858 4859 var minDate = +7 4860 4861 4862 4863 $("#full-date").datepicker({ 4864 minDate, 4865 dateFormat: 'Mdd_yy', //Nop22_2021, 4866 4867 beforeShowDay: disabledays, 4868 4869 onSelect: function (date) { 4870 $("#deliveryDate, #deliveryDateFull label ").hide() 4871 $("#deliveryDateFull").addClass("filled") 4872 $(".btnChangeDeliveryDate").removeClass("hide") 4873 $("#full-date").prop('disabled', true); 4874 $('#propDeliveryDate, #properties-delivery-date').val('Kirim_'+date); 4875 $(".date-full").addClass("selected") 4876 $(".date-single, .calendar-group").removeClass("selected") 4877 $("#propDeliveryTime").val('') 4878 $("#properties-delivery-time").val('-') 4879 $(".time-single").removeClass("selected") 4880 4881 4882 } 4883 }); 4884 4885 $(".btnChangeDeliveryDate").click(function(){ 4886 $("#deliveryDate, #deliveryDateFull label ").show() 4887 $("#deliveryDateFull").removeClass("filled") 4888 $(".btnChangeDeliveryDate").addClass("hide") 4889 $("#full-date").prop('disabled', false); 4890 }) 4891 4892 $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e){ 4893 e.preventDefault() 4894 $(this).parents("#row-delivery-date").find("p.error").remove() 4895 const fulldate = $(this).data("fulldate") 4896 const day = $(this).data("day") 4897 const date = $(this).data("date")
4898 const month = $(this).data("month") 4899 const year = $(this).data("year") 4900 const off_pagi = $(this).data("offpagi") 4901 const off_siang = $(this).data("offsiang") 4902 const off_Malam = $(this).data("offMalam") 4903 $(".calendarbutton").removeClass("selected") 4904 $(this).addClass("selected") 4905 $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`) 4906 $("#propDeliveryTime").val('') 4907 $("#properties-delivery-time").val('-') 4908 $(".calendarbutton2").removeClass("selected") 4909 $("#full-date").val("Full Calendar") 4910 4911 4912 if(off_pagi && timeOfDay > off_pagi) { 4913 $("[data-time=Morning]").attr("disabled", true) 4914 } else { 4915 $("[data-time=Morning]").attr("disabled", false) 4916 } 4917 if(off_siang && timeOfDay > off_siang) { 4918 $("[data-time=Afternoon]").attr("disabled", true) 4919 } else { 4920 $("[data-time=Afternoon]").attr("disabled", false) 4921 } 4922 4923 4924 4925 }) 4926 4927 if(today === 14 && timeOfDay > 17.00) { 4928 $("#deliveryDate button:first-child").attr("disabled", true) 4929 } 4930 4931 $("#deliveryTime").delegate(".calendarbutton2", "click", function(e){ 4932 e.preventDefault() 4933 const time = $(this).data("time") 4934 const date = $("#propDeliveryDate").val() 4935 if(date == '') { 4936 return alert('Silakan pilih tanggal terlebih dahulu') 4937 } 4938 $(".calendarbutton2").removeClass("selected") 4939 $(this).addClass("selected") 4940 $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`) 4941 }) 4942 4943 $('textarea.has-limit, input.has-limit').keyup(function () { 4944 max = this.getAttribute("maxlength"); 4945 let len = $(this).val().length; 4946 let limit = $(this).siblings(".limit"); 4947 if (len > max) { 4948 alert('you have reached the limit'); 4949 } else { 4950 limit.text(`${len}/${max}`); 4951 } 4952 }); 4953 4954 $("#button-action-step .btn").click(function(){ 4955 $(this).find("span").text("Processing..."); 4956 }); 4957 4958 $(".finishBtn").on('click', function() { 4959 $(this).addClass("is-adding"); 4960 // $(this).click(); 4961 }); 4962 4963 $('.setup-panel .nav-item a.btn-success').trigger('click'); 4964 4965 $("#button-action .btn").click(function(){ 4966 $("#flower-step").addClass("block"); 4967 $("#button-action").hide(); 4968 }); 4969 4970 $(".close-how-order").click(function(){ 4971 $("#flower-step").removeClass("block"); 4972 $("#button-action").show(); 4973 }); 4974 4975 $("#input-foto, #input-video").change(function(e){ 4976 readURL(this); 4977 }); 4978 4979 $("#logoPapan").change(function(){ 4980 readURLPapan(this); 4981 }); 4982 4983 $("#address-upload").change(async function(){ 4984 const upload_address = await readURLAddress(this) 4985 if(upload_address) { 4986 const url = upload_address.url 4987 $(".props-address-upload").val(url) 4988 $(".form-address").addClass("address-uploaded") 4989 $(".form-address-upload").addClass("uploaded") 4990 4991 $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false) 4992 } 4993 }) 4994 4995 $(".address-manualy").click(function(){ 4996 $(".form-address-upload").removeClass("uploaded"); 4997 $(".photo-address").hide(); 4998 $(".form-address").removeClass("address-uploaded") 4999 $("#formAddressPurchase").find(".form-control").attr("required", true) 5000 }); 5001 5002 $(".case-video-preview").delegate(".replace-video", "click", function(){ 5003 $("#input-video").trigger("click") 5004 }) 5005 5006 $('.date-single').click(function(e) { 5007 e.preventDefault(); 5008 $('.date-single').removeClass('selected'); 5009 $('#full-date').removeClass('selected'); 5010 $(this).addClass('selected'); 5011 $('#full-date').html('Full' + '<br/>' + 'Calendar'); 5012 }); 5013 $('#full-date').click(function(e){ 5014 e.preventDefault(); 5015 $('.date-single').removeClass('selected'); 5016 $(this).addClass('selected'); 5017 }); 5018 5019 // $("tr").each(function(){ 5020 // if($(this).text().match('SKU')) { 5021 // $(".sku-product").html($(this).parents("table").html()) 5022 // } 5023 // }) 5024 5025 $("#product-image").scroll(function(){ 5026 $(".desc-add").each(function(){ 5027 const img = $(this).find("img") 5028 const src = img.data("src") 5029 img.attr("src", src) 5030 }) 5031 }) 5032 5033 $(".product-fixed").hide() 5034 5035 let target = $("#personalizeBtn") 5036 5037 5038 $(".product-meta").scroll(function() { 5039 if ($(window).scrollTop() >= target.offset().top ) { 5040 $(".product-fixed").addClass("show") 5041 } else { 5042 $(".product-fixed").removeClass("show") 5043 } 5044 }); 5045 5046 $(window).scroll(function() { 5047 if ($(window).scrollTop() >= target.offset().top ) { 5048 $(".product-fixed").addClass("show") 5049 } else { 5050 $(".product-fixed").removeClass("show") 5051 } 5052 }); 5053 }); 5054 </script>
5054 5055 5056
5056<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5057 // 5058 </script>
5058 5059 5060
5060<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5061 $(document).ready(function(){ 5062 $('table tr td').each(function(){ 5063 var texto = $(this).text(); 5064 var nextto = $(this).next("td"); 5065 var sku = $("#data-sku").val() 5066 if(texto == 'SKU'){ 5067 nextto.text(sku) 5068 } 5069 }); 5070 5071 $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan"); 5072 $(".stamped-summary-actions-newreview").text("Tulis Review"); 5073 $("#tab-questions").text("Pertanyaan"); 5074 5075 $(".freeship .icon").click(function(){ 5076 $(".fs-content").slideToggle(); 5077 $(this).parents(".freeship").toggleClass("expand"); 5078 }); 5079 5080 var $easyzoom = $('.easyzoom').easyZoom(); 5081 // Setup thumbnails example 5082 var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom'); 5083 $('.thumbnails').on('click', 'a', function(e) { 5084 var $this = $(this); 5085 e.preventDefault(); 5086 // Use EasyZoom's `swap` method 5087 api1.swap($this.data('standard'), $this.attr('href')); 5088 }); 5089 5090 $('#playerID').click(function(){ 5091 var videoURL = $('#VdoID').attr('src'), 5092 dataplay = $('#VdoID').attr('data-play'); 5093 5094 //for check autoplay 5095 //if not set autoplay=1 5096 if(dataplay == 0 ){ 5097 $('#VdoID').attr('src',videoURL+'?autoplay=1'); 5098 $('#VdoID').attr('data-play',1); 5099 } 5100 else{ 5101 var videoURL = $('#VdoID').attr('src'); 5102 videoURL = videoURL.replace("?autoplay=1", ""); 5103 $('#VdoID').prop('src',''); 5104 $('#VdoID').prop('src',videoURL); 5105 5106 $('#VdoID').attr('data-play',0); 5107 } 5108 5109 }); 5110 5111 $(".product-photo-thumb-video").click(function(e){ 5112 e.preventDefault(); 5113 5114 var newEmbed = $(this).attr('href'); 5115 $("#featured-image-product").addClass("img-video"); 5116 $("#ProductPhotoImg").hide(); 5117 $("#featured-image-product .video").show(); 5118 $("#featured-image-product iframe").attr('src', newEmbed); 5119 $("#VdoID")[0].src += "&autoplay=1"; 5120 }); 5121 $(".product-single__thumbnail").click(function(evt){ 5122 evt.preventDefault(); 5123 $("#featured-image-product").removeClass("img-video"); 5124 $("#ProductPhotoImg").show(); 5125 $("#featured-image-product .video").hide(); 5126 $("#featured-image-product iframe").attr('src', ''); 5127 }); 5128 5129 if($('#product-meta .short-desc > div').length >= 1){ 5130 //console.log('div detected') 5131 var replacer = $('#product-meta .short-desc > div').contents(); 5132 $('#product-meta .short-desc > div').replaceWith(replacer); 5133 5134 var cAssured = $('.c-assured').detach(); 5135 cAssured.insertAfter('.meta-sds .stock-info'); 5136 } 5137 5138 5139 5140 $(".heading-toggle").click(function(){ 5141 $(this).parent().toggleClass("open") 5142 5143 }); 5144 }); 5145 </script>
5145 5146 5147 5148
5148<script type="application/json" id="ProductJson-Product"> 5149 5150 {"id":8359546319899,"title":"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePrimatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari"} 5151 </script>
5151 5152 5153
5153<script type="application/json" id="VariantJson-Product"> 5154 [ 5155 5156 { 5157 "incoming": false, 5158 "next_incoming_date": null 5159 } 5160 5161 ] 5162 </script>
5162 5163 5164 5165 5166 5167 </div> 5168 5169 5170
5170<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
5170 5171 5172
5172<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5173 var selectCallback = function(variant, selector) { 5174 timber.productPage({ 5175 money_format: "Rp {{amount_no_decimals}}", 5176 variant: variant, 5177 selector: selector 5178 }); 5179 }; 5180 5181 jQuery(function($) { 5182 new Shopify.OptionSelectors('productSelect', { 5183 product: 5184 5185 5186 5187 5188 5189 {"id":8359546319899,"title":"PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePrimatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari"}, 5190 onVariantSelected: selectCallback, 5191 enableHistoryState: true 5192 }); 5193 5194 // Add label if only one product option and it isn't 'Title'. Could be 'Size'. 5195 5196 5197 // Hide selectors if we only have 1 variant and its title contains 'Default'. 5198 5199 $('.selector-wrapper').hide(); 5200 5201 }); 5202 </script>
5202 5203 5204 5205 5206
5206<script type="application/ld+json"> 5207 { 5208 "@context": "http://schema.org", 5209 "@type": "Product", 5210 "offers": { 5211 "@type": "Offer", 5212 "availability":"https://schema.org/InStock", 5213 "price": 835000, 5214 "priceValidUntil": "05-10-2025", 5215 "priceCurrency": "IDR", 5216 "url": "https://pjph.org/" 5217 }, 5218 "brand": { 5219 "@type": "Brand", 5220 "name": "PRIMATOTO" 5221 }, 5222 "sku": "8359546319899", 5223 "gtin13": "Jakarta", 5224 "name": "PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026", 5225 "description": "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari", 5226 "category": "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari", 5227 "url": "https://pjph.org/", 5228 "image": { 5229 "@type": "ImageObject", 5230 "url": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426", 5231 "image": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426", 5232 "name": "PRIMATOTO ~ Akses Istimewa Situs Toto 4D Prediksi Angka Toto Macau Paling Jitu Tahun 2026", 5233 "width": 1024, 5234 "height": 1024 5235 } 5236 } 5237 </script>
5237 5238 5239 5240 5241 5242 5243
5243<script id="bss-ltap-hide-price" type="9f1692b8b70633eecdaf805b-text/javascript"> 5244 !function(e){var t={};function o(r){if(t[r])return t[r].exports;var c=t[r]={i:r,l:!1,exports:{}};return e[r].call(c.exports,c,c.exports,o),c.l=!0,c.exports}o.m=e,o.c=t,o.d=function(e,t,r){o.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},o.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.t=function(e,t){if(1&t&&(e=o(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(o.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var c in e)o.d(r,c,function(t){return e[t]}.bind(null,c));return r},o.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return o.d(t,"a",t),t},o.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},o.p="",o(o.s=0)}([function(e,t,o){"use strict";function r(e){e.ltsp={},function(e){e.ltsp.quickView=function(){document.querySelectorAll(".quickview-button").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementById("add-to-cart-quickview-form");if(e){let t=e.querySelector(".groups-btn");t&&t.remove();let o=e.querySelector(".pieces");o&&o.remove();let r=e.querySelector(".bsscommerce-ltsp-message");r&&r.remove()}if(e=document.querySelector("[data-quickview-modal] .halo-modal-body"),e){let t=e.querySelector(".quantity");t&&t.remove()}}),1e3)}))})),document.querySelectorAll(".shop-now-button").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementById("ShopNowContainer");if(e){let t=e.querySelector("#AddToCart");t&&t.remove()}}),2e3)}))})),document.querySelectorAll(".collection__filter").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-grid-item");if(o){let e=o.querySelector(".btn--quick-view");e&&e.remove()}}}),1500)}))})),document.querySelectorAll(".btn--icon.quick-product__btn").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-grid__content");if(o){let e=o.querySelector(".payment-buttons");e&&e.remove()}}}),2e3)}))})),document.querySelectorAll(".product-facet__aside").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-item");if(o){let e=o.querySelector('form[action="/cart/add"]');e&&e.remove();let t=o.querySelector(".product-item__quick-form");t&&t.remove()}}}),1500)}))})),document.querySelectorAll(".pagination").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-item");if(o){let e=o.querySelector('form[action="/cart/add"]');e&&e.remove();let t=o.querySelector(".product-item__quick-form");t&&t.remove()}}}),1800)}))})),document.querySelectorAll(".collection-filters__sort").forEach((function(e){e.addEventListener("change",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".indiv-product");if(o){let e=o.querySelector('form[action="/cart/add"]');e&&e.remove()}}}),1500)}))}
5244)),document.querySelectorAll(".slideout__drawer-right, .sidebar_leftside_wapper, .filtering__results").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-index");if(o){let e=o.querySelector(".js-quickview-trigger");e&&e.remove()}}}),1500)}))})),document.querySelectorAll("a.product-loop__quickview").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".large--one-half");if(o){let e=o.querySelector(".quick-smart-wrapper");e&&e.remove();let t=o.querySelector("#quantity-container");t&&t.remove();let r=o.querySelector(".js-prod-show-soldout");r&&r.remove()}}}),2e3)}))})),document.querySelectorAll(".quick-product__btn").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-single__meta");if(o){let e=o.querySelector("div.payment-buttons");e&&e.remove()}}}),1e3)}))})),document.querySelectorAll(".btn--load-more").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".grid-view-item");if(o){let e=o.querySelector(".quick-add-button");e&&e.remove()}}}),1e3)}))})),document.querySelectorAll(".quick_shop").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product_section");if(o){let e=o.querySelector(".product_form .shopify-product-form .purchase-details"),t=o.querySelector(".product__details .modal_price .price-ui");e&&e.remove(),t&&t.remove()}}}),1e3)}))})),document.querySelectorAll(".qs-button ").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-info-main");if(o){let e=o.querySelector(".qty-box");e&&e.remove();let t=o.querySelector(".btn.btn-cart");t&&t.remove();let r=o.querySelector(".product-single__sale-price");r&&r.remove();let c=o.querySelector(".product-addto-links");c&&c.remove()}}}),1e3)}))}));let e=document.querySelector("a[data-js-cart-icon]");if(e&&e.addEventListener("click",(function(){let e=document.querySelector(".quick-cart__control");e&&e.remove();let t=document.querySelector(".quick-cart__item-right");t.childNodes[3]&&(t.childNodes[3].innerHTML="Login to seen price")})),document.querySelectorAll(".quick-add-button-variants").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest("#AddToCartForm");if(o){let e=o.querySelector(".paymentButtonsWrapper");e&&e.remove()}}}),1e3)}))})),document.querySelectorAll(".product-thumbnail__quickshop-button").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-details");if(o){let e=o.querySelectorAll(".bsscommerce-ltsp-message");e.length>1&&e.forEach((function(e,t){t>0&&e.remove()}));let t=o.querySelector(".product-form__cart-buttons");t&&t.remove();let r=o.querySelector(".product-form__quantity-box-wrapper");r&&r.remove()}}}),800)}))})),"b2b-dbodhi-singapore.myshopify.com"===window.Shopify.shop){let e=0;const t=window.location.pathname.includes("/collections");let o=!0;const r=function(){const e=setInterval((function(){let e=document.querySelectorAll(".thb-product-detail.product .bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t],r=o.closest(".thb-product-detail.product");if(r){let e=r.querySelector(".product-form");e&&e.remove()}r=o.closest("del"),r&&o.remove()}}),500);setTimeout(()=>{clearInterval(e)},6e3)},c=function(){const c=window.pageYOffset||document.documentElement.scrollTop;(c>e||!t||o)&&(document.querySelectorAll(".product-card-quickview").forEach((function(e){e.removeEventListener("click",r),e.addEventListener("click",r)}
5244)),o=!1),e=c<=0?0:c};if(c(),t){const e=function(){const e=c;let t;return()=>{clearTimeout(t),t=setTimeout(()=>{e.apply(this)},3e3)}};window.addEventListener("scroll",e())}}}}(e),function(e){e.ltsp.removeElementByLTSPMessage=function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message"),t=[],o=window.Shopify.shop;for(let r=0;r<e.length;r++){let c=e[r],l=[".grid-product__on-sale",".product-unit-price",".product-price-unit",".grid-link__sale_price","s",".price__compare",".product__compare-price",".price__unit",".card__price--regular",".sale-tag",".compare-price",".old-price",".savings",".was_price",".price--compare",".price-compare",".was"];if("stark-hockey.myshopify.com"===o){const e=c.closest(".product-index");if(e){const t=e.querySelector(".product-modal");t&&t.remove()}continue}let s=c.closest(".product-parent");if(s){let e=s.querySelector("form .tt-btn-addtocart");e&&t.push(e);let o=s.querySelector(".tt-btn-quickview");o&&t.push(o)}if(s=c.closest(".ProductItem"),s){let e=s.querySelector(".quickshop-btn");if(e&&t.push(e),"shrimptoncouture-com.myshopify.com"===o){let e=s.querySelector(".ProductItem__PriceList");e&&e.classList.remove("ProductItem__PriceList")}}if(s=c.closest(".product-item--vertical"),s){if("sparklinredwholesale.myshopify.com"===o){let e=s.querySelector(".product-item__info .product-item__price-list");e&&t.push(e)}let e=s.querySelector(".product-item__info .product-item__action-button");e&&t.push(e),e=s.querySelector(".product-form__payment-container"),e&&t.push(e)}if(s=c.closest(".card-wrapper.underline-links-hover"),s&&"friends-forever-pets.myshopify.com"===o){let e=s.querySelector(".card__content .quick-add");e&&t.push(e);let o=s.querySelector(".card-information .price__sale .price-item.price-item--regular");o&&t.push(o)}if(s=c.closest(".modal_price"),s&&window.Shopify&&"casa-barba.myshopify.com"!==window.Shopify.shop&&"prideandgroom-wholesale.myshopify.com"!==window.Shopify.shop){let e=s.querySelector(".price-ui");e&&t.push(e)}if(s=c.closest(".info.has-padding-top"),s){let e=s.querySelector(".compare-at-price");e&&t.push(e)}if(s=c.closest(".product-thumbnail__price.price"),s){let e=s.querySelector(".money");e&&t.push(e)}if(s=c.closest(".search-result__description"),s){let e=s.querySelector(".money");e&&t.push(e)}if(s=c.closest(".product__price"),s){let e=s.querySelector("[data-product-price][bss-custom-ltsp-attribute]");e&&t.push(e)}if(s=c.closest("#template-product"),s){let e=s.querySelector(".product-form.cart-bar__form");e&&t.push(e)}if("showroom1-ducanero.myshopify.com"===o){if(s=c.closest(".product-area")||c.closest(".price"),s){let e=s.querySelector(".price-area")||s.querySelector(".theme-money");e&&t.push(e)}}else if(s=c.closest(".product-area__details"),s){let e=s.querySelector(".product-detail__form__action");e&&t.push(e);let o=s.querySelector(".quantity-wrapper");o&&t.push(o)}if("quincaillerie-euroline.myshopify.com"===o&&(s=c.closest(".product-form__info-content"),s)){let e=s.querySelector(".price-list");e&&t.push(e)}if(s=c.closest(".product-form__buttons"),s&&t.push(s),s=c.closest(".product-wrap-2"),s){let e=s.querySelector(".product-action-2");e&&t.push(e)}if(s=c.closest(".span6"),s){let e=s.querySelector(".purchase>input"),o=s.querySelector(".price-container>#price-preview"),r=s.querySelector(".price-container>.vat-price");e&&t.push(e),o&&t.push(o),r&&t.push(r)}if(s=c.closest(".product__page"),s){let e=s.querySelector(".quantity-selector");e&&t.push(e)}if(s=c.closest(".product_details_info"),s){let e=s.querySelector(".pro-detail-button"),o=s.querySelector(".price-box");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".product-content"),s){let e=s.querySelector(".product-action");e&&t.push(e)}if(s=c.closest(".product-view .single-product-wrap"),s){let e=s.querySelector(".add-to-cart");e&&t.push(e)}if(s=c.closest(".collection-category .owl-stage .owl-item"),s){let e=s.querySelector(".add-to-cart");e&&t.push(e)}if(s=c.closest(".product__details"),s){let e=s.querySelector(".product-wrap .thumbnail-overlay .info .price ");e&&t.push(e);let o=s.querySelector(".product-details .price .current_price .money ");o&&t.push(o)}if(s=c.closest(".product_row"),s){let e=s.querySelector(".three-fourths .info .price ");e&&t.push(e)}if(s=c.closest(".thubnail-desc"),s){let e=s.querySelector(".quatity-stock");e&&t.push(e);let o=s.querySelector(".Payment_button");o&&t.push(o)}if(s=c.closest(".single-ponno-product"),s){let e=s.querySelector(".pro-actions-link");e&&t.push(e);let o=s.querySelector(".pro-add-cart");o&&t.push(o)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector("div.product-form__controls-group.product-form__controls-group--submit");e&&e.setAttribute("style","visibility:hidden")}if("homewarerus.myshopify.com"!=window.Shopify.shop&&(s=c.closest(".product-item__info"),s)){let e=s.querySelector("form.product-item__action-list.button-stack");e&&e.remove()}
5244if("redbasketb2b.myshopify.com"===window.Shopify.shop){if(s=c.closest(".card-information"),s){let e=s.querySelector(".price__sale .price-item--sale.sale-percentage");e&&t.push(e)}if(s=c.closest("tr.cart-item[id*=Cart]"),s){let e=s.querySelector(".cart-item__quantity");e&&e.remove();let t=s.querySelector(".cart-item__totals");t&&t.remove()}}if(s=c.closest(".product-form"),s){let e=s.querySelector(".quantity-submit-row__submit");e&&e.remove();let o=s.querySelector(".product-form__info-list .product-form__info-item.product-form__info-item--quantity .product-form__info-content .quantity-selector.quantity-selector--product");o&&t.push(o)}if(s=c.closest(".product-grid__detail"),s){let e=s.querySelector(".product-form-block form");e&&e.remove()}if(s=c.closest(".tab-body"),s){if(s.querySelector(".purchase-section button, .btn.add-to-cart")){let e=setInterval((function(){let e=document.querySelector(".tab-body .purchase-section button, .tab-body .btn.add-to-cart"),t=document.querySelector(".swym-button-bar.swym-wishlist-button-bar");e&&e.remove(),t&&t.remove()}),200);setTimeout((function(){clearInterval(e)}),1e4)}}if(s=c.closest(".item.relative.product-id.item-row"),s){let e=s.querySelector(".quantity.form");e&&e.remove()}if(s=c.closest(".product-form"),s){let e=s.querySelector(".buy-buttons-row");e&&t.push(e)}if(s=c.closest(".product-grid-item"),s){let e=s.querySelector(".btn--quick-view");e&&t.push(e)}if(s=c.closest(".featured__collection-product"),s){let e=s.querySelector(".js-quickview-trigger");e&&t.push(e)}if(s=c.closest(".product-index"),s){let e=s.querySelector(".js-quickview-trigger");e&&t.push(e)}if(s=c.closest(".product-bottom"),s){let e=s.querySelector(".quantity-selector, .product-add");e&&t.push(e)}if(s=c.closest(".js-sticky-cart"),s){let e=s.querySelector(".sticky-add");e&&t.push(e)}if(s=c.closest(".product-details"),s){let e=s.querySelector(".shopify-payment-button");e&&t.push(e);let r=s.querySelector(".payment-and-quantity__add");r&&t.push(r);let c=s.querySelector(".price__compare-at.visible");c&&"coventa-demo.myshopify.com"===o&&t.push(c)}if(s=c.closest(".product-block__inner"),s){let e=s.querySelector(".quick-buy");e&&t.push(e)}if(s=c.closest(".content-summary"),s){let e=s.querySelector("form.cart");e&&t.push(e)}if(s=c.closest('div[data-pf-type="Section"]'),s){let e=s.querySelector('div[data-pf-type="ProductQuantity"]');e&&t.push(e);let o=s.querySelector('button[data-pf-type="ProductATC"]');o&&t.push(o)}if(s=c.closest(".pc-inner"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e);let o=s.querySelector(".quick_shop");o&&t.push(o)}if(s=c.closest(".product-info-inner"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e)}if(s=c.closest(".product-details-inline"),s){let e=s.querySelector(".product-quantity");e&&t.push(e)}if(s=c.closest(".product-card"),s){let e=s.querySelector(".js-grid-cart");e&&t.push(e);let o=s.querySelector(".card-header .card-button-hover");o&&t.push(o);let r=s.querySelector(".product-card__quick-buy");r&&t.push(r);let c=s.querySelector("compare-at-price");c&&t.push(c);let l=s.querySelector(".product-card__badge-list");l&&t.push(l)}if(s=c.closest(".product__info"),s){let e=s.querySelector(".product-form__buy-buttons button");e&&t.push(e);let o=s.querySelector(".product-form__quantity");o&&t.push(o)}if(s=c.closest(".product-sticky-form__inner"),s){let e=s.querySelector(".product-sticky-form__payment-container");e&&t.push(e)}if("homewarerus.myshopify.com"!=window.Shopify.shop&&(s=c.closest(".product-item"),s)){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e);let o=s.querySelector(".product-item__quick-form");o&&t.push(o)}if(s=c.closest(".shopify-product-form"),s){let e=s.querySelector("div.quantity");e&&t.push(e)}if(s=c.closest(".product-body"),s){let e=s.querySelector(".product-cta-wrapper");e&&t.push(e)}if(s=c.closest(".tt-product-single-info"),s){let e=s.querySelector("form .btn-addtocart");e&&t.push(e);let o=s.querySelector('form[action*="/cart/add"]');o&&t.push(o)}if(s=c.closest(".product-details-wrapper"),s){let e=s.querySelector(".product-form");e&&t.push(e)}if(s=c.closest(".product-inner"),s){let e=s.querySelector(".product-card-interactions");e&&t.push(e)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector(".add-to-cart");if(e)if(window.Shopify&&"bundlecomph.myshopify.com"===window.Shopify.shop){e.disabled=!0;let o=s.querySelector(".payment-buttons"),r=s.querySelector(".shopify-payment-button");o&&o.classList.remove("payment-buttons"),r&&t.push(r)}else t.push(e)}if(s=c.closest(".grid-view-item"),s){let e=s.querySelector(".thumbnail-buttons");e&&t.push(e)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector(".product-form:not(.product-form-product--static):not(.product-form-product-template)");e&&t.push(e)}if(s=c.closest(".pf-product-form"),s){let e=s.querySelector(".sc-lkgURy");e&&t.push(e);let o=s.querySelector(".sc-gzcbmu");o&&t.push(o);let r=s.querySelector(".add-to-cart");r&&t.push(r)}if(s=c.closest(".large--one-half"),s){let e=s.querySelector(".product-smart-wrapper");e&&t.push(e);let o=s.querySelector('div.btn[onmouseup="showProductsDesigner(this)"]');o&&t.push(o);let r=s.querySelector("button.js-prod-show-soldout");r&&t.push(r)}if(s=c.closest("#add-to-cart-form"),s)if("led-signcity.myshopify.com"===o){let e=s.querySelector(".atc-btn");e&&t.push(e);let o=s.querySelector(".price");o&&o.classList.remove("price")}else{let e=s.querySelector(".groups-btn");e&&t.push(e),t.push(c)}
5244if(s=c.closest(".product-shop"),s&&"led-signcity.myshopify.com"!==o){let e=s.querySelector(".groups-btn");e&&t.push(e)}if(s=c.closest(".who-qof-table"),s&&s.classList.add("bsscommerce-hide-price"),s=c.closest(".price-sale"),s){let e=s.querySelector(".old-price");e&&t.push(e);let o=s.querySelector("em");o&&(o.innerHTML="")}if(s=c.closest(".product-details"),s){let e=s.querySelector(".action");e&&t.push(e)}if(s=c.closest(".product_section"),s){let e=s.querySelector("form .add_to_cart, form .b2b-ajax-submit");e&&t.push(e);let o=s.querySelector(".sale.savings");o&&t.push(o);let r=s.querySelector(".purchase-details button.button--add-to-cart");r&&t.push(r);let c=s.querySelector(".purchase-details .purchase-details__quantity.product-quantity-box");c&&t.push(c);let l=s.querySelector(".product__details .modal_price .price-ui");l&&t.push(l)}if(s=c.closest(".quick-shop-style--inline"),s){let e=s.querySelector("form .add_to_cart, form .b2b-ajax-submit");e&&t.push(e)}if(s=c.closest(".product-details"),s){let e=s.querySelector("small em");e&&t.push(e)}if(s=c.closest(".gt_product-body"),s){let e=s.querySelector("form .gt_product-addtocart");e&&t.push(e);let o=s.querySelector(".gt_product-saved");o&&t.push(o);let r=s.querySelector(".gt_product-price--compare");r&&t.push(r)}if(s=c.closest(".gt_product_content"),s){let e=s.querySelector("form .gt_product-addtocart");e&&t.push(e);let o=s.querySelector(".gt_product-price--compare");o&&t.push(o)}if(s=c.closest(".gt-single-product"),s){let e=s.querySelector("div.gt_method_addToCart");e&&t.push(e);let o=s.querySelector(".gt_product-price--compare");o&&t.push(o)}if(s=c.closest("#cont-form"),s){let e=s.querySelector("form .cont-add-btns");e&&t.push(e)}if(s=c.closest(".theiaStickySidebar"),s){let e=s.querySelector(".variations_button");e&&t.push(e)}if(s=c.closest(".product--price-wrapper"),s){let e=s.querySelector(".product--compare-price");e&&t.push(e)}if(s=c.closest(".product-submit"),s){let e=s.querySelector(".payment-buttons-container");e&&t.push(e)}if(s=c.closest(".product-price"),s){let e=s.querySelector(".product-price-compare");e&&t.push(e)}if(s=c.closest(".product-list-item"),s){let e=s.querySelector(".original"),o=s.querySelector(".product-list-item-badge");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".productitem"),s){let e=s.querySelector(".productitem--action");e&&t.push(e);let o=s.querySelectorAll(".bss-ltsp-to-remove");if(o.length)for(let e of o)t.push(e)}if(s=c.closest(".product--outer"),s){let e=s.querySelector(".product-form--atc");e&&t.push(e),e=s.querySelector(".shopify-payment-button"),e&&t.push(e)}if(s=c.closest(".Container"),s)if(window.Shopify&&"mama-shawna.myshopify.com"===window.Shopify.shop){let e=s.querySelector("form.ProductForm");if(window.__st&&e){__st.cid&&t.push(e)}}else{let e=s.querySelector(".ProductForm__BuyButtons");e&&t.push(e)}if(s=c.closest(".product-grouped"),s){let e=s.querySelector(".product_top form#add-to-cart-form");e&&t.push(e)}if(s=c.closest(".product-item"),s){let e=s.querySelector(".product-top .product-des .action"),o=s.querySelector(".slideup");if(e&&t.push(e),o&&t.push(o),o=s.querySelector(".card-quickview"),o&&t.push(o),window.Shopify&&"sitchish.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".product-item-price .money");e&&e.classList.remove("money")}}if(s=c.closest(".modal_price"),s){let e=s.querySelector(".was_price");e&&t.push(e)}if(s=c.closest(".info"),s){let e=s.querySelector(".was_price");e&&t.push(e)}if(s=c.closest(".product-item"),s){let e=s.querySelector('.product-item__action-button[data-action="add-to-cart"]');e&&t.push(e)}if(s=c.closest(".grid__item.grid-product"),s){let e=s.querySelector('form[action="/cart/add"] input[type="submit"]');e&&t.push(e);let r=s.querySelector(".grid-product__tag");r&&t.push(r);let c=s.querySelector(".visually-hidden");c&&t.push(c);let l=s.querySelector(".quick-product__btn");l&&"comphycompany.myshopify.com"===o&&t.push(l)}if(s=c.closest(".product-info"),s){let e=s.querySelector('form[action="/cart/add"] .payment-buttons');e&&t.push(e);let o=s.querySelector(".variant-wrapper.variant-wrapper--button");o&&t.push(o);let r=s.querySelector(".form .product-actions .product-actions-add-to-cart");r&&t.push(r);let c=s.querySelector(".product-price__compare");
5244c&&t.push(c),c=s.querySelector("compare-at-price"),c&&t.push(c);let l=s.querySelector("unit-price");l&&t.push(l),e=s.querySelector(".buy-buttons"),e&&t.push(e);let u=s.querySelector(".product-info__badge-list");u&&t.push(u)}if(s=c.closest(".price"),s){if(s.textContent.includes("From")){let e=s.innerHTML;s.innerHTML=e.replace("From","")}}if(s=c.closest("#product-right"),s){let e=s.querySelector(".was");e&&t.push(e);let o=s.querySelector(".product-add");o&&t.push(o)}if(s=c.closest(".was"),s&&t.push(s),s=c.closest(".product-single__meta"),s){let e=s.querySelector(".pf__actions");e&&t.push(e);let o=s.querySelector("div.product-form__controls-group.product-form__controls-group--submit");o&&o.setAttribute("style","visibility:hidden")}if(s=c.closest(".product-item"),s){let e=s.querySelector(".product-item__add");e&&t.push(e)}if(s=c.closest(".grid-item"),s){let e=s.querySelector("#addToCart-product-template");e&&t.push(e);let o=s.querySelector(".payment-buttons");o&&t.push(o)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector("div.payment-buttons");e&&e.remove()}if(s=c.closest(".modal--root"),s){let e=s.querySelector(".product-form--button-container");e&&t.push(e)}if(s=c.closest(".product-item__info"),s){let e=s.querySelector("a.product-item__action-button.button.button--small.button--primary");e&&t.push(e)}if(s=c.closest(".product-form__info-list"),s){let e=s.querySelector("div.product-form__info-item.product-form__info-item--quantity");e&&t.push(e)}if(s=c.closest(".large--three-fifths"),s){let e=s.querySelector(".multivariants_setbox_footer");e&&t.push(e)}if(s=c.closest(".product-info-main"),s){let e=s.querySelector(".qty-box");e&&t.push(e);let o=s.querySelector(".btn.btn-cart");o&&t.push(o);let r=s.querySelector(".shopify-payment-button");r&&t.push(r)}if(s=c.closest(".product-miniature"),s){let e=s.querySelector(".qty-box");e&&t.push(e);let o=s.querySelector(".product.actions.product-item-actions");o&&t.push(o)}if(s=c.closest("#AddToCartForm"),s){let e=s.querySelector(".paymentButtonsWrapper");e&&t.push(e)}if(s){let e=s.querySelector("#product-add");e&&e.remove()}if(s){let e=s.querySelector("#product-price>.product-price");e&&e.remove()}if(s=c.closest(".grid-view-item"),s){let e=s.querySelector(".quick-add-button");e&&t.push(e)}if("tinalykkegaard.myshopify.com"===o){if(s=c.closest(".main-product__details>.main-product__details-wrapper"),s){let e=s.querySelector(".main-product__actions .main-product__form-buttons");e&&e.remove()}if(s=c.closest(".product-grid .product-card"),s){let e=s.querySelector('form[action="/cart/add"]');e&&e.remove()}}if(s=c.closest(".product-item-caption"),s){let e=s.querySelector(".product-form__item--submit");e&&t.push(e)}if(s=c.closest(".product-item-caption"),s){let e=s.querySelector(".product-form__item--quantity");e&&t.push(e)}if(s=c.closest(".productgrid--item"),s){let e=s.querySelector(".productitem--actions");e&&t.push(e)}if(s=c.closest(".product-single__info-wrapper"),s){let e=s.querySelector(".product-form__quantity-submit");e&&t.push(e);let o=s.querySelector(".shopify-payment-button");o&&t.push(o)}if(s=c.closest(".qv-content"),s){let e=s.querySelector(".qv-add-button");e&&t.push(e);let o=s.querySelector(".qv-quantity");o&&t.push(o)}if(s=c.closest(".product-card"),s){let e=s.querySelector(".btn-grid-cart");e&&t.push(e)}if(s=c.closest(".product_single_detail_section"),s){let e=s.querySelector("#AddToCart");e&&t.push(e);let o=s.querySelector(".shopify-payment-button__button");o&&t.push(o);let r=s.querySelector(".quantity-label");r&&t.push(r);let c=s.querySelector(".quantity_width");c&&t.push(c)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector("#AddToCart--product-template");e&&t.push(e);let o=s.querySelector(".shopify-payment-button");o&&t.push(o)}if(s=c.closest('form[action="/cart/add"]'),s){let e=s.querySelector(".product-page-info__field");e&&t.push(e);let o=s.querySelector(".product-page-info__button-add-to-cart");o&&t.push(o);let r=s.querySelector(".js-store-lists-add-wishlist");r&&t.push(r);let c=s.querySelector(".product-collection__control");c&&t.push(c)}if(s=c.closest(".grid-item__content"),s){let e=s.querySelector(".quick-add-btn");if(e&&t.push(e),window.Shopify&&"sparklinredwholesale.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".grid-product__price--original"),o=s.querySelector(".grid-product__price--savings"),r=s.querySelector(".quick-product__btn");e&&t.push(e),o&&t.push(o),r&&t.push(r)}}if(s=c.closest(".purchase-box"),s){let e=s.querySelector("#AddToCart-product-template");e&&e.remove();let t=s.querySelector(".quantity-product-template");t&&t.remove()}if(s=c.closest(".item-row"),s){let e=s.querySelector(".add-to-cart");e&&t.push(e)}if(s=c.closest(".product-thumbnail__price"),s){let e=s.querySelectorAll(".bsscommerce-ltsp-message");e.length>1&&e.forEach((function(e,o){o>0&&t.push(e)}))}if(s=c.closest(".product-details"),s){let e=s.querySelector(".product__add-to-cart-button");e&&t.push(e);let r=s.querySelector(".product-form__quantity-box-wrapper");if(r&&t.push(r),"sitchish.myshopify.com"===o){let e=s.querySelector("#product-price");e&&(e.id="");let o=s.querySelector("[data-product-price]");o&&o.removeAttribute("data-product-price");let r=s.querySelector(".form-actions");r&&t.push(r)}let c=s.querySelector(".product-quantity");if(c&&t.push(c),"lavabis-hygiene.myshopify.com"===o){let e=s.querySelector(".price-preview.price");e&&(e.id="")}}if(s=c.closest(".product-details"),s){let e=s.querySelector("#add-to-cart-product-template");e&&t.push(e);let o=s.querySelector(".shopify-payment-button__button");o&&o.remove();let r=s.querySelector(".quantity");r&&t.push(r)}if(s=c.closest(".gryffeditor"),s){let e=s.querySelector(".gf_product-quantity");e&&e.parentElement.remove()}if(s=c.closest("#ProductSection-product-template"),s){let e=s.querySelector(".cbb
5244-frequently-bought-add-button");e&&e.remove();let t=s.querySelector(".cbb-frequently-bought-form");t&&t.remove()}if(s=c.closest(".product__info-wrapper"),s){let e=s.querySelector(".product-form__quantity");e&&e.remove();let t=s.querySelector(".product-form__buttons");t&&t.remove()}if(s=c.closest(".product-form"),s){let e=s.querySelector(".product-form__payment-container");e&&e.remove();let o=s.querySelector("#price");if(o&&o.classList.remove("product-price"),window.Shopify&&"wilkens-gmbh.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".unit-price");e&&t.push(e)}}if(s=c.closest(".product-details"),s){let e=s.querySelector(".button-common");e&&e.remove()}if(s=c.closest(".caption"),s){let e=s.querySelector(".button.btn-cart");e&&t.push(e)}if(s=c.closest(".product-info-main"),s){let e=s.querySelectorAll(".form-group")[1];e&&t.push(e);let o=s.querySelector(".price");o&&(o.id="")}if(s=c.closest(".form_buy_sticky"),s){let e=s.querySelector(".form-group .btn.button.button-cart");e&&t.push(e);let o=s.querySelector(".form-group input#Quantity");o&&t.push(o)}if(s=c.closest(".product-template__container"),s){let e=s.querySelector(".store-availability-container");e&&e.remove()}if(s=c.closest(".product-form--container"),s){let e=s.querySelector(".product-form--options");e&&t.push(e);let o=s.querySelector(".product-form--smart-payment-buttons");o&&t.push(o)}if(s=c.closest(".product--price-wrapper"),s){let e=s.querySelector('.product--from[data-item="accent-text"]');e&&t.push(e)}if(s=c.closest("#zpproductselectorfull1-wrapper"),s){let e=s.querySelector(".zpa-button-alignment-center");e&&t.push(e);let o=s.querySelector(".zpa-quantity-block");o&&t.push(o)}if(s=c.closest(".zpa-multi-product-buy-box"),s){let e=s.querySelector(".zpa-button-alignment-center");e&&t.push(e)}if(s=c.closest(".product-block__inner"),s){let e=s.querySelector('form[action="/cart/add"].product-form.product-form--mini');if(e&&t.push(e),window.Shopify&&"wilkens-gmbh.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".unit-price");e&&t.push(e)}}if(s=c.closest(".was-price.theme-money"),s&&t.push(s),s=c.closest(".box_product_page"),s){let e=s.querySelector(".product-options-bottom");e&&t.push(e)}if(s=c.closest(".product-default"),s){let e=s.querySelector(".add-links.clearfix");e&&t.push(e)}if(s=c.closest(".grid__item.medium-up--three-eighths"),s){let e=s.querySelector('form[action="/cart/add"].shopify-product-form');e&&t.push(e)}if(s=c.closest(".indiv-product"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e)}if(s=c.closest('form.product-form[action="/cart/add"]'),s){let e=s.querySelector(".sf__pcard-image .sf__pcard-quick-add");e&&t.push(e);let o=s.querySelector(".main-product__block-buy_buttons");o&&t.push(o)}if(s=c.closest(".product-grid-item.woodmart-hover-base"),s){let e=s.querySelector(".fade-in-block");e&&t.push(e);let o=s.querySelector(".product-compare-button");o&&t.push(o)}if(s=c.closest(".grid__item"),s){if("www-bonmatch-com.myshopify.com"===o){let e=s.querySelector(".selector-wrapper.bcpo-file"),o=s.querySelector(".uploadkit.uploadkit-injected"),r=s.querySelector(".uploadkit-form");e&&t.push(e),o&&r&&r.appendChild(o)}let e=s.querySelector(".product__submit__buttons");e&&t.push(e);let r=s.querySelector(".products > .product-detail > .product-button"),c=s.querySelector(".products > .product-container > .product-button > .quick-view-text");r&&t.push(r),c&&t.push(c);let l=s.querySelector("button#AddToCart"),u=s.querySelector('[data-shopify="payment-button"].shopify-payment-button');if(l&&t.push(l),u&&t.push(u),"tienda-suca-bikes.myshopify.com"===o){let e=s.querySelector(".product__unit-price.product__unit-price--spacing"),t=s.querySelector(".c_p-quantity-input-parent"),o=s.querySelector(".masIva"),r=s.querySelector(".c_col-sw-btn");e&&e.classList.remove("hide"),t&&t.remove(),o&&o.remove(),r&&r.remove()}if("youchique-4183.myshopify.com"===o){let e=s.querySelector(".card-information__button");e&&t.push(e);let o=s.querySelector(".swym-wishlist-button-bar");o&&t.push(o)}if("stelladetailsb2b.myshopify.com"===o){let e=s.querySelector(".bss-b2b-product-vat");e&&t.push(e);let o=s.querySelector("#bss-b2b-tax-inc-excl");o&&t.push(o);let r=s.querySelector(".bss-b2b-collection-item-vat");r&&t.push(r);let c=s.querySelector(".price__regular");if(c){c.classList.remove("price__regular");let e=s.querySelector(".price-item--regular");e&&e.classList.remove("price-item--regular")}let l=s.querySelector(".price__sale");l&&t.push(l)}let i=s.querySelector("quick-view-drawer");
5244i&&t.push(i);let p=s.querySelector("add-to-cart");p&&t.push(p)}if(s=c.closest(".shop-the-look__product-info"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e)}if(s=c.closest(".popover.popover--quick-buy"),s){let e=s.querySelector(".product-form__buy-buttons");e&&t.push(e)}if(s=c.closest(".product__section.product-template .product__section-content .product__section-details"),s){let e=s.querySelector('form[action="/cart/add"] input#addToCart');e&&t.push(e)}if(s=c.closest(".product-item__info-inner"),s){let e=s.querySelector(".unit-price-measurement");e&&t.push(e)}if(s=c.closest(".product-form__info-item"),s){let e=s.querySelector(".unit-price-measurement");e&&t.push(e)}if(s=c.closest("div[data-product-blocks]"),s){let e=s.querySelector(".payment-buttons");e&&t.push(e);let o=s.querySelector(".spt-wishlist-button__wrapper");o&&t.push(o)}if(s=c.closest(".sf__pcard-content.text-center"),s){let e=s.querySelector("button.add-to-cart.sf__btn");e&&t.push(e)}if(s=c.closest(".product-details.section"),s){let e=s.querySelector('form#AddToCartForm.product-content-inner[action="/cart/add"]');e&&t.push(e)}if(s=c.closest(".search-item .product-item, .product-grid-row .product-item"),s){let e=s.querySelector(".product-img .action-btn");e&&t.push(e)}if(s=c.closest(".product-collection__content,.product-page-info"),s){let e=s.querySelector(".js-product-button-add-to-cart");e&&t.push(e)}if(s=c.closest(".details-info"),s){let e=s.querySelector(".group-button .add-to-cart");e&&t.push(e)}if(s=c.closest(".product-collection"),s){let e=s.querySelector(".group-button .add-to-cart");e&&t.push(e)}let u=c.closest("[data-js-product-price]");if(u&&u.setAttribute("bss-ltsp-active",""),s=c.closest(".product__info-container"),s){let e=s.querySelector('.form[data-type="add-to-cart-form"] > .shopify-payment-button[data-shopify="payment-button"]');e&&t.push(e)}if(s=c.closest(".products"),s){let e=s.querySelector(".product-container > .product-button > .variants > .add-cart-btn"),o=s.querySelector(".product-container > .product-button > .quick-view-text");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".dt-sc-tabs-container"),s){let e=s.querySelector(".dt-sc-tabs-content > .tab2 > .owl-stage-outer > .owl-stage > .owl-item > .item-row > .products > .product-container > .product-button > .variants > .add-cart-btn");e&&t.push(e)}if(s=c.closest(".wrapper-container"),s){let e=s.querySelector(".recently-viewed-products > .products-grid > .grid__item > .product-item > .products > .product-bottom > .price-box > .regular-product > .special-price"),o=s.querySelector(".recently-viewed-products > .products-grid > .grid__item > .product-item > .products > .product-bottom > .action > .variants > .add-to-cart-btn");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".featured__collection-product.product-index"),s){let e=s.querySelector(".product_listing_options");e&&t.push(e)}if(s=c.closest(".product-index"),s){let e=s.querySelector(".product_listing_options");e&&t.push(e)}if(s=c.closest(".product__section-details"),s){let e=s.querySelector(".product__section-details__inner
5244--product_buttons");e&&t.push(e)}if(s=c.closest(".product-page--cart-form-block"),s){let e=s.querySelector(".add-to-cart");e&&t.push(e)}if(s=c.closest(".price__sale"),s){let e=s.querySelector(".price-item--regular");e&&t.push(e)}if(s=c.closest(".product-item-v1"),s){let e=s.querySelector(".price-old"),o=s.querySelector(".product-icon-action");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".detail-info > .relative"),s){let e=s.querySelector("#AddToCartForm > .btn-action"),o=s.querySelector('div.shopify-payment-button[data-shopify="payment-button"]'),r=s.querySelector(".product-price > del");e&&t.push(e),o&&t.push(o),r&&t.push(r)}if(s=c.closest(".product-details"),s){let e=s.querySelector(".product-block--form>.product-form--regular");e&&"eurosafetysystems.myshopify.com"!==o&&e.remove();let t=s.querySelector(".button-cart");t&&t.remove()}if("annabellenoeldesigns-com.myshopify.com"==o&&(s=c.closest(".product-block-list__item .card__section"),s)){let e=s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE .multivariants_block_qty_box");e&&e.remove();let t=s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE .multivariants_block_last_holder .multivariants_block_prc_holder");t&&t.remove();let o=s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE #multivariants_add_to_cart_button_h");o&&o.remove();let r=s.querySelector("#MULTIVARIANTS_APP_SECTION_PLACE #multivariants_block_subtotal_h");r&&r.remove()}if("fedua-b2b.myshopify.com"==o){if(s=c.closest(".gp-product-detail .container"),s){let e=s.querySelector(".gp-product-main-button button[type='submit']");e&&e.remove();let t=s.querySelector(".cbb-also-bought-add-to-cart-button");t&&t.remove();let o=s.querySelector(".cbb-also-bought-product-price-container");o&&o.remove()}if(s=c.closest(".gp-product-widget .product-card-grid"),s){let e=s.querySelector(".product-buttons .btn-quick-view ");e&&e.remove()}}if(s=c.closest(".product--price-container"),s){let e=s.querySelectorAll(".product--price-wrapper > a");e.length&&e.forEach(e=>e.remove())}if("linis-bites-b2b.myshopify.com"==window.location.host&&c.querySelector("[bss-customize-ltsp-message]")){let e=c.closest(".price .price__container");if(e){let o=e.querySelector(".unit-price.caption");o&&t.push(o)}}if(s=c.closest(".product-price--wrapper"),s){let e=s.querySelector(".product-price--compare");e&&e.remove()}if(s=c.closest(".price__pricing-group"),s){let e=s.querySelector(".price-item.price-item--regular[data-regular-price]");e&&(e.classList.remove("price-item"),e.classList.remove("price-item--regular"))}if(l.forEach((function(e){c.closest(e)&&t.push(c.closest(e))})),s=c.closest(".product-page-info"),s){let e=s.querySelector("[data-js-footbar-product-limit]");e&&t.push(e)}if(s=c.closest(".product-wrap"),s){let e=s.querySelector(".purchase-details button.button--add-to-cart"),o=s.querySelector(".product-action");if(e&&t.push(e),o&&t.push(o),window.Shopify&&"dermafirmusa.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".price.sale");e&&t.push(e)}}if(s=c.closest(".seven.columns.omega"),s){let e=s.querySelector(".purchase-details__buttons button.shopify-payment-button__button ");e&&t.push(e)}if(s=c.closest("#collectionPr"),s){let e=s.querySelectorAll("#PageContainer .collection .btn.add-to-cart");e.length&&e.forEach(e=>{t.push(e)})}if(s=c.closest(".grid.product-single"),s){let e=s.querySelector('#PageContainer .wrap-product-info button[type="submit"].btn.btn1.pr_btn.addtocart_js');e&&t.push(e)}if(s=c.closest(".gryffeditor"),s){let e=s.querySelector(".module-wrap .gf_add-to-cart.product-form-product-template");e&&t.push(e)}if(s=c.closest(".product-single .product-single__meta"),s){let e=s.querySelector('.product-form__item button[name="add"].product-form__cart-submit');e&&t.push(e)}if(s=c.closest(".shopify-product-form"),s){let e=s.querySelector("#product-price");e&&t.push(e)}if(s=c.closest(".product-item-price"),s){let e=s.querySelector(".money");e&&t.push(e)}if(s=c.closest('main#main[role="main"]'),s){let e=s.querySelector("div.atc-bar");e&&t.push(e)}if(s=c.closest("#CartDrawer"),s){let e=s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__details dl .product-option");e&&t.push(e);let o=s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__totals .cart-item__price-wrapper");o&&t.push(o);let r=s.querySelector("#CartDrawer-CartItems .cart-item .cart-item__quantity");r&&t.push(r);let c=s.querySelector(".drawer__footer");c&&t.push(c)}if(s=c.closest("#main-cart-items"),s){let e=s.querySelector(".cart-item .cart-item__details dl .product-option");e&&t.push(e);let o=s.querySelector(".cart-item .cart-item__quantity .cart-item__quantity-wrapper");o&&t.push(o);let r=s.querySelector(".cart-item .cart-item__totals.right.small-hide .cart-item__price-wrapper");r&&t.push(r)}if(s=c.closest("#main-cart-footer"),s){let e=s.querySelector(".cart__footer");e&&t.push(e)}if(s=c.closest(".product-single__meta"),s&&window.Shopify&&("asiadirectfurniture.mysh
5244opify.com"===window.Shopify.shop||"pure-vision-ch.myshopify.com"===window.Shopify.shop)){let e=s.querySelector(".product__price[data-product-price]");e&&t.push(e)}if(s=c.closest(".product-inner.pr"),s){let e=s.querySelector(".pr_atc.pr_qty_atc > a.pr_atc_.js_addtc");e&&t.push(e)}if(s=c.closest("#shopify-section-pr_summary"),s){let e=s.querySelector("p.price_range, .price.price_varies");e&&t.push(e)}if(s=c.closest(".grid__item"),s){let e=s.querySelector(".product__form-container"),o=s.querySelector(".product__description");e&&(t.push(e),o.style.width="100%")}if(s=c.closest(".featured-product__content-wrapper"),s){let e=s.querySelector(".product-form");e&&t.push(e)}if(s=c.closest(".card__price"),s&&"exosomes-inc.myshopify.com"===o&&(s.style.textAlign="center"),s=c.closest(".Product__InfoWrapper > .Product__Info "),s){let e=s.querySelector('.ProductForm__BuyButtons > button[type="submit"].ProductForm__AddToCart');e&&t.push(e);let o=s.querySelector(".ProductForm__AddToCart");o&&t.push(o)}if(s=c.closest(".product-grid__container .product-grid__content"),s){let e=s.querySelector(".product-single__form .product__quantity");e&&t.push(e);let o=s.querySelector(".add-to-cart");o&&t.push(o);let r=s.querySelector(".product__price--compare");if(r&&t.push(r),window.Shopify&&"sparklinredwholesale.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".product__price-savings");e&&t.push(e)}}if(s=c.closest(".product-grid-item"),s){let e=s.querySelector(".h1.medium--left");e&&"envogueusa.com"==window.location.host&&t.push(e)}if(s=c.closest("#productPrice-product-template"),s){let e=s.querySelector("small");e&&"envogueusa.com"==window.location.host&&t.push(e),s.appendChild(c)}if(s=c.closest(".product-grid-item"),s){let e=s.querySelector(".form-grid-btn");e&&"mamiereglissepro.myshopify.com"===o&&t.push(e)}if(s=c.closest("#cont-form"),s){let e=s.querySelector(".so-price");e&&t.push(e);let r=s.querySelector("#addToCart");r&&"mamiereglissepro.myshopify.com"===o&&t.push(r)}if(s=c.closest(".template-product"),s){let e=s.querySelector('button[name="add"]#addToCartBis, button[name="add"]#addToCart2');e&&t.push(e)}if(s=c.closest(".grid-product__content"),s){let e=s.querySelector(".quick-product__btn");!e||"wood-hill-boards.myshopify.com"!==o&&"wood-hill-boards-usa.myshopify.com"!==o&&"bundlecomph.myshopify.com"!==o||t.push(e)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector(".product__quantity");!e||"wood-hill-boards.myshopify.com"!==o&&"wood-hill-boards-usa.myshopify.com"!==o||t.push(e)}if(s=c.closest(".product-block-area"),s){let e=s.querySelector("#addToCartButton");e&&"wanderlustvision.myshopify.com"===o&&t.push(e)}if(s=c.closest(".product-single__meta--wrapper .product-single__meta"),s){let e=s.querySelector(".price-container.text-money"),o=s.querySelector('button[name="add"].btn--add-to-cart');e&&t.push(e),o&&t.push(o)}if(s=c.closest(".product-single__metas"),s){let e=s.querySelector(".product-single__buttons .js-quantity-selector.product-quantity"),o=s.querySelector(".product-single__buttons button.btn--add-to-cart");e&&t.push(e),o&&t.push(o)}if("dollie-wholesale.myshopify.com"===o&&(s=c.closest(".product-card"),s)){let e=s.querySelector(".product-card__buttons .product-card__quickview"),o=s.querySelector(".product-card__buttons .product-card__form"),r=s.querySelector(".product-card__buttons .button-wishlist"),c=s.querySelector(".wpb-variants-swatch");e&&t.push(e),o&&t.push(o),r&&t.push(r),c&&t.push(c)}if("obsequ.myshopify.com"===o&&(s=c.closest(".product-meta"),s)){let e=s.querySelector(".price-list[data-product-price-list]");e&&e.remove()}if(s=c.closest(".sticky-cart"),s){let e=s.querySelector(".product-form__buttons");e&&t.push(e)}if("wholesale-rubypearlco.myshopify.com"!==o&&"coventa-demo.myshopify.com"!==o&&(s=c.closest(".productitem--info")||c.closest(".product-pricing"),s)){let e=s.querySelector(".price");e&&t.push(e)}if(s=c.closest(".productitem--info"),s){let e=s.querySelector(".price__compare-at.visible");e&&"coventa-demo.myshopify.com"===o&&t.push(e)}if(s=c.closest(".product-block-list"),s&&window.Shopify&&"axiom-wholesale-parts.myshopify.com"===window.Shopify.shop){let e=s.querySelector(".price");e&&e.classList.remove("price")}if(s=c.closest(".product-layout"),s){let e=s.querySelector(".action-links");e&&t.push(e)}if(s=c.closest(".product-single__meta"),s){let e=s.querySelector(".product-block--price");e&&"comphycompany.myshopify.com"===o&&t.push(e)}if(s=c.closest(".product-details, .modal_price"),s){let e=s.querySelector(".current_price, .price__container");e&&t.push(e)}if("wholesale-rubypearlco.myshopify.com"===window.Shopify.shop&&(s=c.closest(".productitem__container .productitem--info, .product-details .product-pricing"),s)){let e=s.querySelectorAll(".price__compare-at--single, .price__compare-at, .price__current--max");
5244e.length&&e.forEach(e=>e.remove())}if("kerriecapelliusa-com.myshopify.com"===window.Shopify.shop&&(s=c.closest(".product-detail.quickbuy-content.spaced-row.container"),s)){let e=s.querySelectorAll(".product-form.theme-init .variant-visibility-area");e.length&&e.forEach(e=>e.remove())}if(s=c.closest(".widget_if_pr, .product-inner, .al_center.fl_center, .widget_if_pr"),s){let e=s.querySelectorAll(".product-price-pr-search, .hover_button, .nt_add_w, .nt_add_cp, .sticky_atc_btn.variations_form, .transcy-money");e.length&&e.forEach(e=>e.remove())}if(s=c.closest(".ProductItem__Wrapper, .ProductForm"),s){let e=s.querySelector(".ProductItem__PriceList, .ProductForm__QuantitySelector");e&&"sirenwireless.myshopify.com"!==o&&e.remove();let r=s.querySelector(".ProductFormWrapper");r&&"sirenwireless.myshopify.com"===o&&t.push(r)}if("butterfly-health-and-wellness.myshopify.com"===window.Shopify.shop){if(s=c.closest(".item-content"),s){let e=s.querySelector('.module-wrap[data-label="(P) Cart Button"] button.gf_add-to-cart');e&&e.remove()}if(s=c.closest(".gf_product-desc"),s){let e=s.querySelector("h4");e&&(e.remove(),c.style.display="none")}if(s=c.closest(".gf_column[data-id]"),s){let e=s.querySelectorAll('.elementor-section[data-element_type="section"] .elementor-text-editor strong, .gf_product-desc h4, .gf_product-desc strong');if(e)for(let t of e)t.remove()}}if(s=c.closest(".product-block"),s){let e=s.querySelector(".quickbuy-toggle");e&&t.push(e)}if(s=c.closest(".productView-details"),s){let e=s.querySelector(".productView-buttons"),r=s.querySelector(".quantity_selector"),c=s.querySelector(".productView-subtotal");e&&t.push(e),r&&t.push(r),c&&t.push(c),"remote-king-au.myshopify.com"===o&&s.querySelectorAll(".product-customInformation").forEach(e=>e.remove())}if(s=c.closest(".product__content"),s&&"campomarzio-trade-uk.myshopify.com"===o){let e=s.querySelector(".product__text"),o=s.querySelector(".select__fieldset"),r=s.querySelector(".product__submit");e&&t.push(e),o&&t.push(o),r&&t.push(r)}if(s=c.closest(".product-card__price, .product-single__meta-list"),s){let e=s.querySelector(".product-single__price, .money-product");e&&e.remove()}if("ens-nutrition-3419.myshopify.com"===o&&(s=c.closest(".card__content"),s)){let e=s.querySelector(".button.quick-add__submit");e&&e.remove()}if("b2b-nandu.myshopify.com"===o){if(s=c.closest(".grid-product__content"),s){let e=s.querySelector(".grid-product__meta .grid-product__price ");e&&e.remove()}let e=c.closest(".product-single__meta");if(e){let t=e.querySelector(".product__price.product__price--compare"),o=e.querySelector(".product__price.on-sale"),r=e.querySelector(".product__price-savings");t&&o&&r&&(t.remove(),o.remove(),r.remove())}}if("impjarwholesale.myshopify.com"===o){if(s=c.closest(".tp-product-content"),s){let e=s.querySelector("button#AddToCart"),o=s.querySelector(".tp-product-singe-action .tp-product-quantity");e&&t.push(e),o&&t.push(o)}if(s=c.closest(".grid-item"),s){let e=s.querySelector('form[action="/cart/add"]');e&&t.push(e)}}if("b2b-dbodhi-singapore.myshopify.com"===o&&(s=c.closest("del"),s&&t.push(c),s=c.closest(".product-information--inner"),s)){const e=s.querySelector(".product-form");e&&t.push(e)}if(s=c.closest(".lh-details-product"),s){if("ags2020.myshopify.com"===o){let e=s.querySelector(".lh-price");e&&e.classList.remove("lh-price")}let e=s.querySelector(".lh-add_to_cart");e&&t.push(e);let r=s.querySelector(".lh-buy-now");r&&t.push(r);let c=s.querySelector(".lh-compare-at-price");c&&t.push(c)}if(s=c.closest(".lh-collection-item"),s){if("ags2020.myshopify.com"===o){let e=s.querySelector(".lh-price");e&&e.classList.remove("lh-price")}let e=s.querySelector(".lh-product-compare-price");e&&t.push(e)}if(s=c.closest(".ProductMeta, .ProductItem__Info"),s){let e=s.querySelectorAll(".Price");e&&e.forEach(e=>e.remove())}}t.forEach((function(e){e.remove()}))}}(e),function(e){e.ltsp.removeElementByLTSPWrapper=function(){let e=document.getElementsByClassName("bss-ltsp-price-wrapper"),t=[];for(let o=0;o<e.length;o++){let r=e[o],c=[],l=r.closest(".product-parent");if(l){let e=l.querySelector("form .tt-btn-addtocart");e&&t.push(e);let o=l.querySelector(".tt-btn-quickview");o&&t.push(o)}if(l=r.closest(".product-single__meta"),l=r.closest(".tt-product-single-info"),l){let e=l.querySelector("form .btn-addtocart");e&&t.push(e);let o=l.querySelector('form[action*="/cart/add"]');o&&t.push(o)}if(l=r.closest(".product_section"),l){let e=l.querySelector("form .add_to_cart, form .b2b-ajax-submit");e&&t.push(e);let o=l.querySelector(".sale.savings");o&&t.push(o)}if(l=r.closest(".quick-shop-style--inline"),l){let e=l.querySelector("form .add_to_cart, form .b2b-ajax-submit");e&&t.push(e)}if(l=r.closest(".product-details"),l){let e=l.querySelector("small em");e&&t.push(e)}if(l=r.closest(".gt_product-body"),l){let e=l.querySelector("form .gt_product-addtocart");e&&t.push(e);let o=l.querySelector(".gt_product-saved");o&&t.push(o);let r=l.querySelector(".gt_product-price--compare");r&&t.push(r)}if(l=r.closest(".gt_product_content"),l){let e=l.querySelector("form .gt_product-addtocart");e&&t.push(e);let o=l.querySelector(".gt_product-price--compare");o&&t.push(o)}if(l=r.closest(".gt-single-product"),l){let e=l.querySelector("div.gt_method_addToCart");e&&t.push(e);let o=l.querySelector(".gt_product-price--compare");o&&t.push(o)}if(l=r.closest("#cont-form"),l){let e=l.querySelector("form .cont-add-btns");e&&t.push(e)}if(l=r.closest(".theiaStickySidebar"),l){let e=l.querySelector(".variations_button");e&&t.push(e)}if(l=r.closest(".product-submit"),l){let e=l.querySelector(".payment-buttons-container");e&&t.push(e)}if(l=r.closest(".productitem"),l){let e=l.querySelector(".productitem--action");e&&t.push(e)}if(l=r.closest(".product--outer"),l){let e=l.querySelector(".product-form--atc");e&&t.push(e),e=l.querySelector(".shopify-payment-button"),e&&t.push(e)}if(l=r.closest(".product-grouped"),l){let e=l.querySelector(".product_top form#add-to-cart-form");e&&t.push(e)}if(l=r.closest(".product-item"),l){let e=l.querySelector(".product-top .product-des .action");e&&t.push(e)}if(l=r.closest(".product-item"),l){let e=l.querySelector('.product-item__action-button[data-action="add-to-cart"]');e&&t.push(e)}if(l=r.closest(".grid__item.grid-product"),l){let e=l.querySelector('form[action="/cart/add"] input[type="submit"]');e&&t.push(e);let o=l.querySelector(".grid-product__tag");o&&t.push(o);let r=l.querySelector(".visually-hidden");r&&t.push(r)}if(l=r.closest(".product-info"),l){let e=l.querySelector('form[action="/cart/add"] .payment-buttons');e&&t.push(e);let o=l.querySelector(".variant-wrapper.variant-wrapper--button");o&&t.push(o)}if(l=r.closest("#product-right"),l){let e=l.querySelector(".was");e&&t.push(e);let o=l.querySelector(".product-add");o&&t.push(o)}if(l=r.closest(".was"),l&&t.push(l),l=r.closest(".product-single__meta"),l){let e=l.querySelector(".pf__actions");e&&t.push(e)}if(l=r.closest("#AddToCartForm-product-template"),l){let e=l.querySelector("#CartButtons-product-template");e&&t.push(e)}if(l=r.closest(".Product__Info"),l){let e=l.querySelector(".ProductMeta__PriceList");e&&t.push(e)}if(l=r.closest(".grid-item"),l){let e=l.querySelector("#addToCart-product-template");e&&t.push(e);let o=l.querySelector(".payment-buttons");o&&t.push(o)}c.forEach((function(e){r.closest(e)&&t.push(r.closest(e))}))}t.forEach((function(e){e.remove()}))}}(e),e.ltsp.removePattern=function(){e.ltsp.removeElementByLTSPMessage(),e.ltsp.removeElementByLTSPWrapper()},e.ltsp.insertBeforeAddToCart=function(){let t=document.querySelectorAll(".bsscommerce-ltsp-message[data-ltsp-cart-message]");for(let o=0;o<t.length;o++){let r=t[o],c=r.getAttribute("data-ltsp-cart-message");r.removeAttribute("data-ltsp-cart-message");let l=[".main-content .product-single__meta",".main-content .grid__item",".main-content .grid-item",".main-content .product__content.product__content--template.product__content--information","main#MainContent .product__info-container",".container#product-product .product-info-main",'main#main section[data-section-id="collection-template"] .product-item',".product-area__details.product-detail .product-detail__form"];for(let t=0;t<l.length;t++){let o=r.closest(l[t]);if(o&&!o.querySelector(".bsscommerce-ltsp-message.hide-message")){let t=
5244o.querySelector('form[action="/cart/add"]');if(t){let o=e.helperLTSP.createHidePriceMessageSpan(c);t.before(o)}}}let s=[[".product-layout .item .item-inner .caption",".button.btn-cart"],['main#main section[data-section-id="product-template"] .card__section',".product-form__payment-container"],[".main#MainContent .content.product",'form[action="/cart/add"] .offers']];for(let t=0;t<s.length;t++){let o=r.closest(s[t][0]);if(o&&!o.querySelector(".bsscommerce-ltsp-message.hide-message")){let r=o.querySelector(s[t][1]);if(r){let t=e.helperLTSP.createHidePriceMessageSpan(c);r.before(t)}}}if(window.Shopify&&"airbesafe.myshopify.com"===window.Shopify.shop){let t=[[".shopify-section--main-collection .product-list__inner .product-item ",".product-item__info .product-item-meta__price-list-container .price-list"],[".shopify-section--main-product .product--thumbnails-bottom .product__info",".product-meta__price-list-container"],["product-item.product-item .product-item__info",".product-item-meta__price-list-container"]];for(let o=0;o<t.length;o++){let l=r.closest(t[o][0]);if(l&&!l.querySelector(".bsscommerce-ltsp-message.hide-message")){let r=l.querySelector(t[o][1]);if(r){let t=e.helperLTSP.createHidePriceMessageSpan(c);r.after(t)}}}}}}}function c(e){!function(e){e.helperLTSP={},e.helperLTSP.createHidePriceMessageSpan=function(e){let t=document.createElement("span");return t.classList.add("bsscommerce-ltsp-message"),t.classList.add("hide-message"),t.style.fontSize="16px",t.style.fontWeight="normal",t.style.color="initial",t.style.textTransform="none",t.style.visibility="visible",t.innerHTML=e,t},e.helperLTSP.onLoadMore=function(e){const t=document.querySelector([".sf__product-listing[data-product-container] > div",'.row[data-js-collection-replace="products"]',".product-list-container .product-list.use-infinite-scroll","#collection-product .product-container",".container #col-main"].join(","));if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&e()}))})).observe(t,{childList:!0})}}}(e)}function l(){const e={};c(e),r(e),function(e){e.ptvp={},e.ptvp.addPasscodeForm=function(){let e=document.querySelector('form[action*="/cart/add"]'),t=document.getElementsByClassName("bss-passcode-wrapper-tag"),o=document.getElementsByClassName("bsscommerce-password-form"),r=document.querySelector(".toggle-passcode-input"),c=null;if(o.length&&(c=o[0],c.style.display="block",r&&r.addEventListener("click",(function(e){let t=document.getElementById("bsscommerce-password");"password"===t.type?(t.type="text",e.target.closest(".toggle-passcode-input").style.fill="#5C5F62"):(t.type="password",e.target.closest(".toggle-passcode-input").style.fill="#BABEC3")}))),t.length&&e&&o.length){e.before(c);let o=document.getElementById("bsscommerce-password"),r=new FormData;r.append(o.name,o.value),document.getElementById("bsscommerce-password-submit").style.padding="12px 16px",document.getElementById("bsscommerce-password-submit").style.display="block";let l=new XMLHttpRequest;l.open("post","/cart/update.js"),l.send(r);let s=document.getElementsByClassName("bsscommerce-ltap-password");if(s.length)for(let e=0;e<s.length;e++)s[e].addEventListener("submit",(function(e){e.preventDefault();let t=this;if(t.length)for(let e=0;e<t.length;e++)if("bsscommerce-password"==t[e].id){let o=t[e];if(o.addEventListener("input",(function(){o.classList.remove("input--error")})),o.value)if(""!=o.value){let e=new FormData;e.append(o.name,o.value);let t=new XMLHttpRequest;t.onreadystatechange=function(){4==t.readyState&&200==t.status&&location.reload()},t.open("post","/cart/update.js"),t.send(e)}else o.classList.add("input--error")}}));for(let e=0;e<t.length;e++)t[e].remove()}}}(e),e.ptvp.addPasscodeForm(),document.querySelectorAll(".quick-view-btn").forEach((function(t){t.addEventListener("click",(function(){setTimeout((function(){e.ptvp.addPasscodeForm()}),1e3)}))})),function e(){document.querySelectorAll(".advanced-filter a").forEach((function(t){t.addEventListener("click",(function(){setTimeout((function(){let t=document.getElementsByClassName("bsscommerce-ltsp-message");for(let e=0;e<t.length;e++){let o=t[e].closest(".item-row");
5244if(o){let e=o.querySelector(".add-to-cart");e&&e.remove()}}e()}),1200)}))}))}(),e.ltsp.quickView(),e.ltsp.insertBeforeAddToCart(),e.ltsp.removePattern(),e.helperLTSP.onLoadMore(e.ltsp.removePattern),setTimeout((function(){e.ltsp.removePattern()}),2500);if(window.Shopify&&-1!==["showroom1-ducanero.myshopify.com","sparklinredwholesale.myshopify.com","youchique-4183.myshopify.com","wilkens-gmbh.myshopify.com","friends-forever-pets.myshopify.com"].indexOf(window.Shopify.shop)&&(window.onscroll=function(e,t){let o;return function(...r){o&&clearTimeout(o),o=setTimeout(()=>{e(...r),o=null},t)}}((function(){let t=setInterval((function(){e.ltsp.removePattern()}),200);setTimeout((function(){clearInterval(t)}),3e3)}),500)),"amoreo.eu"===window.location.host){let t=setInterval((function(){e.ltsp.removePattern()}),200);setTimeout((function(){clearInterval(t)}),3e3)}let t=document.querySelector(".infinite-scrolling-homepage a.btn");"airbesafe.myshopify.com"===window.location.host&&setTimeout((function(){e.ltsp.insertBeforeAddToCart()}),3e3),t&&(t.onclick=function(){setTimeout((function(){e.ltsp.removePattern()}),1e3)});let o=document.querySelectorAll("#shopify-section-product-recommendations, .product-modal-wrapper");var l,s,u;(o.length&&o.forEach((function(t){t.addEventListener("DOMSubtreeModified",(function(){e.ltsp.removePattern()}))})),"valleys-group.myshopify.com"===window.location.host)&&(l=function(){e.ltsp.removePattern();
5244let t=document.querySelectorAll(".slideout__drawer-right, .sidebar_leftside_wapper, .filtering__results");t.length&&t.forEach((function(e){e.addEventListener("click",(function(){setTimeout(()=>{l()},1700)}))}))});"b.salonpremium.com"===window.location.host&&(s=function(){e.ltsp.removePattern();let t=document.querySelectorAll(".pagination");t.length&&t.forEach((function(e){e.addEventListener("click",(function(){setTimeout(()=>{s()},3e3)}))}))});"www.internationalbeauty.ca"===window.location.host&&(u=function(){let t=document.querySelector('[id^="RecentlyViewed"]');new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&(e.ltsp.removePattern(),document.querySelectorAll(".btn--icon.quick-product__btn").forEach((function(e){e.addEventListener("click",(function(){setTimeout((function(){let e=document.getElementsByClassName("bsscommerce-ltsp-message");for(let t=0;t<e.length;t++){let o=e[t].closest(".product-grid__content");if(o){let e=o.querySelector(".payment-buttons");e&&e.remove()}}u()}),2e3)}))})))}))})).observe(t,{childList:!0})});if("redbasketb2b.myshopify.com"===window.Shopify.shop){let t=document.querySelector("#CartDrawer");const o=()=>{let e=document.querySelectorAll("script#bss-ltap-login-require");for(let t in e)t.remove()};if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&(e.ltsp.removePattern(),o())}))})).observe(t,{childList:!0})}}if("dollie-wholesale.myshopify.com"===window.Shopify.shop){let t=document.querySelector("#product-grid .products__row");if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&e.ltsp.removePattern()}))})).observe(t,{childList:!0})}}if("impjarwholesale.myshopify.com"===window.Shopify.shop){let t=document.querySelector(".tp-collection-content");if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&e.ltsp.removePattern()}))})).observe(t,{childList:!0})}}if("inex-studio.myshopify.com"===window.Shopify.shop){let t=document.querySelector("#Search .Search__Results");if(t){new MutationObserver((function(t){t.forEach((function(t){t.addedNodes.length&&e.ltsp.removePattern()}))})).observe(t,{childList:!0,subtree:!0})}}}o.r(t),o.d(t,"default",(function(){return l})),l()}]); 5245 </script>
5245 5246 </main> 5247 <div id="shopify-section-newsletter" class="shopify-section"><br> 5248 <!-- wp:html --> 5249
5249<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5250 document.addEventListener('DOMContentLoaded', 5251 function(){const faqItems=document.querySelectorAll('.faq-item'); 5252 faqItems.forEach(item=>{const question=item.querySelector('.faq-question'); 5253 question.addEventListener('click', 5254 ()=>{const isActive=item.classList.contains('active'); 5255 faqItems.forEach(otherItem=>{otherItem.classList.remove('active')}); 5256 if(!isActive){item.classList.add('active')}})})}); 5257 </script>
5257 5258 5259 5260 <div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1"> 5261 </div> 5262 <section class="fx-video-bg"> 5263 <video autoplay muted loop playsinline> 5264 <source src="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" type="video/mp4"> 5265 </video> 5266 <div class="fx-video-overlay"></div> 5267 5268 <div class="fx-article-wrap"> 5269 <article class="fx-article"> 5270 <section class="clean-container"> 5271 <div class="clean-wrap"> 5272 <h1 class="clean-title">PRIMATOTO Situs Online Paling Menarik di Indonesia dengan Link Alternatif Resmi</h1> 5273 5274<div class="clean-divider"></div> 5275 5276<div class="clean-article"> 5277 <p>Memasuki tahun 2026, kemudahan dalam memperoleh prediksi angka yang presisi menjadi kebutuhan utama para pecinta hiburan digital.<strong><a title="Situs PRIMATOTO" href="https://pjph.org/" target="_blank">PRIMATOTO</a></strong> hadir memberikan akses istimewa situs toto 4D terpercaya yang memadukan server berkecepatan tinggi dengan jaminan keamanan transaksi secara menyeluruh. Melalui platform mutakhir ini, pemain dapat menikmati berbagai permainan favorit mulai dari pasaran tebak angka hingga kombinasi toto slot togel yang dikemas secara praktis, fleksibel, dan modern.</p><p>hadir memberikan akses istimewa situs toto 4D terpercaya yang memadukan server berkecepatan tinggi dengan jaminan keamanan transaksi secara menyeluruh. Melalui platform mutakhir ini, pemain dapat menikmati berbagai permainan favorit mulai dari pasaran tebak angka hingga kombinasi toto slot togel yang dikemas secara praktis, fleksibel, dan modern.</p><p>Selain akurasi prediksi, kelengkapan variasi hiburan seperti toto slot togel menjadikan Primatoto sebagai pilihan utama platform hiburan angka dan taruhan di tahun 2026. Didukung oleh layanan pelanggan profesional yang bersiap 24 jam nonstop serta proses transaksi cepat, lingkungan bertaruh dipastikan aman dan adil. Segera gunakan akses istimewa situs toto 4D di Primatoto untuk pengalaman bertaruh yang responsif dan berpotensi menghasilkan kemenangan maksimal. </p><h2>PRIMATOTO SITUS TOTO MACAU TARUHAN 4 ANGKA</h2><p><strong><a title="Situs PRIMATOTO" href="https://pjph.org/" target="_blank">PRIMATOTO</a></strong> merupakan format lotere di mana pemain memilih empat angka acak dari rentang 0000 hingga 9999. Permainan ini telah menjadi pilihan utama bagi para penggemar togel di Indonesia karena daya tariknya yang unik dan hadiah yang tinggi mencapai 10ribu x bet.</p><p>Sistem taruhan 4 digit ini menawarkan tantangan bermain togel seru, memberikan peluang besar bagi pemain untuk memenangkan hadiah jika mereka berhasil menebak kombinasi empat angka dengan benar. Prediksi yang tepat dapat menghasilkan kemenangan price TOTO 4D hingga jutaan rupiah, menjadikannya opsi yang sangat menarik bagi para bettor pemula maupun yang berpengalaman.</p><h2>VARIASI PASARAN TOTO 4D DI PRIMATOTO</h2><p><strong><a title="Situs PRIMATOTO" href="https://pjph.org/" target="_blank">PRIMATOTO</a></strong> menyediakan berbagai variasi pasaran TOTO 4D yang menarik dengan peluang menang besar price togel hingga 10000x bayaran. Berikut adalah beberapa pasaran populer yang tersedia di PRIMATOTO:</p><h3>Toto Macau 4D</h3><p>Pasaran Toto Macau 4D hasil undian yang akurat langsung diperoleh dari sumber resmi Negara macau, sehingga pemain dapat dengan mudah memeriksa result setelah undian selesai. Dengan kecepatan dan ketepatan informasi, semua orang bisa merancang strategi terbaik untuk taruhan berikutnya.</p><h3>Togel HK 4D</h3><p>PRIMATOTO juga menghadirkan togel hongkong HK 4D, salah satu pasaran paling populer di kalangan penggemar togel. Hasil keluaran HK4D di PRIMATOTO dikenal akurat dan cepat, sehingga pemain tidak perlu menunggu lama untuk mengetahui hasil taruhan mereka.</p><h3>Togel Singapore 4D</h3><p>Pasaran Togel Singapore 4D salah satu yang paling senior dari pasaran lainnya. Hasil undian resmi dari Singapore Pools diumumkan tiga kali seminggu, yaitu pada hari Rabu, Sabtu, dan Minggu pukul 17.45 WIB.</p><h3>Togel Sydney 4D</h3><p>Dengan undian setiap hari pukul 14.00 WIB, Togel Sydney 4D menjadi pilihan menarik bagi pemain yang ingin mencoba keberuntungan lebih sering. Hasilnya yang cepat dan frekuensi permainan yang tinggi membuat pasaran ini semakin diminati.</p><h2>SITUS PRIMATOTO TERBAIK DI INDONESIA</h2><p>PRIMATOTO telah dikenal luas sebagai salah satu situs 4d TOTO MACAU terbaik di Indonesia. Komitmennya terhadap keamanan, kenyamanan, dan layanan berkualitas menjadikannya favorit para penggemar TOTO MACAU di Asia khususnya Indonesia.</p><h2>INDUSTRI TOTO MACAU 4D RESMI</h2><p>Sebagai bagian dari industri TOTO MACAU 4D yang diakui secara resmi, PRIMATOTO memiliki lisensi dan izin legal dari lembaga berwenang. Hal ini memastikan setiap taruhan yang dilakukan di platform ini berlangsung dengan adil dan transparan, memberikan rasa aman dan nyaman bagi setiap pemain.</p><h3>Manfaat Legalitas dalam Bermain Togel</h3><ul data-rte-list="default"><li><p>Kepercayaan Tinggi: Lisensi resmi memberikan jaminan kepada pemain.</p></li><li><p>Transparansi Permainan: Semua hasil undian berasal dari sumber resmi.</p></li><li><p>Kepuasan Pengguna: Dengan sistem yang legal, pengalaman bermain jadi lebih tenang dan bebas dari kekhawatiran.<
5277/p></li></ul><h2>LINK RESULT PRIMATOTO AKURAT DAN TERUPDATE</h2><p>PRIMATOTO menawarkan link result PRIMATOTO tercepat dan paling akurat untuk mempermudah pemain dalam memantau hasil taruhan mereka. Dengan layanan ini, pemain dapat memeriksa hasil undian kapan saja, 24 jam nonstop, tanpa khawatir tentang keterlambatan atau ketidakakuratan informasi.</p><h3>Keunggulan Link Result PRIMATOTO</h3><ul data-rte-list="default"><li><p>Real-Time Update: Hasil undian selalu diperbarui secara langsung.</p></li><li><p>Akses 24/7: Pemain dapat memeriksa hasil kapan saja tanpa batas waktu.</p></li><li><p>Kemudahan Penggunaan: Link result mudah diakses baik melalui desktop maupun mobile.</p></li></ul><p>Dengan integrasi layanan ini, PRIMATOTO tidak hanya menjadi tempat bermain yang menyenangkan, tetapi juga sarana terbaik untuk memantau perkembangan TOTO 4D secara real-time.</p><p>Ingin bermain PRIMATOTO atau togel 4 angka? PRIMATOTO bisa jadi pilihan terbaik! Karena situs ini mengutamakan kepuasan pelanggan, dengan segala keunggulan produk yang ditawarkan serta legalitas resmi, anda tidak akan pernah takut dengan segala resiko yang terjadi. Segera login ke akun PRIMATOTO kalian dan nikmati ketepatan hasil undian secara live.</p> 5278</div> 5279 5280<section class="PRIMATOTO-block" id="faq"> 5281 <div class="PRIMATOTO-head"> 5282 <span class="PRIMATOTO-dot"></span> 5283 <span>FAQ Eksklusif PRIMATOTO</span> 5284 </div> 5285 <div class="PRIMATOTO-faq"> 5286 <details class="PRIMATOTO-item"> 5287 <summary>1. Apa itu PRIMATOTO?</summary> 5288 <div class="PRIMATOTO-ans"> 5289 <a href="/" title="PRIMATOTO"> 5290 <strong>PRIMATOTO</strong> 5291 </a> Primatoto adalah situs toto 4D terpercaya tahun 2026 yang menyediakan akses istimewa bagi para pemain untuk menikmati permainan tebak angka lengkap, layanan hiburan toto slot togel, serta sajian prediksi angka yang presisi dan akurat setiap hari. 5292 </div> 5293 </details> 5294 <details class="PRIMATOTO-item"> 5295 <summary>2. Mengapa memilih Primatoto sebagai situs toto 4D pilihan di tahun 2026?</summary> 5296 <div class="PRIMATOTO-ans"> Sebagai situs toto 4D terdepan, Primatoto menawarkan sistem keamanan tingkat tinggi, kecepatan server prima, pasaran lengkap, serta kemudahan akses tanpa hambatan untuk memberikan jaminan taruhan aman bagi seluruh anggotanya. </div> 5297 </details> 5298 <details class="PRIMATOTO-item"> 5299 <summary>3. Apakah Primatoto menyediakan prediksi Toto Macau yang akurat?</summary> 5300 <div class="PRIMATOTO-ans"> Ya, Primatoto menghadirkan bocoran prediksi angka Toto Macau paling jitu, lengkap, dan akurat. Prediksi ini disusun berdasarkan analisis data historis dan statistik keluaran terbaru untuk membantu meningkatkan peluang jackpot harian Anda.</div> 5301 </details> 5302 <details class="PRIMATOTO-item"> 5303 <summary>4. Permainan apa saja yang tersedia di Primatoto?</summary> 5304 <div class="PRIMATOTO-ans"> Selain menghadirkan pasaran 4D populer seperti Macau, Primatoto juga menyediakan variasi permainan hiburan terlengkap seperti toto slot togel dan berbagai pilihan tebak angka menarik yang bisa dimainkan hanya dengan 1 akun.</div> 5305 </details> 5306 <details class="PRIMATOTO-item"> 5307 <summary>5. Bagaimana cara mendapatkan akses istimewa di Primatoto?</summary> 5308 <div class="PRIMATOTO-ans"> Anda cukup mendaftar melalui tautan resmi Primatoto untuk langsung menikmati akses istimewa situs toto 4D, termasuk fitur prediksi angka jitu, fitur analisis pasaran, hingga promosi menarik yang selalu diperbarui pada tahun 2026. </div> 5309 </details> 5310 <details class="PRIMATOTO-item"> 5311 <summary>6. Apakah bertaruh di Primatoto dijamin aman dan amanah?</summary> 5312 <div class="PRIMATOTO-ans"> 5313 <strong>Tentu saja. Primatoto memberikan jaminan taruhan aman dengan sistem enkripsi data modern serta jaminan pembayaran kemenangan secara penuh dan cepat tanpa potongan.</strong> 5314 </div> 5315 </details> 5316 <details class="PRIMATOTO-item"> 5317 <summary>7. Berapa modal minimal untuk mulai bermain toto slot togel di Primatoto?</summary> 5318 <div class="PRIMATOTO-ans"> Primatoto menyediakan batas minimum deposit dan taruhan yang sangat terjangkau. Hal ini memungkinkan semua pemain untuk mencoba peruntungan di permainan toto slot togel maupun tebak angka 4D dengan modal minim. </div> 5319 </details> 5320 <details class="PRIMATOTO-item"> 5321 <summary>8. Kapan bocoran prediksi Toto Macau di Primatoto diperbarui?</summary> 5322 <div class="PRIMATOTO-ans"> Ya, <a href="/" title="Prima Togel"> 5323 <strong>Prima Togel</strong> 5324 </a> Bocoran prediksi angka di Primatoto diperbarui secara berkala setiap hari menyesuaikan dengan jadwal putaran pasaran Toto Macau resmi tahun 2026, sehingga pemain selalu mendapatkan data yang paling segar.</div> 5325 </details> 5326 <details class="PRIMATOTO-item"> 5327 <summary>9. Bagaimana jika mengalami kendala saat mengakses situs toto 4D Primatoto?</summary> 5328 <div class="PRIMATOTO-ans"> Primatoto menyediakan layanan Customer Service profesional yang beroperasi 24 jam nonstop setiap hari melalui Live Chat atau WhatsApp untuk membantu menangani kendala teknis maupun informasi seputar akun Anda. </div> 5329 </details> 5330 <details class="PRIMATOTO-item"> 5331 <summary>10. Apakah ada peluang mendapatkan jackpot setiap hari di Primatoto?</summary> 5332 <div class="PRIMATOTO-ans"> Ya, dengan memanfaatkan kombinasi bocoran prediksi angka jitu, pilihan pasaran toto slot togel beragam, serta pengelolaan modal yang baik, peluang Anda untu
5332k meraih jackpot harian di Primatoto terbuka sangat lebar. </div> 5333 </details> 5334 </div> 5335</section> 5336 5337<section class="PRIMATOTO-block" id="testimoni" style="margin-top:16px"> 5338 <div class="PRIMATOTO-head"><span class="PRIMATOTO-dot"></span><span>TESTIMONI PENGGUNA PRIMATOTO</span></div> 5339 5340<div class="PRIMATOTO-testi-grid" aria-label="Ulasan pengguna PRIMATOTO"> 5341 5342 <article class="PRIMATOTO-testi"> 5343 <div class="PRIMATOTO-top"> 5344 <div class="PRIMATOTO-title">Aksesnya Sat-set</div> 5345 <div class="PRIMATOTO-stars" aria-label="Rating 5 dari 5">â â â â â </div> 5346 </div> 5347 <div class="PRIMATOTO-name">Fera Wati</div> 5348 <div class="PRIMATOTO-text"> 5349 "Primatoto benar-benar situs toto 4D terpercaya di tahun 2026. Prediksi angka Toto Macau yang diberikan sangat akurat, beberapa kali berhasil kena jackpot beruntun!" 5350 </div> 5351 </article> 5352 5353 <article class="PRIMATOTO-testi"> 5354 <div class="PRIMATOTO-top"> 5355 <div class="PRIMATOTO-title">Login Tidak Bikin Ribet</div> 5356 <div class="PRIMATOTO-stars" aria-label="Rating 5 dari 5">â â â â â </div> 5357 </div> 5358 <div class="PRIMATOTO-name">Vera Silvia</div> 5359 <div class="PRIMATOTO-text"> 5360 "Suka banget main di Primatoto. Pasaran toto slot togel nya lengkap dan taruhan dijamin aman banget. Proses WD hasil jackpot juga sangat cepat tanpa kendala." 5361 </div> 5362 </article> 5363 5364 <article class="PRIMATOTO-testi"> 5365 <div class="PRIMATOTO-top"> 5366 <div class="PRIMATOTO-title">Daftar Lebih Praktis</div> 5367 <div class="PRIMATOTO-stars" aria-label="Rating 5 dari 5">â â â â â </div> 5368 </div> 5369 <div class="PRIMATOTO-name">Angga Fransisco</div> 5370 <div class="PRIMATOTO-text"> 5371 "Akses istimewa dan bocoran prediksi Toto Macau dari Primatoto memang paling jitu. Peluang jackpot harian bukan cuma sekadar promosi, terbukti joss!" 5372 </div> 5373 </article> 5374 5375 <article class="PRIMATOTO-testi"> 5376 <div class="PRIMATOTO-top"> 5377 <div class="PRIMATOTO-title">Navigasinya Rapi</div> 5378 <div class="PRIMATOTO-stars" aria-label="Rating 4 dari 5">â â â â </div> 5379 </div> 5380 <div class="PRIMATOTO-name">Sudiarto</div> 5381 <div class="PRIMATOTO-text">
5382 "Sebagai pemain lama, saya rekomendasikan Primatoto bagi yang mencari situs toto 4D dengan sistem keamanan terbaik. Gacor terus setiap hari." 5383 </div> 5384 </article> 5385 5386 <article class="PRIMATOTO-testi"> 5387 <div class="PRIMATOTO-top"> 5388 <div class="PRIMATOTO-title">Nyaman Dibuka Lewat HP</div> 5389 <div class="PRIMATOTO-stars" aria-label="Rating 4 dari 5">â â â â </div> 5390 </div> 5391 <div class="PRIMATOTO-name">Hariyanto</div> 5392 <div class="PRIMATOTO-text"> 5393 "Permainan toto slot togel di Primatoto sangat responsif dan ringan dimainkan. Apalagi ditambah info angka jitu Macau yang selalu terupdate akurat." 5394 </div> 5395 </article> 5396 5397 <article class="PRIMATOTO-testi"> 5398 <div class="PRIMATOTO-top"> 5399 <div class="PRIMATOTO-title">Informasinya Mudah Dicari</div> 5400 <div class="PRIMATOTO-stars" aria-label="Rating 5 dari 5">â â â â â </div> 5401 </div> 5402 <div class="PRIMATOTO-name">Sai Aji</div> 5403 <div class="PRIMATOTO-text"> 5404 "Gak salah memilih Primatoto di tahun 2026 ini. Akses situs lancar, bocoran prediksi Toto Macau paling akurat, dan pelayanan CS 24 jam sangat membantu." 5405 </div> 5406 </article> 5407 5408 <article class="PRIMATOTO-testi"> 5409 <div class="PRIMATOTO-top"> 5410 <div class="PRIMATOTO-title">Simpel tetapi Tetap Modern</div> 5411 <div class="PRIMATOTO-stars" aria-label="Rating 5 dari 5">â â â â â </div> 5412 </div> 5413 <div class="PRIMATOTO-name">Asrul Shani</div> 5414 <div class="PRIMATOTO-text"> 5415 "Primatoto memang situs toto 4D terbaik. Jackpot makin terasa mudah didapat berkat panduan prediksi jitu yang lengkap setiap harinya." 5416 </div> 5417 </article> 5418 5419 <article class="PRIMATOTO-testi"> 5420 <div class="PRIMATOTO-top"> 5421 <div class="PRIMATOTO-title">Alamat Cadangan Membantu</div> 5422 <div class="PRIMATOTO-stars" aria-label="Rating 5 dari 5">â â â â â </div> 5423 </div> 5424 <div class="PRIMATOTO-name">Devi Diansyah</div> 5425 <div class="PRIMATOTO-text"> 5426 "Selain taruhan aman, pilihan game toto slot togel di Primatoto juga banyak pilihan seru. Kemenangan berapapun selalu dibayar lunas." 5427 </div> 5428 </article> 5429 5430 <article class="PRIMATOTO-testi"> 5431 <div class="PRIMATOTO-top"> 5432 <div class="PRIMATOTO-title">Pengalaman Akses Lebih Aman</div> 5433 <div class="PRIMATOTO-stars" aria-label="Rating 4 dari 5">â â â â </div> 5434 </div> 5435 <div class="PRIMATOTO-name">Riki Yonantan</div> 5436 <div class="PRIMATOTO-text"> 5437 "Akses istimewa dari Primatoto membuat pengalaman pasang angka Macau jadi lebih percaya diri. Prediksi jitu 2026 mantap betul!" 5438 </div> 5439 </article> 5440 5441</div> 5442 5443</section> 5444 5445<!-- ================================ 5446 PRIMATOTO GACOR 5447================================ --> 5448<section class="trending-box"> 5449 <h2 class="trending-title"> ð¥ Trending Tags </h2> 5450 <div class="trending-scroll"> 5451 <div class="trending-track"> 5452 <!-- GROUP 1 --> 5453 <a class="trending-tag" href="https://pjph.org/"> PRIMATOTO </a> 5454 <a class="trending-tag" href="https://pjph.org/"> PRIMA TOTO </a> 5455 <a class="trending-tag" href="https://pjph.org/"> SITUS TOTO </a> 5456 <a class="trending-tag" href="https://pjph.org/"> TOTO TOGEL </a> 5457 <a class="trending-tag" href="https://pjph.org/"> TOTO MACAU </a> 5458 <a class="trending-tag" href="https://pjph.org/"> TOTO 4D </a> 5459 <a class="trending-tag" href="https://pjph.org/"> SITUS TOTO TOGEL </a> 5460 <a class="trending-tag" href="https://pjph.org/"> SITUS TOTO MACAU </a> 5461 <a class="trending-tag" href="https://pjph.org/"> SITUS TOTO TOGEL4D </a> 5462 <!-- GROUP 2 --> 5463 <a class="trending-tag" href="https://pjph.org/"> PRIMATOTO </a> 5464 <a class="trending-tag" href="https://pjph.org/"> PRIMA TOTO </a> 5465 <a class="trending-tag" href="https://pjph.org/"> SITUS TOTO </a> 5466 <a class="trending-tag" href="https://pjph.org/"> TOTO TOGEL </a> 5467 <a class="trending-tag" href="https://pjph.org/"> TOTO MACAU </a> 5468 <a class="trending-tag" href="https://pjph.org/"> TOTO 4D </a> 5469 <a class="trending-tag" href="https://pjph.org/"> SITUS TOTO TOGEL </a> 5470 <a class="trending-tag" href="https://pjph.org/"> SITUS TOTO MACAU </a> 5471 <a class="trending-tag" href="https://pjph.org/"> SITUS TOTO TOGEL4D </a> 5472 </div> 5473 </div> 5474</section> 5475 </section> 5476 <style id="PRIMATOTO-faq-testi-styles">.PRIMATOTO-block{position:relative;margin:10px}.PRIMATOTO-head{display:flex;align-items:center;gap:10px;margin:10px 0 12px;font-weight:800;letter-spacing:.9px;font-size:14px;color:#fff;text-transform:uppercase;text-shadow:0 0 8px rgba(195,225,245,.9)}.PRIMATOTO-dot{width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffffff,#55b8ef 70%);box-shadow:0 0 0 4px rgba(39,127,184,.25),0 0 18px rgba(200,230,248,.65)}.PRIMATOTO-faq{display:grid;gap:10px}.PRIMATOTO-item{border-radius:16px;border:1px solid rgba(213,231,242,.9);background:linear-gradient(135deg,#edf6fb,#6faed2,#145f8c);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 18px 50px rgba(0,0,0,.45);overflow:hidden}.PRIMATOTO-item summary{list-style:none;cursor:pointer;padding:14px 14px 14px 16px;position:relative;font-weight:700;color:#fff;text-shadow:0 0 6px rgb(105 187 235 / 70%)}.PRIMATOTO-item summary::-webkit-details-marker{display:none}.PRIMATOTO-item summary:after{content:"+";position:absolute;right:14px;top:50%;transform:translateY(-50%);width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:rgb(35 122 180 / 75%);border:1px solid rgba(224,238,247,.82);box-shadow:0 0 10px rgb(64 163 222 / 80%),0 0 25px rgba(190,226,247,.4),0 8px 18px rgba(0,0,0,.35);transition:transform .2s ease}.PRIMATOTO-item[open] summary:after{content:"â";transform:translateY(-50%) rotate(180deg)}.PRIMATOTO-ans{padding:0 16px 14px;color:rgba(255,255,255,.9);line-height:1.6}.PRIMATOTO-item[open]{border-color:rgba(235,245,251,.98)}.PRIMATOTO-testi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.PRIMATOTO-testi{border-radius:18px;padding:14px;background:radial-gradient(80% 80% at 0 0,rgb(34 105 149),#124b70 60%),radial-gradient(70% 70% at 100% 0,rgba(241,249,255,.72),#061a29 55%),linear-gradient(135deg,#071b2a,#8cc7e8);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 18px 55px rgba(0,0,0,.5);position:relative;overflow:hidden}.PRIMATOTO-testi:before{content:"";position:absolute;inset:-2px;background:linear-gradient(90deg,transparent,rgba(220,239,250,.5),transparent);filter:blur(10px);opacity:.85;animation:neoSweep 3.6s ease-in-out infinite}@keyframes neoSweep{0%{transform:translateX(-40%)}50%{transform:translateX(40%)}100%{transform:translateX(-40%)}}.PRIMATOTO-testi>*{position:relative;z-index:1}.PRIMATOTO-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.PRIMATOTO-title{font-weight:800;color:#fff;text-shadow:0 0 7px rgba(205,230,247,.75)}.PRIMATOTO-stars{font-size:13px;letter-spacing:1px;color:#e3edf4;text-shadow:0 0 10px rgba(240,249,255,.5)}.PRIMATOTO-name{font-weight:700;color:rgba(245,250,253,.97);margin-bottom:6px}.PRIMATOTO-text{color:rgba(255,255,255,.88);line-height:1.55}@media (max-width:991px){.PRIMATOTO-testi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:575px){.PRIMATOTO-testi-grid{grid-template-columns:1fr}.PRIMATOTO-item summary{padding-right:56px}}.cms-section .footer-main>.boxed,.footer-main>.container{padding-top:15px}.PRIMATOTO-generator-box{margin:18px 10px;padding:18px;border-radius:20px;background:linear-gradient(135deg,#0a3552,#4c95c3,#dbeaf4);border:1px solid rgba(216,233,244,.9);box-shadow:0 0 25px rgba(50,157,219,.6),inset 0 0 18px rgba(255,255,255,.1);color:#fff;text-align:center}.PRIMATOTO-generator-title{font-weight:800;font-size:18px;letter-spacing:1px;text-transform:uppercase;color:#fff;text-shadow:0 0 8px #6dc1ef,0 0 14px #e2f1fa;margin-bottom:14px}.PRIMATOTO-number-display{display:inline-grid;grid-template-columns:repeat(4,54px);gap:10px;margin-bottom:14px}.PRIMATOTO-digit{height:58px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(180deg,#ffffff,#d5e3ec,#8eaabd);color:#0f4d74;font-size:30px;font-weight:900;box-shadow:0 0 14px rgba(215,235,247,.72)}.PRIMATOTO-generate-btn{border:1px solid rgba(255,255,255,.7);background:linear-gradient(90deg,#e4f0f7,#4ca3d5,#1d77ad);color:#fff;font-weight:800;padding:10px 18px;border-radius:999px;cursor:pointer;text-transform:uppercase;box-shadow:0 0 16px rgba(205,232,247,.55)}.PRIMATOTO-result-grid{margin:16px 10px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.PRIMATOTO-result-card{border-radius:18px;padding:16px;text-align:center;background:radial-gradient(80% 80% at 0 0,rgba(222,239,249,.5),#5ba5d2 60%),linear-gradient(135deg,#082c45,#156c9f);border:1px solid rgba(216,233,244,.85);box-shadow:0 0 20px rgba(52,158,221,.5);color:#fff}.PRIMATOTO-market{font-weight:800;font-size:14px;text-transform:uppercase;color:#fff;text-shadow:0 0 8px rgba(210,235,249,.82);margin-bottom:8px}.PRIMATOTO-result-number{font-size:32px;font-weight:900;color:#f0f9ff;text-shadow:0 0 8px #70c4f2,0 0 12px #dceef8;margin-bottom:6px}.PRIMATOTO-result-date{font-size:12px;color:rgba(255,255,255,.82)}@media (max-width:991px){.PRIMATOTO-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:575px){.PRIMATOTO-number-display{grid-template-columns:repeat(4,44px)}.PRIMATOTO-digit{height:50px;font-size:26px}.PRIMATOTO-result-grid{grid-template-columns:1fr}}</style> 5477
5477<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5478 function generate4D() { 5479 const digits = document.querySelectorAll("#PRIMATOTOGenerator .PRIMATOTO-digit"); 5480 digits.forEach(function(digit) { 5481 digit.textContent = Math.floor(Math.random() * 10); 5482 }); 5483 } 5484 </script>
5484 5485 </article> 5486 </div> 5487</section> 5488 5489 </div> 5490 <div class="overlay overlay-cart"></div> 5491 <div id="CartDrawer" class="drawer drawer--right"> 5492 <div class="drawer__header pl-2 pr-2"> 5493 <div class="drawer__icon-cart display-table-cell"> 5494 <a href="/cart" class=""> 5495 <svg class="icon icon-cart" version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="32" height="32" viewBox="0 0 32 32"> <path fill="#fff" d="M13.638 23.203c0 0 3.5-2.113 3.502-4.11 0.002-2.304-2.689-3.537-3.497-1.76-0.916-1.778-3.493-1.714-3.497 0.59-0.003 1.999 3.491 5.28 3.491 5.28z"></path> <path fill="#fff" d="M8.112 9.809v16.662l11.063 2.491v-17.58l-11.063-1.573zM7.74 8.858l11.925 1.696c0.213 0.030 0.372 0.218 0.372 0.44v18.519c0 0.284-0.254 0.495-0.523 0.434l-11.925-2.685c-0.198-0.045-0.339-0.225-0.339-0.434v-17.53c0-0.27 0.231-0.477 0.49-0.44z"></path> <path fill="#fff" d="M23.7 10.046l-3.275 0.146-0.388 0.897v17.656l3.664-2.174v-16.526zM24.346 27.214l-4.526 2.685c-0.287 0.17-0.646-0.043-0.646-0.385v-18.519l0.037-0.181 0.534-1.235c0.067-0.154 0.212-0.256 0.375-0.263l3.991-0.178c0.245-0.011 0.45 0.191 0.45 0.444v17.247c0 0.159-0.082 0.306-0.216 0.385z"></path> <path fill="#000" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M11.336 8.354l-0.257-0.333c-0.243-0.315 0.012-0.774 0.398-0.717l12.51 1.838c0.236 0.035 0.399 0.26 0.366 0.503s-0.252 0.412-0.487 0.377l-11.436-1.68 0.056 0.073c0.209 0.27 0.052 0.672-0.281 0.718l-4.467 0.607c-0.236 0.032-0.452-0.139-0.484-0.383s0.135-0.467 0.371-0.499l3.711-0.504z"></path> <path fill="#fff" d="M17.152 11.344c0.026-0.003 0.053-0.005 0.079-0.005 0.357 0 0.645 0.297 0.645 0.665s-0.288 0.665-0.645 0.665c-0.322 0-0.59-0.245-0.637-0.565-0.383-0.45-0.515-1.321-0.521-2.536-0.003-0.556 0.026-1.149 0.076-1.739 0.028-0.339 0.057-0.603 0.074-0.735 0.195-2.391-2.008-3.379-3.568-1.658-0.64 0.707-1.041 1.855-1.266 3.412-0.092 0.634-0.137 1.111-0.194 2.024 0.107 0.119 0.172 0.278 0.172 0.453 0 0.342-0.251 0.624-0.573 0.661-0.031 0.005-0.064 0.007-0.097 0.005-0.015-0.001-0.029-0.003-0.044-0.005-0.324-0.036-0.576-0.318-0.576-0.661 0-0.218 0.102-0.412 0.259-0.533 0.058-0.924 0.105-1.415 0.201-2.075 0.249-1.719 0.703-3.020 1.489-3.888 2.114-2.335 5.321-0.897 5.054 2.359-0.018 0.141-0.045 0.392-0.072 0.717-0.047 0.566-0.075 1.133-0.073 1.658 0.004 0.839 0.098 1.47 0.216 1.78z"></path> <path fill="#fff" d="M14.43 8.138c-0.008 0.245-0.207 0.438-0.445 0.43s-0.424-0.213-0.417-0.459c0.001-0.026 0.001-0.026 0.002-0.051 0.029-0.909 0.047-1.282 0.102-1.792 0.164-1.528 0.58-2.665 1.434-3.481 2.037-1.949 5.235-0.623 5.066 2.208-0.007 0.119-0.018 0.331-0.029 0.608-0.022 0.539-0.033 1.084-0.029 1.59 0.007 0.797 0.053 1.412 0.139 1.744 0.062 0.237-0.075 0.481-0.305 0.544s-0.466-0.077-0.528-0.314c-0.111-0.427-0.161-1.097-0.168-1.966-0.004-0.523 0.007-1.081 0.029-1.634 0.011-0.284 0.023-0.502 0.030-0.626 0.119-1.995-2.13-2.927-3.619-1.501-0.673 0.644-1.021 1.591-1.164 2.927-0.051 0.479-0.069 0.838-0.097 1.723-0.001 0.026-0.001 0.026-0.002 0.052z"></path> </svg> 5496 </a> 5497 </div> 5498 <div class="drawer__title h4">Keranjang Belanja</div> 5499 <div class="drawer__close js-drawer-close"> 5500 <button type="button"> 5501 <svg class="icon icon-close" version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="32" height="32" viewBox="0 0 32 32"> 5502 <title>icon-close</title> 5503 <path d="M16.943 16l8.862 8.862c0.26 0.26 0.26 0.682 0 0.943s-0.682 0.26-0.943 0l-8.862-8.862-8.862 8.862c-0.26 0.26-0.682 0.26-0.943 0s-0.26-0.682 0-0.943l8.862-8.862-8.862-8.862c-0.26-0.26-0.26-0.682 0-0.943s0.682-0.26 0.943 0l8.862 8.862 8.862-8.862c0.26-0.26 0.682-0.26 0.943 0s0.26 0.682 0 0.943l-8.862 8.862z"></path> 5504 </svg> 5505 </button> 5506 </div> 5507 </div> 5508 <div id="CartContainer" class="p-2"></div> 5509 </div> 5510 5511
5511<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5512 5513 </script>
5513 5514
5514<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
5514 5515 <!-- /snippets/ajax-cart-template.liquid --> 5516 5517
5517<script id="CartTemplate" type="text/template"> 5518 5519 <form action="/cart" method="post" novalidate class="cart ajaxcart"> 5520 <div class="ajaxcart__inner" {{ cart.item_count }}> 5521 {{#items}} 5522 <div class="ajaxcart__product"> 5523 <div class="ajaxcart__row" data-line="{{line}}"> 5524 <div class="grid"> 5525 <div class="grid__item one-quarter"> 5526 <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a> 5527 </div> 5528 <div class="grid__item three-quarters"> 5529 <p class="d-block mb-3"> 5530 <a class="h4 d-block mb-2" href="{{url}}" class="ajaxcart__product-name">{{name}}</a> 5531 {{#if variation}} 5532 <span class="ajaxcart__product-meta p">{{variation}}</span> 5533 {{/if}} 5534 {{#properties}} 5535 {{#each this}} 5536 {{#if this}} 5537 <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span> 5538 {{/if}} 5539 {{/each}} 5540 {{/properties}} 5541 5542 </p> 5543 <div class="grid--full display-table"> 5544 <div class="grid__item display-table-cell one-half"> 5545 <div class="ajaxcart__qty"> 5546 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}"> 5547 <svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="24" viewBox="0 0 32 32"><title>icon-minus</title><path d="M6.667 16.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h18.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-18.667z"></path></svg> 5548 <span class="visually-hidden">Kurangi jumlah barang</span> 5549 </button> 5550 <input type="text" name="updates[]" class="btn ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" data-line="{{line}}" aria-label="quantity" pattern="[0-9]*"> 5551 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}"> 5552 <svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="24" viewBox="0 0 32 32"><title>icon-plus</title><path d="M16.667 15.333h8.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-8.667v8.667c0 0.368-0.298 0.667-0.667 0.667s-0.667-0.298-0.667-0.667v-8.667h-8.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h8.667v-8.667c0-0.368 0.298-0.667 0.667-0.667s0.667 0.298 0.667 0.667v8.667z"></path></svg> 5553 <span class="visually-hidden">Tambahkan jumlah barang</span> 5554 </button> 5555 </div> 5556 </div> 5557 <div class="grid__item display-table-cell one-half text-right"> 5558 {{#if discountsApplied}} 5559 <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small> 5560 <br><span class="h4">{{{linePrice}}}</span> 5561 {{else}} 5562 <span class="h4">{{{linePrice}}}</span> 5563 {{/if}} 5564 </div> 5565 </div> 5566 {{#if discountsApplied}} 5567 <div class="grid--full display-table"> 5568 <div class="grid__item text-right"> 5569 {{#each discounts}} 5570 <small class="ajaxcart-item__discount">{{ this.title }}</small><br> 5571 {{/each}} 5572 </div> 5573 </div> 5574 {{/if}} 5575 </div> 5576 </div> 5577 </div> 5578 </div> 5579 </div> 5580 </div> 5581 {{/items}} 5582 </div> 5583 <div class="ajaxcart__footer"> 5584 <div class="grid--full cart-subtotal py-2"> 5585 <p>Subtotal</p> 5586 <h3 class="primary">{{{totalPrice}}}</h3> 5587 {{#if totalCartDiscount}} 5588 <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p> 5589 {{/if}} 5590 </div> 5591 5592 <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a> 5593 5594 <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p> 5595 </div> 5596 </form> 5597 5598 </script>
5598 5599
5599<script id="AjaxQty" type="text/template"> 5600 5601 <div class="ajaxcart__qty"> 5602 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 5603 <svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="24" viewBox="0 0 32 32"> 5604 <title>icon-minus</title> 5605 <path d="M6.667 16.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h18.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-18.667z"></path> 5606 </svg> 5607 <span class="visually-hidden">Kurangi jumlah barang</span> 5608 </button> 5609 <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*"> 5610 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 5611 <svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="24" viewBox="0 0 32 32"><title>icon-plus</title><path d="M16.667 15.333h8.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-8.667v8.667c0 0.368-0.298 0.667-0.667 0.667s-0.667-0.298-0.667-0.667v-8.667h-8.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h8.667v-8.667c0-0.368 0.298-0.667 0.667-0.667s0.667 0.298 0.667 0.667v8.667z"></path></svg> 5612 <span class="visually-hidden">Tambahkan jumlah barang</span> 5613 </button> 5614 </div> 5615 5616 </script>
5616 5617
5617<script id="JsQty" type="text/template"> 5618 5619 <div class="js-qty mx-auto mt-2"> 5620 <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 5621 <svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="24" viewBox="0 0 32 32"><title>icon-minus</title><path d="M6.667 16.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h18.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-18.667z"></path></svg> 5622 <span class="visually-hidden">Kurangi jumlah barang</span> 5623 </button> 5624 <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}"> 5625 <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 5626 <svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="24" viewBox="0 0 32 32"><title>icon-plus</title><path d="M16.667 15.333h8.667c0.368 0 0.667 0.298 0.667 0.667s-0.298 0.667-0.667 0.667h-8.667v8.667c0 0.368-0.298 0.667-0.667 0.667s-0.667-0.298-0.667-0.667v-8.667h-8.667c-0.368 0-0.667-0.298-0.667-0.667s0.298-0.667 0.667-0.667h8.667v-8.667c0-0.368 0.298-0.667 0.667-0.667s0.667 0.298 0.667 0.667v8.667z"></path></svg> 5627 <span class="visually-hidden">Tambahkan jumlah barang</span> 5628 </button> 5629 </div> 5630 5631 </script>
5631 5632 5633
5633<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51128912329657147331752652452" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
5633 5634
5634<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5635 jQuery(function($) { 5636 ajaxCart.init({ 5637 formSelector: '#AddToCartForm', 5638 cartContainer: '#CartContainer', 5639 addToCartSelector: '#AddToCartXX', 5640 cartCountSelector: '#CartCount, #CartCount2', 5641 cartCostSelector: '#CartCost', 5642 moneyFormat: "Rp {{amount_no_decimals}}" 5643 }); 5644 }); 5645 5646 jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) { 5647 // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM 5648 timber.RightDrawer.open(); 5649 }); 5650 </script>
5650 5651 5652
5652<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5653 $(window).load(function(){ 5654 5655 function format(item) {var cell = '';cell += "<a data-cat=" + item.category + " " + "href=" + item.url + ">" + "<img src=" + item.images + "/>" + "<span class='title'>" + item.label + "</span>" + "<span class='price'>" + item.price + "</span>" + "</a>";return cell;} 5656 5657 $.widget("custom.catcomplete", $.ui.autocomplete, { 5658 _renderMenu: function (ul, items) { 5659 // have search reults split up in categories 5660 var that = this, 5661 currentCategory = ""; 5662 $.each(items, function (index, item) { 5663 if (item.category != currentCategory) { 5664 ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>"); 5665 currentCategory = item.category; 5666 } 5667 that._renderItemData(ul, item); 5668 }); 5669 } 5670 }); 5671 5672 // higlight searched for term 5673 $.ui.autocomplete.prototype._renderItem = function( ul, item ) { 5674 var term = this.element.val(), 5675 html = item.label.replace( term, "<b>$&</b>" ); 5676 return $( "<li>" ) 5677 .append(format(item)) 5678 .appendTo( ul ); 5679 }; 5680 5681 5682 var data = [ 5683 { label: "< Rp 500.000", category: "Collection", url: "/collections/rp-500-000", images: " ", price: " " },{ label: "> Rp 1.000.000", category: "Collection", url: "/collections/rp-1-000-000", images: " ", price: " " },{ label: "Acrylic Jewelry Box", category: "Collection", url: "/collections/acrylic-jewelry-box", images: " ", price: " " },{ label: "Ajmal", category: "Collection", url: "/collections/ajmal", images: " ", price: " " },{ label: "Alamat Rumah Duka", category: "Collection", url: "/collections/rumah-duka", images: " ", price: " " },{ label: "Anggrek Bulan", category: "Collection", url: "/collections/anggrek-bulan", images: " ", price: " " },{ label: "Anniversary Gift", category: "Collection", url: "/collections/kado-anniversary", images: " ", price: " " },{ label: "Aquarius ï¸ 20Jan - 18Feb", category: "Collection", url: "/collections/kado-untuk-zodiak-aquarius", images: " ", price: " " },{ label: "Aries âï¸ 21March - 19April", category: "Collection", url: "/collections/kado-untuk-zodiak-aries", images: " ", price: " " },{ label: "Armaf", category: "Collection", url: "/collections/armaf", images: " ", price: " " },{ label: "Aromatherapy Diffuser", category: "Collection", url: "/collections/aromatherapy-diffuser", images: " ", price: " " },{ label: "Artisan Soap", category: "Collection", url: "/collections/artisan-soap", images: " ", price: " " },{ label: "Artisan Tea", category: "Collection", url: "/collections/artisan-tea", images: " ", price: " " },{ label: "AsmaraKu", category: "Collection", url: "/collections/asmaraku", images: " ", price: " " },{ label: "Atkinsons", category: "Collection", url: "/collections/atkinsons", images: " ", price: " " },{ label: "Autumn by Outerbloom", category: "Collection", url: "/collections/autumn-by-outerbloom", images: " ", price: " " },{ label: "Autumn by Outerbloom Chinese New Year", category: "Collection", url: "/collections/autumn-by-outerbloom-chinese-new-year", images: " ", price: " " },{ label: "Autumn by Outerbloom Christmas", category: "Collection", url: "/collections/autumn-by-outerbloom-christmas", images: " ", price: " " },{ label: "Autumn by Outerbloom Luar Jadetabek", category: "Collection", url: "/collections/autumn-by-outerbloom-luar-jadetabek", images: " ", price: " " },{ label: "Autumn by Outerbloom Ramadan", category: "Collection", url: "/collections/autumn-by-outerbloom-ramadan", images: " ", price: " " },{ label: "Autumn Pop", category: "Collection", url: "/collections/autumn-pop", images: " ", price: " " },{ label: "Bachelorette", category: "Collection", url: "/collections/bachelorette", images: " ", price: " " },{ label: "Bag Newborn Hampers", category: "Collection", url: "/collections/bag-newborn-hampers", images: " ", price: " " },{ label: "Balon", category: "Collection", url: "/collections/balon", images: " ", price: " " },{ label: "Beauty Package", category: "Collection", url: "/collections/beauty-package", images: " ", price: " " },{ label: "Best Deal", category: "Collection", url: "/collections/best-deal", images: " ", price: " " },{ label: "Best Seller", category: "Collection", url: "/collections/best-seller", images: " ", price: " " },{ label: "Best Valentine's Deals", category: "Collection", url: "/collections/bes-valentines-deals", images: " ", price: " " },{ label: "Best Value Newborn Hampers Collection", category: "Collection", url: "/collections/best-value-newborn-hampers-collection", images: " ", price: " " },{ label: "Black Tea", category: "Collection", url: "/collections/black-tea", images: " ", price: " " },{ label: "Blessing Hampers", category: "Collection", url: "/collections/blessing-hampers", images: " ", price: " " },{ label: "Bloom Box", category: "Collection", url: "/collections/bloom-box", images: " ", price: " " },{ label: "Bloomcard", category: "Collection", url: "/collections/bloomcard", images: " ", price: " " },{ label: "Boutonniere", category: "Collection", url: "/collections/boutonniere", images: " ", price: " " },{ label: "Bracelet", category: "Collection", url: "/collections/gelang", images: " ", price: " " },{ label: "Buket Bunga Bali", category: "Collection", url: "/collections/buket-bunga-bali", images: " ", price: " " },{ label: "Buket Bunga Bandung", category: "Collection", url: "/collections/buket-bunga-bandung", images: " ", price: " " },{ label: "Buket Bunga Batam", category: "Collection", url: "/collections/buket-bunga-batam", images: " ", price: " " },{ label: "Buket Bunga Demak", category: "Collection", url: "/collections/buket-bunga-demak", images: " ", price: " " },{ label: "Buket Bunga Fresh", category: "Collection", url: "/collections/buket-bunga", images: " ", price: " " },{ label: "Buket Bunga Jepara", category: "Collection", url: "/collections/buket-bunga-jepara", images: " ", price: " " },{ label: "Buket Bunga Medan", category: "Collection", url: "/collections/buket-bunga-medan", images: " ", price: " " },{ label: "Buket Bunga Nusantara", category: "Collection", url: "/collections/buket-bunga-nusantara", images: " ", price: " " },{ label: "Buket Bunga Semarang", category: "Collection", url: "/collections/buket-bunga-semarang", images: " ", price: " " },{ label: "Buket Bunga Sidoarjo", category: "Collection", url: "/collections/buket-bunga-sidoarjo", images: " ", price: " " },{ label: "Buket Bunga Surabaya", category: "Collection", url: "/collections/buket-bunga-surabaya", images: " ", price: " " },{ label: "Buket Bunga Tangerang", category: "Collection", url: "/collections/buket-bunga-tangerang", images: " ", price: " " },{ label: "Buket Bunga Uang", category: "Collection", url: "/collections/buket-bunga-uang", images: " ", price: " " },{ label: "Buket Bunga Valentine", category: "Collection", url: "/collections/buket-bunga-valentine", images: " ", price: " " },{ label: "Buket Bunga Yogyakarta", category: "Collection", url: "/collections/buket-bunga-jogja", images: " ", price: " " },{ label: "Bunga Anggrek Bali", category: "Collection", url: "/collections/bunga-anggrek-bali", images: " ", price: " " },{ label: "Bunga Anggrek Bandung", category: "Collection", url: "/collections/bunga-anggrek-bandung", images: " ", price: " " },{ label: "Bunga Anggrek Surabaya", category: "Collection", url: "/collections/bunga-anggrek-surabaya", images: " ", price: " " },{ label: "Bunga Anniversary", category: "Collection", url: "/collections/bunga-anniversary", images: " ", price: " " },{ label: "Bunga Artificial", category: "Collection", url: "/collections/bunga-artificial", images: " ", price: " " },{ label: "Bunga Buket", category: "Collection", url: "/collections/bunga-buket", images: " ", price: " " },{ label: "Bunga Carnations Bali", category: "Collection", url: "/collections/bunga-carnations-bali", images: " ", price: " " },{ label: "Bunga Carnations Bandung", category: "Collection", url: "/collections/bunga-carnations-bandung", images: " ", price: " " },{ label: "Bunga Carnations Surabaya", category: "Collection", url: "/collections/bunga-carnations-surabaya", images: " ", price: " " },{ label: "Bunga Daisy Bali", category: "Collection", url: "/collections/bunga-daisy-bali", images: " ", price: " " },{ label: "Bunga Daisy Bandung", category: "Collection", url: "/collections/bunga-daisy-bandung", images: " ", price: " " },{ label: "Bunga Daisy Surabaya", category: "Collection", url: "/collections/bunga-daisy-surabaya", images: " ", price: " " },{ label: "Bunga Gerbera Bali", category: "Collection", url: "/collections/bunga-gerbera-bali", images: " ", price: " " },{ label: "Bunga Gerbera Bandung", category: "Collection", url: "/collections/bunga-gerbera-bandung", images: " ", price: " " },{ label: "Bunga Gerbera Surabaya", category: "Collection", url: "/collections/bunga-gerbera-surabaya", images: " ", price: " " },{ label: "Bunga Imlek", category: "Collection", url: "/collections/rangkaian-bunga-tahun-baru-imlek", images: " ", price: " " },{ label: "Bunga Lebaran", category: "Collection", url: "/collections/rangkaian-bunga-lebaran", images: " ", price: " " },{ label: "Bunga Lily Bali", category: "Collection", url: "/collections/bunga-lily-bali", images: " ", price: " " },{ label: "Bunga Lily Bandung", category: "Collection", url: "/collections/bunga-lily-bandung", images: " ", price: " " },{ label: "Bunga Lily Surabaya", category: "Collection", url: "/collections/bunga-lily-surabaya", images: " ", price: " " },{ label: "Bunga Matahari Bali", category: "Collection", url: "/collections/bunga-matahari-bali", images: " ", price: " " },{ label: "Bunga Matahari Bandung", category: "Collection", url: "/collections/bunga-matahari-bandung", images: " ", price: " " },{ label: "Bunga Matahari Surabaya", category: "Collection", url: "/collections/bunga-matahari-surabaya", images: " ", price: " " },{ label: "Bunga Mawar Bali", category: "Collection", url: "/collections/bunga-mawar-bali", images: " ", price: " " },{ label: "Bunga Mawar Bandung", category: "Collection", url: "/collections/bunga-mawar-bandung", images: " ", price: " " },{ label: "Bunga Mawar Surabaya", category: "Collection", url: "/collections/bunga-mawar-surabaya", images: " ", price: " " },{ label: "Bunga Meja", category: "Collection", url: "/collections/bunga-meja", images: " ", price: " " },{ label: "Bunga Meja Bali", category: "Collection", url: "/collections/bunga-meja-bali", images: " ", price: " " },{ label: "Bunga Meja Bandung", category: "Collection", url: "/collections/bunga-meja-bandung", images: " ", price: " " },{ label: "Bunga Meja Batam", category: "Collection", url: "/collections/bunga-meja-batam", images: " ", price: " " },{ label: "Bunga Meja Jepara", category: "Collection", url: "/collections/bunga-meja-jepara", images: " ", price: " " },{ label: "Bunga Meja Medan", category: "Collection", url: "/collections/bunga-meja-medan", images: " ", price: " " },{ label: "Bunga Meja Semarang", category: "Collection", url: "/collections/bunga-meja-semarang", images: " ", price: " " },{ label: "Bunga Meja Sidoarjo", category: "Collection", url: "/collections/bunga-meja-sidoarjo", images: " ", price: " " },{ label: "Bunga Meja Surabaya", category: "Collection", url: "/collections/bunga-meja-surabaya", images: " ", price: " " },{ label: "Bunga Meja Tangerang", category: "Collection", url: "/collections/bunga-meja-tangerang", images: " ", price: " " },{ label: "Bunga Meja Yogyakarta", category: "Collection", url: "/collections/bunga-meja-jogja", images: " ", price: " " },{ label: "Bunga Modern Pastel Bali", category: "Collection", url: "/collections/bunga-modern-pastel-bali", images: " ", price: " " },{ label: "Bunga Modern Pastel Bandung", category: "Collection", url: "/collections/bunga-modern-pastel-bandung", images: " ", price: " " },{ label: "Bunga Modern Pastel Medan", category: "Collection", url: "/collections/bunga-modern-pastel-medan", images: " ", price: " " },{ label: "Bunga Modern Pastel Semarang", category: "Collection", url: "/collections/bunga-modern-pastel-semarang", images: " ", price: " " },{ label: "Bunga Modern Pastel Surabaya", category: "Collection", url: "/collections/bunga-modern-pastel-surabaya", images: " ", price: " " },{ label: "Bunga Modern Pastel Yogyakarta", category: "Collection", url: "/collections/bunga-modern-pastel-yogyakarta", images: " ", price: " " },{ label: "Bunga Natal", category: "Collection", url: "/collections/rangkaian-bunga-christmas", images: " ", price: " " },{ label: "Bunga Papan", category: "Collection", url: "/collections/bunga-papan", images: " ", price: " " },{ label: "Bunga Pernikahan", category: "Collection", url: "/collections/bunga-pernikahan", images: " ", price: " " },{ label: "Bunga Plastik", category: "Collection", url: "/collections/bunga-plastik", images: " ", price: " " },{ label: "Bunga Tulip", category: "Collection", url: "/collections/bunga-tulip", images: " ", price: " " },{ label: "Bunga Ulang Tahun", category: "Collection", url: "/collections/bunga-ulang-tahun", images: " ", price: " " },{ label: "Bunga Wisuda", category: "Collection", url: "/collections/karangan-bunga-wisuda", images: " ", price: " " },{ label: "Cake", category: "Collection", url: "/collections/kue", images: " ", price: " " },{ label: "Cake", category: "Collection", url: "/collections/cake", images: " ", price: " " },{ label: "Cake Sameday Delivery", category: "Collection", url: "/collections/cake-sameday-delivery", images: " ", price: " " },{ label: "Cake, Hampers & Gifts", category: "Collection", url: "/collections/cake-hampers", images: " ", price: " " },{ label: "Cancer â 22June - 22July", category: "Collection", url: "/collections/kado-untuk-zodiak-cancer", images: " ", price: " " },{ label: "Capricorn â 21Dec - 19Jan", category: "Collection", url: "/collections/kado-untuk-zodiak-capricorn", images: " ", price: " " },{ label: "Care Packages", category: "Collection", url: "/collections/toko-parcel-murah", images: " ", price: " " },{ label: "Care Packages (Keluarga, Sahabat, Karyawan)", category: "Collection", url: "/collections/sehat-bebas-corona", images: " ", price: " " },{ label: "Carnations", category: "Collection", url: "/collections/bunga-anyelir", images: " ", price: " " },{ label: "Celebration", category: "Collection", url: "/collections/celebration", images: " ", price: " " },{ label: "Chla Paperie", category: "Collection", url: "/collections/chlea-paperie", images: " ", price: " " },{ label: "Chocodot", category: "Collection", url: "/collections/chocodot", images: " ", price: " " },{ label: "Christmas", category: "Collection", url: "/collections/christmas", images: " ", price: " " },{ label: "Classic Cake", category: "Collection", url: "/collections/classic-cake", images: " ", price: " " },{ label: "Classic CNY Hampers", category: "Collection", url: "/collections/classic-cny-hampers", images: " ", price: " " },{ label: "Classic CNY Hampers Luar Jabodetabek", category: "Collection", url: "/collections/classic-cny-hampers-luar-jabodetabek", images: " ", price: " " },{ label: "Classic Hampers", category: "Collection", url: "/collections/classic-hampers", images: " ", price: " " },{ label: "Classic Hampers Luar Jadetabek", category: "Collection", url: "/collections/classic-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Classic Style Flowers", category: "Collection", url: "/collections/classic-style-flowers", images: " ", price: " " },{ label: "Cokelat", category: "Collection", url: "/collections/permen-coklat", images: " ", price: " " },{ label: "Collection List", category: "Collection", url: "/collections/collection-list", images: " ", price: " " },{ label: "Condolences", category: "Collection", url: "/collections/axa-condolences", images: " ", price: " " },{ label: "Congratulations", category: "Collection", url: "/collections/rangkaian-bunga-ucapan-selamat", images: " ", price: " " },{ label: "Corporate Gifts", category: "Collection", url: "/collections/corporate-gifts", images: " ", price: " " },{ label: "Corporate Hampers", category: "Collection", url: "/collections/corporate-hampers", images: " ", price: " " },{ label: "Couple Gift", category: "Collection", url: "/collections/couple-gift", images
5683: " ", price: " " },{ label: "Craft Sweetbox Newborn", category: "Collection", url: "/collections/craft-sweetbox-newborn", images: " ", price: " " },{ label: "Crystal Florarium", category: "Collection", url: "/collections/crystal-florarium", images: " ", price: " " },{ label: "Cuddlemate Doll", category: "Collection", url: "/collections/boneka-lucu", images: " ", price: " " },{ label: "Cufflinks", category: "Collection", url: "/collections/cufflinks", images: " ", price: " " },{ label: "Cupcakes", category: "Collection", url: "/collections/cupcakes", images: " ", price: " " },{ label: "Custom Alat Tulis", category: "Collection", url: "/collections/alat-tulis", images: " ", price: " " },{ label: "Custom Cake", category: "Collection", url: "/collections/custom-cake", images: " ", price: " " },{ label: "Custom Card Holder", category: "Collection", url: "/collections/custom-card-holder", images: " ", price: " " },{ label: "Custom Coaster", category: "Collection", url: "/collections/custom-coaster", images: " ", price: " " },{ label: "Custom Cutlery", category: "Collection", url: "/collections/custom-cutlery", images: " ", price: " " },{ label: "Custom E-Money", category: "Collection", url: "/collections/custom-e-money", images: " ", price: " " },{ label: "Custom Earpod", category: "Collection", url: "/collections/custom-earpod", images: " ", price: " " },{ label: "Custom Fan", category: "Collection", url: "/collections/custom-fan", images: " ", price: " " },{ label: "Custom Jewelry", category: "Collection", url: "/collections/custom-jewelry", images: " ", price: " " },{ label: "Custom Keychain", category: "Collection", url: "/collections/custom-keychain", images: " ", price: " " },{ label: "Custom Medallion", category: "Collection", url: "/collections/custom-medallion", images: " ", price: " " },{ label: "Custom Mirror", category: "Collection", url: "/collections/custom-mirror", images: " ", price: " " },{ label: "Custom Mug", category: "Collection", url: "/collections/custom-mug", images: " ", price: " " },{ label: "Custom Necklace", category: "Collection", url: "/collections/custom-necklace", images: " ", price: " " },{ label: "Custom Notebook", category: "Collection", url: "/collections/custom-notebook", images: " ", price: " " },{ label: "Custom Pen & Pencil", category: "Collection", url: "/collections/custom-pen-pencil", images: " ", price: " " },{ label: "Custom Photo Frame", category: "Collection", url: "/collections/photo-frame", images: " ", price: " " },{ label: "Custom Pillow", category: "Collection", url: "/collections/bantal-custom", images: " ", price: " " },{ label: "Custom Powerbank", category: "Collection", url: "/collections/custom-powerbank", images: " ", price: " " },{ label: "Custom Scarf", category: "Collection", url: "/collections/custom-scarf", images: " ", price: " " },{ label: "Custom Speaker", category: "Collection", url: "/collections/custom-speaker", images: " ", price: " " },{ label: "Custom T-Shirt", category: "Collection", url: "/collections/custom-t-shirt", images: " ", price: " " },{ label: "Custom Tote Bag", category: "Collection", url: "/collections/custom-tote-bag", images: " ", price: " " },{ label: "Custom Tumbler Minuman", category: "Collection", url: "/collections/custom-tumbler-minuman", images: " ", price: " " },{ label: "D'paris", category: "Collection", url: "/collections/dparis", images: " ", price: " " },{ label: "Daisy", category: "Collection", url: "/collections/bunga-aster", images: " ", price: " " },{ label: "Dekorasi", category: "Collection", url: "/collections/dekorasi", images: " ", price: " " },{ label: "Dekorasi Duka Cita", category: "Collection", url: "/collections/dekorasi-bunga-duka-cita", images: " ", price: " " },{ label: "Dekorasi Pemakaman", category: "Collection", url: "/collections/dekorasi-pemakaman", images: " ", price: " " },{ label: "Dekorasi Pernikahan", category: "Collection", url: "/collections/dekorasi-bunga-pernikahan", images: " ", price: " " },{ label: "Dekorasi Ulang Tahun", category: "Collection", url: "/collections/dekorasi-bunga-ulang-tahun", images: " ", price: " " },{ label: "Delivery", category: "Collection", url: "/collections/delivery", images: " ", price: " " },{ label: "Deluxe Newborn Hampers Collection", category: "Collection", url: "/collections/deluxe-newborn-hampers-collection", images: " ", price: " " },{ label: "Digital Gift", category: "Collection", url: "/collections/digital-gift", images: " ", price: " " },{ label: "Donasi", category: "Collection", url: "/collections/donasi", images: " ", price: " " },{ label: "E-Card", category: "Collection", url: "/collections/ecard", images: " ", price: " " },{ label: "E-Gift Card", category: "Collection", url: "/collections/e-gift-card", images: " ", price: " " },{ label: "Earrings", category: "Collection", url: "/collections/anting", images: " ", price: " " },{ label: "Edible Gift", category: "Collection", url: "/collections/edible-gift", images: " ", price: " " },{ label: "Enchanted Grande Love Pirouette", category: "Collection", url: "/collections/enchanted-grande-love-pirouette", images: " ", price: " " },{ label: "Enchanted Love Pirouette", category: "Collection", url: "/collections/enchanted-love-pirouette", images: " ", price: " " },{ label: "Engagement", category: "Collection", url: "/collections/rangkaian-bunga-lamaran", images: " ", price: " " },{ label: "Expression", category: "Collection", url: "/collections/expression", images: " ", price: " " }
5683,{ label: "Father's Day Special", category: "Collection", url: "/collections/kado-untuk-ayah", images: " ", price: " " },{ label: "Ferrari", category: "Collection", url: "/collections/ferrari", images: " ", price: " " },{ label: "Ferrero Rocher", category: "Collection", url: "/collections/ferrero-rocher", images: " ", price: " " },{ label: "Festival Belanja Online", category: "Collection", url: "/collections/fbo-2018", images: " ", price: " " },{ label: "Floatbox", category: "Collection", url: "/collections/floatbox", images: " ", price: " " },{ label: "Flower", category: "Collection", url: "/collections/flower", images: " ", price: " " },{ label: "Flower Best Deals", category: "Collection", url: "/collections/flower-best-deals", images: " ", price: " " },{ label: "Flowers", category: "Collection", url: "/collections/toko-bunga", images: " ", price: " " },{ label: "Flowers For Him", category: "Collection", url: "/collections/bunga-untuk-pria", images: " ", price: " " },{ label: "Flowers Style", category: "Collection", url: "/collections/style", images: " ", price: " " },{ label: "Flowers Type", category: "Collection", url: "/collections/type", images: " ", price: " " },{ label: "For Her", category: "Collection", url: "/collections/kado-untuk-wanita", images: " ", price: " " },{ label: "For Him", category: "Collection", url: "/collections/kado-untuk-pria", images: " ", price: " " },{ label: "Forever Flower", category: "Collection", url: "/collections/forever-flower", images: " ", price: " " },{ label: "Forever Flower Holo Series", category: "Collection", url: "/collections/forever-flower-holo-series", images: " ", price: " " },{ label: "Forever Flower x NestBloom", category: "Collection", url: "/collections/forever-flower-x-nestbloom", images: " ", price: " " },{ label: "Fortune Hampers", category: "Collection", url: "/collections/fortune-hampers", images: " ", price: " " },{ label: "Frank & Co", category: "Collection", url: "/collections/franknco", images: " ", price: " " },{ label: "Fresh Flowers", category: "Collection", url: "/collections/fresh-flower", images: " ", price: " " },{ label: "Gantungan Kunci", category: "Collection", url: "/collections/gantungan-kunci", images: " ", price: " " },{ label: "Gelato", category: "Collection", url: "/collections/gelato", images: " ", price: " " },{ label: "Gelato Pie", category: "Collection", url: "/collections/gelato-pie", images: " ", price: " " },{ label: "Gemini âï¸ 21May - 21June", category: "Collection", url: "/collections/kado-untuk-zodiak-gemini", images: " ", price: " " },{ label: "Gerbera", category: "Collection", url: "/collections/gerbera", images: " ", price: " " },{ label: "Get Well Soon", category: "Collection", url: "/collections/rangkaian-bunga-gws", images: " ", price: " " },{ label: "Giant Flower Bali", category: "Collection", url: "/collections/giant-flower-bali", images: " ", price: " " },{ label: "Giant Flower Bandung", category: "Collection", url: "/collections/giant-flower-bandung", images: " ", price: " " },{ label: "Giant Flower Bouquet", category: "Collection", url: "/collections/giant-flower", images: " ", price: " " },{ label: "Gift", category: "Collection", url: "/collections/souvenir-kado-hadiah", images: " ", price: " " },{ label: "Gift by Recipient", category: "Collection", url: "/collections/gift-by-recipient", images: " ", price: " " },{ label: "Gift for Your Girlfriend", category: "Collection", url: "/collections/kado-untuk-pacar-wanita", images: " ", price: " " },{ label: "Gifts", category: "Collection", url: "/collections/gifts", images: " ", price: " " },{ label: "Glassbox Hampers", category: "Collection", url: "/collections/glassbox-hampers", images: " ", price: " " },{ label: "Glassware Hampers", category: "Collection", url: "/collections/parcel-pecah-belah", images: " ", price: " " },{ label: "Gold Jewelry", category: "Collection", url: "/collections/perhiasan-emas", images: " ", price: " " },{ label: "Grand Opening", category: "Collection", url: "/collections/grand-opening", images: " ", price: " " },{ label: "Granola", category: "Collection", url: "/collections/granola", images: " ", price: " " },{ label: "Green Tea", category: "Collection", url: "/collections/green-tea", images: " ", price: " " },{ label: "Greeting Card All", category: "Collection", url: "/collections/greeting-card-all", images: " ", price: " " },{ label: "Greeting Card Anniversary", category: "Collection", url: "/collections/greeting-card-anniversary", images: " ", price: " " },{ label: "Greeting Card Birthday", category: "Collection", url: "/collections/greeting-card-birthday", images: " ", price: " " },{ label: "Greeting Card Eid", category: "Collection", url: "/collections/greeting-card-eid", images: " ", price: " " },{ label: "Greeting Card Graduation", category: "Collection", url: "/collections/greeting-card-graduation", images: " ", price: " " },{ label: "Greeting Card Mother's Day", category: "Collection", url: "/collections/greeting-card-mothers-day", images: " ", price: " " },{ label: "Greeting Card Newborn", category: "Collection", url: "/collections/greeting-card-newborn", images: " ", price: " " },{ label: "Greeting Card Others", category: "Collection", url: "/collections/greeting-card-others", images: " ", price: " " },{ label: "Greeting Card Valentine", category: "Collection", url: "/collections/greeting-card-valentine", images: " ", price: " " },{ label: "Greeting Card Wedding", category: "Collection", url: "/collections/greeting-card-wedding", images: " ", price: " " },{ label: "Grooming", category: "Collection", url: "/collections/grooming", images: " ", price: " " },{ label: "Hadiah Tahun Baru Imlek", category: "Collection", url: "/collections/kado-imlek", images: " ", price: " " },{ label: "Hadiah untuk Bayi", category: "Collection", url: "/collections/kado-untuk-bayi", images: " ", price: " " },{ label: "Hadiah untuk Pacar", category: "Collection", url: "/collections/kado-untuk-pacar", images: " ", price: " " },{ label: "Hadiah untuk Pernikahan", category: "Collection", url: "/collections/kado-untuk-pernikahan", images: " ", price: " " },{ label: "Hadiah untuk Sahabat", category: "Collection", url: "/collections/kado-untuk-sahabat", images: " ", price: " " },{ label: "Hampers", category: "Collection", url: "/collections/hampers", images: " ", price: " " },{ label: "Hampers Baby Boy", category: "Collection", url: "/collections/hampers-baby-boy", images: " ", price: " " },{ label: "Hampers Baby Girl", category: "Collection", url: "/collections/hampers-baby-girl", images: " ", price: " " },{ label: "Hampers Baby Unisex", category: "Collection", url: "/collections/hampers-baby-unisex", images: " ", price: " " },{ label: "Hampers Delivery Indonesia", category: "Collection", url: "/collections/parcel-indonesia", images: " ", price: " " },{ label: "Hampers Lebaran 2025", category: "Collection", url: "/collections/parcel-lebaran", images: " ", price: " " },{ label: "Hampers Lebaran Bali", category: "Collection", url: "/collections/hampers-lebaran-bali", images: " ", price: " " },{ label: "Hampers Lebaran Bandung", category: "Collection", url: "/collections/hampers-lebaran-bandung", images: " ", price: " " },{ label: "Hampers Lebaran Jakarta", category: "Collection", url: "/collections/hampers-lebaran-jakarta", images: " ", price: " " },{ label: "Hampers Lebaran Semarang", category: "Collection", url: "/collections/hampers-lebaran-semarang", images: " ", price: " " },{ label: "Hampers Lebaran Surabaya", category: "Collection", url: "/collections/hampers-lebaran-surabaya", images: " ", price: " " },{ label: "Hampers Lebaran Yogyakarta", category: "Collection", url: "/collections/hampers-lebaran-yogyakarta", images: " ", price: " " },{ label: "Hand Sanitizer", category: "Collection", url: "/collections/hand-sanitizer", images: " ", price: " " },{ label: "Happy Birthday", category: "Collection", url: "/collections/kado-ulang-tahun", images: " ", price: " " },{ label: "Harbolnas", category: "Collection", url: "/collections/harbolnas-2018", images: " ", price: " " },{ label: "Harbolnas Produk Lokal", category: "Collection", url: "/collections/produk-lokal", images: " ", price: " " },{ label: "Hari Belanja Online Nasional", category: "Collection", url: "/collections/harbolnas", images: " ", price: " " },{ label: "Hari Guru", category: "Collection", url: "/collections/hari-guru", images: " ", price: " " },{ label: "Healthy Creations", category: "Collection", url: "/collections/healthy-creations", images: " ", price: " " },{ label: "Healthy Hampers", category: "Collection", url: "/collections/healthy-hampers", images: " ", price: " " },{ label: "Heritage Box", category: "Collection", url: "/collections/heritage-boxes", images: " ", price: " " },{ label: "Heritage Chinese New Year Hampers", category: "Collection", url: "/collections/heritage-chinese-new-year-hampers", images: " ", price: " " },{ label: "Heritage Christmas Hampers", category: "Collection", url: "/collections/heritage-christmas-hampers", images: " ", price: " " },{ label: "Heritage Hampers", category: "Collection", url: "/collections/heritage-hampers", images: " ", price: " " },{ label: "Heritage Ramadan Hampers", category: "Collection", url: "/collections/heritage-ramadan-hampers", images: " ", price: " " },{ label: "Hexa Hampers", category: "Collection", url: "/collections/hexa-hampers", images: " ", price: " " },{ label: "Hexa Hampers Luar Jadetabek", category: "Collection", url: "/collections/hexa-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Hexa Newborn", category: "Collection", url: "/collections/hexa-newborn", images: " ", price: " " },{ label: "Holo Bag", category: "Collection", url: "/collections/holo-bag", images: " ", price: " " },{ label: "Holo Series", category: "Collection", url: "/collections/holo-series", images: " ", price: " " },{ label: "Home Decoration & Photo Frame", category: "Collection", url: "/collections/home-decoration", images: " ", price: " " }
5683,{ label: "Hospitalization", category: "Collection", url: "/collections/axa-hospitalization", images: " ", price: " " },{ label: "House Hampers", category: "Collection", url: "/collections/house-hampers", images: " ", price: " " },{ label: "I'm Sorry", category: "Collection", url: "/collections/rangkaian-bunga-sorry", images: " ", price: " " },{ label: "Ice Cream Cake", category: "Collection", url: "/collections/ice-cream-cake", images: " ", price: " " },{ label: "Idul Fitri", category: "Collection", url: "/collections/rangkaian-bunga-idul-fitri", images: " ", price: " " },{ label: "Jam Tangan", category: "Collection", url: "/collections/jam-tangan", images: " ", price: " " },{ label: "Jam Tangan Couple", category: "Collection", url: "/collections/jam-tangan-couple", images: " ", price: " " },{ label: "Jam Tangan Pria", category: "Collection", url: "/collections/jam-tangan-pria", images: " ", price: " " },{ label: "Jam Tangan Wanita", category: "Collection", url: "/collections/jam-tangan-wanita", images: " ", price: " " },{ label: "Jasa Packing Parcel", category: "Collection", url: "/collections/jasa-packing-parcel", images: " ", price: " " },{ label: "Jewelry", category: "Collection", url: "/collections/jewelry", images: " ", price: " " },{ label: "Jolly Hampers", category: "Collection", url: "/collections/jolly-hampers", images: " ", price: " " },{ label: "Jual Custom Cake & Hampers Termurah & Terlengkap | Outerbloom Florist & Gift", category: "Collection", url: "/collections/custom-cake-hampers", images: " ", price: " " },{ label: "Just Because", category: "Collection", url: "/collections/just-because", images: " ", price: " " },{ label: "Kado Makanan", category: "Collection", url: "/collections/kado-makanan", images: " ", price: " " },{ label: "Kado Minuman", category: "Collection", url: "/collections/kado-minuman", images: " ", price: " " },{ label: "Kado Natal", category: "Collection", url: "/collections/kado-natal", images: " ", price: " " },{ label: "Kado Unik", category: "Collection", url: "/collections/kado-unik", images: " ", price: " " },{ label: "Kado Valentine Nusantara", category: "Collection", url: "/collections/kado-valentine-nusantara", images: " ", price: " " },{ label: "Kado Valentine untuk Pria", category: "Collection", url: "/collections/kado-valentine-untuk-pria", images: " ", price: " " },{ label: "Kado Wisuda", category: "Collection", url: "/collections/kado-wisuda", images: " ", price: " " },{ label: "Kado Zodiak", category: "Collection", url: "/collections/kado-untuk-zodiak", images: " ", price: " " },{ label: "Karangan Bunga Aceh", category: "Collection", url: "/collections/karangan-bunga-aceh", images: " ", price: " " },{ label: "Karangan Bunga Ambon", category: "Collection", url: "/collections/karangan-bunga-ambon", images: " ", price: " " },{ label: "Karangan Bunga Atambua", category: "Collection", url: "/collections/karangan-bunga-atambua", images: " ", price: " " },{ label: "Karangan Bunga Bali", category: "Collection", url: "/collections/karangan-bunga-bali", images: " ", price: " " },{ label: "Karangan Bunga Balikpapan", category: "Collection", url: "/collections/karangan-bunga-balikpapan", images: " ", price: " " },{ label: "Karangan Bunga Bandung", category: "Collection", url: "/collections/karangan-bunga-bandung", images: " ", price: " " },{ label: "Karangan Bunga Bandung Barat", category: "Collection", url: "/collections/karangan-bunga-bandung-barat", images: " ", price: " " },{ label: "Karangan Bunga Bangka", category: "Collection", url: "/collections/karangan-bunga-bangka", images: " ", price: " " },{ label: "Karangan Bunga Banjarmasin", category: "Collection", url: "/collections/karangan-bunga-banjarmasin", images: " ", price: " " },{ label: "Karangan Bunga Banten", category: "Collection", url: "/collections/karangan-bunga-banten", images: " ", price: " " },{ label: "Karangan Bunga Banyumas", category: "Collection", url: "/collections/karangan-bunga-banyumas", images: " ", price: " " },{ label: "Karangan Bunga Banyuwangi", category: "Collection", url: "/collections/karangan-bunga-banyuwangi", images: " ", price: " " },{ label: "Karangan Bunga Batam", category: "Collection", url: "/collections/karangan-bunga-batam", images: " ", price: " " },{ label: "Karangan Bunga Baubau", category: "Collection", url: "/collections/karangan-bunga-baubau", images: " ", price: " " },{ label: "Karangan Bunga Bengkalis", category: "Collection", url: "/collections/karangan-bunga-bengkalis", images: " ", price: " " },{ label: "Karangan Bunga Bengkayang", category: "Collection", url: "/collections/karangan-bunga-bengkayang", images: " ", price: " " },{ label: "Karangan Bunga Bengkulu", category: "Collection", url: "/collections/karangan-bunga-bengkulu", images: " ", price: " " },{ label: "Karangan Bunga Blora", category: "Collection", url: "/collections/karangan-bunga-blora", images: " ", price: " " },{ label: "Karangan Bunga Bogor", category: "Collection", url: "/collections/karangan-bunga-bogor", images: " ", price: " " },{ label: "Karangan Bunga Bojonegoro", category: "Collection", url: "/collections/karangan-bunga-bojonegoro", images: " ", price: " " },{ label: "Karangan Bunga Boyolali", category: "Collection", url: "/collections/karangan-bunga-boyolali", images: " ", price: " " },{ label: "Karangan Bunga Brebes", category: "Collection", url: "/collections/karangan-bunga-brebes", images: " ", price: " " },{ label: "Karangan Bunga Bukittinggi", category: "Collection", url: "/collections/karangan-bunga-bukittinggi", images: " ", price: " " },{ label: "Karangan Bunga Ciamis", category: "Collection", url: "/collections/karangan-bunga-ciamis", images: " ", price: " " }
5683,{ label: "Karangan Bunga Cianjur", category: "Collection", url: "/collections/karangan-bunga-cianjur", images: " ", price: " " },{ label: "Karangan Bunga Cikarang", category: "Collection", url: "/collections/karangan-bunga-cikarang", images: " ", price: " " },{ label: "Karangan Bunga Cikupa", category: "Collection", url: "/collections/karangan-bunga-cikupa", images: " ", price: " " },{ label: "Karangan Bunga Cilacap", category: "Collection", url: "/collections/karangan-bunga-cilacap", images: " ", price: " " },{ label: "Karangan Bunga Cileunyi", category: "Collection", url: "/collections/karangan-bunga-cileunyi", images: " ", price: " " },{ label: "Karangan Bunga Cimahi", category: "Collection", url: "/collections/karangan-bunga-cimahi", images: " ", price: " " },{ label: "Karangan Bunga Cirebon", category: "Collection", url: "/collections/karangan-bunga-cirebon", images: " ", price: " " },{ label: "Karangan Bunga Ciwidey", category: "Collection", url: "/collections/karangan-bunga-ciwidey", images: " ", price: " " },{ label: "Karangan Bunga Danau Toba", category: "Collection", url: "/collections/karangan-bunga-danau-toba", images: " ", price: " " },{ label: "Karangan Bunga Demak", category: "Collection", url: "/collections/karangan-bunga-demak", images: " ", price: " " },{ label: "Karangan Bunga Denpasar", category: "Collection", url: "/collections/karangan-bunga-denpasar", images: " ", price: " " },{ label: "Karangan Bunga Depok", category: "Collection", url: "/collections/karangan-bunga-depok", images: " ", price: " " },{ label: "Karangan Bunga Duka Cita", category: "Collection", url: "/collections/karangan-bunga-duka-cita", images: " ", price: " " },{ label: "Karangan Bunga Garut", category: "Collection", url: "/collections/karangan-bunga-garut", images: " ", price: " " },{ label: "Karangan Bunga Gianyar", category: "Collection", url: "/collections/karangan-bunga-gianyar", images: " ", price: " " },{ label: "Karangan Bunga Gorontalo", category: "Collection", url: "/collections/karangan-bunga-gorontalo", images: " ", price: " " },{ label: "Karangan Bunga Gowa", category: "Collection", url: "/collections/karangan-bunga-gowa", images: " ", price: " " },{ label: "Karangan Bunga Gresik", category: "Collection", url: "/collections/karangan-bunga-gresik", images: " ", price: " " },{ label: "Karangan Bunga Grobogan", category: "Collection", url: "/collections/karangan-bunga-grobogan", images: " ", price: " " },{ label: "Karangan Bunga Gunung Kidul", category: "Collection", url: "/collections/karangan-bunga-gunungkidul", images: " ", price: " " },{ label: "Karangan Bunga Indramayu", category: "Collection", url: "/collections/karangan-bunga-indramayu", images: " ", price: " " },{ label: "Karangan Bunga Jakarta", category: "Collection", url: "/collections/karangan-bunga-jakarta", images: " ", price: " " },{ label: "Karangan Bunga Jambi", category: "Collection", url: "/collections/karangan-bunga-jambi", images: " ", price: " " },{ label: "Karangan Bunga Jayapura", category: "Collection", url: "/collections/karangan-bunga-jayapura", images: " ", price: " " },{ label: "Karangan Bunga Jember", category: "Collection", url: "/collections/karangan-bunga-jember", images: " ", price: " " },{ label: "Karangan Bunga Jembrana", category: "Collection", url: "/collections/karangan-bunga-jembrana", images: " ", price: " " },{ label: "Karangan Bunga Jepara", category: "Collection", url: "/collections/karangan-bunga-jepara", images: " ", price: " " },{ label: "Karangan Bunga Jombang", category: "Collection", url: "/collections/karangan-bunga-jombang", images: " ", price: " " },{ label: "Karangan Bunga Kampung Baru", category: "Collection", url: "/collections/karangan-bunga-kampung-baru", images: " ", price: " " },{ label: "Karangan Bunga Kapuas", category: "Collection", url: "/collections/karangan-bunga-kapuas", images: " ", price: " " },{ label: "Karangan Bunga Karanganyar", category: "Collection", url: "/collections/karangan-bunga-karanganyar", images: " ", price: " " },{ label: "Karangan Bunga Karangasem", category: "Collection", url: "/collections/karangan-bunga-karangasem", images: " ", price: " " },{ label: "Karangan Bunga Karawang", category: "Collection", url: "/collections/karangan-bunga-karawang", images: " ", price: " " },{ label: "Karangan Bunga Kartosuro", category: "Collection", url: "/collections/karangan-bunga-kartosuro", images: " ", price: " " },{ label: "Karangan Bunga Kebumen", category: "Collection", url: "/collections/karangan-bunga-kebumen", images: " ", price: " " },{ label: "Karangan Bunga Kediri", category: "Collection", url: "/collections/karangan-bunga-kediri", images: " ", price: " " },{ label: "Karangan Bunga Kendal", category: "Collection", url: "/collections/karangan-bunga-ken
5683dal", images: " ", price: " " },{ label: "Karangan Bunga Kendari", category: "Collection", url: "/collections/karangan-bunga-kendari", images: " ", price: " " },{ label: "Karangan Bunga Ketapang", category: "Collection", url: "/collections/karangan-bunga-ketapang", images: " ", price: " " },{ label: "Karangan Bunga Klaten", category: "Collection", url: "/collections/karangan-bunga-klaten", images: " ", price: " " },{ label: "Karangan Bunga Kota Batu", category: "Collection", url: "/collections/karangan-bunga-kota-batu", images: " ", price: " " },{ label: "Karangan Bunga Kudus", category: "Collection", url: "/collections/karangan-bunga-kudus", images: " ", price: " " },{ label: "Karangan Bunga Kupang", category: "Collection", url: "/collections/karangan-bunga-kupang", images: " ", price: " " },{ label: "Karangan Bunga Lamongan", category: "Collection", url: "/collections/karangan-bunga-lamongan", images: " ", price: " " },{ label: "Karangan Bunga Lampung", category: "Collection", url: "/collections/karangan-bunga-lampung", images: " ", price: " " },{ label: "Karangan Bunga Langkat", category: "Collection", url: "/collections/karangan-bunga-langkat", images: " ", price: " " },{ label: "Karangan Bunga Lembang", category: "Collection", url: "/collections/karangan-bunga-lembang", images: " ", price: " " },{ label: "Karangan Bunga Lombok", category: "Collection", url: "/collections/karangan-bunga-lombok", images: " ", price: " " },{ label: "Karangan Bunga Lubuk Pakam", category: "Collection", url: "/collections/karangan-bunga-lubuk-pakam", images: " ", price: " " },{ label: "Karangan Bunga Lumajang", category: "Collection", url: "/collections/karangan-bunga-lumajang", images: " ", price: " " },{ label: "Karangan Bunga Madiun", category: "Collection", url: "/collections/karangan-bunga-madiun", images: " ", price: " " },{ label: "Karangan Bunga Magelang", category: "Collection", url: "/collections/karangan-bunga-magelang", images: " ", price: " " },{ label: "Karangan Bunga Majalengka", category: "Collection", url: "/collections/karangan-bunga-majalengka", images: " ", price: " " },{ label: "Karangan Bunga Makassar", category: "Collection", url: "/collections/karangan-bunga-makassar", images: " ", price: " " },{ label: "Karangan Bunga Malang", category: "Collection", url: "/collections/karangan-bunga-malang", images: " ", price: " " },{ label: "Karangan Bunga Mamuju", category: "Collection", url: "/collections/karangan-bunga-mamuju", images: " ", price: " " },{ label: "Karangan Bunga Manado", category: "Collection", url: "/collections/karangan-bunga-manado", images: " ", price: " " },{ label: "Karangan Bunga Manokwari", category: "Collection", url: "/collections/karangan-bunga-manokwari", images: " ", price: " " },{ label: "Karangan Bunga Maros", category: "Collection", url: "/collections/karangan-bunga-maros", images: " ", price: " " },{ label: "Karangan Bunga Mataram", category: "Collection", url: "/collections/karangan-bunga-mataram", images: " ", price: " " },{ label: "Karangan Bunga Mojokerto", category: "Collection", url: "/collections/karangan-bunga-mojokerto", images: " ", price: " " },{ label: "Karangan Bunga Nganjuk", category: "Collection", url: "/collections/karangan-bunga-nganjuk", images: " ", price: " " },{ label: "Karangan Bunga Nias", category: "Collection", url: "/collections/karangan-bunga-nias", images: " ", price: " " },{ label: "Karangan Bunga Padang", category: "Collection", url: "/collections/karangan-bunga-padang", images: " ", price: " " },{ label: "Karangan Bunga Palangkaraya", category: "Collection", url: "/collections/karangan-bunga-palangkaraya", images: " ", price: " " },{ label: "Karangan Bunga Palu", category: "Collection", url: "/collections/karangan-bunga-palu", images: " ", price: " " },{ label: "Karangan Bunga Pangkal Pinang", category: "Collection", url: "/collections/karangan-bunga-pangkal-pinang", images: " ", price: " " },{ label: "Karangan Bunga Papan", category: "Collection", url: "/collections/karangan-bunga", images: " ", price: " " },{ label: "Karangan Bunga Papan Bandar Lampung", category: "Collection", url: "/collections/karangan-bunga-bandar-lampung", images: " ", price: " " },{ label: "Karangan Bunga Papan Bekasi", category: "Collection", url: "/collections/karangan-bunga-bekasi", images: " ", price: " " },{ label: "Karangan Bunga Papan Binjai", category: "Collection", url: "/collections/karangan-bunga-binjai", images: " ", price: " " },{ label: "Karangan Bunga Papan Blitar", category: "Collection", url: "/collections/karangan-bunga-blitar", images: " ", price: " " },{ label: "Karangan Bunga Papan Buleleng", category: "Collection", url: "/collections/karangan-bunga-buleleng", images: " ", price: " " },{ label: "Karangan Bunga Papan Cibubur", category: "Collection", url: "/collections/karangan-bunga-cibubur", images: " ", price: " " },{ label: "Karangan Bunga Papan Deli Serdang", category: "Collection", url: "/collections/karangan-bunga-deli-serdang", images: " ", price: " " },{ label: "Karangan Bunga Papan Jakarta Timur", category: "Collection", url: "/collections/karangan-bunga-jakarta-timur", images: " ", price: " " },{ label: "Karangan Bunga Papan Karo", category: "Collection", url: "/collections/karangan-bunga-karo", images: " ", price: " " },{ label: "Karangan Bunga Papan Medan", category: "Collection", url: "/collections/karangan-bunga-medan", images: " ", price: " " },{ label: "Karangan Bunga Papan Ngawi", category: "Collection", url: "/collections/karangan-bunga-ngawi", images: " ", price: " " },{ label: "Karangan Bunga Papan Palembang", category: "Collection", url: "/collections/karangan-bunga-palembang", images: " ", price: " " },{ label: "Karangan Bunga Papan Pemalang", category: "Collection", url: "/collections/karangan-bunga-pemalang", images: " ", price: " " },{ label: "Karangan Bunga Papan Rembang", category: "Collection", url: "/collections/karangan-bunga-rembang", images: " ", price: " " },{ label: "Karangan Bunga Papan Sragen", category: "Collection", url: "/collections/karangan-bunga-sragen", images: " ", price: " " },{ label: "Karangan Bunga Papan Tegal", category: "Collection", url: "/collections/karangan-bunga-tegal", images: " ", price: " " },{ label: "Karangan Bunga Papan Temanggung", category: "Collection", url: "/collections/karangan-bunga-temanggung", images: " ", price: " " },{ label: "Karangan Bunga Parepare", category: "Collection", url: "/collections/karangan-bunga-parepare", images: " ", price: " " },{ label: "Karangan Bunga Pasuruan", category: "Collection", url: "/collections/karangan-bunga-pasuruan", images: " ", price: " " },{ label: "Karangan Bunga Pati", category: "Collection", url: "/collections/karangan-bunga-pati", images: " ", price: " " },{ label: "Karangan Bunga Pekalongan", category: "Collection", url: "/collections/karangan-bunga-pekalongan", images: " ", price: " " },{ label: "Karangan Bunga Pekanbaru", category: "Collection", url: "/collections/karangan-bunga-pekanbaru", images: " ", price: " " },{ label: "Karangan Bunga Pematangsiantar", category: "Collection", url: "/collections/karangan-bunga-pematangsiantar", images: " ", price: " " },{ label: "Karangan Bunga Ponorogo", category: "Collection", url: "/collections/karangan-bunga-ponorogo", images: " ", price: " " },{ label: "Karangan Bunga Pontianak", category: "Collection", url: "/collections/karangan-bunga-pontianak", images: " ", price: " " },{ label: "Karangan Bunga Probolinggo", category: "Collection", url: "/collections/karangan-bunga-probolinggo", images: " ", price: " " },{ label: "Karangan Bunga Purbalingga", category: "Collection", url: "/collections/karangan-bunga-purbalingga", images: " ", price: " " },{ label: "Karangan Bunga Purwokerto", category: "Collection", url: "/collections/karangan-bunga-purwokerto", images: " ", price: " " },{ label: "Karangan Bunga Purworejo", category: "Collection", url: "/collections/karangan-bunga-purworejo", images: " ", price: " " },{ label: "Karangan Bunga Riau", category: "Collection", url: "/collections/karangan-bunga-riau", images: " ", price: " " },{ label: "Karangan Bunga Salatiga", category: "Collection", url: "/collections/karangan-bunga-salatiga", images: " ", price: " " },{ label: "Karangan Bunga Samarinda", category: "Collection", url: "/collections/karangan-bunga-samarinda", images: " ", price: " " },{ label: "Karangan Bunga Semarang", category: "Collection", url: "/collections/karangan-bunga-semarang", images: " ", price: " " },{ label: "Karangan Bunga Serang", category: "Collection", url: "/collections/karangan-bunga-serang", images: " ", price: " " },{ label: "Karangan Bunga Sibolga", category: "Collection", url: "/collections/karangan-bunga-sibolga", images: " ", price: " " },{ label: "Karangan Bunga Sidoarjo", category: "Collection", url: "/collections/karangan-bunga-sidoarjo", images: " ", price: " " },{ label: "Karangan Bunga Singkawang", category: "Collection", url: "/collections/karangan-bunga-singkawang", images: " ", price: " " },{ label: "Karangan Bunga Solo", category: "Collection", url: "/collections/karangan-bunga-solo", images: " ", price: " " },{ label: "Karangan Bunga Sorong", category: "Collection", url: "/collections/karangan-bunga-sorong", images: " ", price: " " },{ label: "Karangan Bunga Subang", category: "Collection", url: "/collections/karangan-bunga-subang", images: " ", price: " " },{ label: "Karangan Bunga Sukabumi", category: "Collection", url: "/collections/karangan-bunga-sukabumi", images: " ", price: " " },{ label: "Karangan Bunga Sumbawa", category: "Collection", url: "/collections/karangan-bunga-sumbawa", images: " ", price: " " },{ label: "Karangan Bunga Surabaya", category: "Collection", url: "/collections/karangan-bunga-surabaya", images: " ", price: " " },{ label: "Karangan Bunga Surakarta", category: "Collection", url: "/collections/karangan-bunga-surakarta", images: " ", price: " " },{ label: "Karangan Bunga Tangerang", category: "Collection", url: "/collections/karangan-bunga-tangerang", images: " ", price: " " },{ label: "Karangan Bunga Tasikmalaya", category: "Collection", url: "/collections/karangan-bunga-tasikmalaya", images: " ", price: " " },{ label: "Karangan Bunga Ternate", category: "Collection", url: "/collections/karangan-bunga-ternate", images: " ", price: " " },{ label: "Karangan Bunga Tolitoli", category: "Collection", url: "/collections/karangan-bunga-tolitoli", images: " ", price: " " },{ label: "Karangan Bunga Toraja", category: "Collection", url: "/collections/karangan-bunga-toraja", images: " ", price: " " },{ label: "Karangan Bunga Tuban", category: "Collection", url: "/collections/karangan-bunga-tuban", images: " ", price: " " },{ label: "Karangan Bunga Tulungagung", category: "Collection", url: "/collections/karangan-bunga-tulungagung", images: " ", price: " " },{ label: "Karangan Bunga Wakatobi", category: "Collection", url: "/collections/karangan-bunga-wakatobi", images: " ", price: " " },{ label: "Karangan Bunga Wiyung", category: "Collection", url: "/collections/karangan-bunga-wiyung", images: " ", price: " " },{ label: "Karangan Bunga Wonogiri", category: "Collection", url: "/collections/karangan-bunga-wonogiri", images: " ", price: " " },{ label: "Karangan Bunga Wonokromo", category: "Collection", url: "/collections/karangan-bunga-wonokromo", images: " ", price: " " },{ label: "Karangan Bunga Wonosobo", category: "Collection", url: "/collections/karangan-bunga-wonosobo", images: " ", price: " " },{ label: "Karangan Bunga Yogyakarta", category: "Collection", url: "/collections/karangan-bunga-yogyakarta", images: " ", price: " " },{ label: "Kartu Ucapan", category: "Collection", url: "/collections/kartu-ucapan", images: " ", price: " " },{ label: "Kue Anniversary", category: "Collection", url: "/collections/kue-anniversary", images: " ", price: " " },{ label: "Kue Bachelorette", category: "Collection", url: "/collections/kue-bachelorette", images: " ", price: " " },{ label: "Kue Bandung", category: "Collection", url: "/collections/kue-bandung", images: " ", price: " " },{ label: "Kue Bulan", category: "Collection", url: "/collections/kue-bulan", images: " ", price: " " },{ label: "Kue Imlek", category: "Collection", url: "/collections/kue-imlek", images: " ", price: " " },{ label: "Kue Kering", category: "Collection", url: "/collections/kue-kering", images: " ", price: " " },{ label: "Kue Natal", category: "Collection", url: "/collections/kue-natal", images: " ", price: " " },{ label: "Kue Pernikahan", category: "Collection", url: "/collections/kue-pernikahan", images: " ", price: " " },{ label: "Kue Tart", category: "Collection", url: "/collections/kue-tart", images: " ", price: " " },{ label: "Kue Tart Oma Elly", category: "Collection", url: "/collections/kue-tart-oma-elly", images: " ", price: " " },{ label: "Kue Ulang Tahun", category: "Collection", url: "/collections/kue-ulang-tahun", images: " ", price: " " },{ label: "Lalique", category: "Collection", url: "/collections/lalique", images: " ", price: " " },{ label: "Le Sucre Du Patisserie", category: "Collection", url: "/collections/le-sucre-du-patisserie", images: " ", price: " " },{ label: "Leo âï¸ 23July - 22Augst", category: "Collection", url: "/collections/kado-untuk-zodiak-leo", images: " ", price: " " },{ label: "Letter Box", category: "Collection", url: "/collections/letter-box", images: " ", price: " " },{ label: "Libra âï¸ 23Sept - 23Oct", category: "Collection", url: "/collections/kado-untuk-zodiak-libra", images: " ", price: " " },{ label: "Lilin Aromaterapi", category: "Collection", url: "/collections/lilin-aromaterapi", images: " ", price: " " },{ label: "Lily", category: "Collection", url: "/collections/bunga-lily", images: " ", price: " " },{ label: "Lindt", category: "Collection", url: "/collections/lindt", images: " ", price: " " },{ label: "Locations", category: "Collection", url: "/collections/locations", images: " ", price: " " },{ label: "Love & Romance", category: "Collection", url: "/collections/rangkaian-bunga-i-love-you", images: " ", price: " " },{ label: "Love Bag Collection", category: "Collection", url: "/collections/love-bag-collection", images: " ", price: " " },{ label: "Love Bundle", category: "Collection", url: "/collections/paket-promo-spesial-valentine", images: " ", price: " " },{ label: "Love Bundle Nusantara", category: "Collection", url: "/collections/love-bundle-nusantara", images: " ", price: " " },{ label: "Luxury Chinese New Year Hampers", category: "Collection", url: "/collections/luxury-chinese-new-year-hampers", images: " ", price: " " },{ label: "Luxury Christmas Hampers", category: "Collection", url: "/collections/luxury-christmas-hampers", images: " ", price: " " },{ label: "Luxury Hampers", category: "Collection", url: "/collections/luxury-hampers", images: " ", price: " " },{ label: "Luxury Hampers Luar Jadetabek", category: "Collection", url: "/collections/luxury-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Luxury Newborn Hampers Collection", category: "Collection", url: "/collections/luxury-newborn-hampers-collection", images: " ", price: " " },{ label: "Luxury Ramadan Hampers", category: "Collection", url: "/collections/luxury-ramadan-hampers", images: " ", price: " " },{ label: "Luxury Set", category: "Collection", url: "/collections/luxury", images: " ", price: " " },{ label: "Manual", category: "Collection", url: "/collections/manual", images: " ", price: " " },{ label: "Massimo Gelato", category: "Collection", url: "/collections/massimo-gelato", images: " ", price: " " },{ label: "Men's Collection", category: "Collection", url: "/collections/mens-collection", images: " ", price: " " },{ label: "Mercedes Benz", category: "Collection", url: "/collections/mercedes-benz", images: " ", price: " " },{ label: "Mercy Hampers", category: "Collection", url: "/collections/mercy-
5683hampers", images: " ", price: " " },{ label: "Merry Hampers", category: "Collection", url: "/collections/merry-hampers", images: " ", price: " " },{ label: "Merry Hampers Luar Jabodetabek", category: "Collection", url: "/collections/merry-hampers-luar-jabodetabek", images: " ", price: " " },{ label: "Mini Bouquet", category: "Collection", url: "/collections/mini-bouquet", images: " ", price: " " },{ label: "Miss Mondial", category: "Collection", url: "/collections/miss-mondial", images: " ", price: " " },{ label: "Modern & Chic Chinese New Year", category: "Collection", url: "/collections/modern-chic-chinese-new-year", images: " ", price: " " },{ label: "Modern & Chic Christmas Hampers", category: "Collection", url: "/collections/modern-chic-christmas", images: " ", price: " " },{ label: "Modern & Chic Hampers", category: "Collection", url: "/collections/modern-chic-hampers", images: " ", price: " " },{ label: "Modern & Chic Hampers Luar Jadetabek", category: "Collection", url: "/collections/modern-chic-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Modern & Chic Ramadan Hampers", category: "Collection", url: "/collections/modern-chic-ramadan-hampers", images: " ", price: " " },{ label: "Modern & Classy Hampers", category: "Collection", url: "/collections/parcel-unik", images: " ", price: " " },{ label: "Modern 3D Cake", category: "Collection", url: "/collections/custom-3d-cake", images: " ", price: " " },{ label: "Modern Style Flowers", category: "Collection", url: "/collections/modern-style-flowers", images: " ", price: " " },{ label: "Monochrome Hampers", category: "Collection", url: "/collections/monochrome-hampers", images: " ", price: " " },{ label: "Monochrome Hampers Luar Jadetabek", category: "Collection", url: "/collections/monochrome-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Mooncake", category: "Collection", url: "/collections/kue-bulan-mooncake-2025-mid-autumn-festival", images: " ", price: " " },{ label: "Mooncake Assorted Selection", category: "Collection", url: "/collections/mooncake-assorted-selection", images: " ", price: " " },{ label: "Mother's Day", category: "Collection", url: "/collections/rangkaian-bunga-hari-ibu", images: " ", price: " " },{ label: "Mother's Day Special", category: "Collection", url: "/collections/kado-untuk-ibu", images: " ", price: " " },{ label: "Necklace", category: "Collection", url: "/collections/kalung", images: " ", price: " " },{ label: "NestBloom Bird Nest Hampers", category: "Collection", url: "/collections/nestbloom-birds-nest", images: " ", price: " " },{ label: "NestBloom Gift Set", category: "Collection", url: "/collections/nestbloom-gift-set", images: " ", price: " " },{ label: "Nestbloom Ritual Kit", category: "Collection", url: "/collections/nestbloom-ritual-kit", images: " ", price: " " },{ label: "NestBloom Single Bloom", category: "Collection", url: "/collections/nestbloom-single-bloom", images: " ", price: " " },{ label: "New Collection", category: "Collection", url: "/collections/produk-baru", images: " ", price: " " },{ label: "New Product", category: "Collection", url: "/collections/new-product", images: " ", price: " " },{ label: "Newborn", category: "Collection", url: "/collections/rangkaian-bunga-newborn-baby", images: " ", price: " " },{ label: "Newborn Hampers", category: "Collection", url: "/collections/parcel-newborn", images: " ", price: " " },{ label: "Occasions", category: "Collection", url: "/collections/occasions", images: " ", price: " " },{ label: "Oma Elly", category: "Collection", url: "/collections/oma-elly", images: " ", price: " " },{ label: "Oma Elly Gelato", category: "Collection", url: "/collections/oma-elly-gelato", images: " ", price: " " },{ label: "Orchid", category: "Collection", url: "/collections/bunga-anggrek", images: " ", price: " " },{ label: "Orori", category: "Collection", url: "/collections/orori", images: " ", price: " " },{ label: "Outerbloom", category: "Collection", url: "/collections/outerbloom", images: " ", price: " " },{ label: "Outerbloom Cake", category: "Collection", url: "/collections/outerbloom-cake", images: " ", price: " " },{ label: "Outerbloom Florist", category: "Collection", url: "/collections/outerbloom-florist", images: " ", price: " " },{ label: "Outerbloom Gift", category: "Collection", url: "/collections/outerbloom-gift", images: " ", price: " " },{ label: "Outerbloom Hampers", category: "Collection", url: "/collections/outerbloom-hampers", images: " ", price: " " },{ label: "Outerbloom Indonesia", category: "Collection", url: "/collections/indonesia", images: " ", price: " " },{ label: "Outerbloom x Boho Panna", category: "Collection", url: "/collections/outerbloom-x-boh
5683o-panna", images: " ", price: " " },{ label: "Outerbloom x Clairmont", category: "Collection", url: "/collections/outerbloom-x-clairmont", images: " ", price: " " },{ label: "Outerbloom x Kikido", category: "Collection", url: "/collections/outerbloom-x-kikido", images: " ", price: " " },{ label: "Outerbloom x Miwa Pattern", category: "Collection", url: "/collections/outerbloom-x-miwa", images: " ", price: " " },{ label: "Outerbloom x Nestbloom Chinese New Year", category: "Collection", url: "/collections/outerbloom-x-nestbloom-chinese-new-year", images: " ", price: " " },{ label: "Outerbloom x NestBloom Hampers", category: "Collection", url: "/collections/outerbloom-x-nestbloom", images: " ", price: " " },{ label: "Paket Kolaborasi Outerbloom", category: "Collection", url: "/collections/paket-kolaborasi-outerbloom", images: " ", price: " " },{ label: "Paket Kolaborasi Valentine", category: "Collection", url: "/collections/paket-kolaborasi-valentine", images: " ", price: " " },{ label: "Paket Ulang Tahun", category: "Collection", url: "/collections/paket-ulang-tahun", images: " ", price: " " },{ label: "Paket Valentine Nusantara", category: "Collection", url: "/collections/paket-valentine-nusantara", images: " ", price: " " },{ label: "Paket Valentine Outerbloom", category: "Collection", url: "/collections/paket-valentine", images: " ", price: " " },{ label: "Papan Bunga", category: "Collection", url: "/collections/papan-bunga", images: " ", price: " " },{ label: "Papan Bunga Aceh", category: "Collection", url: "/collections/papan-bunga-aceh", images: " ", price: " " },{ label: "Papan Bunga Acrylic", category: "Collection", url: "/collections/papan-bunga-acrylic", images: " ", price: " " },{ label: "Papan Bunga Ambon", category: "Collection", url: "/collections/papan-bunga-ambon", images: " ", price: " " },{ label: "Papan Bunga Artificial", category: "Collection", url: "/collections/papan-bunga-artificial", images: " ", price: " " },{ label: "Papan Bunga Atambua", category: "Collection", url: "/collections/papan-bunga-atambua", images: " ", price: " " },{ label: "Papan Bunga Bali", category: "Collection", url: "/collections/papan-bunga-bali", images: " ", price: " " },{ label: "Papan Bunga Balikpapan", category: "Collection", url: "/collections/papan-bunga-balikpapan", images: " ", price: " " },{ label: "Papan Bunga Bandar Lampung", category: "Collection", url: "/collections/papan-bunga-bandar-lampung", images: " ", price: " " },{ label: "Papan Bunga Bandung", category: "Collection", url: "/collections/papan-bunga-bandung", images: " ", price: " " },{ label: "Papan Bunga Bandung Barat", category: "Collection", url: "/collections/papan-bunga-bandung-barat", images: " ", price: " " },{ label: "Papan Bunga Bangka", category: "Collection", url: "/collections/papan-bunga-bangka", images: " ", price: " " },{ label: "Papan Bunga Banjarmasin", category: "Collection", url: "/collections/papan-bunga-banjarmasin", images: " ", price: " " },{ label: "Papan Bunga Banten", category: "Collection", url: "/collections/papan-bunga-banten", images: " ", price: " " },{ label: "Papan Bunga Banyumas", category: "Collection", url: "/collections/papan-bunga-banyumas", images: " ", price: " " },{ label: "Papan Bunga Banyuwangi", category: "Collection", url: "/collections/papan-bunga-banyuwangi", images: " ", price: " " },{ label: "Papan Bunga Batam", category: "Collection", url: "/collections/papan-bunga-batam", images: " ", price: " " },{ label: "Papan Bunga Baubau", category: "Collection", url: "/collections/papan-bunga-baubau", images: " ", price: " " },{ label: "Papan Bunga Bekasi", category: "Collection", url: "/collections/papan-bunga-bekasi", images: " ", price: " " },{ label: "Papan Bunga Bengkalis", category: "Collection", url: "/collections/papan-bunga-bengkalis", images: " ", price: " " },{ label: "Papan Bunga Bengkayang", category: "Collection", url: "/collections/papan-bunga-bengkayang", images: " ", price: " " },{ label: "Papan Bunga Bengkulu", category: "Collection", url: "/collections/papan-bunga-bengkulu", images: " ", price: " " }
5683,{ label: "Papan Bunga Binjai", category: "Collection", url: "/collections/papan-bunga-binjai", images: " ", price: " " },{ label: "Papan Bunga Blitar", category: "Collection", url: "/collections/papan-bunga-blitar", images: " ", price: " " },{ label: "Papan Bunga Blora", category: "Collection", url: "/collections/papan-bunga-blora", images: " ", price: " " },{ label: "Papan Bunga Bogor", category: "Collection", url: "/collections/papan-bunga-bogor", images: " ", price: " " },{ label: "Papan Bunga Bojonegoro", category: "Collection", url: "/collections/papan-bunga-bojonegoro", images: " ", price: " " },{ label: "Papan Bunga Boyolali", category: "Collection", url: "/collections/papan-bunga-boyolali", images: " ", price: " " },{ label: "Papan Bunga Brebes", category: "Collection", url: "/collections/papan-bunga-brebes", images: " ", price: " " },{ label: "Papan Bunga Bukittinggi", category: "Collection", url: "/collections/papan-bunga-bukittinggi", images: " ", price: " " },{ label: "Papan Bunga Buleleng", category: "Collection", url: "/collections/papan-bunga-buleleng", images: " ", price: " " },{ label: "Papan Bunga Ciamis", category: "Collection", url: "/collections/papan-bunga-ciamis", images: " ", price: " " },{ label: "Papan Bunga Cianjur", category: "Collection", url: "/collections/papan-bunga-cianjur", images: " ", price: " " },{ label: "Papan Bunga Cibubur", category: "Collection", url: "/collections/papan-bunga-cibubur", images: " ", price: " " },{ label: "Papan Bunga Cikarang", category: "Collection", url: "/collections/papan-bunga-cikarang", images: " ", price: " " },{ label: "Papan Bunga Cikupa", category: "Collection", url: "/collections/papan-bunga-cikupa", images: " ", price: " " },{ label: "Papan Bunga Cikupa", category: "Collection", url: "/collections/papan-bunga-cikupa-1", images: " ", price: " " },{ label: "Papan Bunga Cilacap", category: "Collection", url: "/collections/papan-bunga-cilacap", images: " ", price: " " },{ label: "Papan Bunga Cileunyi", category: "Collection", url: "/collections/papan-bunga-cileunyi", images: " ", price: " " },{ label: "Papan Bunga Cirebon", category: "Collection", url: "/collections/papan-bunga-cirebon", images: " ", price: " " },{ label: "Papan Bunga Congratulations", category: "Collection", url: "/collections/papan-bunga-ucapan-selamat", images: " ", price: " " },{ label: "Papan Bunga Congratulations Bali", category: "Collection", url: "/collections/papan-bunga-congratulations-bali", images: " ", price: " " },{ label: "Papan Bunga Congratulations Bandung", category: "Collection", url: "/collections/papan-bunga-congratulations-bandung", images: " ", price: " " },{ label: "Papan Bunga Congratulations Bekasi", category: "Collection", url: "/collections/papan-bunga-congratulations-bekasi", images: " ", price: " " },{ label: "Papan Bunga Congratulations Bogor", category: "Collection", url: "/collections/papan-bunga-congratulations-bogor", images: " ", price: " " },{ label: "Papan Bunga Congratulations Cikupa", category: "Collection", url: "/collections/papan-bunga-congratulations-cikupa", images: " ", price: " " },{ label: "Papan Bunga Congratulations Demak", category: "Collection", url: "/collections/papan-bunga-congratulations-demak", images: " ", price: " " },{ label: "Papan Bunga Congratulations Depok", category: "Collection", url: "/collections/papan-bunga-congratulations-depok", images: " ", price: " " },{ label: "Papan Bunga Congratulations Gresik", category: "Collection", url: "/collections/papan-bunga-congratulations-gresik", images: " ", price: " " },{ label: "Papan Bunga Congratulations Jakarta", category: "Collection", url: "/collections/papan-bunga-congratulations-jakarta", images: " ", price: " " },{ label: "Papan Bunga Congratulations Jepara", category: "Collection", url: "/collections/papan-bunga-congratulations-jepara", images: " ", price: " " },{ label: "Papan Bunga Congratulations Medan", category: "Collection", url: "/collections/papan-bunga-congratulations-medan", images: " ", price: " " },{ label: "Papan Bunga Congratulations Semarang", category: "Collection", url: "/collections/papan-bunga-congratulations-semarang", images: " ", price: " " }
5683,{ label: "Papan Bunga Congratulations Serang", category: "Collection", url: "/collections/papan-bunga-congratulations-serang", images: " ", price: " " },{ label: "Papan Bunga Congratulations Sidoarjo", category: "Collection", url: "/collections/papan-bunga-congratulations-sidoarjo", images: " ", price: " " },{ label: "Papan Bunga Congratulations Surabaya", category: "Collection", url: "/collections/papan-bunga-congratulations-surabaya", images: " ", price: " " },{ label: "Papan Bunga Congratulations Tangerang", category: "Collection", url: "/collections/papan-bunga-congratulations-tangerang", images: " ", price: " " },{ label: "Papan Bunga Congratulations Yogyakarta", category: "Collection", url: "/collections/papan-bunga-congratulations-yogyakarta", images: " ", price: " " },{ label: "Papan Bunga Danau Toba", category: "Collection", url: "/collections/papan-bunga-danau-toba", images: " ", price: " " },{ label: "Papan Bunga Deli Serdang", category: "Collection", url: "/collections/papan-bunga-deli-serdang", images: " ", price: " " },{ label: "Papan Bunga Demak", category: "Collection", url: "/collections/papan-bunga-demak", images: " ", price: " " },{ label: "Papan Bunga Denpasar", category: "Collection", url: "/collections/papan-bunga-denpasar", images: " ", price: " " },{ label: "Papan Bunga Depok", category: "Collection", url: "/collections/papan-bunga-depok", images: " ", price: " " },{ label: "Papan Bunga Duka Cita", category: "Collection", url: "/collections/bunga-duka-cita", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Bali", category: "Collection", url: "/collections/papan-bunga-duka-cita-bali", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Bandung", category: "Collection", url: "/collections/papan-bunga-duka-cita-bandung", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Bekasi", category: "Collection", url: "/collections/papan-bunga-duka-cita-bekasi", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Bogor", category: "Collection", url: "/collections/papan-bunga-duka-cita-bogor", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Cikupa", category: "Collection", url: "/collections/papan-bunga-duka-cita-cikupa", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Demak", category: "Collection", url: "/collections/papan-bunga-duka-cita-demak", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Depok", category: "Collection", url: "/collections/papan-bunga-duka-cita-depok", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Gresik", category: "Collection", url: "/collections/papan-bunga-duka-cita-gresik", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Jakarta", category: "Collection", url: "/collections/papan-bunga-duka-cita-jakarta", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Jepara", category: "Collection", url: "/collections/papan-bunga-duka-cita-jepara", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Medan", category: "Collection", url: "/collections/papan-bunga-duka-cita-medan", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Semarang", category: "Collection", url: "/collections/papan-bunga-duka-cita-semarang", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Serang", category: "Collection", url: "/collections/papan-bunga-duka-cita-serang", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Sidoarjo", category: "Collection", url: "/collections/papan-bunga-duka-cita-sidoarjo", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Surabaya", category: "Collection", url: "/collections/papan-bunga-duka-cita-surabaya", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Tangerang", category: "Collection", url: "/collections/papan-bunga-duka-cita-tangerang", images: " ", price: " " },{ label: "Papan Bunga Duka Cita Yogyakarta", category: "Collection", url: "/collections/papan-bunga-duka-cita-yogyakarta", images: " ", price: " " },{ label: "Papan Bunga Garut", category: "Collection", url: "/collections/papan-bunga-garut", images: " ", price: " " },{ label: "Papan Bunga Gianyar", category: "Collection", url: "/collections/papan-bunga-gianyar", images: " ", price: " " }
5683,{ label: "Papan Bunga Gorontalo", category: "Collection", url: "/collections/papan-bunga-gorontalo", images: " ", price: " " },{ label: "Papan Bunga Gowa", category: "Collection", url: "/collections/papan-bunga-gowa", images: " ", price: " " },{ label: "Papan Bunga Gresik", category: "Collection", url: "/collections/papan-bunga-gresik", images: " ", price: " " },{ label: "Papan Bunga Grobogan", category: "Collection", url: "/collections/papan-bunga-grobogan", images: " ", price: " " },{ label: "Papan Bunga Gunungkidul", category: "Collection", url: "/collections/papan-bunga-gunungkidul", images: " ", price: " " },{ label: "Papan Bunga Indramayu", category: "Collection", url: "/collections/papan-bunga-indramayu", images: " ", price: " " },{ label: "Papan Bunga Jakarta", category: "Collection", url: "/collections/papan-bunga-jakarta", images: " ", price: " " },{ label: "Papan Bunga Jakarta Timur", category: "Collection", url: "/collections/papan-bunga-jakarta-timur", images: " ", price: " " },{ label: "Papan Bunga Jambi", category: "Collection", url: "/collections/papan-bunga-jambi", images: " ", price: " " },{ label: "Papan Bunga Jayapura", category: "Collection", url: "/collections/papan-bunga-jayapura", images: " ", price: " " },{ label: "Papan Bunga Jember", category: "Collection", url: "/collections/papan-bunga-jember", images: " ", price: " " },{ label: "Papan Bunga Jembrana", category: "Collection", url: "/collections/papan-bunga-jembrana", images: " ", price: " " },{ label: "Papan Bunga Jepara", category: "Collection", url: "/collections/papan-bunga-jepara", images: " ", price: " " },{ label: "Papan Bunga Jombang", category: "Collection", url: "/collections/papan-bunga-jombang", images: " ", price: " " },{ label: "Papan Bunga Kampung Baru", category: "Collection", url: "/collections/papan-bunga-kampung-baru", images: " ", price: " " },{ label: "Papan Bunga Kapuas", category: "Collection", url: "/collections/papan-bunga-kapuas", images: " ", price: " " },{ label: "Papan Bunga Karanganyar", category: "Collection", url: "/collections/papan-bunga-karanganyar", images: " ", price: " " },{ label: "Papan Bunga Karangasem", category: "Collection", url: "/collections/papan-bunga-karangasem", images: " ", price: " " },{ label: "Papan Bunga Karawang", category: "Collection", url: "/collections/papan-bunga-karawang", images: " ", price: " " },{ label: "Papan Bunga Karo", category: "Collection", url: "/collections/papan-bunga-karo", images: " ", price: " " },{ label: "Papan Bunga Kartosuro", category: "Collection", url: "/collections/papan-bunga-kartosuro", images: " ", price: " " },{ label: "Papan Bunga Kebumen", category: "Collection", url: "/collections/papan-bunga-kebumen", images: " ", price: " " },{ label: "Papan Bunga Kediri", category: "Collection", url: "/collections/papan-bunga-kediri", images: " ", price: " " },{ label: "Papan Bunga Kendal", category: "Collection", url: "/collections/papan-bunga-kendal", images: " ", price: " " },{ label: "Papan Bunga Kendari", category: "Collection", url: "/collections/papan-bunga-kendari", images: " ", price: " " },{ label: "Papan Bunga Ketapang", category: "Collection", url: "/collections/papan-bunga-ketapang", images: " ", price: " " },{ label: "Papan Bunga Klaten", category: "Collection", url: "/collections/papan-bunga-klaten", images: " ", price: " " },{ label: "Papan Bunga Kota Batu", category: "Collection", url: "/collections/papan-bunga-kota-batu", images: " ", price: " " },{ label: "Papan Bunga Kudus", category: "Collection", url: "/collections/papan-bunga-kudus", images: " ", price: " " },{ label: "Papan Bunga Kupang", category: "Collection", url: "/collections/papan-bunga-kupang", images: " ", price: " " },{ label: "Papan Bunga Lamongan", category: "Collection", url: "/collections/papan-bunga-lamongan", images: " ", price: " " },{ label: "Papan Bunga Lampu LED", category: "Collection", url: "/collections/papan-bunga-lampu-led", images: " ", price: " " },{ label: "Papan Bunga Lampung", category: "Collection", url: "/collections/papan-bunga-lampung", images: " ", price: " " }
5683,{ label: "Papan Bunga Langkat", category: "Collection", url: "/collections/papan-bunga-langkat", images: " ", price: " " },{ label: "Papan Bunga Lembang", category: "Collection", url: "/collections/papan-bunga-lembang", images: " ", price: " " },{ label: "Papan Bunga Lombok", category: "Collection", url: "/collections/papan-bunga-lombok", images: " ", price: " " },{ label: "Papan Bunga Lubuk Pakam", category: "Collection", url: "/collections/papan-bunga-lubuk-pakam", images: " ", price: " " },{ label: "Papan Bunga Lumajang", category: "Collection", url: "/collections/papan-bunga-lumajang", images: " ", price: " " },{ label: "Papan Bunga Madiun", category: "Collection", url: "/collections/papan-bunga-madiun", images: " ", price: " " },{ label: "Papan Bunga Magelang", category: "Collection", url: "/collections/papan-bunga-magelang", images: " ", price: " " },{ label: "Papan Bunga Majalengka", category: "Collection", url: "/collections/papan-bunga-majalengka", images: " ", price: " " },{ label: "Papan Bunga Makassar", category: "Collection", url: "/collections/papan-bunga-makassar", images: " ", price: " " },{ label: "Papan Bunga Malang", category: "Collection", url: "/collections/papan-bunga-malang", images: " ", price: " " },{ label: "Papan Bunga Mamuju", category: "Collection", url: "/collections/papan-bunga-mamuju", images: " ", price: " " },{ label: "Papan Bunga Manado", category: "Collection", url: "/collections/papan-bunga-manado", images: " ", price: " " },{ label: "Papan Bunga Manokwari", category: "Collection", url: "/collections/papan-bunga-manokwari", images: " ", price: " " },{ label: "Papan Bunga Maros", category: "Collection", url: "/collections/papan-bunga-maros", images: " ", price: " " },{ label: "Papan Bunga Mataram", category: "Collection", url: "/collections/papan-bunga-mataram", images: " ", price: " " },{ label: "Papan Bunga Medan", category: "Collection", url: "/collections/papan-bunga-medan", images: " ", price: " " },{ label: "Papan Bunga Mojokerto", category: "Collection", url: "/collections/papan-bunga-mojokerto", images: " ", price: " " },{ label: "Papan Bunga Nganjuk", category: "Collection", url: "/collections/papan-bunga-nganjuk", images: " ", price: " " },{ label: "Papan Bunga Ngawi", category: "Collection", url: "/collections/papan-bunga-ngawi", images: " ", price: " " },{ label: "Papan Bunga Nias", category: "Collection", url: "/collections/papan-bunga-nias", images: " ", price: " " },{ label: "Papan Bunga Organza", category: "Collection", url: "/collections/papan-bunga-organza", images: " ", price: " " },{ label: "Papan Bunga Padang", category: "Collection", url: "/collections/papan-bunga-padang", images: " ", price: " " },{ label: "Papan Bunga Palangkaraya", category: "Collection", url: "/collections/papan-bunga-palangkaraya", images: " ", price: " " },{ label: "Papan Bunga Palembang", category: "Collection", url: "/collections/papan-bunga-palembang", images: " ", price: " " },{ label: "Papan Bunga Palu", category: "Collection", url: "/collections/papan-bunga-palu", images: " ", price: " " },{ label: "Papan Bunga Pangkal Pinang", category: "Collection", url: "/collections/papan-bunga-pangkal-pinang", images: " ", price: " " },{ label: "Papan Bunga Parepare", category: "Collection", url: "/collections/papan-bunga-parepare", images: " ", price: " " },{ label: "Papan Bunga Pasuruan", category: "Collection", url: "/collections/papan-bunga-pasuruan", images: " ", price: " " },{ label: "Papan Bunga Pati", category: "Collection", url: "/collections/papan-bunga-pati", images: " ", price: " " },{ label: "Papan Bunga Pekalongan", category: "Collection", url: "/collections/papan-bunga-pekalongan", images: " ", price: " " },{ label: "Papan Bunga Pekanbaru", category: "Collection", url: "/collections/papan-bunga-pekanbaru", images: " ", price: " " },{ label: "Papan Bunga Pemalang", category: "Collection", url: "/collections/papan-bunga-pemalang", images: " ", price: " " },{ label: "Papan Bunga Pematangsiantar", category: "Collection", url: "/collections/papan-bunga-pematangsiantar", images: " ", price: " " }
5683,{ label: "Papan Bunga Pernikahan Bali", category: "Collection", url: "/collections/papan-bunga-pernikahan-bali", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Bandung", category: "Collection", url: "/collections/papan-bunga-pernikahan-bandung", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Bekasi", category: "Collection", url: "/collections/papan-bunga-pernikahan-bekasi", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Bogor", category: "Collection", url: "/collections/papan-bunga-pernikahan-bogor", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Cikupa", category: "Collection", url: "/collections/papan-bunga-pernikahan-cikupa", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Demak", category: "Collection", url: "/collections/papan-bunga-pernikahan-demak", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Depok", category: "Collection", url: "/collections/papan-bunga-pernikahan-depok", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Gresik", category: "Collection", url: "/collections/papan-bunga-pernikahan-gresik", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Jakarta", category: "Collection", url: "/collections/papan-bunga-pernikahan-jakarta", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Jepara", category: "Collection", url: "/collections/papan-bunga-pernikahan-jepara", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Medan", category: "Collection", url: "/collections/papan-bunga-pernikahan-medan", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Semarang", category: "Collection", url: "/collections/papan-bunga-pernikahan-semarang", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Serang", category: "Collection", url: "/collections/papan-bunga-pernikahan-serang", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Sidoarjo", category: "Collection", url: "/collections/papan-bunga-pernikahan-sidoarjo", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Surabaya", category: "Collection", url: "/collections/papan-bunga-pernikahan-surabaya", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Tangerang", category: "Collection", url: "/collections/papan-bunga-pernikahan-tangerang", images: " ", price: " " },{ label: "Papan Bunga Pernikahan Yogyakarta", category: "Collection", url: "/collections/papan-bunga-pernikahan-yogyakarta", images: " ", price: " " },{ label: "Papan Bunga Ponorogo", category: "Collection", url: "/collections/papan-bunga-ponorogo", images: " ", price: " " },{ label: "Papan Bunga Pontianak", category: "Collection", url: "/collections/papan-bunga-pontianak", images: " ", price: " " },{ label: "Papan Bunga Premium", category: "Collection", url: "/collections/papan-bunga-premium", images: " ", price: " " },{ label: "Papan Bunga Printing", category: "Collection", url: "/collections/papan-bunga-printing", images: " ", price: " " },{ label: "Papan Bunga Printing Congratulations", category: "Collection", url: "/collections/papan-bunga-printing-congratulations", images: " ", price: " " },{ label: "Papan Bunga Probolinggo", category: "Collection", url: "/collections/papan-bunga-probolinggo", images: " ", price: " " },{ label: "Papan Bunga Promo", category: "Collection", url: "/collections/promo-papan-bunga", images: " ", price: " " },{ label: "Papan Bunga Purbalingga", category: "Collection", url: "/collections/papan-bunga-purbalingga", images: " ", price: " " },{ label: "Papan Bunga Purwokerto", category: "Collection", url: "/collections/papan-bunga-purwokerto", images: " ", price: " " },{ label: "Papan Bunga Purworejo", category: "Collection", url: "/collections/papan-bunga-purworejo", images: " ", price: " " },{ label: "Papan Bunga Rembang", category: "Collection", url: "/collections/papan-bunga-rembang", images: " ", price: " " },{ label: "Papan Bunga Riau", category: "Collection", url: "/collections/papan-bunga-riau", images: " ", price: " " },{ label: "Papan Bunga Salatiga", category: "Collection", url: "/collections/papan-bunga-salatiga", images: " ", price: " " }
5683,{ label: "Papan Bunga Samarinda", category: "Collection", url: "/collections/papan-bunga-samarinda", images: " ", price: " " },{ label: "Papan Bunga Selamat Bandung", category: "Collection", url: "/collections/papan-bunga-selamat-bandung", images: " ", price: " " },{ label: "Papan Bunga Selamat Medan", category: "Collection", url: "/collections/papan-bunga-selamat-medan", images: " ", price: " " },{ label: "Papan Bunga Semarang", category: "Collection", url: "/collections/papan-bunga-semarang", images: " ", price: " " },{ label: "Papan Bunga Serang", category: "Collection", url: "/collections/papan-bunga-serang", images: " ", price: " " },{ label: "Papan Bunga Sibolga", category: "Collection", url: "/collections/papan-bunga-sibolga", images: " ", price: " " },{ label: "Papan Bunga Sidoarjo", category: "Collection", url: "/collections/papan-bunga-sidoarjo", images: " ", price: " " },{ label: "Papan Bunga Singkawang", category: "Collection", url: "/collections/papan-bunga-singkawang", images: " ", price: " " },{ label: "Papan Bunga Solo", category: "Collection", url: "/collections/papan-bunga-solo", images: " ", price: " " },{ label: "Papan Bunga Sorong", category: "Collection", url: "/collections/papan-bunga-sorong", images: " ", price: " " },{ label: "Papan Bunga Sragen", category: "Collection", url: "/collections/papan-bunga-sragen", images: " ", price: " " },{ label: "Papan Bunga Standard", category: "Collection", url: "/collections/papan-bunga-standard", images: " ", price: " " },{ label: "Papan Bunga Subang", category: "Collection", url: "/collections/papan-bunga-subang", images: " ", price: " " },{ label: "Papan Bunga Sukabumi", category: "Collection", url: "/collections/papan-bunga-sukabumi", images: " ", price: " " },{ label: "Papan Bunga Sumbawa", category: "Collection", url: "/collections/papan-bunga-sumbawa", images: " ", price: " " },{ label: "Papan Bunga Surabaya", category: "Collection", url: "/collections/papan-bunga-surabaya", images: " ", price: " " },{ label: "Papan Bunga Surakarta", category: "Collection", url: "/collections/papan-bunga-surakarta", images: " ", price: " " },{ label: "Papan Bunga Tangerang", category: "Collection", url: "/collections/papan-bunga-tangerang", images: " ", price: " " },{ label: "Papan Bunga Tasikmalaya", category: "Collection", url: "/collections/papan-bunga-tasikmalaya", images: " ", price: " " },{ label: "Papan Bunga Tegal", category: "Collection", url: "/collections/papan-bunga-tegal", images: " ", price: " " },{ label: "Papan Bunga Temanggung", category: "Collection", url: "/collections/papan-bunga-temanggung", images: " ", price: " " },{ label: "Papan Bunga Ternate", category: "Collection", url: "/collections/papan-bunga-ternate", images: " ", price: " " },{ label: "Papan Bunga Tolitoli", category: "Collection", url: "/collections/papan-bunga-tolitoli", images: " ", price: " " },{ label: "Papan Bunga Toraja", category: "Collection", url: "/collections/papan-bunga-toraja", images: " ", price: " " },{ label: "Papan Bunga Tuban", category: "Collection", url: "/collections/papan-bunga-tuban", images: " ", price: " " },{ label: "Papan Bunga Tulungagung", category: "Collection", url: "/collections/papan-bunga-tulungagung", images: " ", price: " " },{ label: "Papan Bunga Wakatobi", category: "Collection", url: "/collections/papan-bunga-wakatobi", images: " ", price: " " },{ label: "Papan Bunga Wedding", category: "Collection", url: "/collections/papan-bunga-ucapan-pernikahan", images: " ", price: " " },{ label: "Papan Bunga Wiyung", category: "Collection", url: "/collections/papan-bunga-wiyung", images: " ", price: " " },{ label: "Papan Bunga Wonogiri", category: "Collection", url: "/collections/papan-bunga-wonogiri", images: " ", price: " " },{ label: "Papan Bunga Wonokromo", category: "Collection", url: "/collections/papan-bunga-wonokromo", images: " ", price: " " },{ label: "Papan Bunga Wonosobo", category: "Collection", url: "/collections/papan-bunga-wonosobo", images: " ", price: " " },{ label: "Papan Bunga Yogyakarta", category: "Collection", url: "/collections/papan-bunga-yogyakarta", images: " ", price: " " }
5683,{ label: "Paper Flower Board", category: "Collection", url: "/collections/papan-bunga-kertas", images: " ", price: " " },{ label: "Paper Flower Board Bali", category: "Collection", url: "/collections/papan-bunga-kertas-bali", images: " ", price: " " },{ label: "Paper Flower Board Gresik", category: "Collection", url: "/collections/papan-bunga-kertas-gresik", images: " ", price: " " },{ label: "Paper Flower Board Sidoarjo", category: "Collection", url: "/collections/papan-bunga-kertas-sidoarjo", images: " ", price: " " },{ label: "Paper Flower Board Surabaya", category: "Collection", url: "/collections/papan-bunga-kertas-surabaya", images: " ", price: " " },{ label: "Paper Flower Board Yogyakarta", category: "Collection", url: "/collections/papan-bunga-kertas-yogyakarta", images: " ", price: " " },{ label: "Parcel", category: "Collection", url: "/collections/parcel", images: " ", price: " " },{ label: "Parcel Buah", category: "Collection", url: "/collections/parcel-buah-segar", images: " ", price: " " },{ label: "Parcel Buah Bandung", category: "Collection", url: "/collections/parcel-buah-bandung", images: " ", price: " " },{ label: "Parcel Buah Semarang", category: "Collection", url: "/collections/parcel-buah-semarang", images: " ", price: " " },{ label: "Parcel Buah Sidoarjo", category: "Collection", url: "/collections/parcel-buah-sidoarjo", images: " ", price: " " },{ label: "Parcel Buah Surabaya", category: "Collection", url: "/collections/parcel-buah-surabaya", images: " ", price: " " },{ label: "Parcel Imlek 2025", category: "Collection", url: "/collections/parcel-imlek", images: " ", price: " " },{ label: "Parcel Imlek Bandung", category: "Collection", url: "/collections/parcel-imlek-bandung", images: " ", price: " " },{ label: "Parcel Imlek Nusantara", category: "Collection", url: "/collections/parcel-imlek-nusantara", images: " ", price: " " },{ label: "Parcel Lebaran Bandung", category: "Collection", url: "/collections/parcel-lebaran-bandung", images: " ", price: " " },{ label: "Parcel Lebaran Nusantara", category: "Collection", url: "/collections/parcel-lebaran-indonesia", images: " ", price: " " },{ label: "Parcel Lebaran Surabaya", category: "Collection", url: "/collections/parcel-lebaran-surabaya", images: " ", price: " " },{ label: "Parcel Makanan", category: "Collection", url: "/collections/parcel-makanan", images: " ", price: " " },{ label: "Parcel Natal & Tahun Baru 2026", category: "Collection", url: "/collections/hampers-natal", images: " ", price: " " },{ label: "Parcel Natal & Tahun Baru Bandung", category: "Collection", url: "/collections/parcel-natal-bandung", images: " ", price: " " },{ label: "Parcel Newborn Nusantara", category: "Collection", url: "/collections/parcel-newborn-nusantara", images: " ", price: " " },{ label: "Parcel Tahun Baru", category: "Collection", url: "/collections/new-year-tahun-baru", images: " ", price: " " },{ label: "Party Supplies", category: "Collection", url: "/collections/party-supplies", images: " ", price: " " },{ label: "Partysaurus", category: "Collection", url: "/collections/partysaurus", images: " ", price: " " },{ label: "Pasar Bunga Splendid Malang", category: "Collection", url: "/collections/pasar-bunga-splendid-malang", images: " ", price: " " },{ label: "Passionate Red Valentine", category: "Collection", url: "/collections/red-valentine", images: " ", price: " " },{ label: "Pendant", category: "Collection", url: "/collections/liontin", images: " ", price: " " },{ label: "Personalized Fashion", category: "Collection", url: "/collections/fashion", images: " ", price: " " },{ label: "Personalized Gift", category: "Collection", url: "/collections/personalized-gift", images: " ", price: " " },{ label: "Personalized Gift Pria", category: "Collection", url: "/collections/personalized-gift-pria", images: " ", price: " " },{ label: "Personalized Gift Wanita", category: "Collection", url: "/collections/personalized-gift-wanita", images: " ", price: " " },{ label: "Personalized Gifts", category: "Collection", url: "/collections/personalized-gifts", images: " ", price: " " },{ label: "Pesca Ice Cream Cakes", category: "Collection", url: "/collections/pesca", images: " ", price: " " },{ label: "Phone Case", category: "Collection", url: "/collections/phone-case", images: " ", price: " " },{ label: "Photobook", category: "Collection", url: "/collections/photobook", images: " ", price: " " },{ label: "Pisces âï¸ 19Feb - 20March", category: "Collection", url: "/collections/kado-untuk-zodiak-pisces", images: " ", price: " " },{ label: "Pohon Natal", category: "Collection", url: "/collections/pohon-natal", images: " ", price: " " },{ label: "Premium Hampers", category: "Collection", url: "/collections/parcel-premium", images: " ", price: " " },{ label: "Premium Newborn Hampers Collection", category: "Collection", url: "/collections/premium-newborn-hampers-collection", images: " ", price: " " },{ label: "Printing Cake", category: "Collection", url: "/collections/printing-cake", images: " ", price: " " },{ label: "Prom", category: "Collection", url: "/collections/prom", images: " ", price: " " },{ label: "Promo Merdeka", category: "Collection", url: "/collections/merdeka", images: " ", price: " " },{ label: "Rangkaian Bunga", category: "Collection", url: "/collections/rangkaian-bunga", images: " ", price: " " },{ label: "Rangkaian Bunga Dekorasi", category: "Collection", url: "/collections/rangkaian-bunga-dekorasi", images: " ", price: " " },{ label: "Rangkaian Bunga Ulang Tahun", category: "Collection", url: "/collections/rangkaian-bunga-ulang-tahun", images: " ", price: " " },{ label: "Romantic & Sweets", category: "Collection", url: "/collections/romantic-sweets", images: " ", price: " " },{ label: "Romantic Package", category: "Collection", url: "/collections/romantic-package", images: " ", price: " " },{ label: "Rose Beam", category: "Collection", url: "/collections/rose-beam", images: " ", price: " " },{ label: "Rose Box", category: "Collection", url: "/collections/rose-box", images: " ", price: " " },{ label: "Roses", category: "Collection", url: "/collections/bunga-mawar", images: " ", price: " " },{ label: "Rp 500.000 - Rp 800.000", category: "Collection", url: "/collections/rp-500-000-rp-800-000", images: " ", price: " " },{ label: "Rp 800.000 - Rp 1.000.000", category: "Collection", url: "/collections/rp-800-000-rp-1-000-000", images: " ", price: " " },{ label: "Rustic & Monochrome Ramadan Hampers", category: "Collection", url: "/collections/rustic-monochrome-ramadanhampers", images: " ", price: " " },{ label: "Rustic Bloom", category: "Collection", url: "/collections/dried-flowers", images: " ", price: " " },{ label: "Rustic Style Flowers", category: "Collection", url: "/collections/rustic-style-flowers", images: " ", price: " " },{ label: "Sagittarius â 22Nov - 21Des", category: "Collection", url: "/collections/kado-untuk-zodiak-sagittarius", images: " ", price: " " },{ label: "Sameday Delivery", category: "Collection", url: "/collections/sameday", images: " ", price: " " },{ label: "Savoury Dish", category: "Collection", url: "/collections/savoury-dish", images: " ", price: " " },{ label: "Saychiz", category: "Collection", url: "/collections/saychiz", images: " ", price: " " },{ label: "Scented Candles", category: "Collection", url: "/collections/scented-candles", images: " ", price: " " },{ label: "Scorpio âï¸ 24Oct - 21Nov", category: "Collection", url: "/collections/kado-untuk-zodiak-scorpio", images: " ", price: " " },{ label: "Self Pick-Up", category: "Collection", url: "/collections/self-pick-up", images: " ", price: " " },{ label: "Semua Produk", category: "Collection", url: "/collections/all", images: " ", price: " " },{ label: "Serenitea", category: "Collection", url: "/collections/serenitea", images: " ", price: " " },{ label: "Share Outerbloom Moment", category: "Collection", url: "/collections/share-moment", images: " ", price: " " },{ label: "Share your Happiness", category: "Collection", url: "/collections/share-happiness", images: " ", price: " " },{ label: "Signature Cake", category: "Collection", url: "/collections/signature-cake", images: " ", price: " " },{ label: "Signature Chinese New Year Hampers", category: "Collection", url: "/collections/signature-chinese-new-year-hampers", images: " ", price: " " },{ label: "Signature Christmas & New Year Hampers", category: "Collection", url: "/collections/signature-christmas-hampers", images: " ", price: " " },{ label: "Signature Hampers", category: "Collection", url: "/collections/signature-hampers", images: " ", price: " " },{ label: "Signature Hampers Luar Jadetabek", category: "Collection", url: "/collections/signature-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Signature Hampers Sameday", category: "Collection", url: "/collections/signature-hampers-sameday", images: " ", price: " " },{ label: "Signature Ramadan Hampers", category: "Collection", url: "/collections/signature-ramadan-hampers", images: " ", price: " " },{ label: "Slice Cake", category: "Collection", url: "/collections/slice-cake", images: " ", price: " " },{ label: "Snack Box", category: "Collection", url: "/collections/snack-box", images: " ", price: " " },{ label: "Sol et Terre", category: "Collection", url: "/collections/sol-et-terre", images: " ", price: " " },{ label: "Sorbet", category: "Collection", url: "/collections/sorbet", images: " ", price: " " },{ label: "Special Day", category: "Collection", url: "/collections/special-day", images: " ", price: " " },{ label: "Special Edition", category: "Collection", url: "/collections/special-edition", images: " ", price: " " },{ label: "Special For Her", category: "Collection", url: "/collections/special-for-her", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari", category: "Collection", url: "/collections/standing-flower", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Bali", category: "Collection", url: "/collections/standing-flower-bali", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Bandung", category: "Collection", url: "/collections/standing-flower-bandung", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Congratulations", category: "Collection", url: "/collections/standing-flower-congratulations", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Demak", category: "Collection", url: "/collections/standing-flower-demak", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Jepara", category: "Collection", url: "/collections/standing-flower-jepara", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Semarang", category: "Collection", url: "/collections/standing-flower-semarang", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Sidoarjo", category: "Collection", url: "/collections/standing-flower-sidoarjo", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Surabaya", category: "Collection", url: "/collections/standing-flower-surabaya", images: " ", price: " " },{ label: "Primatoto memberikan akses istimewa situs toto 4D terpercaya tahun 2026. Dapatkan bocoran prediksi angka toto macau paling jitu, lengkap, dan akurat jaminan taruhan aman serta peluang jackpot tiap hari Yogyakarta", category: "Collection", url: "/collections/standing-flower-yogyakarta", images: " ", price: " " },{ label: "Standing Giant Flower", category: "Collection", url: "/collections/standing-giant-flower", images: " ", price: " " },{ label: "Stationery", category: "Collection", url: "/collections/stationery", images: " ", price: " " },{ label: "Steekwerk", category: "Collection", url: "/collections/steekwerk", images: " ", price: " " },{ label: "Stylish Hampers", category: "Collection", url: "/collections/stylish-hampers", images: " ", price: " " },{ label: "Stylish Hampers Luar Jadetabek", category: "Collection", url: "/collections/stylish-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Succulent", category: "Collection", url: "/collections/succulent", images: " ", price: " " },{ label: "Sunflower", category: "Collection", url: "/collections/bunga-matahari", images: " ", price: " " },{ label: "Sweet & Savoury Hampers", category: "Collection", url: "/collections/sweet-savoury-hampers", images: " ", price: " " },{ label: "Sweet Gracie", category: "Collection", url: "/collections/sweet-gracie", images: " ", price: " " },{ label: "Sweet Pastel Love", category: "Collection", url: "/collections/pastel-love", images: " ", price: " " },{ label: "Sweet Pastel Love Nusantara", category: "Collection", url: "/collections/sweet-pastel-love-nusantara", images: " ", price: " " },{ label: "Sweet Treats", category: "Collection", url: "/collections/sweet-treats", images: " ", price: " " },{ label: "Sweetooth", category: "Collection", url: "/collections/sweetooth", images: " ", price: " " },{ label: "Taurus âï¸ 20April - 20May", category: "Collection", url: "/collections/kado-untuk-zodiak-taurus", images: " ", price: " " },{ label: "Teddy Bear", category: "Collection", url: "/collections/boneka-teddy-bear", images: " ", price: " " },{ label: "Teh", category: "Collection", url: "/collections/teh", images: " ", price: " " },{ label: "Test Error", category: "Collection", url: "/collections/test-error", images: " ", price: " " },{ label: "Testing", category: "Collection", url: "/collections/testing", images: " ", price: " " },{ label: "Thank You", category: "Collection", url: "/collections/rangkaian-bunga-ucapan-terima-kasih", images: " ", price: " " },{ label: "The Classic Astoria", category: "Collection", url: "/collections/astoria", images: " ", price: " " },{ label: "The Classic Enchanted Dome", category: "Collection", url: "/collections/enchanted-dome", images: " ", price: " " },{ label: "The Enchanted Love Pirouette Special Edition", category: "Collection", url: "/collections/the-enchanted-love-pirouette-special-edition", images: " ", price: " " },{ label: "The F Thing", category: "Collection", url: "/collections/the-f-thing", images: " ", price: " " },{ label: "The First", category: "Collection", url: "/collections/the-first", images: " ", price: " " },{ label: "The Novo Astoria", category: "Collection", url: "/collections/the-novo-astoria", images: " ", price: " " },{ label: "The Novo Enchanted Dome", category: "Collection", url: "/collections/the-novo-enchanted-dome", images: " ", price: " " },{ label: "The Novo Enchanted Dome Special Edition", category: "Collection", url: "/collections/the-novo-enchanted-dome-special-edition", images: " ", price: " " },{ label: "The Palace", category: "Collection", url: "/collections/the-palace", images: " ", price: " " },{ label: "Ties", category: "Collection", url: "/collections/dasi", images: " ", price: " " },{ label: "Tisan
5683e", category: "Collection", url: "/collections/tisane", images: " ", price: " " },{ label: "Toko Bunga Aceh", category: "Collection", url: "/collections/toko-bunga-aceh", images: " ", price: " " },{ label: "Toko Bunga Ambon", category: "Collection", url: "/collections/toko-bunga-ambon", images: " ", price: " " },{ label: "Toko Bunga Atambua", category: "Collection", url: "/collections/toko-bunga-atambua", images: " ", price: " " },{ label: "Toko Bunga Bali", category: "Collection", url: "/collections/toko-bunga-bali", images: " ", price: " " },{ label: "Toko Bunga Balikpapan", category: "Collection", url: "/collections/toko-bunga-balikpapan", images: " ", price: " " },{ label: "Toko Bunga Bandar Lampung", category: "Collection", url: "/collections/toko-bunga-bandar-lampung", images: " ", price: " " },{ label: "Toko Bunga Bandung", category: "Collection", url: "/collections/toko-bunga-bandung", images: " ", price: " " },{ label: "Toko Bunga Bandung Barat", category: "Collection", url: "/collections/toko-bunga-bandung-barat", images: " ", price: " " },{ label: "Toko Bunga Banjarmasin", category: "Collection", url: "/collections/toko-bunga-banjarmasin", images: " ", price: " " },{ label: "Toko Bunga Banten", category: "Collection", url: "/collections/toko-bunga-banten", images: " ", price: " " },{ label: "Toko Bunga Banyumas", category: "Collection", url: "/collections/toko-bunga-banyumas", images: " ", price: " " },{ label: "Toko Bunga Banyuwangi", category: "Collection", url: "/collections/toko-bunga-banyuwangi", images: " ", price: " " },{ label: "Toko Bunga Batam", category: "Collection", url: "/collections/toko-bunga-batam", images: " ", price: " " },{ label: "Toko Bunga Baubau", category: "Collection", url: "/collections/toko-bunga-baubau", images: " ", price: " " },{ label: "Toko Bunga Bekasi", category: "Collection", url: "/collections/toko-bunga-bekasi", images: " ", price: " " },{ label: "Toko Bunga Bengkalis", category: "Collection", url: "/collections/toko-bunga-bengkalis", images: " ", price: " " },{ label: "Toko Bunga Bengkayang", category: "Collection", url: "/collections/toko-bunga-bengkayang", images: " ", price: " " },{ label: "Toko Bunga Binjai", category: "Collection", url: "/collections/toko-bunga-binjai", images: " ", price: " " },{ label: "Toko Bunga Bintaro", category: "Collection", url: "/collections/toko-bunga-bintaro", images: " ", price: " " },{ label: "Toko Bunga Blitar", category: "Collection", url: "/collections/toko-bunga-blitar", images: " ", price: " " },{ label: "Toko Bunga Blora", category: "Collection", url: "/collections/toko-bunga-blora", images: " ", price: " " },{ label: "Toko Bunga Bogor", category: "Collection", url: "/collections/toko-bunga-bogor", images: " ", price: " " },{ label: "Toko Bunga Bojonegoro", category: "Collection", url: "/collections/toko-bunga-bojonegoro", images: " ", price: " " },{ label: "Toko Bunga Boyolali", category: "Collection", url: "/collections/toko-bunga-boyolali", images: " ", price: " " },{ label: "Toko Bunga Brebes", category: "Collection", url: "/collections/toko-bunga-brebes", images: " ", price: " " },{ label: "Toko Bunga Bukittinggi", category: "Collection", url: "/collections/toko-bunga-bukittinggi", images: " ", price: " " },{ label: "Toko Bunga Buleleng", category: "Collection", url: "/collections/toko-bunga-buleleng", images: " ", price: " " },{ label: "Toko Bunga Cakung", category: "Collection", url: "/collections/toko-bunga-cakung", images: " ", price: " " },{ label: "Toko Bunga Cawang", category: "Collection", url: "/collections/toko-bunga-cawang", images: " ", price: " " },{ label: "Toko Bunga Cempaka Putih", category: "Collection", url: "/collections/toko-bunga-cempaka-putih", images: " ", price: " " },{ label: "Toko Bunga Cengkareng", category: "Collection", url: "/collections/toko-bunga-cengkareng", images: " ", price: " " },{ label: "Toko Bunga Ciamis", category: "Collection", url: "/collections/toko-bunga-ciamis", images: " ", price: " " },{ label: "Toko Bunga Cianjur", category: "Collection", url: "/collections/toko-bunga-cianjur", images: " ", price: " " },{ label: "Toko Bunga Cibinong", category: "Collection", url: "/collections/toko-bunga-cibinong", images: " ", price: " " },{ label: "Toko Bunga Cibubur", category: "Collection", url: "/collections/toko-bunga-cibubur", images: " ", price: " " },{ label: "Toko Bunga Cijantung", category: "Collection", url: "/collections/toko-bunga-cijantung", images: " ", price: " " },{ label: "Toko Bunga Cikarang", category: "Collection", url: "/collections/toko-bunga-cikarang", images: " ", price: " " },{ label: "Toko Bunga Cikini", category: "Collection", url: "/collections/toko-bunga-cikini", images: " ", price: " " },{ label: "Toko Bunga Cilacap", category: "Collection", url: "/collections/toko-bunga-cilacap", images: " ", price: " " },{ label: "Toko Bunga Cilandak", category: "Collection", url: "/collections/toko-bunga-cilandak", images: " ", price: " " },{ label: "Toko Bunga Cileunyi", category: "Collection", url: "/collections/toko-bunga-cileunyi", images: " ", price: " " },{ label: "Toko Bunga Ciracas", category: "Collection", url: "/collections/toko-bunga-ciracas", images: " ", price: " " },{ label: "Toko Bunga Cirebon", category: "Collection", url: "/collections/toko-bunga-cirebon", images: " ", price: " " }
5683,{ label: "Toko Bunga Ciwidey", category: "Collection", url: "/collections/toko-bunga-ciwidey", images: " ", price: " " },{ label: "Toko Bunga Danau Toba", category: "Collection", url: "/collections/toko-bunga-danau-toba", images: " ", price: " " },{ label: "Toko Bunga Demak", category: "Collection", url: "/collections/toko-bunga-demak", images: " ", price: " " },{ label: "Toko Bunga Denpasar", category: "Collection", url: "/collections/toko-bunga-denpasar", images: " ", price: " " },{ label: "Toko Bunga Depok", category: "Collection", url: "/collections/toko-bunga-depok", images: " ", price: " " },{ label: "Toko Bunga Duren Sawit", category: "Collection", url: "/collections/toko-bunga-duren-sawit", images: " ", price: " " },{ label: "Toko Bunga Garut", category: "Collection", url: "/collections/toko-bunga-garut", images: " ", price: " " },{ label: "Toko Bunga Gianyar", category: "Collection", url: "/collections/toko-bunga-gianyar", images: " ", price: " " },{ label: "Toko Bunga Gowa", category: "Collection", url: "/collections/toko-bunga-gowa", images: " ", price: " " },{ label: "Toko Bunga Gresik", category: "Collection", url: "/collections/toko-bunga-gresik", images: " ", price: " " },{ label: "Toko Bunga Grobogan", category: "Collection", url: "/collections/toko-bunga-grobogan", images: " ", price: " " },{ label: "Toko Bunga Grogol", category: "Collection", url: "/collections/toko-bunga-grogol", images: " ", price: " " },{ label: "Toko Bunga Gunungkidul", category: "Collection", url: "/collections/toko-bunga-gunungkidul", images: " ", price: " " },{ label: "Toko Bunga Indramayu", category: "Collection", url: "/collections/toko-bunga-indramayu", images: " ", price: " " },{ label: "Toko Bunga Jakarta", category: "Collection", url: "/collections/toko-bunga-jakarta", images: " ", price: " " },{ label: "Toko Bunga Jakarta Barat", category: "Collection", url: "/collections/toko-bunga-jakarta-barat", images: " ", price: " " },{ label: "Toko Bunga Jakarta Pusat", category: "Collection", url: "/collections/toko-bunga-jakarta-pusat", images: " ", price: " " },{ label: "Toko Bunga Jakarta Selatan", category: "Collection", url: "/collections/toko-bunga-jakarta-selatan", images: " ", price: " " },{ label: "Toko Bunga Jakarta Timur", category: "Collection", url: "/collections/toko-bunga-jakarta-timur", images: " ", price: " " },{ label: "Toko Bunga Jakarta Utara", category: "Collection", url: "/collections/toko-bunga-jakarta-utara", images: " ", price: " " },{ label: "Toko Bunga Jambi", category: "Collection", url: "/collections/toko-bunga-jambi", images: " ", price: " " },{ label: "Toko Bunga Jatinegara", category: "Collection", url: "/collections/toko-bunga-jatinegara", images: " ", price: " " },{ label: "Toko Bunga Jawa & Bali", category: "Collection", url: "/collections/toko-bunga-jawa-bali", images: " ", price: " " },{ label: "Toko Bunga Jayapura", category: "Collection", url: "/collections/toko-bunga-jayapura", images: " ", price: " " },{ label: "Toko Bunga Jelambar - Florist Onine 24 Jam", category: "Collection", url: "/collections/toko-bunga-jelambar", images: " ", price: " " },{ label: "Toko Bunga Jember", category: "Collection", url: "/collections/toko-bunga-jember", images: " ", price: " " },{ label: "Toko Bunga Jembrana", category: "Collection", url: "/collections/toko-bunga-jembrana", images: " ", price: " " },{ label: "Toko Bunga Jepara", category: "Collection", url: "/collections/toko-bunga-jepara", images: " ", price: " " },{ label: "Toko Bunga Joglo", category: "Collection", url: "/collections/toko-bunga-joglo", images: " ", price: " " },{ label: "Toko Bunga Jombang", category: "Collection", url: "/collections/toko-bunga-jombang", images: " ", price: " " },{ label: "Toko Bunga Kalibata", category: "Collection", url: "/collections/toko-bunga-kalibata", images: " ", price: " " },{ label: "Toko Bunga Kalimantan", category: "Collection", url: "/collections/toko-bunga-kalimantan", images: " ", price: " " },{ label: "Toko Bunga Kalisari Semarang", category: "Collection", url: "/collections/toko-bunga-kalisari-semarang", images: " ", price: " " },{ label: "Toko Bunga Kampung Baru", category: "Collection", url: "/collections/toko-bunga-kampung-baru", images: " ", price: " " },{ label: "Toko Bunga Kapuas", category: "Collection", url: "/collections/toko-bunga-kapuas", images: " ", price: " " },{ label: "Toko Bunga Karanganyar", category: "Collection", url: "/collections/toko-bunga-karanganyar", images: " ", price: " " },{ label: "Toko Bunga Karangasem", category: "Collection", url: "/collections/toko-bunga-karangasem", images: " ", price: " " },{ label: "Toko Bunga Karawang", category: "Collection", url: "/collections/toko-bunga-karawang", images: " ", price: " " },{ label: "Toko Bunga Kartosuro", category: "Collection", url: "/collections/toko-bunga-kartosuro", images: " ", price: " " },{ label: "Toko Bunga Kayoon Surabaya", category: "Collection", url: "/collections/toko-bunga-kayoon-surabaya", images: " ", price: " " },{ label: "Toko Bunga Kebayoran Baru", category: "Collection", url: "/collections/toko-bunga-kebayoran-baru", images: " ", price: " " },{ label: "Toko Bunga Kebon Jeruk", category: "Collection", url: "/collections/toko-bunga-kebon-jeruk", images: " ", price: " " },{ label: "Toko Bunga Kebumen", category: "Collection", url: "/collections/toko-bunga-kebumen", images: " ", price: " " },{ label: "Toko Bunga Kediri", category: "Collection", url: "/collections/toko-bunga-kediri", images: " ", price: " " },{ label: "Toko Bunga Kelapa Gading", category: "Collection", url: "/collections/toko-bunga-kelapa-gading", images: " ", price: " " },{ label: "Toko Bunga Kemayoran", category: "Collection", url: "/collections/toko-bunga-kemayoran", images: " ", price: " " },{ label: "Toko Bunga Kendal", category: "Collection", url: "/collections/toko-bunga-ken
5683dal", images: " ", price: " " },{ label: "Toko Bunga Kendari", category: "Collection", url: "/collections/toko-bunga-kendari", images: " ", price: " " },{ label: "Toko Bunga Ketapang", category: "Collection", url: "/collections/toko-bunga-ketapang", images: " ", price: " " },{ label: "Toko Bunga Klaten", category: "Collection", url: "/collections/toko-bunga-klaten", images: " ", price: " " },{ label: "Toko Bunga Klender", category: "Collection", url: "/collections/toko-bunga-klender", images: " ", price: " " },{ label: "Toko Bunga Kota Baru Yogyakarta", category: "Collection", url: "/collections/toko-bunga-kota-baru-yogyakarta", images: " ", price: " " },{ label: "Toko Bunga Kota Batu", category: "Collection", url: "/collections/toko-bunga-kota-batu", images: " ", price: " " },{ label: "Toko Bunga Kramat Jati", category: "Collection", url: "/collections/toko-bunga-kramat-jati", images: " ", price: " " },{ label: "Toko Bunga Kudus", category: "Collection", url: "/collections/toko-bunga-kudus", images: " ", price: " " },{ label: "Toko Bunga Kupang", category: "Collection", url: "/collections/toko-bunga-kupang", images: " ", price: " " },{ label: "Toko Bunga Lamongan", category: "Collection", url: "/collections/toko-bunga-lamongan", images: " ", price: " " },{ label: "Toko Bunga Langkat", category: "Collection", url: "/collections/toko-bunga-langkat", images: " ", price: " " },{ label: "Toko Bunga Lebak Bulus", category: "Collection", url: "/collections/toko-bunga-lebak-bulus", images: " ", price: " " },{ label: "Toko Bunga Lembang", category: "Collection", url: "/collections/toko-bunga-lembang", images: " ", price: " " },{ label: "Toko Bunga Lenteng Agung", category: "Collection", url: "/collections/toko-bunga-lenteng-agung", images: " ", price: " " },{ label: "Toko Bunga Lombok", category: "Collection", url: "/collections/toko-bunga-lombok", images: " ", price: " " },{ label: "Toko Bunga Lubuk Pakam", category: "Collection", url: "/collections/toko-bunga-lubuk-pakam", images: " ", price: " " },{ label: "Toko Bunga Lumajang", category: "Collection", url: "/collections/toko-bunga-lumajang", images: " ", price: " " },{ label: "Toko Bunga Madiun", category: "Collection", url: "/collections/toko-bunga-madiun", images: " ", price: " " },{ label: "Toko Bunga Magelang", category: "Collection", url: "/collections/toko-bunga-magelang", images: " ", price: " " },{ label: "Toko Bunga Majalengka", category: "Collection", url: "/collections/toko-bunga-majalengka", images: " ", price: " " },{ label: "Toko Bunga Makassar", category: "Collection", url: "/collections/toko-bunga-makassar", images: " ", price: " " },{ label: "Toko Bunga Malang", category: "Collection", url: "/collections/toko-bunga-malang", images: " ", price: " " },{ label: "Toko Bunga Manado", category: "Collection", url: "/collections/toko-bunga-manado", images: " ", price: " " },{ label: "Toko Bunga Mangga Besar", category: "Collection", url: "/collections/toko-bunga-mangga-besar", images: " ", price: " " },{ label: "Toko Bunga Manokwari", category: "Collection", url: "/collections/toko-bunga-manokwari", images: " ", price: " " },{ label: "Toko Bunga Maros", category: "Collection", url: "/collections/toko-bunga-maros", images: " ", price: " " },{ label: "Toko Bunga Mataram", category: "Collection", url: "/collections/toko-bunga-mataram", images: " ", price: " " },{ label: "Toko Bunga Medan", category: "Collection", url: "/collections/toko-bunga-medan", images: " ", price: " " },{ label: "Toko Bunga Mojokerto", category: "Collection", url: "/collections/toko-bunga-mojokerto", images: " ", price: " " },{ label: "Toko Bunga Nganjuk", category: "Collection", url: "/collections/toko-bunga-nganjuk", images: " ", price: " " },{ label: "Toko Bunga Ngawi", category: "Collection", url: "/collections/toko-bunga-ngawi", images: " ", price: " " },{ label: "Toko Bunga Nias", category: "Collection", url: "/collections/toko-bunga-nias", images: " ", price: " " },{ label: "Toko Bunga Nusa Tenggara", category: "Collection", url: "/collections/toko-bunga-nusa-tenggara", images: " ", price: " " },{ label: "Toko Bunga Padang", category: "Collection", url: "/collections/toko-bunga-padang", images: " ", price: " " },{ label: "Toko Bunga Palembang", category: "Collection", url: "/collections/toko-bunga-palembang", images: " ", price: " " },{ label: "Toko Bunga Palu", category: "Collection", url: "/collections/toko-bunga-palu", images: " ", price: " " },{ label: "Toko Bunga Pangkal Pinang", category: "Collection", url: "/collections/toko-bunga-pangkal-pinang", images: " ", price: " " },{ label: "Toko Bunga Papua", category: "Collection", url: "/collections/toko-bunga-papua", images: " ", price: " " },{ label: "Toko Bunga Parepare", category: "Collection", url: "/collections/toko-bunga-parepare", images: " ", price: " " },{ label: "Toko Bunga Pasar Baru", category: "Collection", url: "/collections/toko-bunga-pasar-baru", images: " ", price: " " },{ label: "Toko Bunga Pasar Minggu", category: "Collection", url: "/collections/toko-bunga-pasar-minggu", images: " ", price: " " },{ label: "Toko Bunga Pasar Rebo", category: "Collection", url: "/collections/toko-bunga-pasar-rebo", images: " ", price: " " },{ label: "Toko Bunga Pasuruan", category: "Collection", url: "/collections/toko-bunga-pasuruan", images: " ", price: " " },{ label: "Toko Bunga Pati", category: "Collection", url: "/collections/toko-bunga-pati", images: " ", price: " " },{ label: "Toko Bunga Pekalongan", category: "Collection", url: "/collections/toko-bunga-pekalongan", images: " ", price: " " },{ label: "Toko Bunga Pekanbaru", category: "Collection", url: "/collections/toko-bunga-pekanbaru", images: " ", price: " " },{ label: "Toko Bunga Pemalang", category: "Collection", url: "/collections/toko-bunga-pemalang", images: " ", price: " " }, 5684 { label: "grand salutation jabodetabek", category: "Produk", url: "/products/grand-salutation", images: "//outerbloom.com/cdn/shop/files/JKTCON1005_Grand-Salutation-Jabodetabek-WM_thumb.jpg?v=1703241523", price: "Rp 435.000" },{ label: "consolantibus jabodetabek", category: "Produk", url: "/products/consolantibus", images: "//outerbloom.com/cdn/shop/files/JKTDUK1011_Consolantibus-Jabodetabek-WM_thumb.jpg?v=1703239823", price: "Rp 435.000" },{ label: "classic midnight hand bouquet fiery red", category: "Produk", url: "/products/the-classic-midnight-hand-bouquet-fiery-red", images: "//outerbloom.com/cdn/shop/files/OBVBUN1422_Classic-Midnight-Hand-Bouquet---Fiery-Red-large_thumb.jpg?v=1757302521", price: "Rp 385.000" },{ label: "enchanted dome passionate red", category: "Produk", url: "/products/enchanted-dome-passionate-red", images: "//outerbloom.com/cdn/shop/files/Enchanted-dome-red-new-box_3_2_26c081bf-f2a5-42b4-9ce4-3c0304c498e5_thumb.jpg?v=1712639476", price: "Rp 1.435.000" },{ label: "endearing ruby", category: "Produk", url: "/products/endearing-ruby", images: "//outerbloom.com/cdn/shop/products/OUTSTF1003_Endearing-Ruby_thumb.jpg?v=1631296611", price: "Rp 585.000" },{ label: "gentle soul jabodetabek", category: "Produk", url: "/products/gentle-soul-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTDUK1030_Gentle-Soul-Jabodetabek-WM_thumb.jpg?v=1703239894", price: "Rp 435.000" },{ label: "belleza jabodetabek", category: "Produk", url: "/products/belleza", images: "//outerbloom.com/cdn/shop/files/Belleza-Jabodetabek-LED_aecb756a-0737-45cc-8bfb-008515ca0a37_thumb.gif?v=1759229680", price: "Rp 435.000" }
5684,{ label: "majestic pink roses with baby breath bouquet", category: "Produk", url: "/products/majestic-pink-roses-with-baby-breath-bouquet", images: "//outerbloom.com/cdn/shop/products/ef4a3be9-c938-4c70-98ac-4873e7da82bf_90820a66-923a-463d-a464-81bcbe6e6644_thumb.jpg?v=1581413440", price: "Rp 485.000" },{ label: "sentiments jabodetabek", category: "Produk", url: "/products/sentiments", images: "//outerbloom.com/cdn/shop/files/Sentiments-Jabodetabek-WM_thumb.jpg?v=1759224099", price: "Rp 485.000" },{ label: "rose poetry bouquet", category: "Produk", url: "/products/rose-poetry-bouquet", images: "//outerbloom.com/cdn/shop/products/Rose-Poetry-Bouquet-20-tangkai_thumb.jpg?v=1675151039", price: "Rp 385.000" },{ label: "genuine feeling", category: "Produk", url: "/products/genuine-feeling", images: "//outerbloom.com/cdn/shop/products/OUTSTF1004Genuine-Feeling_981ade89-af27-433e-81aa-8d76175a0e4d_thumb.jpg?v=1612352389", price: "Rp 585.000" },{ label: "eternal fidelity jabodetabek", category: "Produk", url: "/products/eternal-fidelity-jabodetabek", images: "//outerbloom.com/cdn/shop/products/0b89df45-dcc1-4876-820e-61b2243a1945_964e211d-2972-46c9-8593-976210929089_thumb.jpg?v=1590491458", price: "Rp 435.000" },{ label: "rosabelle hand bouquet", category: "Produk", url: "/products/rosabelle-hand-bouquet", images: "//outerbloom.com/cdn/shop/files/OBVBUN1429_Rosabelle-Hand-Bouquet-Medium_thumb.jpg?v=1756971848", price: "Rp 385.000" },{ label: "dreaming in pink luxury in vase", category: "Produk", url: "/products/dreaming-in-pink-luxury-in-vase", images: "//outerbloom.com/cdn/shop/products/OBVBUN1051_Dreaming-In-Pink-Luxury-In-Vase_3_thumb.jpg?v=1614594504", price: "Rp 735.000" },{ label: "excito jabodetabek", category: "Produk", url: "/products/excito", images: "//outerbloom.com/cdn/shop/files/JKTCON1010_Excito-Jabodetabek-2023_thumb.gif?v=1717494677", price: "Rp 485.000" },{ label: "golden toast jabodetabek", category: "Produk", url: "/products/golden-toast", images: "//outerbloom.com/cdn/shop/products/LED-GoldenToast_thumb.gif?v=1579249585", price: "Rp 485.000" },{ label: "spirit of eminance jabodetabek", category: "Produk", url: "/products/spirit-of-eminance-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTCON1026_Spirit-of-Eminance-Jabodetabek-newest-WM_thumb.jpg?v=1693297526", price: "Rp 485.000" },{ label: "white elysian bloom box", category: "Produk", url: "/products/white-elysian-bloom-box", images: "//outerbloom.com/cdn/shop/files/OBVBUN1704_White-Elysian-Bloom-Box_thumb.jpg?v=1757328247", price: "Rp 685.000" },{ label: "charming forevermore jabodetabek", category: "Produk", url: "/products/charming-forevermore-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTWED1036_Charming-Forevermore-Jabodetabek-WM_thumb.jpg?v=1703239534", price: "Rp 485.000" },{ label: "moment of glory jabodetabek", category: "Produk", url: "/products/moment-of-glory-jabodetabek", images: "//outerbloom.com/cdn/shop/products/JKTCON1051_Moment-of-Glory-Jabodetabek_2_thumb.jpg?v=1596614663", price: "Rp 385.000" },{ label: "sweet romance jabodetabek", category: "Produk", url: "/products/sweet-romance", images: "//outerbloom.com/cdn/shop/products/JKTWED1005_Sweet-Romance-Jabodetabek_thumb.gif?v=1677134791", price: "Rp 635.000" },{ label: "with love bouquet", category: "Produk", url: "/products/with-love-bouquet", images: "//outerbloom.com/cdn/shop/products/c5d6fed6-8ada-4c38-ae0f-36d395aacb19_613f78f0-d52c-443b-9e13-63a151cd8ec5_thumb.jpg?v=1590748429", price: "Rp 535.000" },{ label: "sunflower yellow and with white daisies in vase", category: "Produk", url: "/products/sunflower-yellow-roses-with-white-and-yellow-daisies-in-a-glass-vase", images: "//outerbloom.com/cdn/shop/files/OBVBUN1132_Sunflower-Yellow-And-With-White-Daisies-in-Vase_thumb.jpg?v=1757930628", price: "Rp 435.000" },{ label: "everlasting peace jabodetabek", category: "Produk", url: "/products/everlasting-peace-jabodetabek", images: "//outerbloom.com/cdn/shop/products/JKTDUK1034_Everlasting-Peace-Jabodetabek_2_thumb.jpg?v=1596614613", price: "Rp 385.000" },{ label: "astoria passionate red", category: "Produk", url: "/products/astoria-passionate-red", images: "//outerbloom.com/cdn/shop/products/Astoria-passionate-red_b59b26f6-c39d-46d3-adcb-262c675bb16f_thumb.jpg?v=1633502742", price: "Rp 685.000" },{ label: "classic purple orchid majesty in vase", category: "Produk", url: "/products/classic-purple-orchid-majesty-in-vase", images: "//outerbloom.com/cdn/shop/products/Classic-Purple-Orchid-Majesty-in-Vase---White---4-Tangkai_40a5e337-283f-40f5-911c-5df9b506b9da_thumb.jpg?v=1639981404", price: "Rp 435.000" },{ label: "passion rouge bloom box", category: "Produk", url: "/products/passion-rouge-bloom-box", images: "//outerbloom.com/cdn/shop/files/OBVBUN1725_Passion-Rouge-Bloom-Box_thumb.jpg?v=1756972410", price: "Rp 385.000" },{ label: "classic white orchid majesty in vase", category: "Produk", url: "/products/classic-white-orchid-majesty-in-vase", images: "//outerbloom.com/cdn/shop/products/Classic-white-Orchid-Majesty-in-Vase---white---4-Tangkai_thumb.jpg?v=1644205542", price: "Rp 435.000" }
5684,{ label: "majestic red romance bouquet", category: "Produk", url: "/products/majestic-red-romance-bouquet", images: "//outerbloom.com/cdn/shop/files/OBVBUN1357_Majestic-red-Romance-Bouquet_99b8ba96-0e67-4eef-a00e-b2daedcddb6a_thumb.jpg?v=1757390540", price: "Rp 435.000" },{ label: "sincerely", category: "Produk", url: "/products/sincerely", images: "//outerbloom.com/cdn/shop/files/Sincerely-WM_thumb.jpg?v=1688354677", price: "Rp 585.000" },{ label: "happy days jabodetabek", category: "Produk", url: "/products/happy-days-jabodetabek", images: "//outerbloom.com/cdn/shop/files/Happy-Days-Jabodetabek_WM_thumb.jpg?v=1759224026", price: "Rp 485.000" },{ label: "solemn comfort jabodetabek", category: "Produk", url: "/products/solemn-comfort-jabodetabek", images: "//outerbloom.com/cdn/shop/products/7fe123d8-6bb2-4c0d-bd4c-f8c3032823f2_6b9c33b6-4a23-41cb-8709-fc9223fe096a_thumb.png?v=1590662086", price: "Rp 635.000" },{ label: "big dreams jabodetabek", category: "Produk", url: "/products/big-dreams", images: "//outerbloom.com/cdn/shop/files/JKTCON1002_Big-Dreams-Jabodetabek_thumb.gif?v=1717494603", price: "Rp 485.000" },{ label: "signature ramadan deluxe hampers", category: "Produk", url: "/products/outerbloom-signature-ramadhan-deluxe-hampers", images: "//outerbloom.com/cdn/shop/files/Signature-Deluxe-Hampers_thumb.jpg?v=1739242254", price: "Rp 985.000" },{ label: "amorous amos jabodetabek", category: "Produk", url: "/products/amorous-amos-jabodetabek", images: "//outerbloom.com/cdn/shop/files/Amorous-Amos-Jabodetabek-WM_thumb.jpg?v=1759224071", price: "Rp 485.000" },{ label: "pink darling bouquet", category: "Produk", url: "/products/pink-darling-bouquet", images: "//outerbloom.com/cdn/shop/products/Pink-Darling-Bouquet_thumb.jpg?v=1669969725", price: "Rp 485.000" },{ label: "black pink bouquet", category: "Produk", url: "/products/black-pink-bouquet", images: "//outerbloom.com/cdn/shop/files/Black-Pink-Bouquet_thumb.jpg?v=1756434063", price: "Rp 485.000" },{ label: "profound happiness jabodetabek", category: "Produk", url: "/products/profound-happiness-jabodetabek", images: "//outerbloom.com/cdn/shop/files/profound-happiness_thumb.gif?v=1689940309", price: "Rp 635.000" },{ label: "healing trove", category: "Produk", url: "/products/healing-trove", images: "//outerbloom.com/cdn/shop/products/2ef5379f-27a6-41ba-85c7-c65cf3ec3f08_thumb.jpg?v=1571471845", price: "Rp 485.000" },{ label: "sincerity solace", category: "Produk", url: "/products/sincerity-solace", images: "//outerbloom.com/cdn/shop/products/OUTSTF1038_sincerity-solace-WM_thumb.jpg?v=1612352477", price: "Rp 485.000" },{ label: "bellarosa bloom box", category: "Produk", url: "/products/bellarosa-bloom-box", images: "//outerbloom.com/cdn/shop/files/OBVBUN1783_Bellarosa-Bloom-Box_c0000424-411c-48ed-abf4-0de7d925ea53_thumb.jpg?v=1757316757", price: "Rp 785.000" } 5685 ]; 5686 5687 5688 $( ".header-input-search" ).catcomplete({ 5689 appendTo: ".searchResult",source: function(request, response) { 5690 var results = $.ui.autocomplete.filter(data, request.term); 5691 var predicate = function () { 5692 var counter = { Collection: 0, Produk: 0 }; 5693 var fn = function(item) {counter[item.category] += 1;return (counter[item.category] <= 5);} 5694 return fn 5695 }(); 5696 response(results.filter(predicate)); 5697 }, 5698 minLength:1, 5699 //results are clickable 5700 select: function( event, ui ) {window.location = ui.item.url;} 5701 }); 5702 $( ".header-input-search2" ).catcomplete({ 5703 appendTo: ".searchResult2", 5704 source: function(request, response) { 5705 var results = $.ui.autocomplete.filter(data, request.term); 5706 var predicate = function () { 5707 var counter = { Collection: 0, Produk: 0 }; 5708 var fn = function(item) { 5709 counter[item.category] += 1; 5710 return (counter[item.category] <= 5); 5711 } 5712 return fn 5713 }(); 5714 response(results.filter(predicate)); 5715 }, 5716 minLength:1, 5717 //results are clickable 5718 select: function( event, ui ) { 5719 window.location = ui.item.url; 5720 } 5721 }); 5722 }); 5723 </script>
5723 5724 5725
5725<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
5725 5726
5726<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
5726 5727 5728
5728<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5729 ( function() { 5730 var youtube = document.querySelectorAll( ".youtube" ); 5731 for (var i = 0; i < youtube.length; i++) { 5732 var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault_1x.jpg"; 5733 var datasource = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg"; 5734 var image = new Image(); 5735 image.src = source; 5736 image.setAttribute("data-src", datasource); 5737 image.classList.add("swiper-lazy"); 5738 image.addEventListener( "load", function() { 5739 youtube[ i ].appendChild( image ); 5740 }( i ) ); 5741 youtube[i].addEventListener( "click", function() { 5742 var iframe = document.createElement( "iframe" ); 5743 iframe.setAttribute( "width", "480" ); 5744 iframe.setAttribute( "height", "480" ); 5745 iframe.setAttribute( "frameborder", "0" ); 5746 iframe.setAttribute( "allowfullscreen", "" ); 5747 iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" ); 5748 this.innerHTML = ""; 5749 this.appendChild( iframe ); 5750 } ); 5751 }; 5752 5753 } )(); 5754 5755 /* Lazy Load */ 5756 const mainLazyLoad = new LazyLoad({threshold:400}); 5757 $(document).ready(function(){ 5758 5759 $("selectxxx").addClass("needsclick"); 5760 FastClick.attach(document.body); 5761 5762 var $customSelects = $('.select-search'); 5763 $customSelects.select2({ 5764 templateResult: function(result, container) { 5765 if (!result.id) { 5766 return result.text; 5767 } 5768 container.className += ' needsclick'; 5769 return result.text; 5770 } 5771 }); 5772 $customSelects.each(function(index, el){$(el).data('select2').$container.find('*').addClass('needsclick');}); 5773 $(document).on('select2:open', () => { 5774 document.querySelector('.select2-search__field').focus(); 5775 }); 5776 5777 5778 $(".overlay").click(function(){ 5779 $(".js-drawer-close").click(); 5780 }); 5781 $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function(){ 5782 $("html").toggleClass("nav_open"); 5783 }); 5784 5785 $('.swatch-element label').on('click', function(){ 5786 var srcImg = $(this).data('src'); 5787 $('#thumb-image-product .product-single__thumbnail').each(function(){ 5788 if ($(this).attr("href") == srcImg) { 5789 $(this).trigger('click'); 5790 } 5791 }); 5792 }); 5793 var defaultValue = $(".swatch input:checked").val() 5794 5795 $('#purchaseProduct .swatch [type=radio]').change(function() { 5796 var optionIndex = $(this).closest('.swatch').attr('data-option-index'); 5797 var optionValue = $(this).val(); 5798 console.log(optionIndex, optionValue) 5799 var value = parseInt(optionValue.split(' ')[0]) 5800 $(this) 5801 .closest('#purchaseProduct') 5802 .find('.single-option-selector') 5803 .eq(optionIndex) 5804 .val(optionValue) 5805 .trigger('change'); 5806 5807 }); 5808 5809 }); 5810 $(document).ready(function(){ 5811 $(".nav-search a").click(function(e){ 5812 e.preventDefault(); 5813 $(".icon-navsearch").toggle(); 5814 $(".icon-navclose").toggle(); 5815 $(".site-nav__item > .site-nav__link").toggle(); 5816 $(".open-search").toggle(); 5817 $(".open-search input").focus(); 5818 }); 5819 $(".best-price-guarantee").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/logo-best-price-guarantee-grid_75x.png?v=72489032173169839651752652420' alt='Logo Best Price Guarantee'>"); 5820 if ($(window).width() < 768) { 5821 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 5822 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 5823 $(".bg-products .label-tag.free-valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-valentine_150x.png?v=171641187769238175351752652421' alt='Icon Free Valentine'>"); 5824 } else { 5825 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 5826 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 5827 $(".bg-products .label-tag.free-valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-valentine_200x.png?v=171641187769238175351752652421' alt='Icon Free Valentine'>"); 5828 } 5829 $(".bg-products .label-tag.free-cookies").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-cookies_80x.png?51468' alt='Icon Free Cookies'>"); 5830 $(".bg-products .label-tag.mothersday").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/mothers-day_70x.png?v=171373711354766377891752652419' alt='Icon Mothers day'>"); 5831 }); 5832 </script>
5832 5833
5833<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5834 var wishlistpage = 0; 5835 5836 var quickShop_money_format="<span class='money'>"+"Rp {{amount_no_decimals}}"+"</span>"; 5837 </script>
5837 5838 5839 <!-- Remove duplicate wishlist.js reference --> 5840 <div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog"> 5841 <div class="modal-dialog" role="document"> 5842 <div class="modal-content"> 5843 <div class="modal-body">Your Wishlist is empty!</div> 5844 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> 5845 </div> 5846 </div> 5847 </div> 5848 5849 <div class="wishlist-model"> 5850 <div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true"> 5851 <div class="modal-dialog white-modal"> 5852 <div class="modal-content"> 5853 <div class="modal-header"> 5854 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 5855 <svg class="icon icon-close" version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="32" height="32" viewBox="0 0 32 32"> 5856 <title>icon-close</title> 5857 <path d="M16.943 16l8.862 8.862c0.26 0.26 0.26 0.682 0 0.943s-0.682 0.26-0.943 0l-8.862-8.862-8.862 8.862c-0.26 0.26-0.682 0.26-0.943 0s-0.26-0.682 0-0.943l8.862-8.862-8.862-8.862c-0.26-0.26-0.26-0.682 0-0.943s0.682-0.26 0.943 0l8.862 8.862 8.862-8.862c0.26-0.26 0.682-0.26 0.943 0s0.26 0.682 0 0.943l-8.862 8.862z"></path> 5858 </svg> 5859 </button> 5860 </div> 5861 <div class="modal-body"> 5862 <div class="wishlist-left"> 5863 <div class="wishlist-note"> 5864 <span class="cirle"><svg version="1.1" xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="32" height="32" viewBox="0 0 32 32"> 5865 <title>icon-check</title> 5866 <path d="M12 21.766l14.218-12.926c0.272-0.248 0.694-0.228 0.942 0.045s0.228 0.694-0.045 0.942l-14.667 13.333c-0.254 0.231-0.643 0.231-0.897 0l-6.667-6.061c-0.272-0.248-0.293-0.669-0.045-0.942s0.669-0.293 0.942-0.045l6.218 5.653z"></path> 5867 </svg></span> 5868 Product added to <a href="/pages/wish-list">Wishlist</a> 5869 </div> 5870 <div class="wishlist-product"> 5871 <div class="product-left"> 5872 <div class="wishlist-image"></div> 5873 </div> 5874 <div class="product-right"> 5875 <div class="wishlist-name"></div> 5876 <div class="wishlist-price"></div> 5877 </div> 5878 </div> 5879 </div> 5880 <div class="wishlist-right"> 5881 <div class="wishlist-cart"> 5882 <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data"> 5883 <div class="others-bottom"> 5884 <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a> 5885 <button type="submit" name="add" id="AddToCart" class="btn btn-cta"> 5886 <span id="AddToCartText" class="">Beli Sekarang</span> 5887 </button> 5888 </div> 5889 <div id="wishlist-variants-container" class="variants-wrapper"></div> 5890 <div class="quantity-content"> 5891 <label>QTY</label> 5892 <input type="number" size="5" class="" name="quantity" value="1" /> 5893 </div> 5894 </form> 5895 </div> 5896 </div> 5897 </div> 5898 </div> 5899 </div> 5900 </div> 5901 </div> 5902 5903 <div id='stamped-rewards-init' class='stamped-rewards-init' 5904 data-key-public='' 5905 5906 ></div> 5907 5908
5908<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
5908 5909 <!-- Remove duplicate jQuery reference and load wishlist script properly --> 5910
5910<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer type="9f1692b8b70633eecdaf805b-text/javascript"></script>
5910 5911 5912
5912<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5913 function myInit(){ StampedFn.init({ apiKey: 'pubkey-hCS8DHE9QbBHhHN89WXFkuJ0Y3422D', sId: '23462' }); } 5914 </script>
5914 5915
5915<script async onload="myInit()" type="9f1692b8b70633eecdaf805b-text/javascript" src="https://cdn1.stamped.io/files/widget.min.js"></script>
5915 5916 5917 <div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;"> 5918 <div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div> 5919 <div tabindex="0" data-test="sentinelStart"></div> 5920 <div class="MuiDialog-container MuiDialog-scrollPaper" role="none presentation" tabindex="-1" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"> 5921 <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog"> 5922 <div class="jss31 undefined" id="location-lock-dialog"> 5923 <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close"> 5924 <span class="MuiIconButton-label"> 5925 <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true"> 5926 <path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"></path> 5927 </svg> 5928 </span> 5929 <span class="MuiTouchRipple-root"></span> 5930 </button> 5931 <div> 5932 <div class="jss36">Select Delivery Location</div> 5933 <div class="jss37">Select a delivery location to see product availability</div> 5934 </div> 5935 <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup"> 5936 <label for="jabodetabek" class="MuiFormControlLabel-root jss45"> 5937 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false"> 5938 <span class="MuiIconButton-label"> 5939 <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location"> 5940 <span class="jss41"></span> 5941 </span> 5942 <span class="MuiTouchRipple-root"></span> 5943 </span> 5944 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 5945 <span class="jss67 jss69">Jabodetabek</span> 5946 </span> 5947 </label> 5948 <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45"> 5949 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false"> 5950 <span class="MuiIconButton-label"> 5951 <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location"> 5952 <span class="jss40"></span> 5953 </span> 5954 <span class="MuiTouchRipple-root"></span> 5955 </span> 5956 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 5957 <span class="jss67 jss68">Outside Jabodetabek</span> 5958 </span> 5959 </label> 5960 </div> 5961 <div> 5962 <div class="MuiGrid-root location-popup_area-block__sp9Ws"> 5963 <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false"> 5964 <div class="MuiGrid-root location-popup_place-icon__jSG0Q"> 5965 <svg class="MuiSvgIcon-root jss6" focusable="false" viewBox="0 0 24 24" aria-hidden="true" style="font-size:16px"><path d="M12 2C8.13 2 5 5.13 5 9c0 5.25 7 13 7 13s7-7.75 7-13c0-3.87-3.13-7-7-7zm0 9.5c-1.38 0-2.5-1.12-2.5-2.5s1.12-2.5 2.5-2.5 2.5 1.12 2.5 2.5-1.12 2.5-2.5 2.5z"></path></svg> 5966 </div> 5967 <div class="MuiGrid-root location-popup_cancel-icon__FHujU false"> 5968 <i class="material-icons location-popup_clear-pin__s1dRc">close</i> 5969 </div> 5970 <div style="width: 100%;"> 5971 <select id="choose-location" class="form-control"> 5972 <option value="">Choose Location</option> 5973 <option value="jakarta">Jakarta</option> 5974 <option value="bogor">Bogor</option> 5975 <option value="depok">Depok</option> 5976 <option value="tangerang">Tangerang</option> 5977 <option value="bekasi">Bekasi</option> 5978 </select> 5979 </div> 5980 </div> 5981 </div> 5982 </div> 5983 <button class="MuiButtonBase-root MuiButton-root MuiButton-contained jss55" tabindex="-1" type="button" title="" id="location-lock-submit" data-idforcdp="actionBtn-cdp" data-testid="location-lock-submit" style="background-color: #ffffff; width: 80%; padding: 14px 0px 12px; margin: 20px 0px; font-size: 18px; font-weight: 500; box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 4px 0px; border-radius: 4px; color: rgb(0, 0, 0); height: 44px;" data-content="">
5984 <span class="MuiButton-label"> 5985 <span class=""></span> 5986 <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span> 5987 </span> 5988 </button> 5989 </div> 5990 </div> 5991 </div> 5992 <div tabindex="0" data-test="sentinelEnd"></div> 5993 </div> 5994
5994<script type="9f1692b8b70633eecdaf805b-text/javascript"> 5995 const jabodetabek = [{ 5996 "code": "jakarta", 5997 "city": "jakarta", 5998 "zip": [] 5999 }, { 6000 "code": "bogor", 6001 "city": "bogor", 6002 "zip": [] 6003 }, { 6004 "code": "depok", 6005 "city": "depok", 6006 "zip": [] 6007 }, { 6008 "code": "tangerang", 6009 "city": "tangerang", 6010 "zip": [] 6011 }, { 6012 "code": "bekasi", 6013 "city": "bekasi", 6014 "zip": [] 6015 }] 6016 let cityNonJabodetabek = ["pengiriman_aceh", "pengiriman_ambon", "pengiriman_atambua", "pengiriman_badung", "pengiriman_bali", "pengiriman_balikpapan", "pengiriman_bandar lampung", "pengiriman_bandung", "pengiriman_bandung barat", "pengiriman_banjarmasin", "pengiriman_banyumas", "pengiriman_banyuwangi", "pengiriman_batam", "pengiriman_biak", "pengiriman_binjai", "pengiriman_blitar", "pengiriman_blora", "pengiriman_bojonegoro", "pengiriman_boyolali", "pengiriman_bukittinggi", "pengiriman_buleleng", "pengiriman_ciamis", "pengiriman_cianjur", "pengiriman_cibinong", "pengiriman_cikarang", "pengiriman_cikupa", "pengiriman_cilacap", "pengiriman_cileunyi", "pengiriman_cimahi", "pengiriman_cirebon", "pengiriman_ciwidey", "pengiriman_deli serdang", "pengiriman_demak", "pengiriman_denpasar", "pengiriman_garut", "pengiriman_gianyar", "pengiriman_gresik", "pengiriman_gunung kidul", "pengiriman_jambi", "pengiriman_jayapura", "pengiriman_jember", "pengiriman_jepara", "pengiriman_jombang", "pengiriman_karanganyar", "pengiriman_karawang", "pengiriman_karo", "pengiriman_kebumen", "pengiriman_kediri", "pengiriman_keerom", "pengiriman_kendal", "pengiriman_klaten", "pengiriman_kudus", "pengiriman_kupang", "pengiriman_lainnya", "pengiriman_lamongan", "pengiriman_lampung", "pengiriman_lampung barat", "pengiriman_lembang", "pengiriman_lombok", "pengiriman_lumajang", "pengiriman_madiun", "pengiriman_magelang", "pengiriman_majalengka", "pengiriman_makassar", "pengiriman_malang", "pengiriman_manado", "pengiriman_medan", "pengiriman_mengwi", "pengiriman_mojokerto", "pengiriman_nganjuk", "pengiriman_ngawi", "pengiriman_padang", "pengiriman_palembang", "pengiriman_pasuruan", "pengiriman_pati", "pengiriman_pekalongan", "pengiriman_pekanbaru", "pengiriman_pemalang", "pengiriman_ponorogo", "pengiriman_pontianak", "pengiriman_probolinggo", "pengiriman_purbalingga", "pengiriman_purwakarta", "pengiriman_purwokerto", "pengiriman_rembang", "pengiriman_riau", "pengiriman_salatiga", "pengiriman_samarinda", "pengiriman_semarang", "pengiriman_sentani", "pengiriman_serang", "pengiriman_sidoarjo", "pengiriman_singkawang", "pengiriman_sragen", "pengiriman_subang", "pengiriman_sukabumi", "pengiriman_sumbawa", "pengiriman_surabaya", "pengiriman_surakarta solo", "pengiriman_tasikmalaya", "pengiriman_tegal", "pengiriman_timika", "pengiriman_wamena", "pengiriman_wiyung", "pengiriman_wonokromo", "pengiriman_yogyakarta", ] 6017 console.log(cityNonJabodetabek) 6018 let non_jabodetabek = [] 6019 for (var i = 0; i < cityNonJabodetabek.length; i++) { 6020 const obj = { 6021 "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ', '-'), 6022 "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ', '-'), 6023 "zip": [] 6024 } 6025 non_jabodetabek.push(obj) 6026 } 6027 let current_location = getCookie("location_delivery") 6028 $("[name=location]").change(function() { 6029 let v = $(this).val() 6030 let option = [] 6031 if (v == 'Jabodetabek') { 6032 for (var i = 0; i < jabodetabek.length; i++) { 6033 const jabodetabekHtml = ` 6034 <option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>` 6035 option.push(jabodetabekHtml) 6036 } 6037 $("#choose-location").html(` 6038 <option value="">Choose Location</option>${option}`) 6039 } else { 6040 for (var i = 0; i < non_jabodetabek.length; i++) { 6041 const nonjabodetabekHtml = ` 6042 <option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>` 6043 option.push(nonjabodetabekHtml) 6044 } 6045 $("#choose-location").html(` 6046 <option value="">Choose Location</option>${option}`) 6047 } 6048 }) 6049 $("#location-lock-submit").click(function(e) { 6050 let select = $("#choose-location") 6051 let value = select.val().toLowerCase() 6052 console.log(value) 6053 if (select.val() == "") { 6054 return alert("Choose Your Location") 6055 e.preventDefault() 6056 }
6057 setCookie("location_delivery", value, 1000000); 6058 location.reload(); 6059 }) 6060 $("#close-popup-delivery").click(function() { 6061 $(".MuiDialog-root").hide() 6062 if (!current_location) { 6063 setCookie("location_delivery", "jakarta", 1000000); 6064 $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta") 6065 } 6066 }) 6067 $("#loc_delivery, #loc_delivery_mobile").click(function() { 6068 $(".MuiDialog-root").show() 6069 }) 6070 if (!current_location) {} else { 6071 $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location) 6072 console.log(current_location) 6073 $("#choose-location").each(function() { 6074 if (current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi') { 6075 $("#jabodetabek").trigger("click") 6076 } else { 6077 $("#non-jabodetabek").trigger("click") 6078 } 6079 $("#choose-location").find("option[value=" + current_location + "]").attr("selected", "selected") 6080 }) 6081 } 6082 // if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi' || current_location == 'bandung' || current_location == 'semarang' || current_location == 'yogyakarta' || current_location == 'surabaya'){ 6083 // $("#timeMalam").attr("disabled", false) 6084 // } else { 6085 // $("#timeMalam").attr("disabled", true) 6086 // } 6087 if (current_location && current_location != 'jakarta') { 6088 $("#self-pickup").attr("disabled", true) 6089 } 6090 6091 function setCookie(name, value, days) { 6092 var expires = ""; 6093 if (days) { 6094 var date = new Date(); 6095 date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000)); 6096 expires = "; expires=" + date.toUTCString(); 6097 } 6098 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 6099 } 6100 6101 function getCookie(name) { 6102 var nameEQ = name + "="; 6103 var ca = document.cookie.split(';'); 6104 for (var i = 0; i < ca.length; i++) { 6105 var c = ca[i]; 6106 while (c.charAt(0) == ' ') c = c.substring(1, c.length); 6107 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); 6108 } 6109 return null; 6110 } 6111</script>
6111 6112 <!-- One Tap --> 6113
6113<script type="9f1692b8b70633eecdaf805b-text/javascript"> 6114 console.log("Outerbloom..."); 6115 </script>
6115 6116 <div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block"> 6117 6118
6118<script type="9f1692b8b70633eecdaf805b-text/javascript"> 6119 const widgetConfig = { 6120 id: "clz7897za002cz7otleaz0d3d", 6121 showQuickResponse: false, 6122 quickResponsesData: [], 6123 themeColor: "#ffffff", 6124 widgetText: "", 6125 radiusType: "circle", 6126 widgetIconType: "whatsapp", 6127 position: "right", 6128 storeLogo: "", 6129 storeName: "Koitoto", 6130 storeDescription: "", 6131 size: "small", 6132 showCard: false, 6133 widgetColorType: "solid", 6134 widgetColor1: "#008069", 6135 widgetColor2: "#008069", 6136 social: { 6137 socialOrders: ["instagram","tiktok","facebook","x","youtube","linkedin","email"], 6138 values: { 6139 instagram: { 6140 enabled: false, 6141 value: "", 6142 }, 6143 facebook: { 6144 enabled: false, 6145 value: "", 6146 }, 6147 email: { 6148 enabled: false, 6149 value: "", 6150 }, 6151 x: { 6152 enabled: false, 6153 value: "", 6154 }, 6155 tiktok: { 6156 enabled: false, 6157 value: "", 6158 }, 6159 linkedin: { 6160 enabled: false, 6161 value: "", 6162 }, 6163 youtube: { 6164 enabled: false, 6165 value: "", 6166 }, 6167 }, 6168 }, 6169 }; 6170 6171 function initializeWidget() { 6172 if (typeof BBBWidget !== 'undefined') { 6173 BBBWidget.init(widgetConfig); 6174 } else { 6175 setTimeout(initializeWidget, 100); 6176 } 6177 } 6178 6179 initializeWidget();</script>
6179 6180 </div><div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block"> 6181 <div style="position: fixed; bottom: 0; right: 0"></div> 6182 6183
6183<script type="9f1692b8b70633eecdaf805b-text/javascript"> 6184 console.info("bitlogin extension version: v2.5.7"); 6185 const googleScript = document.createElement("script"); 6186 googleScript.setAttribute("src", "https://accounts.google.com/gsi/client"); 6187 document.head.append(googleScript); 6188 const bitLoginBaseUrl = "https://api.bitbybit.studio"; 6189 const apiUrl = `${bitLoginBaseUrl}/bitlogin/api`; 6190 const appearance = { 6191 "style": "square", 6192 "hasShadow": true, 6193 "domain": "outerbloom1.myshopify.com", 6194 "colorScheme": "match", 6195 "backgroundColor": "#ffffff", 6196 "outlineColor": "#ffe100", 6197 "textColor": "#700000", 6198 "position": "top", 6199 "hideDivider": false, 6200 "dividerText": "", 6201 "size": "small", 6202 "format": "contentFlex", 6203 "language": "en", 6204 "buttonText": "Continue With", 6205 "redirectLink": "\/account", 6206 "googleOneTap": true, 6207 "googleOneTapBanner": true, 6208 "captureAdditionalData": true, 6209 "customerTag": "bitLogin", 6210 "redirectOneTapDesktop": "[{\"label\":\"Account\",\"label2\":\"Desktop: Account\",\"value\":\"account\",\"parentValue\":\"Desktop\"}]", 6211 "redirectOneTapMobile": "[{\"label\":\"Thank you page\",\"label2\":\"Mobile: Thank you page\",\"value\":\"thank_you\",\"parentValue\":\"Mobile\"}]", 6212 "watermark": true, 6213 "buttonList": { 6214 "google": "Continue with Google", 6215 "facebook": "Continue with Facebook", 6216 "apple": "Continue with Apple", 6217 "whatsapp": "Continue with WhatsApp", 6218 "microsoft": "Continue with Microsoft", 6219 "twitter": "Continue with X", 6220 "amazon": "Continue with Amazon", 6221 "instagram": "Continue with Instagram", 6222 "magic_link": "Continue with Magic Link", 6223 "mobile_app": "Continue with Mobile App", 6224 "linkedin": "Continue with LinkedIn" 6225 } 6226 }; 6227 const config = [{ 6228 "domain": "outerbloom1.myshopify.com", 6229 "provider": "FACEBOOK", 6230 "enabledMobile": false, 6231 "enabledWeb": true, 6232 "clientId": "922184709213757", 6233 "clientSecret": "e3c874c8bce6da4211538ebda706d1cb", 6234 "appleTeamId": null, 6235 "applePrivateKey": null, 6236 "usePersonalOauth": false, 6237 "position": null 6238 }, { 6239 "domain": "outerbloom1.myshopify.com", 6240 "provider": "GOOGLE", 6241 "enabledMobile": true, 6242 "enabledWeb": true, 6243 "clientId": "933600373534-vk6hiu9lqrtbblj0357q0gsoo7mqvsd0.apps.googleusercontent.com", 6244 "clientSecret": "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", 6245 "appleTeamId": null, 6246 "applePrivateKey": null, 6247 "usePersonalOauth": true, 6248 "position": null 6249 }, { 6250 "domain": "outerbloom1.myshopify.com", 6251 "provider": "APPLE", 6252 "enabledMobile": true, 6253 "enabledWeb": true, 6254 "clientId": "com.bitlogin.outerbloom", 6255 "clientSecret": "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", 6256 "appleTeamId": "1A", 6257 "applePrivateKey": "1A", 6258 "usePersonalOauth": false, 6259 "position": null 6260 }, { 6261 "domain": "outerbloom1.myshopify.com", 6262 "provider": "WHATSAPP", 6263 "enabledMobile": false, 6264 "enabledWeb": true, 6265 "clientId": null, 6266 "clientSecret": null, 6267 "appleTeamId": null, 6268 "applePrivateKey": null, 6269 "usePersonalOauth": false, 6270 "position": null 6271 }, { 6272 "domain": "outerbloom1.myshopify.com", 6273 "provider": "MICROSOFT", 6274 "enabledMobile": false, 6275 "enabledWeb": false, 6276 "clientId": null, 6277 "clientSecret": null, 6278 "appleTeamId": null, 6279 "applePrivateKey": null, 6280 "usePersonalOauth": false, 6281 "position": null 6282 }, { 6283 "domain": "outerbloom1.myshopify.com", 6284 "provider": "TWITTER", 6285 "enabledMobile": false, 6286 "enabledWeb": false, 6287 "clientId": null, 6288 "clientSecret": null, 6289 "appleTeamId": null, 6290 "applePrivateKey": null, 6291 "usePersonalOauth": false, 6292 "position": null 6293 }, { 6294 "domain": "outerbloom1.myshopify.com", 6295 "provider": "AMAZON", 6296 "enabledMobile": false, 6297 "enabledWeb": false, 6298 "clientId": "amzn1.application-oa2-client.5b560a5e3e2943d6b25c50cd6dca5532", 6299 "clientSecret": "amzn1.oa2-cs.v1.1cb5f9085a202341f60daf5a7be16c570ccc0b4bd5908b3afd080f34e9b8935d", 6300 "appleTeamId": null, 6301 "applePrivateKey": null, 6302 "usePersonalOauth": false, 6303 "position": null 6304 }]; 6305 const redirectUrl = appearance.redirectLink; 6306 let locationCacheSet = false; 6307 let errorLocation = false; 6308 let oneTapSet = false; 6309 let bitloginCache = { 6310 appearance: appearance, 6311 config: config 6312 }; 6313 let isInitializing = false; 6314 const queue = []; 6315 // Add CSS for the popup 6316 const popupStyles = document.createElement('style'); 6317 popupStyles.textContent = ` 6318 /* Styles for login popup */ 6319 .bitlogin-popup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.45);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease-in-out;z-index:999999}.bitlogin-popup-overlay.visible{opacity:1}.bitlogin-popup{background:#fff;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);border-radius:16px;width:100%;max-width:560px;display:flex;overflow:hidden;position:relative;opacity:0;transform:translateY(20px) scale(.98);transition:all .3s cubic-bezier(.16,1,.3,1)}.bitlogin-popup.visible{opacity:1;transform:translateY(0) scale(1)}.bitlogin-popup-with-image{max-width:640px}.bitlogin-popup-right-image{flex-direction:row-reverse}.bitlogin-popup-image{object-fit:cover;width:50%;height:auto}.bitlogin-popup-content{padding:32px;position:relative;width:50%}.bitlogin-popup-close{position:absolute;top:16px;right:16px;background:#fff;border:none;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s;color:inherit;padding:0}.bitlogin-popup-close:hover{background-color:#e5e5e5}.bitlogin-popup-buttons{display:flex;flex-direction:column;gap:12px;margin-top:24px}.bitlogin-popup-buttons #amazon-login,.bitlogin-popup-buttons #apple-login,.bitlogin-popup-buttons #facebook-login,.bitlogin-popup-buttons #google-login,.bitlogin-popup-buttons #instagram-login,.bitlogin-popup-buttons #magic-link-login,.bitlogin-popup-buttons #microsoft-login,.bitlogin-popup-buttons #mobile-app-login,.bitlogin-popup-buttons #twitter-login,.bitlogin-popup-buttons #whatsapp-login{width:100%!important;font-family:inherit!important}.bitlogin-popup-footer{margin-top:32px;text-align:center;font-size:14px;opacity:.6}.bitlogin-popup h2{margin-top:12px;font-size:21px!important;line-height:1.2!important;font-weight:700!important;letter-spacing:-.02em!important;margin-bottom:16px!important}.bitlogin-popup-header{position:relative;margin-bottom:24px}.bitlogin-popup-content>div{font-size:16px!important;line-height:1.2!important;opacity:.85!important}.bitlogin-popup-buttons button{position:relative;overflow:hidden}@keyframes ripple{0%{transform:scale(0,0);opacity:.5}100%{transform:scale(100,100);opacity:0}
6319}@media (max-width:640px){.bitlogin-popup{max-width:90%;width:90%;margin:0 16px}.bitlogin-popup-with-image{flex-direction:column!important}.bitlogin-popup-image{width:100%;height:180px}.bitlogin-popup-content{padding:24px}.bitlogin-popup h2{font-size:24px!important}} 6320 `; 6321 document.head.appendChild(popupStyles); 6322 // Add fonts link for different font options 6323 const fontsLink = document.createElement('link'); 6324 fontsLink.rel = 'stylesheet'; 6325 fontsLink.href = 'https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Roboto:wght@400;500&family=Open+Sans:wght@400;500;600&family=Noto+Sans:wght@400;500;600&family=Lato:wght@400;700&family=Poppins:wght@400;500;600&family=Quicksand:wght@400;500;600&family=Raleway:wght@400;500;600&family=PT+Sans:wght@400;700&family=Oswald:wght@400;500;600&display=swap'; 6326 document.head.appendChild(fontsLink); 6327 (async () => { 6328 try { 6329 let host = window.location.host; 6330 if (host === "admin.shopify.com") { 6331 host = `${window.location.pathname.split("/")[2]}.myshopify.com`; 6332 } 6333 const urlSearchParams = new URLSearchParams(window.location.search); 6334 const checkoutUrl = urlSearchParams.get("checkout_url"); 6335 async function init({ 6336 inputRef, 6337 index 6338 }) { 6339 if (isInitializing) { 6340 queue.push(() => init({ 6341 inputRef, 6342 index 6343 })); 6344 return; 6345 } 6346 isInitializing = true; 6347 try { 6348 let bitLoginSectionRoot = document.querySelector(`.bitlogin-root[data-index="${index}"]`); 6349 const formRef = inputRef?.closest("form:not([action='/account/recover'])"); 6350 if (formRef && !bitLoginSectionRoot) { 6351 await getLocation(); 6352 bitLoginSectionRoot = document.createElement(`div`); 6353 bitLoginSectionRoot.setAttribute("class", "bitlogin-root"); 6354 bitLoginSectionRoot.setAttribute("data-index", `${index}`); 6355 updateAppearance({ 6356 formRef, 6357 rootRef: bitLoginSectionRoot, 6358 host, 6359 }); 6360 } 6361 } catch (err) { 6362 console.error(`error while initiating bitlogin extensions`, err); 6363 } finally { 6364 // Release the lock 6365 isInitializing = false; 6366 // Check if there are pending items in the queue 6367 if (queue.length > 0) { 6368 // Process the next function in the queue 6369 const nextFunction = queue.shift(); 6370 nextFunction(); 6371 } 6372 } 6373 } 6374 6375 function initAll() { 6376 return new Promise((resolve, reject) => { 6377 setTimeout(async () => { 6378 const inputRefs = document.querySelectorAll('input[name="customer[email]"]'); 6379 for (let i = 0; i < inputRefs.length; i++) { 6380 const currentInputRef = inputRefs[i]; 6381 const isVisible = isElementVisible(currentInputRef); 6382 if (isVisible) { 6383 await init({ 6384 inputRef: currentInputRef, 6385 index: i 6386 }); 6387 } 6388 } 6389 resolve("ok"); 6390 }, 100); 6391 }); 6392 } 6393 const observer = new MutationObserver((mutationsList) => { 6394 for (let mutation of mutationsList) { 6395 initAll(); 6396 } 6397 }); 6398 observer.observe(document.body, { 6399 childList: true, 6400 subtree: true, 6401 attributes: true, 6402 }); 6403 initAll(); 6404 if (appearance.googleOneTap) { 6405 setupOneTap({ 6406 host, 6407 checkoutUrl 6408 }); 6409 } 6410 // Initialize popup 6411 await initPopup(host); 6412 } catch (error) { 6413 console.error("Error initializing BitLogin:", error); 6414 } 6415 })(); 6416 async function initPopup(host) { 6417 // Check if user is already logged in using Liquid checks properly 6418 const isLoggedIn = false || document.querySelector('.customer-logout-link') || document.querySelector('.account-link') || window.location.pathname.includes('/account'); 6419 if (isLoggedIn) { 6420 return; // User is logged in, don't show popup 6421 } 6422 try { 6423 // Fetch the popup configuration 6424 const popupConfig = await fetch(`${apiUrl}/appearance/popup/domain/${host}`).then(res => res.json()).catch(err => { 6425 console.error('Error fetching popup configuration:', err); 6426 return null; 6427 }); 6428 if (!popupConfig || !popupConfig.enabled) { 6429 return;
6429 // Don't show popup if disabled or config not found 6430 } 6431 // Create popup after 10 seconds 6432 setTimeout(() => { 6433 // Check if user is still on the page and still not logged in 6434 if (document.visibilityState === 'visible') { 6435 // Additional check in case user logged in during the 10 second wait 6436 const currentlyLoggedIn = false || document.querySelector('.customer-logout-link') || document.querySelector('.account-link'); 6437 if (!currentlyLoggedIn) { 6438 createLoginPopup(popupConfig, host); 6439 } 6440 } 6441 }, 10000); 6442 } catch (error) { 6443 console.error('Error initializing popup:', error); 6444 } 6445 } 6446 6447 function createLoginPopup(popupConfig, host) { 6448 // Font mapping 6449 const fontFamilyMap = { 6450 system_fonts: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif', 6451 montserrat: 'Montserrat, sans-serif', 6452 roboto: 'Roboto, sans-serif', 6453 open_sans: 'Open Sans, sans-serif', 6454 noto_sans: 'Noto Sans, sans-serif', 6455 lato: 'Lato, sans-serif', 6456 poppins: 'Poppins, sans-serif', 6457 quicksand: 'Quicksand, sans-serif', 6458 raleway: 'Raleway, sans-serif', 6459 pt_sans: 'PT Sans, sans-serif', 6460 oswald: 'Oswald, sans-serif', 6461 }; 6462 // Create overlay 6463 const overlay = document.createElement('div'); 6464 overlay.className = 'bitlogin-popup-overlay'; 6465 // Create popup container with appropriate styling 6466 const popup = document.createElement('div'); 6467 popup.className = 'bitlogin-popup'; 6468 if (popupConfig.layout === 'default') { 6469 popup.style.maxWidth = '400px'; 6470 } 6471 // Function to close the popup 6472 const closePopup = () => { 6473 overlay.classList.remove('visible'); 6474 popup.classList.remove('visible'); 6475 setTimeout(() => { 6476 if (document.body.contains(overlay)) { 6477 document.body.removeChild(overlay); 6478 } 6479 }, 300); 6480 }; 6481 // Add click handler to the overlay to close when clicking outside 6482 overlay.addEventListener('click', (event) => { 6483 // Close only if clicking directly on the overlay, not its children 6484 if (event.target === overlay) { 6485 closePopup(); 6486 } 6487 }); 6488 // Add escape key handler to close popup 6489 document.addEventListener('keydown', (event) => { 6490 if (event.key === 'Escape' && document.body.contains(overlay)) { 6491 closePopup(); 6492 } 6493 }); 6494 // Create layout with image if specified 6495 let contentWrapper; 6496 if (popupConfig.layout !== 'default' && popupConfig.popupImage) { 6497 popup.classList.add('bitlogin-popup-with-image'); 6498 if (popupConfig.layout === 'right') { 6499 popup.classList.add('bitlogin-popup-right-image'); 6500 } 6501 // Add image 6502 const image = document.createElement('img'); 6503 image.className = 'bitlogin-popup-image'; 6504 image.src = popupConfig.popupImage; 6505 image.alt = 'Login'; 6506 image.loading = 'lazy'; 6507 popup.appendChild(image); 6508 // Create content container 6509 contentWrapper = document.createElement('div'); 6510 contentWrapper.className = 'bitlogin-popup-content'; 6511 if (popupConfig.layout === 'right') { 6512 const closeButton = document.createElement('button'); 6513 closeButton.className = 'bitlogin-popup-close'; 6514 closeButton.innerHTML = ` 6515 <svg width="14" height="14" viewBox="0 0 14 14" fill="none" 6516 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 6517 <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 6518 </svg>`; 6519 closeButton.setAttribute('aria-label', 'Close'); 6520 closeButton.onclick = closePopup; 6521 popup.appendChild(closeButton); 6522 } 6523 } else { 6524 contentWrapper = document.createElement('div'); 6525 contentWrapper.className = 'bitlogin-popup-content'; 6526 contentWrapper.style.width = '100%'; 6527 } 6528 // Set background style 6529 if (popupConfig.backgroundTheme === 'gradient') { 6530 contentWrapper.style.background = `linear-gradient(135deg, ${popupConfig.backgroundPopupColor}, ${popupConfig.gradientColor})`; 6531 } else { 6532 contentWrapper.style.backgroundColor = popupConfig.backgroundPopupColor; 6533 } 6534 // Apply font family 6535 contentWrapper.style.setProperty('font-family', fontFamilyMap[popupConfig.font] || fontFamilyMap.system_fonts, 'important'); 6536 if (popupConfig.layout !== 'right') { 6537 const closeButton = document.createElement('button'); 6538 closeButton.className = 'bitlogin-popup-close'; 6539 closeButton.innerHTML = ` 6540 <svg width="14" height="14" viewBox="0 0 14 14" fill="none" 6541 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 6542 <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 6543 </svg>`; 6544 closeButton.setAttribute('aria-label', 'Close'); 6545 closeButton.onclick = closePopup; 6546 contentWrapper.appendChild(closeButton); 6547 } 6548 // Add heading with subtle animation effect 6549 const header = document.createElement('div'); 6550 header.className = 'bitlogin-popup-header'; 6551 const heading = document.createElement('h2'); 6552 heading.textContent = popupConfig.headingText || 'Sign in for exclusive benef
6552its'; 6553 heading.style.color = popupConfig.fontColor; 6554 header.appendChild(heading); 6555 // Add body text with improved formatting 6556 const bodyText = document.createElement('div'); 6557 bodyText.innerHTML = popupConfig.bodyText || 'Join our community to access exclusive offers and a personalized shopping experience.'; 6558 bodyText.style.color = popupConfig.fontColor; 6559 header.appendChild(bodyText); 6560 contentWrapper.appendChild(header); 6561 // Create buttons container with modern styling 6562 const buttonsContainer = document.createElement('div'); 6563 buttonsContainer.className = 'bitlogin-popup-buttons'; 6564 // Add social buttons 6565 const providerLabels = { 6566 'GOOGLE': 'Continue with Google', 6567 'FACEBOOK': 'Continue with Facebook', 6568 'APPLE': 'Continue with Apple', 6569 'WHATSAPP': 'Continue with WhatsApp', 6570 'MAGIC_LINK': 'Continue with Email', 6571 }; 6572 // Add first login provider button 6573 if (popupConfig.loginProvider1 !== 'NONE') { 6574 const buttonConfig = { 6575 theme: popupConfig.colorScheme || 'match', 6576 customColor: popupConfig.textColor, 6577 format: 'contentFlex', 6578 buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider1.toLowerCase()], 6579 hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true, 6580 style: popupConfig.style || 'rounded', 6581 size: popupConfig.size || 'medium', 6582 colorScheme: popupConfig.colorScheme || 'match', 6583 backgroundColor: popupConfig.backgroundColor || '#3B82F6', 6584 textColor: popupConfig.textColor || '#FFFFFF', 6585 outlineColor: popupConfig.outlineColor || '#3B82F6', 6586 host: host 6587 }; 6588 const button1 = createSocialLoginButton(popupConfig.loginProvider1, buttonConfig); 6589 // Handle click event - this overrides the default click handler in createSocialLoginButton 6590 button1.onclick = () => { 6591 onClickSocialLogin({ 6592 provider: popupConfig.loginProvider1.toLowerCase(), 6593 host 6594 }); 6595 closePopup(); 6596 }; 6597 buttonsContainer.appendChild(button1); 6598 } 6599 // Add second login provider button if enabled 6600 if (popupConfig.loginProvider2 !== 'NONE') { 6601 const buttonConfig = { 6602 theme: popupConfig.colorScheme || 'match', 6603 customColor: popupConfig.textColor, 6604 format: 'contentFlex', 6605 buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider2.toLowerCase()], 6606 hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true, 6607 style: popupConfig.style || 'rounded', 6608 size: popupConfig.size || 'medium', 6609 colorScheme: popupConfig.colorScheme || 'match', 6610 backgroundColor: popupConfig.backgroundColor || '#3B82F6', 6611 textColor: popupConfig.textColor || '#FFFFFF', 6612 outlineColor: popupConfig.outlineColor || '#3B82F6', 6613 host: host 6614 }; 6615 const button2 = createSocialLoginButton(popupConfig.loginProvider2, buttonConfig); 6616 // Handle click event - this overrides the default click handler in createSocialLoginButton 6617 button2.onclick = () => { 6618 onClickSocialLogin({ 6619 provider: popupConfig.loginProvider2.toLowerCase(), 6620 host 6621 }); 6622 closePopup(); 6623 }; 6624 buttonsContainer.appendChild(button2); 6625 } 6626 contentWrapper.appendChild(buttonsContainer); 6627 // Append content to popup 6628 popup.appendChild(contentWrapper); 6629 // Append popup to overlay 6630 overlay.appendChild(popup); 6631 // Append overlay to body 6632 document.body.appendChild(overlay); 6633 // Trigger animation with slight delay for better perceived performance 6634 setTimeout(() => { 6635 overlay.classList.add('visible'); 6636 setTimeout(() => { 6637 popup.classList.add('visible'); 6638 }, 50); 6639 }, 10); 6640 } 6641 window.addEventListener("load", () => { 6642 window.addEventListener("message", (event) => { 6643 const receivedData = event.data; 6644 if (receivedData.type === "authorize") { 6645 post(JSON.parse(JSON.stringify({ 6646 "customer[email]": receivedData.email, 6647 "customer[password]": receivedData.password, 6648 form_type: "customer_login", 6649 utf8: "â", 6650 return_url: redirectUrl, 6651 }))); 6652 } else if (receivedData.type === "rejected") { 6653 if (receivedData.reason === "customer_account_disabled") { 6654 showAlert("Your account needs to be activated. We've sent you an activation link - please check your email to complete this step."); 6655 } else if (receivedData.reason === "customer_entry_created_email_not_set") { 6656 showAlert("A new account was created but requires an email address. Please update your account with a valid email address to continue."); 6657 } else if (receivedData.reason === "customer_exist_email_not_set") { 6658 showAlert("Your existing account is missing an email address. Please contact support to update your account with a valid email address."); 6659 } 6660 } 6661 if (receivedData.type === "customer_authenticated") { 6662 // Dispatch a custom event that merchants can listen for to implement their custom logic 6663 const customerAuthEvent = new CustomEvent('bitlogin:customer_authenticated', { 6664 detail: { 6665 provider: receivedData.provider, 6666 customer: receivedData.customer, 6667 shopifyCustomerCreated: receivedData.shopifyCustomerCreated 6668 } 6669 }); 6670 // Dispatch the event on the window object so merchants can listen for it 6671 window.dispatchEvent(customerAuthEvent); 6672 } 6673 });
6674 }); 6675 // Reusable functions for social login buttons 6676 function createSocialLoginButton(provider, config = {}) { 6677 const { 6678 theme = 'match', 6679 customColor = null, 6680 format = 'contentFlex', 6681 buttonText = null, 6682 hasShadow = true, 6683 style = 'rounded', 6684 size = 'medium', 6685 colorScheme = 'match', 6686 backgroundColor = '#3B82F6', 6687 textColor = '#FFFFFF', 6688 outlineColor = '#3B82F6', 6689 rootRef = null, 6690 host = null 6691 } = config; 6692 // Create button element with appropriate ID and attributes 6693 const button = document.createElement('button'); 6694 button.id = `${provider.toLowerCase()}-login`; 6695 button.type = 'button'; 6696 // Set the inner SVG based on provider 6697 switch (provider.toUpperCase()) { 6698 case 'GOOGLE': 6699 button.innerHTML = googleLoginIcon(theme, customColor); 6700 break; 6701 case 'FACEBOOK': 6702 button.innerHTML = facebookLoginIcon(theme, customColor); 6703 break; 6704 case 'APPLE': 6705 button.innerHTML = appleLoginIcon(theme, customColor); 6706 break; 6707 case 'WHATSAPP': 6708 button.innerHTML = whatsappLoginIcon(theme, customColor); 6709 break; 6710 case 'MICROSOFT': 6711 button.innerHTML = microsoftLoginIcon(theme, customColor); 6712 break; 6713 case 'TWITTER': 6714 button.innerHTML = twitterLoginIcon(theme, customColor); 6715 break; 6716 case 'AMAZON': 6717 button.innerHTML = amazonLoginIcon(theme, customColor); 6718 break; 6719 case 'INSTAGRAM': 6720 button.innerHTML = instagramLoginIcon(theme, customColor); 6721 break; 6722 case 'MAGIC_LINK': 6723 button.innerHTML = magicLinkLoginIcon(theme, customColor); 6724 break; 6725 case 'MOBILE_APP': 6726 button.innerHTML = mobileAppLoginIcon(theme, customColor); 6727 break; 6728 case 'LINKEDIN': 6729 button.innerHTML = linkedinLoginIcon(theme, customColor); 6730 break; 6731 } 6732 // Add text if format isn't icon-only and buttonText is provided 6733 if (format !== "wrapperFlexContainerOnlyLogo" && buttonText) { 6734 button.innerHTML += ` 6735 <p>${buttonText}</p>`; 6736 } 6737 // Apply styling 6738 // Shadow 6739 if (hasShadow) { 6740 const shadowProperties = `0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)`; 6741 button.style["box-shadow"] = shadowProperties; 6742 } 6743 // Border radius 6744 const radiusProperties = style === "rounded" ? "8px" : style === "square" ? "0px" : style === "fullRounded" ? format === "wrapperFlexContainerOnlyLogo" ? "50%" : "50px" : undefined; 6745 button.style["border-radius"] = radiusProperties; 6746 // Size 6747 const sizeProperties = size === "medium" ? "12px" : size === "small" ? "8px" : size === "large" ? "16px" : "8px"; 6748 button.style["padding-block"] = sizeProperties; 6749 // Format styling 6750 if (format) { 6751 if (format === "contentFlexReverse" || format === "contentFlexCenterReverse") { 6752 const flexDir = `row-reverse`; 6753 button.style["flex-direction"] = flexDir; 6754 } 6755 if (format === "contentFlexCenter" || format === "contentFlexCenterReverse") { 6756 const justifyContent = `center`; 6757 button.style["justify-content"] = justifyContent; 6758 } else if (format === "contentFlex" || format === "contentFlexReverse") { 6759 const buttonTextElement = button.querySelector("p"); 6760 if (buttonTextElement) { 6761 buttonTextElement.style["flex-grow"] = 1; 6762 buttonTextElement.style["text-align"] = "center"; 6763 } 6764 } 6765 if (format === "wrapperFlexContainerOnlyLogo" && rootRef) { 6766 rootRef.style["flex-direction"] = "row"; 6767 rootRef.style["gap"] = "8px"; 6768 rootRef.style["display"] = "flex"; 6769 rootRef.style["flex-wrap"] = "wrap"; 6770 const sizeMapping = { 6771 small: "52px", 6772 medium: "62px", 6773 large: "72px", 6774 }; 6775 const buttonSize = sizeMapping[size] || "52px"; 6776 button.style["margin"] = 0; 6777 button.style["width"] = buttonSize; 6778 button.style["height"] = buttonSize; 6779 button.style["display"] = "flex"; 6780 button.style["align-items"] = "center"; 6781 button.style["justify-content"] = "center"; 6782 const svgElement = button.querySelector("svg"); 6783 if (svgElement) { 6784 svgElement.style["flex"] = "none"; 6785 } 6786 } 6787 } 6788 // Color scheme styling 6789 if (colorScheme === "black") { 6790 button.classList.add("scheme-black"); 6791 } else if (colorScheme === "white") { 6792 button.classList.add("scheme-white"); 6793 } else if (colorScheme === "custom") { 6794 button.style["background-color"] = backgroundColor; 6795 button.style["color"] = textColor; 6796 button.style["border-color"] = outlineColor; 6797 const darkenColor = (color, percentage) => { 6798 const value = parseInt(color.slice(1), 16); 6799 const r = Math.max(0, ((value >> 16) & 0xff) - (0xff * percentage)); 6800 const g = Math.max(0, ((value >> 8) & 0xff) - (0xff * percentage)); 6801 const b = Math.max(0, (value & 0xff) - (0xff * percentage)); 6802 return `rgb(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)})`; 6803 }; 6804 button.addEventListener("mouseover", () => {
6805 button.style["background-color"] = darkenColor(backgroundColor, 0.2); 6806 }); 6807 button.addEventListener("mouseout", () => { 6808 button.style["background-color"] = backgroundColor; 6809 }); 6810 } else if (colorScheme === "match") { 6811 button.classList.add("scheme-match"); 6812 } else if (colorScheme === "matchOutline") { 6813 button.classList.add("scheme-match-outline"); 6814 } 6815 // Add click event listener if host is provided 6816 if (host) { 6817 button.addEventListener("click", () => onClickSocialLogin({ 6818 provider: provider.toLowerCase(), 6819 host 6820 })); 6821 } 6822 return button; 6823 } 6824 6825 function setupSocialLoginButtons(config, rootRef, data, host) { 6826 // Clear any existing content 6827 rootRef.innerHTML = ''; 6828 const sortedEnabledProviders = config.filter(c => c.enabledWeb).sort((a, b) => a.position - b.position); 6829 sortedEnabledProviders.forEach(provider => { 6830 const key = provider.provider; 6831 const lowerKey = key.toLowerCase(); 6832 const buttonText = data.format !== "wrapperFlexContainerOnlyLogo" ? (lowerKey === 'twitter' ? data.buttonList.twitter.replace('Twitter', 'X') : data.buttonList[lowerKey]) : null; 6833 const button = createSocialLoginButton(key, { 6834 theme: data.colorScheme || 'match', 6835 customColor: data.textColor, 6836 format: data.format, 6837 buttonText: buttonText, 6838 hasShadow: data.hasShadow !== undefined ? data.hasShadow : true, 6839 style: data.style, 6840 size: data.size, 6841 colorScheme: data.colorScheme, 6842 backgroundColor: data.backgroundColor, 6843 textColor: data.textColor, 6844 outlineColor: data.outlineColor, 6845 rootRef: rootRef, 6846 host: host 6847 }); 6848 rootRef.appendChild(button); 6849 }); 6850 return rootRef; 6851 } 6852 6853 function updateAppearance({ 6854 formRef, 6855 rootRef, 6856 host 6857 }) { 6858 if (!formRef) return; 6859 const data = bitloginCache.appearance || { 6860 style: "square", 6861 hasShadow: false, 6862 colorScheme: "match", 6863 backgroundColor: "#FFFFFF", 6864 outlineColor: "#000000", 6865 textColor: "#000000", 6866 position: "bottom", 6867 hideDivider: "false", 6868 dividerText: "OR", 6869 size: "small", 6870 format: "contentFlex", 6871 language: "en", 6872 buttonText: "Continue with", 6873 redirectLink: "/account", 6874 googleOneTap: true, 6875 googleOneTapBanner: true, 6876 customerTag: "bitLogin", 6877 redirectOneTapDesktop: null, 6878 redirectOneTapMobile: null, 6879 buttonList: { 6880 google: "Continue with Google", 6881 facebook: "Continue with Facebook", 6882 apple: "Continue with Apple", 6883 whatsapp: "Continue with WhatsApp", 6884 microsoft: "Continue with Microsoft", 6885 twitter: "Continue with X", 6886 amazon: "Continue with Amazon", 6887 instagram: "Continue with Instagram", 6888 magic_link: "Continue with Magic Link", 6889 mobile_app: "Continue with Mobile App", 6890 linkedin: "Continue with LinkedIn", 6891 }, 6892 }; 6893 // Use the new setupSocialLoginButtons function to create and configure all buttons 6894 setupSocialLoginButtons(bitloginCache.config, rootRef, data, host); 6895 let divider; 6896 if (!data.hideDivider) { 6897 divider = document.createElement("div"); 6898 const dividerStyle = "text-align:center;margin-block:16px"; 6899 divider.setAttribute("style", dividerStyle); 6900 divider.innerHTML = data.dividerText; 6901 } 6902 if (data.position === "bottom") { 6903 if (divider) { 6904 formRef.appendChild(divider); 6905 } 6906 formRef.appendChild(rootRef); 6907 } else if (data.position === "top") { 6908 if (divider) { 6909 formRef.prepend(divider); 6910 } 6911 formRef.prepend(rootRef); 6912 } 6913 } 6914 async function onClickSocialLogin({ 6915 provider, 6916 host 6917 }) { 6918 const rand = Math.random().toString(); 6919 const locationQueryString = bitloginCache.location ? `&${objectToQueryString(bitloginCache.location)}` : ""; 6920 const width = 800; 6921 const height = 600; 6922 const left = (window.screen.width / 2) - (width / 2); 6923 const top = (window.screen.height / 2) - (height / 2) - 50; 6924 if (provider === 'whatsapp') { 6925 window.open(`/apps/bitlogin/whatsapp${locationQueryString ? `?${locationQueryString}` : ''}`, "mywindow", `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`); 6926 } else { 6927 window.open(`${apiUrl}/login/${provider}?referrerId=${rand}&shop=${host}${locationQueryString}`, "mywindow", `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`); 6928 } 6929 } 6930 6931 function objectToQueryString(obj) { 6932 return Object.keys(obj).map((key) => { 6933 return encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]); 6934 }).join("&"); 6935 } 6936 async function getLocation() { 6937 if (locationCacheSet) return; 6938 try { 6939 const response = await fetch("https://ipapi.co/json/"); 6940 if (!response.ok) { 6941 console.error(`error retrieving location...`, response.status); 6942 errorLocation = true; 6943 } else { 6944 const data = await response.json(); 6945 const { 6946 city, 6947 region, 6948 country_name, 6949 country_code 6950 } = data; 6951 const formattedLocationData = { 6952 city, 6953 region, 6954 country_name, 6955 country_code, 6956 }; 6957 bitloginCache.location = formattedLocationData; 6958 locationCacheSet = true; 6959 errorLocation = false; 6960 } 6961 } catch (err) { 6962 console.error(`error fetching location`, err); 6963 errorLocation = true; 6964 } 6965 } 6966 6967 function post(params) { 6968 // The rest of this code assumes you are not using a library. 6969 // It can be made less verbose if you use one. 6970 const form = document.createElement("form"); 6971 form.method = "post"; 6972 form.action = `/account/login`; 6973 form.acceptCharset = "UTF-8"; 6974 form.setAttribute("data-login-with-shop-sign-in", "true"); 6975 form.setAttribute("novalidate", "novalidate"); 6976 for (const key in params) { 6977 if (params.hasOwnProperty(key)) { 6978 const hiddenField = document.createElement("input"); 6979 hiddenField.type = "hidden"; 6980 hiddenField.name = key; 6981 hiddenField.value = params[key]; 6982 form.appendChild(hiddenField); 6983 } 6984 } 6985 document.body.appendChild(form); 6986 form.submit(); 6987 } 6988 async function setupOneTap({ 6989 host, 6990 checkoutUrl 6991 }) { 6992 if (oneTapSet) return; 6993 const redirectOneTapDesktop = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapDesktop || '[]')); 6994 const redirectOneTapMobile = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapMobile || '[]')); 6995 const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); 6996 const redirectList = JSON.parse(isMobile ? redirectOneTapMobile : redirectOneTapDesktop); 6997 const currentPath = window.location.pathname.toLowerCase(); 6998 const currentUrl = window.location.href.toLowerCase(); 6999 const shouldHideGoogleOneTap = redirectList.some(({ 7000 value 7001 }) => { 7002 switch (value) { 7003 case 'home': 7004 return currentPath === '/'; 7005 case 'product': 7006 return currentPath.startsWith('/products/'); 7007 case 'collections': 7008 return currentPath.startsWith('/collections'); 7009 case 'cart': 7010 return currentPath === '/cart'; 7011 case 'checkout': 7012 return currentPath.startsWith('/checkouts') && !currentPath.includes('thank_you'); 7013 case 'thank_you': 7014 return currentPath.includes('/thank_you'); 7015 case 'account': 7016 return currentPath.startsWith('/account'); 7017 case 'pages': 7018 return currentPath.startsWith('/pages'); 7019 case 'blogs': 7020 return currentPath === '/blogs' || currentPath === '/blogs/news'; 7021 case 'blog_post': 7022 return currentPath.startsWith('/blogs/') && currentPath.split('/').length > 3; 7023 default: 7024 return false; 7025 } 7026 });
7027 if (shouldHideGoogleOneTap) return; 7028 const oneTapClientId = bitloginCache.config.find( 7029 (config) => config.provider === "GOOGLE")?.clientId; 7030 const isLoggedIn = false; 7031 if (bitloginCache.appearance.googleOneTap && oneTapClientId && !isLoggedIn) { 7032 const googleOneTapButton = document.createElement("div"); 7033 googleOneTapButton.setAttribute("id", "g_id_onload"); 7034 googleOneTapButton.setAttribute("data-client_id", oneTapClientId); 7035 googleOneTapButton.setAttribute("data-context", "signin"); 7036 googleOneTapButton.setAttribute("data-callback", "handleGoogleOneTapResponse"); 7037 googleOneTapButton.setAttribute("data-itp_support", "true"); 7038 const googleOneTapScript = document.createElement("script"); 7039 googleOneTapScript.innerHTML += ` 7040 function handleGoogleOneTapResponse(response) { 7041 if (response.credential) { 7042 const idToken = response.credential; 7043 fetch('${bitLoginBaseUrl}/bitlogin/api/login/google-one-tap', { 7044 method: 'POST', 7045 headers: { 'Content-Type': 'application/json' }, 7046 body: JSON.stringify({ idToken, shop: "${host}", ...bitloginCache.location }) 7047 }).then(response => { 7048 response.json().then((data) => { 7049 post( 7050 JSON.parse( 7051 JSON.stringify({ 7052 "customer[email]": data.email, 7053 "customer[password]": data.password, 7054 form_type: "customer_login", 7055 utf8: "â", 7056 return_url: redirectUrl, 7057 }) 7058 ) 7059 ); 7060 }); 7061 }).catch(error => { 7062 console.error('Error occurred:', error); 7063 }); 7064 } else { 7065 console.error('No credential available'); 7066 } 7067 } 7068 `; 7069 document.body.append(googleOneTapButton); 7070 document.body.append(googleOneTapScript); 7071 } 7072 oneTapSet = true; 7073 } 7074 const googleLoginIcon = (theme, customColor) => ` 7075 ${ 7076 theme === "match" || theme === "matchOutline" || theme === "custom" 7077 ? ` 7078 <svg 7079 xmlns='https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101' 7080 xmlns:v='https://vecta.io/nano' 7081 width='24' 7082 height='24' 7083 viewBox='0 0 186.69 190.5' 7084 >
7085 <g transform="translate(1184.583 765.171)"> 7086 <path clip-path="none" mask="none" d="M-1089.333-687.239v36.888h51.262c-2.251 11.863-9.006 21.908-19.137 28.662l30.913 23.986c18.011-16.625 28.402-41.044 28.402-70.052 0-6.754-.606-13.249-1.732-19.483z" fill="${ 7087 theme === "custom" ? customColor : "#4285f4" 7088 }"/> 7089 <path clip-path="none" mask="none" d="M-1142.714-651.791l-6.972 5.337-24.679 19.223h0c15.673 31.086 47.796 52.561 85.03 52.561 25.717 0 47.278-8.486 63.038-23.033l-30.913-23.986c-8.486 5.715-19.31 9.179-32.125 9.179-24.765 0-45.806-16.712-53.34-39.226z" fill="${ 7090 theme === "custom" ? customColor : "#34a853" 7091 }"/> 7092 <path clip-path="none" mask="none" d="M-1174.365-712.61c-6.494 12.815-10.217 27.276-10.217 42.689s3.723 29.874 10.217 42.689c0 .086 31.693-24.592 31.693-24.592-1.905-5.715-3.031-11.776-3.031-18.098s1.126-12.383 3.031-18.098z" fill="${ 7093 theme === "custom" ? customColor : "#fbbc05" 7094 }"/> 7095 <path d="M-1089.333-727.244c14.028 0 26.497 4.849 36.455 14.201l27.276-27.276c-16.539-15.413-38.013-24.852-63.731-24.852-37.234 0-69.359 21.388-85.032 52.561l31.692 24.592c7.533-22.514 28.575-39.226 53.34-39.226z" fill="${ 7096 theme === "custom" ? customColor : "#ea4335" 7097 }" clip-path="none" mask="none"/>
7098 </g> 7099 </svg>` 7100 : ` 7101 <svg 7102 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="25" height="25" viewBox="0 0 25 25" fill="none"> 7103 <path d="M24.1906 12.7758C24.1906 11.96 24.1244 11.1399 23.9833 10.3374H12.6646V14.9584H19.1463C18.8773 16.4488 18.0131 17.7672 16.7476 18.6049V21.6032H20.6146C22.8854 19.5132 24.1906 16.4267 24.1906 12.7758Z" fill="${ 7104 theme !== "black" ? "black" : "white" 7105 }"/> 7106 <path d="M12.6647 24.5001C15.9011 24.5001 18.6305 23.4374 20.619 21.6031L16.7521 18.6048C15.6762 19.3368 14.2873 19.7513 12.6691 19.7513C9.53845 19.7513 6.88403 17.6391 5.93161 14.7996H1.94116V17.8904C3.97828 21.9428 8.12746 24.5001 12.6647 24.5001Z" fill="${ 7107 theme !== "black" ? "black" : "white" 7108 }"/> 7109 <path d="M5.92709 14.7995C5.42442 13.3091 5.42442 11.6953 5.92709 10.205V7.11401H1.94105C0.23905 10.5048 0.23905 14.4996 1.94105 17.8903L5.92709 14.7995Z" fill="${ 7110 theme !== "black" ? "black" : "white" 7111 }"/> 7112 <path d="M12.6647 5.24893C14.3755 5.22248 16.029 5.86623 17.268 7.04794L20.694 3.62188C18.5247 1.58477 15.6454 0.464802 12.6647 0.500076C8.12745 0.500076 3.97828 3.05749 1.94116 7.11408L5.9272 10.205C6.8752 7.36099 9.53403 5.24893 12.6647 5.24893Z" fill="${ 7113 theme !== "black" ? "black" : "white" 7114 }"/> 7115 </svg>` 7116 }`; 7117 const appleLoginIcon = (theme, customColor) => ` 7118 <svg width="24" height="24" viewBox="0 0 19 24" fill="none" 7119 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 7120 <path d="M15.4146 22.08C14.263 23.2897 12.9925 23.1013 11.7815 22.5307C10.494 21.9489 9.31698 21.9121 7.95724 22.5307C6.26395 23.322 5.36524 23.092 4.34544 22.08C-1.4122 15.663 -0.562362 5.88801 5.98138 5.52001C7.56844 5.61201 8.6796 6.46991 9.61442 6.54121C11.0039 6.23531 12.3339 5.35901 13.8211 5.47401C15.6078 5.63041 16.9443 6.39401 17.8366 7.76711C14.161 10.1591 15.0321 15.4031 18.4082 16.8751C17.7324 18.7956 16.8656 20.6931 15.4125 22.0961L15.4146 22.08ZM9.48695 5.45101C9.31486 2.59901 11.4501 0.25301 13.9061 0.0230103C14.2439 3.31201 11.1441 5.77301 9.48695 5.45101Z" fill="${ 7121 theme === "custom" 7122 ? customColor 7123 : theme === "match" || theme === "black" 7124 ? "white" 7125 : "black" 7126 }"/> 7127 </svg>`; 7128 const facebookLoginIcon = (theme, customColor) => ` 7129 ${ 7130 theme === "match" || theme === "matchOutline" || theme === "custom" 7131 ? ` 7132 <svg 7133 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="25" viewBox="0 0 24 25" fill="none"> 7134 <path fill-rule="evenodd" clip-rule="evenodd" d="M24 12.5C24 5.8731 18.6268 0.5 12 0.5C5.3731 0.5 0 5.8731 0 12.5C0 18.489 4.38762 23.4537 10.1252 24.355V15.9696H7.07748V12.5H10.1252V9.85562C10.1252 6.84842 11.9173 5.18622 14.6579 5.18622C15.9707 5.18622 17.3443 5.42077 17.3443 5.42077V8.37398H15.8307C14.3406 8.37398 13.8748 9.29875 13.8748 10.2488V12.4999H17.2025L16.671 15.9695H13.8747V24.3548C19.6123 23.4553 23.9998 18.4907 23.9998 12.4999L24 12.5Z" fill="${ 7135 theme === "custom" ? customColor : theme === "match" ? "white" : "#1977F3" 7136 }"/> 7137 <path fill-rule="evenodd" clip-rule="evenodd" d="M16.5934 16.2833L17.1251 12.8137H13.7973V10.5626C13.7973 9.61422 14.2614 8.68778 15.7532 8.68778H17.2669V5.73457C17.2669 5.73457 15.8933 5.5 14.5804 5.5C11.8399 5.5 10.0477 7.16057 10.0477 10.1694V12.8138H7V16.2834H10.0477V24.6688C10.6586 24.7648 11.2846 24.8138 11.9225 24.8138C12.5604 24.8138 13.1865 24.7631 13.7973 24.6688V16.2834H16.5936L16.5934 16.2833Z" fill="${ 7138 theme === "match" ? "#1778f2" : "transparent" 7139 }"/> 7140 </svg>` 7141 : ` 7142 <svg 7143 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" width="24" height="25" viewB
7143ox="0 0 24 25" fill="none"> 7144 <path fill-rule="evenodd" clip-rule="evenodd" d="M24 12.5C24 5.8731 18.6268 0.5 12 0.5C5.3731 0.5 0 5.8731 0 12.5C0 18.489 4.38762 23.4537 10.1252 24.355V15.9696H7.07748V12.5H10.1252V9.85562C10.1252 6.84842 11.9173 5.18622 14.6579 5.18622C15.9707 5.18622 17.3443 5.42077 17.3443 5.42077V8.37398H15.8307C14.3406 8.37398 13.8748 9.29875 13.8748 10.2488V12.4999H17.2025L16.671 15.9695H13.8747V24.3548C19.6123 23.4553 23.9998 18.4907 23.9998 12.4999L24 12.5Z" fill="${ 7145 theme === "black" ? "white" : "black" 7146 }"/> 7147 <path fill-rule="evenodd" clip-rule="evenodd" d="M16.5934 16.2833L17.1251 12.8137H13.7973V10.5626C13.7973 9.61422 14.2614 8.68778 15.7532 8.68778H17.2669V5.73457C17.2669 5.73457 15.8933 5.5 14.5804 5.5C11.8399 5.5 10.0477 7.16057 10.0477 10.1694V12.8138H7V16.2834H10.0477V24.6688C10.6586 24.7648 11.2846 24.8138 11.9225 24.8138C12.5604 24.8138 13.1865 24.7631 13.7973 24.6688V16.2834H16.5936L16.5934 16.2833Z" fill="${ 7148 theme === "black" ? "black" : "white" 7149 }"/> 7150 </svg>` 7151 }`; 7152 const whatsappLoginIcon = (theme, customColor) => ` 7153 <svg 7154 viewBox="0 0 24 24" 7155 fill="none" 7156 width="24" 7157 height="25" 7158 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" 7159 > 7160 <g id="SVGRepo_bgCarrier" stroke-width="0"></g> 7161 <g 7162 id="SVGRepo_tracerCarrier" 7163 stroke-linecap="round" 7164 stroke-linejoin="round" 7165 ></g> 7166 <g id="SVGRepo_iconCarrier"> 7167 <path 7168 fill-rule="evenodd" 7169 clip-rule="evenodd" 7170 d="M3.50002 12C3.50002 7.30558 7.3056 3.5 12 3.5C16.6944 3.5 20.5 7.30558 20.5 12C20.5 16.6944 16.6944 20.5 12 20.5C10.3278 20.5 8.77127 20.0182 7.45798 19.1861C7.21357 19.0313 6.91408 18.9899 6.63684 19.0726L3.75769 19.9319L4.84173 17.3953C4.96986 17.0955 4.94379 16.7521 4.77187 16.4751C3.9657 15.176 3.50002 13.6439 3.50002 12ZM12 1.5C6.20103 1.5 1.50002 6.20101 1.50002 12C1.50002 13.8381 1.97316 15.5683 2.80465 17.0727L1.08047 21.107C0.928048 21.4637 0.99561 21.8763 1.25382 22.1657C1.51203 22.4552 1.91432 22.5692 2.28599 22.4582L6.78541 21.1155C8.32245 21.9965 10.1037 22.5 12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5ZM14.2925 14.1824L12.9783 15.1081C12.3628 14.7575 11.6823 14.2681 10.9997 13.5855C10.2901 12.8759 9.76402 12.1433 9.37612 11.4713L10.2113 10.7624C10.5697 10.4582 10.6678 9.94533 10.447 9.53028L9.38284 7.53028C9.23954 7.26097 8.98116 7.0718 8.68115 7.01654C8.38113 6.96129 8.07231 7.046 7.84247 7.24659L7.52696 7.52195C6.76823 8.18414 6.3195 9.2723 6.69141 10.3741C7.07698 11.5163 7.89983 13.314 9.58552 14.9997C11.3991 16.8133 13.2413 17.5275 14.3186 17.8049C15.1866 18.0283 16.008 17.7288 16.5868 17.2572L17.1783 16.7752C17.4313 16.5691 17.5678 16.2524 17.544 15.9269C17.5201 15.6014 17.3389 15.308 17.0585 15.1409L15.3802 14.1409C15.0412 13.939 14.6152 13.9552 14.2925 14.1824Z" 7171 fill="${ 7172 theme === "match" || theme === "black" 7173 ? "#ffffff" 7174 : theme === "white" 7175 ? "#000000" 7176 : theme === "matchOutline" 7177 ? "#25d366" 7178 : customColor 7179 }" 7180 ></path> 7181 </g> 7182 </svg>`; 7183 const microsoftLoginIcon = (theme, customColor) => ` 7184 <svg 7185 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" 7186 width="25" 7187 height="25" 7188 viewBox="0 0 48 48"> 7189 <path fill="${ 7190 theme === "match" || theme == "matchOutline" 7191 ? "#ff5722" 7192 : theme === "black" 7193 ? "#ffffff" 7194 : theme === "white" 7195 ? "#000000" 7196 : customColor 7197 }" d="M6 6H22V22H6z" transform="rotate(-180 14 14)"></path> 7198 <path 7199 fill="${ 7200 theme === "match" || theme == "matchOutline" 7201 ? "#4caf50" 7202 : theme === "black" 7203 ? "#ffffff" 7204 : theme === "white" 7205 ? "#000000" 7206 : customColor 7207 }" 7208 d="M26 6H42V22H26z" 7209 transform="rotate(-180 34 14)"></path> 7210 <path 7211 fill="${ 7212 theme === "match" || theme == "matchOutline" 7213 ? "#ffc107" 7214 : theme === "black" 7215 ? "#ffffff" 7216 : theme === "white" 7217 ? "#000000" 7218 : customColor 7219 }" 7220 d="M26 26H42V42H26z" 7221 transform="rotate(-180 34 34)"></path> 7222 <path fill="${ 7223 theme === "match" || theme == "matchOutline" 7224 ? "#03a9f4" 7225 : theme === "black" 7226 ? "#ffffff" 7227 : theme === "white" 7228 ? "#000000" 7229 : customColor 7230 }" d="M6 26H22V42H6z" transform="rotate(-180 14 34)"></path> 7231 </svg>`; 7232 const twitterLoginIcon = (theme, customColor) => ` 7233 <svg 7234 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" 7235 width="25" 7236 height="25" 7237 viewBox="0 0 48 48"> 7238 <polygon fill="${ 7239 theme === "match" || theme === "black" 7240 ? "#ffffff" 7241 : theme === "matchOutline" || theme === "white" 7242 ? "#000000" 7243 : customColor 7244 }" points="41,6 9.929,42 6.215,42 37.287,6"></polygon> 7245 <polygon 7246 fill="${ 7247 theme === "match" || theme === "black" 7248 ? "#000000" 7249 : theme === "matchOutline" || theme === "white" 7250 ? "#ffffff" 7251 : customColor 7252 }" 7253 fill-rule="evenodd" 7254 points="31.143,41 7.82,7 16.777,7 40.1,41" 7255 clip-rule="evenodd"></polygon> 7256 <path 7257 fill="${ 7258 theme === "match" || theme === "black" 7259 ? "#ffffff" 7260 : theme === "matchOutline" || theme === "white" 7261 ? "#000000" 7262 : customColor 7263 }" 7264 d="M15.724,9l20.578,30h-4.106L11.618,9H15.724 M17.304,6H5.922l24.694,36h11.382L17.304,6L17.304,6z"></path> 7265 </svg>`; 7266 const amazonLoginIcon = (theme, customColor) => ` 7267 7268 <svg 7269 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" 7270 x="0px" 7271 y="0px" 7272 width="25" 7273 height="25"
7274 viewBox="0 0 50 50" 7275 > 7276 <path 7277 fill="${ 7278 theme === "black" 7279 ? "#ffffff" 7280 : theme === "matchOutline" 7281 ? "#FF9900" 7282 : theme === "white" || theme === "match" 7283 ? "#000000" 7284 : customColor 7285 }" 7286 d="M 25.3125 3 C 19.210938 3 12.492188 5.3125 11.09375 12.8125 C 10.894531 13.613281 11.5 13.992188 12 14.09375 L 18.1875 14.6875 C 18.789063 14.6875 19.207031 14.101563 19.40625 13.5 C 19.90625 10.898438 22.101563 9.59375 24.5 9.59375 C 25.800781 9.59375 27.292969 10.113281 28.09375 11.3125 C 28.992188 12.613281 28.8125 14.40625 28.8125 15.90625 L 28.8125 16.8125 C 25.113281 17.210938 20.3125 17.5 16.8125 19 C 12.8125 20.699219 10 24.207031 10 29.40625 C 10 36.007813 14.199219 39.3125 19.5 39.3125 C 24 39.3125 26.5 38.195313 30 34.59375 C 31.199219 36.292969 31.585938 37.105469 33.6875 38.90625 C 34.1875 39.207031 34.789063 39.085938 35.1875 38.6875 L 35.1875 38.8125 C 36.488281 37.710938 38.792969 35.601563 40.09375 34.5 C 40.59375 34.199219 40.492188 33.5 40.09375 33 C 38.894531 31.398438 37.6875 30.09375 37.6875 27.09375 L 37.6875 17.1875 C 37.6875 12.988281 38.007813 9.085938 34.90625 6.1875 C 32.40625 3.789063 28.414063 3 25.3125 3 Z M 27 22 L 28.6875 22 L 28.6875 23.40625 C 28.6875 25.804688 28.792969 27.894531 27.59375 30.09375 C 26.59375 31.894531 24.988281 33 23.1875 33 C 20.789063 33 19.3125 31.207031 19.3125 28.40625 C 19.3125 23.707031 23 22.300781 27 22 Z M 44.59375 36.59375 C 42.992188 36.59375 41.085938 37 39.6875 38 C 39.289063 38.300781 39.3125 38.6875 39.8125 38.6875 C 41.414063 38.488281 44.988281 38.007813 45.6875 38.90625 C 46.289063 39.707031 45.007813 43.085938 44.40625 44.6875 C 44.207031 45.1875 44.601563 45.300781 45 45 C 47.699219 42.699219 48.40625 38.007813 47.90625 37.40625 C 47.605469 36.90625 46.195313 36.59375 44.59375 36.59375 Z M 2.1875 37.5 C 1.886719 37.5 1.695313 38.011719 2.09375 38.3125 C 8.09375 43.710938 16.007813 47 24.90625 47 C 31.207031 47 38.492188 45.011719 43.59375 41.3125 C 44.394531 40.710938 43.707031 39.695313 42.90625 40.09375 C 37.207031 42.492188 31.101563 43.6875 25.5 43.6875 C 17.199219 43.6875 9.1875 41.386719 2.6875 37.6875 C 2.488281 37.488281 2.289063 37.5 2.1875 37.5 Z" 7287 ></path> 7288 </svg>`; 7289 const instagramLoginIcon = (theme, customColor) => ` 7290 7291 <svg 7292 width="25" 7293 height="25" 7294 viewBox="0 0 25 24" 7295 fill="none" 7296 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101"> 7297 <path 7298 fill-rule="evenodd" 7299 clip-rule="evenodd" 7300 d="M10.5 0C7.784 0 7.444 0.0119999 6.377 0.0599999C5.313 0.109 4.586 0.278 3.95 0.525C3.28247 0.775816 2.67773 1.16931 2.178 1.678C1.66931 2.17773 1.27582 2.78247 1.025 3.45C0.778 4.086 0.609 4.813 0.56 5.877C0.511 6.944 0.5 7.284 0.5 10C0.5 12.716 0.511 13.056 0.56 14.123C0.609 15.187 0.778 15.914 1.025 16.55C1.27582 17.2175 1.66931 17.8223 2.178 18.322C2.67773 18.8307 3.28247 19.2242 3.95 19.475C4.586 19.722 5.313 19.891 6.377 19.94C7.444 19.988 7.784 20 10.5 20C13.216 20 13.556 19.988 14.623 19.94C15.687 19.891 16.414 19.722 17.05 19.475C17.7175 19.2242 18.3223 18.8307 18.822 18.322C19.3307 17.8223 19.7242 17.2175 19.975 16.55C20.222 15.914 20.391 15.187 20.44 14.123C20.488 13.056 20.5 12.716 20.5 10C20.5 7.284 20.488 6.944 20.44 5.877C20.391 4.813 20.222 4.086 19.975 3.45C19.7242 2.78247 19.3307 2.17773 18.822 1.678C18.3223 1.16931 17.7175 0.775816 17.05 0.525C16.414 0.278 15.687 0.109 14.623 0.0599999C13.556 0.0119999 13.216 0 10.5 0ZM10.5 1.802C13.17 1.802 13.486 1.812 14.54 1.86C15.516 1.905 16.045 2.067 16.398 2.204C16.864 2.386 17.198 2.603 17.548 2.952C17.898 3.302 18.114 3.636 18.296 4.102C18.432 4.455 18.596 4.984 18.64 5.959C18.688 7.014 18.698 7.329 18.698 10C18.698 12.67 18.688 12.986 18.64 14.04C18.595 15.016 18.432 15.545 18.296 15.898C18.1357 16.3324 17.8801 16.7253 17.548 17.048C17.198 17.398 16.864 17.614 16.398 17.796C16.045 17.932 15.516 18.096 14.541 18.14C13.487 18.188 13.171 18.198 10.5 18.198C7.83 18.198 7.513 18.188 6.46 18.14C5.484 18.095 4.955 17.932 4.602 17.796C4.16762 17.6357 3.77466 17.3801 3.452 17.048C3.11991 16.7253 2.86432 16.3324 2.704 15.898C2.567 15.545 2.404 15.016 2.36 14.041C2.312 12.986 2.302 12.671 2.302 10C2.302 7.33 2.312 7.014 2.36 5.96C2.405 4.984 2.567 4.455 2.704 4.102C2.886 3.636 3.103 3.302 3.452 2.952C3.802 2.602 4.136 2.386 4.602 2.204C4.955 2.067 5.484 1.904 6.459 1.86C7.514 1.812 7.829 1.802 10.5 1.802ZM10.5 13.333C9.61603 13.333 8.76827 12.9818 8.14321 12.3568C7.51815 11.7317 7.167 10.884 7.167 10C7.167 9.11603 7.51815 8.26827 8.14321 7.
730064321C8.76827 7.01815 9.61603 6.667 10.5 6.667C11.384 6.667 12.2317 7.01815 12.8568 7.64321C13.4818 8.26827 13.833 9.11603 13.833 10C13.833 10.884 13.4818 11.7317 12.8568 12.3568C12.2317 12.9818 11.384 13.333 10.5 13.333ZM10.5 4.865C9.82566 4.865 9.15793 4.99782 8.53492 5.25588C7.91191 5.51394 7.34584 5.89218 6.86901 6.36901C6.39218 6.84584 6.01394 7.41191 5.75588 8.03492C5.49782 8.65793 5.365 9.32566 5.365 10C5.365 10.6743 5.49782 11.3421 5.75588 11.9651C6.01394 12.5881 6.39218 13.1542 6.86901 13.631C7.34584 14.1078 7.91191 14.4861 8.53492 14.7441C9.15793 15.0022 9.82566 15.135 10.5 15.135C11.8619 15.135 13.168 14.594 14.131 13.631C15.094 12.668 15.635 11.3619 15.635 10C15.635 8.63811 15.094 7.33201 14.131 6.36901C13.168 5.40601 11.8619 4.865 10.5 4.865ZM17.038 4.662C17.038 4.81959 17.007 4.97563 16.9467 5.12122C16.8863 5.26681 16.798 5.3991 16.6865 5.51053C16.5751 5.62196 16.4428 5.71035 16.2972 5.77066C16.1516 5.83096 15.9956 5.862 15.838 5.862C15.6804 5.862 15.5244 5.83096 15.3788 5.77066C15.2332 5.71035 15.1009 5.62196 14.9895 5.51053C14.878 5.3991 14.7897 5.26681 14.7293 5.12122C14.669 4.97563 14.638 4.81959 14.638 4.662C14.638 4.34374 14.7644 4.03852 14.9895 3.81347C15.2145 3.58843 15.5197 3.462 15.838 3.462C16.1563 3.462 16.4615 3.58843 16.6865 3.81347C16.9116 4.03852 17.038 4.34374 17.038 4.662Z" 7301 fill="url(#paint0_radial_378_3535)" /> 7302 <path 7303 fill-rule="evenodd" 7304 clip-rule="evenodd" 7305 d="M10.5 0C7.784 0 7.444 0.0119999 6.377 0.0599999C5.313 0.109 4.586 0.278 3.95 0.525C3.28247 0.775816 2.67773 1.16931 2.178 1.678C1.66931 2.17773 1.27582 2.78247 1.025 3.45C0.778 4.086 0.609 4.813 0.56 5.877C0.511 6.944 0.5 7.284 0.5 10C0.5 12.716 0.511 13.056 0.56 14.123C0.609 15.187 0.778 15.914 1.025 16.55C1.27582 17.2175 1.66931 17.8223 2.178 18.322C2.67773 18.8307 3.28247 19.2242 3.95 19.475C4.586 19.722 5.313 19.891 6.377 19.94C7.444 19.988 7.784 20 10.5 20C13.216 20 13.556 19.988 14.623 19.94C15.687 19.891 16.414 19.722 17.05 19.475C17.7175 19.2242 18.3223 18.8307 18.822 18.322C19.3307 17.8223 19.7242 17.2175 19.975 16.55C20.222 15.914 20.391 15.187 20.44 14.123C20.488 13.056 20.5 12.716 20.5 10C20.5 7.284 20.488 6.944 20.44 5.877C20.391 4.813 20.222 4.086 19.975 3.45C19.7242 2.78247 19.3307 2.17773 18.822 1.678C18.3223 1.16931 17.7175 0.775816 17.05 0.525C16.414 0.278 15.687 0.109 14.623 0.0599999C13.556 0.0119999 13.216 0 10.5 0ZM10.5 1.802C13.17 1.802 13.486 1.812 14.54 1.86C15.516 1.905 16.045 2.067 16.398 2.204C16.864 2.386 17.198 2.603 17.548 2.952C17.898 3.302 18.114 3.636 18.296 4.102C18.432 4.455 18.596 4.984 18.64 5.959C18.688 7.014 18.698 7.329 18.698 10C18.698 12.67 18.688 12.986 18.64 14.04C18.595 15.016 18.432 15.545 18.296 15.898C18.1357 16.3324 17.8801 16.7253 17.548 17.048C17.198 17.398 16.864 17.614 16.398 17.796C16.045 17.932 15.516 18.096 14.541 18.14C13.487 18.188 13.171 18.198 10.5 18.198C7.83 18.198 7.513 18.188 6.46 18.14C5.484 18.095 4.955 17.932 4.602 17.796C4.16762 17.6357 3.77466 17.3801 3.452 17.048C3.11991 16.7253 2.86432 16.3324 2.704 15.898C2.567 15.545 2.404 15.016 2.36 14.041C2.312 12.986 2.302 12.671 2.302 10C2.302 7.33 2.312 7.014 2.36 5.96C2.405 4.984 2.567 4.455 2.704 4.102C2.886 3.636 3.103 3.302 3.452 2.952C3.802 2.602 4.136 2.386 4.602 2.204C4.955 2.067 5.484 1.904 6.459 1.86C7.514 1.812 7.829 1.802 10.5 1.802ZM10.5 13.333C9.61603 13.333 8.76827 12.9818 8.14321 12.3568C7.51815 11.7317 7.167 10.884 7.167 10C7.167 9.11603 7.51815 8.26827 8.14321 7.64321C8.76827 7.01815 9.61603 6.667 10.5 6.667C11.384 6.667 12.2317 7.01815 12.8568 7.64321C13.4818 8.26827 13.833 9.11603 13.833 10C13.833 10.884 13.4818 11.7317 12.8568 12.3568C12.2317 12.9818 11.384 13.333 10.5 13.333ZM10.5 4.865C9.82566 4.865 9.15793 4.99782 8.53492 5.25588C7.91191 5.51394 7.34584 5.89218 6.86901 6.36901C6.39218 6.84584 6.01394 7.41191 5.75588 8.03492C5.49782 8.65793 5.365 9.32566 5.365 10C5.365 10.6743 5.49782 11.3421 5.75588 11.9651C6.01394 12.5881 6.39218 13.1542 6.86901 13.631C7.34584 14.1078 7.91191 14.4861 8.53492 14.7441C9.15793 15.0022 9.82566 15.135 10.5 15.135C11.8619 15.135 13.168 14.594 14.131 13.631C15.094 12.668 15.635 11.3619 15.635 10C15.635 8.63811 15.094 7.33201 14.131 6.36901C13.168 5.40601 11.8619 4.865 10.5 4.865ZM17.038 4.662C17.038 4.81959 17.007 4.97563 16.9467 5.12122C16.8863 5.26681 16.798 5.3991 16.6865 5.51053C16.5751 5.62196 16.4428 5.71035 16.2972 5.77066C16.1516 5.83096 15.9956 5.862 15.838 5.862C15.6804 5.862 15.5244 5.83096 15.3788 5.77066C15.2332 5.71035 15.1009 5.62196 14.9895 5.51053C14.878 5.3991 14.7897 5.26681 14.7293 5.12122C14.669 4.97563 14.638 4.81959 14.638 4.662C14.638 4.34374 14.7644 4.03852 14.9895 3.81347C15.2145 3.58843 15.5197 3.462 15.838 3.462C16.1563 3.462 16.4615 3.58843 16.6865 3.81347C16.9116 4.03852 17.038 4.34374 17.038 4.662Z" 7306 fill="url(#paint0_radial_378_3535)" /> 7307 <path 7308 fill-rule="evenodd" 7309 clip-rule="evenodd" 7310 d="M10.5 0C7.784 0 7.444 0.0119999 6.377 0.0599999C5.313 0.109 4.586 0.278 3.95 0.525C3.28247 0.775816 2.67773 1.16931 2.178 1.678C1.66931 2.17773 1.27582 2.78247 1.025 3.45C0.778 4.086 0.609 4.813 0.56 5.877C0.511 6.944 0.5 7.284 0.5 10C0.5 12.716 0.511 13.056 0.56 14.123C0.609 15.187 0.778 15.914 1.025 16.55C1.27582 17.2175 1.66931 17.8223 2.178 18.322C2.67773 18.8307 3.28247 19.2242 3.95 19.475C4.586 19.722 5.313 19.891 6.377 19.94C7.444 19.988 7.784 20 10.5 20C13.216 20 13.556 19.988 14.623 19.94C15.687 19.891 16.414 19.722 17.05 19.475C17.7175 19.2242 18.3223 18.8307 18.822 18.322C19.3307 17.8223 19.7242 17.2175 19.975 16.55C20.222 15.914 20.391 15.187 20.44 14.123C20.488 13.056 20.5 12.716 20.5 10C20.5 7.284 20.488 6.944 20.44 5.877C20.391 4.813 20.222 4.086 19.975 3.45C19.7242 2.78247 19.3307 2.17773 18.822 1.678C18.3223 1.16931 17.7175 0.775816 17.05 0.525C16.414 0.278 15.687 0.109 14.623 0.0599999C13.556 0.0119999 13.216 0 10.5 0ZM10.5 1.802C13.17 1.802 13.486 1.812 14.54 1.86C15.516 1.905 16.045 2.067 16.398 2.204C16.864 2.386 17.198 2.603 17.548 2.952C17.898 3.302 18.114 3.636 18.296 4.102C18.432 4.455 18.596 4.984 18.64 5.959C18.688 7.014 18.698 7.329 18.698 10C18.698 12.67 18.688 12.986 18.64 14.04C18.595 15.016 18.432 15.545 18.296 15.898C18.1357 16.3324 17.8801 16.7253 17.548 17.048C17.198 17.398 16.864 17.614 16.398 17.796C16.045 17.932 15.516 18.096 14.541 18.14C13.487 18.188 13.171 18.198 10.5 18.198C7.83 18.198 7.513 18.188 6.46 18.14C5.484 18.095 4.955 17.932 4.602 17.796C4.16762 17.6357 3.77466 17.3801 3.452 17.048C3.11991 16.7253 2.86432 16.3324 2.704 15.898C2.567 15.545 2.404 15.016 2.36 14.041C2.312 12.986 2.302 12.671 2.302 10C2.302 7.33 2.312 7.014 2.36 5.96C2.405 4.984 2.567 4.455 2.704 4.102C2.886 3.636 3.103 3.302 3.452 2.952C3.802 2.602 4.136 2.386 4.602 2.204C4.955 2.067 5.484 1.904 6.459 1.86C7.514 1.812 7.829 1.802 10.5 1.802ZM10.5 13.333C9.61603 13.333 8.76827 12.9818 8.14321 12.3568C7.51815 11.7317 7.167 10.884 7.167 10C7.167 9.11603 7.51815 8.26827 8.14321 7.
731064321C8.76827 7.01815 9.61603 6.667 10.5 6.667C11.384 6.667 12.2317 7.01815 12.8568 7.64321C13.4818 8.26827 13.833 9.11603 13.833 10C13.833 10.884 13.4818 11.7317 12.8568 12.3568C12.2317 12.9818 11.384 13.333 10.5 13.333ZM10.5 4.865C9.82566 4.865 9.15793 4.99782 8.53492 5.25588C7.91191 5.51394 7.34584 5.89218 6.86901 6.36901C6.39218 6.84584 6.01394 7.41191 5.75588 8.03492C5.49782 8.65793 5.365 9.32566 5.365 10C5.365 10.6743 5.49782 11.3421 5.75588 11.9651C6.01394 12.5881 6.39218 13.1542 6.86901 13.631C7.34584 14.1078 7.91191 14.4861 8.53492 14.7441C9.15793 15.0022 9.82566 15.135 10.5 15.135C11.8619 15.135 13.168 14.594 14.131 13.631C15.094 12.668 15.635 11.3619 15.635 10C15.635 8.63811 15.094 7.33201 14.131 6.36901C13.168 5.40601 11.8619 4.865 10.5 4.865ZM17.038 4.662C17.038 4.81959 17.007 4.97563 16.9467 5.12122C16.8863 5.26681 16.798 5.3991 16.6865 5.51053C16.5751 5.62196 16.4428 5.71035 16.2972 5.77066C16.1516 5.83096 15.9956 5.862 15.838 5.862C15.6804 5.862 15.5244 5.83096 15.3788 5.77066C15.2332 5.71035 15.1009 5.62196 14.9895 5.51053C14.878 5.3991 14.7897 5.26681 14.7293 5.12122C14.669 4.97563 14.638 4.81959 14.638 4.662C14.638 4.34374 14.7644 4.03852 14.9895 3.81347C15.2145 3.58843 15.5197 3.462 15.838 3.462C16.1563 3.462 16.4615 3.58843 16.6865 3.81347C16.9116 4.03852 17.038 4.34374 17.038 4.662Z" 7311 fill="url(#paint0_radial_378_3535)" /> 7312 <path 7313 fill-rule="evenodd" 7314 clip-rule="evenodd" 7315 d="M10.5 0C7.784 0 7.444 0.0119999 6.377 0.0599999C5.313 0.109 4.586 0.278 3.95 0.525C3.28247 0.775816 2.67773 1.16931 2.178 1.678C1.66931 2.17773 1.27582 2.78247 1.025 3.45C0.778 4.086 0.609 4.813 0.56 5.877C0.511 6.944 0.5 7.284 0.5 10C0.5 12.716 0.511 13.056 0.56 14.123C0.609 15.187 0.778 15.914 1.025 16.55C1.27582 17.2175 1.66931 17.8223 2.178 18.322C2.67773 18.8307 3.28247 19.2242 3.95 19.475C4.586 19.722 5.313 19.891 6.377 19.94C7.444 19.988 7.784 20 10.5 20C13.216 20 13.556 19.988 14.623 19.94C15.687 19.891 16.414 19.722 17.05 19.475C17.7175 19.2242 18.3223 18.8307 18.822 18.322C19.3307 17.8223 19.7242 17.2175 19.975 16.55C20.222 15.914 20.391 15.187 20.44 14.123C20.488 13.056 20.5 12.716 20.5 10C20.5 7.284 20.488 6.944 20.44 5.877C20.391 4.813 20.222 4.086 19.975 3.45C19.7242 2.78247 19.3307 2.17773 18.822 1.678C18.3223 1.16931 17.7175 0.775816 17.05 0.525C16.414 0.278 15.687 0.109 14.623 0.0599999C13.556 0.0119999 13.216 0 10.5 0ZM10.5 1.802C13.17 1.802 13.486 1.812 14.54 1.86C15.516 1.905 16.045 2.067 16.398 2.204C16.864 2.386 17.198 2.603 17.548 2.952C17.898 3.302 18.114 3.636 18.296 4.102C18.432 4.455 18.596 4.984 18.64 5.959C18.688 7.014 18.698 7.329 18.698 10C18.698 12.67 18.688 12.986 18.64 14.04C18.595 15.016 18.432 15.545 18.296 15.898C18.1357 16.3324 17.8801 16.7253 17.548 17.048C17.198 17.398 16.864 17.614 16.398 17.796C16.045 17.932 15.516 18.096 14.541 18.14C13.487 18.188 13.171 18.198 10.5 18.198C7.83 18.198 7.513 18.188 6.46 18.14C5.484 18.095 4.955 17.932 4.602 17.796C4.16762 17.6357 3.77466 17.3801 3.452 17.048C3.11991 16.7253 2.86432 16.3324 2.704 15.898C2.567 15.545 2.404 15.016 2.36 14.041C2.312 12.986 2.302 12.671 2.302 10C2.302 7.33 2.312 7.014 2.36 5.96C2.405 4.984 2.567 4.455 2.704 4.102C2.886 3.636 3.103 3.302 3.452 2.952C3.802 2.602 4.136 2.386 4.602 2.204C4.955 2.067 5.484 1.904 6.459 1.86C7.514 1.812 7.829 1.802 10.5 1.802ZM10.5 13.333C9.61603 13.333 8.76827 12.9818 8.14321 12.3568C7.51815 11.7317 7.167 10.884 7.167 10C7.167 9.11603 7.51815 8.26827 8.14321 7.64321C8.76827 7.01815 9.61603 6.667 10.5 6.667C11.384 6.667 12.2317 7.01815 12.8568 7.64321C13.4818 8.26827 13.833 9.11603 13.833 10C13.833 10.884 13.4818 11.7317 12.8568 12.3568C12.2317 12.9818 11.384 13.333 10.5 13.333ZM10.5 4.865C9.82566 4.865 9.15793 4.99782 8.53492 5.25588C7.91191 5.51394 7.34584 5.89218 6.86901 6.36901C6.39218 6.84584 6.01394 7.41191 5.75588 8.03492C5.49782 8.65793 5.365 9.32566 5.365 10C5.365 10.6743 5.49782 11.3421 5.75588 11.9651C6.01394 12.5881 6.39218 13.1542 6.86901 13.631C7.34584 14.1078 7.91191 14.4861 8.53492 14.7441C9.15793 15.0022 9.82566 15.135 10.5 15.135C11.8619 15.135 13.168 14.594 14.131 13.631C15.094 12.668 15.635 11.3619 15.635 10C15.635 8.63811 15.094 7.33201 14.131 6.36901C13.168 5.40601 11.8619 4.865 10.5 4.865ZM17.038 4.662C17.038 4.81959 17.007 4.97563 16.9467 5.12122C16.8863 5.26681 16.798 5.3991 16.6865 5.51053C16.5751 5.62196 16.4428 5.71035 16.2972 5.77066C16.1516 5.83096 15.9956 5.862 15.838 5.862C15.6804 5.862 15.5244 5.83096 15.3788 5.77066C15.2332 5.71035 15.1009 5.62196 14.9895 5.51053C14.878 5.3991 14.7897 5.26681 14.7293 5.12122C14.669 4.97563 14.638 4.81959 14.638 4.662C14.638 4.34374 14.7644 4.03852 14.9895 3.81347C15.2145 3.58843 15.5197 3.462 15.838 3.462C16.1563 3.462 16.4615 3.58843 16.6865 3.81347C16.9116 4.03852 17.038 4.34374 17.038 4.662Z" 7316 fill="url(#paint1_radial_378_3535)" /> 7317 <defs> 7318 <radialGradient 7319 id="paint0_radial_378_3535" 7320 cx="0" 7321 cy="0" 7322 r="1" 7323 gradientUnits="userSpaceOnUse" 7324 gradientTransform="translate(17.4 22.7) rotate(-115.776) scale(27.2737 40.5665)"> 7325 <stop offset="0.24392" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF1B90' : customColor}" /> 7326 <stop offset="0.436673" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#F80261' : customColor}" /> 7327 <stop offset="0.688476" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#ED00C0' : customColor}" /> 7328 <stop offset="0.776787" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#C500E9' : customColor}" /> 7329 <stop offset="0.893155" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#7017FF' : customColor}" /> 7330 </radialGradient> 7331 <radialGradient 7332 id="paint1_radial_378_3535" 7333 cx="0" 7334 cy="0" 7335 r="1" 7336 gradientUnits="userSpaceOnUse" 7337 gradientTransform="translate(7.75 19.31) rotate(-57.4396) scale(11.8174 12.2918)"> 7338 <stop stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FFD600' : customColor}" /> 7339 <stop offset="0.484375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF6930' : customColor}" /> 7340 <stop offset="0.734375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" /> 7341 <stop offset="1" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" stop-opacity="0" /> 7342 </radialGradient> 7343 </defs> 7344 </svg>`; 7345 const magicLinkLoginIcon = (theme, customColor) => ` 7346 7347 <svg 7348 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" 7349 width="25" 7350 height="25" 7351 fill="none"
7352 viewBox="0 0 25 25" 7353 > 7354 <path 7355 fill="${ 7356 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' || theme === 'white' ? '#000000' : customColor 7357 }" 7358 fillRule="evenodd" 7359 d="M10.975 14.51a1.05 1.05 0 000-1.485 2.95 2.95 0 010-4.172l3.536-3.535a2.95 2.95 0 114.172 4.172l-1.093 1.092a1.05 1.05 0 001.485 1.485l1.093-1.092a5.05 5.05 0 00-7.142-7.142L9.49 7.368a5.05 5.05 0 000 7.142c.41.41 1.075.41 1.485 0zm2.05-5.02a1.05 1.05 0 000 1.485 2.95 2.95 0 010 4.172l-3.5 3.5a2.95 2.95 0 11-4.171-4.172l1.025-1.025a1.05 1.05 0 00-1.485-1.485L3.87 12.99a5.05 5.05 0 007.142 7.142l3.5-3.5a5.05 5.05 0 000-7.142 1.05 1.05 0 00-1.485 0z" 7360 clipRule="evenodd" 7361 ></path> 7362 </svg>`; 7363 const mobileAppLoginIcon = (theme, customColor) => ` 7364 7365 <svg 7366 width="20" 7367 height="24" 7368 viewBox="0 0 12 16" 7369 fill="none" 7370 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" 7371 > 7372 <path 7373 d="M9.75 0.5H2.25C1.42275 0.5 0.75 1.17275 0.75 2V14C0.75 14.8273 1.42275 15.5 2.25 15.5H9.75C10.5773 15.5 11.25 14.8273 11.25 14V2C11.25 1.17275 10.5773 0.5 9.75 0.5ZM2.25 11.7493V2.75H9.75L9.7515 11.7493H2.25Z" 7374 fill=${ 7375 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#FD823E' : theme === 'white' ? '#000000' : customColor 7376 } 7377 /> 7378 </svg> 7379 `; 7380 const linkedinLoginIcon = (theme, customColor) => ` 7381 7382 <svg 7383 xmlns="https://blogger.googleusercontent.com/img/a/AVvXsEgMNkJxIbFebPT3R2ITKMA8wkwSRq_J_PAEkjaPtfuMjMZ3d56DSfrOWRMWu8ZsL-iRFTmfFooldjCPgw1cU3rLtqdosPNAVozf227tcEdC7ht8mu1RBw_OXpgCvKrix7aZIWSV3RD3-vCAsksiKVxTLR3z8OhCJmVBozJmCV6rq0-o-QOU_UL7ApGEb9g=w316-h101" 7384 width="25" 7385 height="24" 7386 viewBox="0 0 25 24" 7387 fill="none" 7388 > 7389 <path 7390 d="M19.0714 0C19.8304 0 20.5 0.669643 20.5 1.47321V18.5714C20.5 19.375 19.8304 20 19.0714 20H1.88393C1.125 20 0.5 19.375 0.5 18.5714V1.47321C0.5 0.669643 1.125 0 1.88393 0H19.0714ZM6.52679 17.1429V7.63393H3.58036V17.1429H6.52679ZM5.05357 6.29464C5.99107 6.29464 6.75 5.53571 6.75 4.59821C6.75 3.66071 5.99107 2.85714 5.05357 2.85714C4.07143 2.85714 3.3125 3.66071 3.3125 4.59821C3.3125 5.53571 4.07143 6.29464 5.05357 6.29464ZM17.6429 17.1429V11.9196C17.6429 9.375 17.0625 7.36607 14.0714 7.36607C12.6429 7.36607 11.6607 8.16964 11.2589 8.92857H11.2143V7.63393H8.40179V17.1429H11.3482V12.4554C11.3482 11.2054 11.5714 10 13.1339 10C14.6518 10 14.6518 11.4286 14.6518 12.5V17.1429H17.6429Z" 7391 fill=${ 7392 theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#0A66C2' : theme === 'white' ? '#000000' : customColor 7393 } 7394 /> 7395 </svg> 7396 `; 7397 7398 function isElementVisible(element) { 7399 return (document.body.contains(element) && getComputedStyle(element).display !== "none" && getComputedStyle(element).visibility !== "hidden" && getComputedStyle(element).opacity !== "0" && !element.hasAttribute("hidden") && !isAncestorHidden(element)); 7400 } 7401 7402 function isAncestorHidden(element) { 7403 let parent = element.parentElement; 7404 while (parent) { 7405 if (getComputedStyle(parent).display === "none" || getComputedStyle(parent).visibility === "hidden" || getComputedStyle(parent).opacity === "0" || parent.hasAttribute("hidden")) { 7406 return true; 7407 } 7408 parent = parent.parentElement; 7409 } 7410 return false; 7411 } 7412 7413 function showAlert(message) { 7414 const alertBox = document.createElement("div"); 7415 alertBox.textContent = message; 7416 alertBox.style.position = "fixed"; 7417 alertBox.style.top = "20px"; 7418 alertBox.style.right = "-300px"; // Start off-screen 7419 alertBox.style.backgroundColor = "#000000"; // Black background 7420 alertBox.style.color = "#ffffff"; // White text 7421 alertBox.style.padding = "15px"; 7422 alertBox.style.borderRadius = "8px"; 7423 alertBox.style.zIndex = "1000"; 7424 alertBox.style.transition = "right 0.5s ease-in-out, opacity 0.5s ease-in-out"; // Transition for sliding and fading 7425 alertBox.style.boxShadow = "0 2px 5px rgba(0, 0, 0, 0.2)"; // Optional shadow for depth 7426 document.body.appendChild(alertBox); 7427 // Slide in 7428 requestAnimationFrame(() => { 7429 alertBox.style.right = "20px"; // Move into view 7430 alertBox.style.opacity = "1"; // Ensure opacity is set to 1 7431 });
7432 // Slide out and remove the alert after a few seconds 7433 setTimeout(() => { 7434 alertBox.style.opacity = "0"; // Fade out 7435 alertBox.style.right = "-300px"; // Move out of view 7436 // Wait for the transition to finish before removing the element 7437 setTimeout(() => { 7438 document.body.removeChild(alertBox); 7439 }, 500); // Match this duration with the exit transition duration 7440 }, 3000); 7441 } 7442</script>
7442 7443<style> 7444 .fireworks-container { 7445 position: fixed; 7446 top: 0; 7447 left: 0; 7448 width: 100%; 7449 height: 100%; 7450 z-index: 9999; 7451 pointer-events: none; 7452 } 7453</style> 7454 7455<div class="fireworks-container"></div> 7456
7457<script src="https://cdn.jsdelivr.net/npm/fireworks-js/dist/index.umd.min.js"></script>
vendor: 2 bytes, line 7457
7457
7458<script> 7459 document.addEventListener('DOMContentLoaded', () => { 7460 // Pastikan library Fireworks tersedia 7461 if (typeof Fireworks !== 'undefined') { 7462 // Pilih container untuk animasi fireworks 7463 const container = document.querySelector('.fireworks-container'); 7464 7465 // Inisialisasi Fireworks 7466 const fireworks = new Fireworks.default(container, { 7467 autoresize: true, // Otomatis menyesuaikan ukuran 7468 opacity: 0.8, // Transparansi latar 7469 acceleration: 1.05, 7470 friction: 0.98, 7471 gravity: 1, 7472 particles: 75, 7473 trace: 3, 7474 explosion: 5, 7475 hue: { 7476 min: 0, 7477 max: 360 7478 }, 7479 brightness: { 7480 min: 50, 7481 max: 80 7482 }, 7483 boundaries: { 7484 top: 0, 7485 bottom: window.innerHeight, 7486 left: 0, 7487 right: window.innerWidth 7488 } 7489 }); 7490 7491 // Jalankan Fireworks secara otomatis 7492 fireworks.start(); 7493 7494 // Tambahkan handler untuk penyesuaian ukuran layar dengan debounce 7495 let resizeTimeout; 7496 window.addEventListener('resize', () => { 7497 clearTimeout(resizeTimeout); 7498 resizeTimeout = setTimeout(() => { 7499 fireworks.setSize(window.innerWidth, window.innerHeight); 7500 }, 300); 7501 }); 7502 } else { 7503 console.error('Fireworks.js tidak tersedia di browser ini.'); 7504 } 7505 }); 7506</script>
7506 7507 7508 <!-- ========================================= 7509 IPHONE STYLE CAMERA FLASH 7510========================================= --> 7511 7512<!-- ========================================= 7513 FLASH OVERLAY 7514========================================= --> 7515 7516<div 7517 class="iphone-flash-effect" 7518 aria-hidden="true"> 7519</div> 7520 </div> 7521 </div> 7522 <div itemscope itemtype="http://schema.org/Product" style="display:none"> 7523 <img itemprop="image" src="https://member.pjphorg.works/image/toto-4d.jpg"> 7524 <span itemprop="name">[$6.58] Prima TOGEL PRIMATOTO AKURAT SITUS TOTO MACAU KELUARAN 4 ANGKA HK SGP</span> 7525 <div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"> 7526 <span itemprop="ratingValue">5</span>out of <span itemprop="bestRating">5</span>based on <span itemprop="ratingCount">8</span>user ratings 7527 </div> 7528</div>
7529<script defer="defer" src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"e4af48c6773f4a92a46f08fb71467029","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous" type="9f1692b8b70633eecdaf805b-text/javascript"></script>
7529 7530<style>.PRIMATOTO-footer{display:flex;justify-content:space-around;align-items:center;position:fixed;background:linear-gradient(180deg,#ffffff 0%,#eaf4fb 12%,#c9dce9 28%,#8fb7d2 45%,#4f88b0 65%,#245f89 82%,#0d3553 100%);border-top:2px solid #e8f3fa;outline:0;padding:10px 8px 12px 8px;left:0;right:0;bottom:0;z-index:99;border-radius:20px 20px 0 0}.PRIMATOTO-footer a{flex:1;text-decoration:none;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#6f8798;max-width:70px;font-size:15px;font-weight:600;font-family:"Segoe UI",Ubuntu,sans-serif;transition:all .3s ease;position:relative;padding:8px 5px}.PRIMATOTO-footer a::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:0;height:3px;background:#1976b5;border-radius:0 0 3px 3px;transition:width .3s ease}.PRIMATOTO-footer a.active,.PRIMATOTO-footer a:hover{color:#1976b5;transform:translateY(-3px)}.PRIMATOTO-footer a.active::before,.PRIMATOTO-footer a:hover::before{width:60%}.PRIMATOTO-footer .icon{font-size:22px;margin-bottom:4px;transition:transform .3s ease}.PRIMATOTO-footer a.active .icon,.PRIMATOTO-footer a:hover .icon{transform:scale(1.15)}.PRIMATOTO-footer .center{position:relative;transform:translateY(-15px)}.PRIMATOTO-footer .center::before{content:'';position:absolute;top:-5px;left:50%;transform:translateX(-50%);width:100px;height:80px;background:linear-gradient(300deg,#0b2d46 0,#eef8ff 50%,#0b2d46 100%);border-radius:50%;border:3px solid #b8d3e5;z-index:-1}.PRIMATOTO-footer .center .icon{font-size:26px;margin-bottom:0}.PRIMATOTO-footer .center span{font-size:15px;color:#176fa9;font-weight:700}.PRIMATOTO-footer .center:hover{transform:translateY(-18px)}.PRIMATOTO-footer .center:hover::before{background:linear-gradient(135deg,#dbeaf4 0,#258ac8 50%,#eef8ff 100%);box-shadow:0 0 20px rgba(90,185,240,.5);width:100px;height:80px}.PRIMATOTO-footer .badge{position:absolute;top:2px;right:10px;background:#238ed0;color:#fff;font-size:9px;font-weight:700;padding:2px 5px;border-radius:10px;min-width:16px;text-align:center}.PRIMATOTO-footer a:active{transform:scale(.95)}.PRIMATOTO-footer img{width:24px;height:24px;margin-bottom:3px;object-fit:contain;transition:transform .3s ease}.PRIMATOTO-footer a:hover img{transform:scale(1.15)}@keyframes borderGlow{0%,100%{border-color:rgba(205,229,244,.3)}50%{border-color:rgba(68,163,220,.8)}}@media (max-width:480px){.PRIMATOTO-footer{padding:8px 5px 10px 5px}.PRIMATOTO-footer a{font-size:10px;max-width:55px}.PRIMATOTO-footer .icon{font-size:20px}.PRIMATOTO-footer .center::before{width:48px;height:48px}}</style> 7531<div class="PRIMATOTO-footer"> 7532 <a href="https://member.pjphorg.works/" class="active"> 7533 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0" alt="Promo PRIMATOTO"> 7534 <span>Promo</span> 7535 </a> 7536 <a href="https://member.pjphorg.works/"> 7537 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0" alt="Daftar PRIMATOTO"> 7538 <span>Daftar</span> 7539 <span class="badge">3</span> 7540 </a> 7541 <a href="https://member.pjphorg.works/" class="center"> 7542 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0" alt="Login PRIMATOTO"> 7543 <span>Login</span> 7544 </a> 7545 <a href="https://member.pjphorg.works/"> 7546 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0" alt="Whatsapp PRIMATOTO"> 7547 <span>Whatsapp</span> 7548 </a>
7549 <a href="https://member.pjphorg.works/"> 7550 <img src="https://blogger.googleusercontent.com/img/a/AVvXsEh77isxh_tclVx867OG3XVjkAP1e2L5x3wnhGj5FczVYJGynK5cjm7B2-_ymdrCWQLQw8v49R-JNXIywCHRS2ePq4I_K_B26uf0Ibj2IEIkral4T2UD8aRUkhbUeO5QURf_d3btQc6doqVZYlhum4AVn46Ja5yo9w6QV1zfN8uVVrTNkGahPPniIpKAJt0" alt="Live Chat PRIMATOTO"> 7551 <span>Live Chat</span> 7552 </a> 7553</div> 7554</body> 7555</html> 7556
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.