PageSourceSearch

https://hasilmacau88.com/

html hasilmacau88.com collected 2026-09-29 06:53:46 UTC 664,710 bytes, 11,060 lines download raw bytes

1
2
3
4
5
6
7<!doctype html>
8   <html class="no-js">
9     <head>
10     <meta charset="utf-8">
11     <meta http-equiv="X-UA-Compatible" content="IE=edge">
12     <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1">
13     <meta name="apple-itunes-app" content="app-id=1576832504">
14     <link rel="icon" type="image/x-icon" href="https://imgbest.store/images/2026/03/29/favicon-kebuntoto.png">
15      <!-- Title and description -->
16     <title>KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia</title>
17     <meta name="description" content="KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.">
18     <meta name="keywords" content="kebuntoto, kebuntoto login, kebuntoto daftar, kebuntoto situs, toto macau"/>
19     <meta content='index, follow, nosnippet' name='robots'>
20	 <link rel="canonical" href="https://hasilmacau88.com/">
21     <link rel="amphtml" href="https://terbaru.hasilmacau88.live/"/>
22    <link rel="alternate" href="https://hasilmacau88.com/" hreflang="ar" />
23    <link rel="alternate" href="https://hasilmacau88.com/" hreflang="ru" />
24    <link rel="alternate" href="https://terbaru.hasilmacau88.live/">
25    <link rel="alternate" href="https://terbaru.hasilmacau88.live/" hreflang="id">
26    <link rel="alternate" href="https://terbaru.hasilmacau88.live/" hreflang="en">
27    <link rel="alternate" href="https://terbaru.hasilmacau88.live/" hreflang="en">
28    <link rel="alternate" href="https://terbaru.hasilmacau88.live/" hreflang="x-default">
29    <link rel="alternate" hreflang="id-ID" href="https://terbaru.hasilmacau88.live/" />
30    <link rel="alternate" hreflang="en-US" href="https://terbaru.hasilmacau88.live/" />
31    <link rel="alternate" hreflang="en-SG" href="https://terbaru.hasilmacau88.live/" />
32     <!-- /snippets/social-meta-tags.liquid -->
33     <meta property="og:type" content="KEBUNTOTO">
34     <meta property="og:title" content="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia">
35     <meta property="og:image" content="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
36     <meta property="og:image:secure_url" content="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
37     <meta property="og:image" content="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
38     <meta property="og:image:secure_url" content="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
39     <meta property="og:image" content="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
40     <meta property="og:image:secure_url" content="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
41     <meta property="og:description" content="KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.">
42     <meta property="og:price:amount" content="10,000-,">
43     <meta property="og:price:currency" content="IDR">
44     <meta property="og:url" content="https://hasilmacau88.com/">
45     <meta property="og:site_name" content="KEBUNTOTO">
46     <meta name="twitter:site" content="@KEBUNTOTO">
47     <meta name="twitter:card" content="summary">
48     <meta name="twitter:title" content="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia">
49     <meta name="twitter:description" content="KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.">
50     <meta name="twitter:image" content="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
51     <meta name="twitter:image:width" content="600">
52     <meta name="twitter:image:height" content="600">
53     <link rel="shortcut icon" href="https://imgbest.store/images/2026/03/29/favicon-kebuntoto.png" type="image/png">
54     <meta name="theme-color" content="#ffffff">
55     <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet">
56     <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" />
57     <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201">
57<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer></script>
57
58     
58<script
59       src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js"
60       integrity="sha512-57oZ/vW8ANMjR/KQ6Be9v/+/h6bq9/l3f0Oc7vn6qMqyhvPd1cvKBRWWpzu0QoneImqr2SkmO4MSqU+RpHom3Q=="
61       crossorigin="anonymous"
62       referrerpolicy="no-referrer"
63       defer
64     ></script>
64
65     
66     <div class="button-login-daftar">
67                     <a class="login" href="https://terbaru.hasilmacau88.live/" rel="nofollow noreferrer" style="color: white;">
68                         LOGIN
69                     </a>
70                     <a class="register" href="https://terbaru.hasilmacau88.live/" rel="nofollow noreferrer" style="color: white;">
71                         DAFTAR
72                     </a>
73                 </div>
74   
75     
75<script src="//cdnjs.cloudflare.com/ajax/libs/vissense/0.9.0/vissense.js" defer></script>
75
76 
77 
78 <link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all" />
79 <link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all" />
80 <link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css">
81 
81<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
81
82 
82<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="text/javascript"></script>
82
83 
83<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
83
84     
84<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
84
85 <meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog">
86 <link rel="alternate" type="application/json+oembed" href="https://hasilmacau88.com/">
87 <link hreflang="id-ID" href="https://hasilmacau88.com/" rel="alternate"/>
88 
88<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID"></script>
88
89 
89<script id="shopify-features" type="application/json">{"accessToken":"d2e176e59f6658d5056234d6249b3ab4","betas":["rich-media-storefront-analytics"],"domain":"outerbloom.com","predictiveSearch":true,"shopId":15896833,"locale":"en"}</script>
89
90 
90<script>var Shopify = Shopify || {};
91 Shopify.shop = "outerbloom1.myshopify.com";
92 Shopify.locale = "en";
93 Shopify.currency = {"active":"IDR","rate":"1.0"};
94 Shopify.country = "ID";
95 Shopify.theme = {"name":"web-outerbloom-shopify\/main","id":153139282135,"schema_name":null,"schema_version":null,"theme_store_id":null,"role":"main"};
96 Shopify.theme.handle = "null";
97 Shopify.theme.style = {"id":null,"handle":null};
98 Shopify.cdnHost = "outerbloom.com/cdn";
99 Shopify.routes = Shopify.routes || {};
100 Shopify.routes.root = "/";</script>
100
101 
101<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
101
102 
102<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
102
103 
103<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
103
104 
104<script defer="defer" async="async" src="//outerbloom.com/cdn/shopifycloud/shop-js/client.js" onload="window.Shopify.SignInWithShop?.initShopCartSync?.({&quot;fedCMEnabled&quot;:true,&quot;windoidEnabled&quot;:true});
105 "></script>
105
106 
106<script>(function() {
107   var isLoaded = false;
108   function asyncLoad() {
109     if (isLoaded) return;
110     isLoaded = true;
111     var urls = ["https:\/\/e9e1-180-254-64-204.ngrok.io\/public\/scripts\/shopifyPageScript.js?shop=outerbloom1.myshopify.com","https:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/3.5.1\/jquery.min.js?shop=outerbloom1.myshopify.com","https:\/\/14e1-180-254-64-204.ngrok.io\/public\/scripts\/shopifyPageScript.js?shop=outerbloom1.myshopify.com","https:\/\/6403-180-254-64-204.ngrok.io\/public\/scripts\/shopify-page-script.js?shop=outerbloom1.myshopify.com","https:\/\/googlesignintest.loca.lt\/public\/scripts\/shopify-page-script.js?shop=outerbloom1.myshopify.com","https:\/\/api-na1.hubapi.com\/scriptloader\/v1\/6800477.js?shop=outerbloom1.myshopify.com"];
112     for (var i = 0; i < urls.length; i++) {
113       var s = document.createElement('script');
114       s.type = 'text/javascript';
115       s.async = true;
116       s.src = urls[i];
117       var x = document.getElementsByTagName('script')[0];
118       x.parentNode.insertBefore(s, x);
119     }
120   };
121   if(window.attachEvent) {
122     window.attachEvent('onload', asyncLoad);
123   } else {
124     window.addEventListener('load', asyncLoad, false);
125   }
126 })();</script>
126
127 
127<script id="__st">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":8144957800663};</script>
127
128 
128<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
128
129 
129<script id="captcha-bootstrap">!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>
129
130 
130<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"></script>
130
131 
131<script data-source-attribution="shopify.dynamic_checkout.dynamic.init">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)}};
132 </script>
132
133 
133<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
134   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);
135 </script>
135
136 
136<script data-source-attribution="shopify.dynamic_checkout.cart.bootstrap">document.addEventListener("DOMContentLoaded",(function(){function t(){return document.querySelector("shopify-accelerated-checkout-cart, shopify-accelerated-checkout")}if(t())Shopify.PaymentButton.init();else{new MutationObserver((function(e,n){t()&&(Shopify.PaymentButton.init(),n.disconnect())})).observe(document.body,{childList:!0,subtree:!0})}}));
137 </script>
137
138 
139 
139<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
139
140     <!-- /snippets/oldIE-js.liquid -->
141 
142 
143 <!--[if lt IE 9]>
144 
144<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
144
145 
145<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
145
146 <link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy" />
147 <link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect" />
148 
148<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
148
149 <![endif]-->
150 
151 
152 
153   
154     
155   <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">
156 <link href="https:\/kebuntotohasil.com/apply" rel="dns-prefetch">
157 
157<script>(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:\/kebuntotohasil.com/apply/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>
157
158 
158<script id="web-pixels-manager-setup">(function e(e,d,r,n,o){if(void 0===o&&(o={}),!Boolean(null===(a=null===(i=window.Shopify)||void 0===i?void 0:i.analytics)||void 0===a?void 0:a.replayQueue)){var i,a;window.Shopify=window.Shopify||{};var t=window.Shopify;t.analytics=t.analytics||{};var s=t.analytics;s.replayQueue=[],s.publish=function(e,d,r){return s.replayQueue.push([e,d,r]),!0};try{self.performance.mark("wpm:start")}catch(e){}var l=function(){var e={modern:/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+/,legacy:/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+|)/},d=e.modern,r=e.legacy,n=navigator.userAgent;return n.match(d)?"modern":n.match(r)?"legacy":"unknown"}(),u="modern"===l?"modern":"legacy",c=(null!=n?n:{modern:"",legacy:""})[u],f=function(e){return[e.baseUrl,"/wpm","/b",e.hashVersion,"modern"===e.buildTarget?"m":"l",".js"].join("")}({baseUrl:d,hashVersion:r,buildTarget:u}),m=function(e){var d=e.version,r=e.bundleTarget,n=e.surface,o=e.pageUrl,i=e.monorailEndpoint;return{emit:function(e){var a=e.status,t=e.errorMsg,s=(new Date).getTime(),l=JSON.stringify({metadata:{event_sent_at_ms:s},events:[{schema_id:"web_pixels_manager_load/3.1",payload:{version:d,bundle_target:r,page_url:o,status:a,surface:n,error_msg:t},metadata:{event_created_at_ms:s}}]});if(!i)return console&&console.warn&&console.warn("[Web Pixels Manager] No Monorail endpoint provided, skipping logging."),!1;try{return self.navigator.sendBeacon.bind(self.navigator)(i,l)}catch(e){}var u=new XMLHttpRequest;try{return u.open("POST",i,!0),u.setRequestHeader("Content-Type","text/plain"),u.send(l),!0}catch(e){return console&&console.warn&&console.warn("[Web Pixels Manager] Got an unhandled error while logging to Monorail."),!1}}}}({version:r,bundleTarget:l,surface:e.surface,pageUrl:self.location.href,monorailEndpoint:e.monorailEndpoint});try{o.browserTarget=l,function(e){var d=e.src,r=e.async,n=void 0===r||r,o=e.onload,i=e.onerror,a=e.sri,t=e.scriptDataAttributes,s=void 0===t?{}:t,l=document.createElement("script"),u=document.querySelector("head"),c=document.querySelector("body");if(l.async=n,l.src=d,a&&(l.integrity=a,l.crossOrigin="anonymous"),s)for(var f in s)if(Object.prototype.hasOwnProperty.call(s,f))try{l.dataset[f]=s[f]}catch(e){}if(o&&l.addEventListener("load",o),i&&l.addEventListener("error",i),u)u.appendChild(l);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(l)}}({src:f,async:!0,onload:function(){if(!function(){var e,d;return Boolean(null===(d=null===(e=window.Shopify)||void 0===e?void 0:e.analytics)||void 0===d?void 0:d.initialized)}()){var d=window.webPixelsManager.init(e)||void 0;if(d){var r=window.Shopify.analytics;r.replayQueue.forEach((function(e){var r=e[0],n=e[1],o=e[2];d.publishCustomEvent(r,n,o)})),r.replayQueue=[],r.publish=d.publishCustomEvent,r.visitor=d.visitor,r.initialized=!0}}},onerror:function(){return m.emit({status:"failed",errorMsg:"".concat(f," has failed to load")})},sri:function(e){var d=/^sha384-[A-Za-z0-9+/=]+$/;return"string"==typeof e&&d.test(e)}(c)?c:"",scriptDataAttributes:o}),m.emit({status:"loading"})}catch(e){m.emit({status:"failed",errorMsg:(null==e?void 0:e.message)||"Unknown error"})}}})({shopId: 15896833,storefrontBaseUrl: "https://outerbloom.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https:\/kebuntotohasil.com/apply/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: false,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":835000.0,"currencyCode":"IDR"},"product":{"title":"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia","vendor":"Outerbloom Florist","id":"8144957800663","untranslatedTitle":"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia","url":"\/products\/blossom-shine","type":"KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakse
158s."},"id":"44083045826775","image":{"src":"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426"},"sku":"OBVSTF1086","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\",{}],[\"product_viewed\",{\"productVariant\":{\"price\":{\"amount\":835000.0,\"currencyCode\":\"IDR\"},\"product\":{\"title\":\"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia\",\"vendor\":\"Outerbloom Florist\",\"id\":\"8144957800663\",\"untranslatedTitle\":\"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia\",\"url\":\"\/products\/blossom-shine\",\"type\":\"KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.\"},\"id\":\"44083045826775\",\"image\":{\"src\":\"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426\"},\"sku\":\"OBVSTF1086\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"}}]]"});</script>
158<script>
159   window.ShopifyAnalytics = window.ShopifyAnalytics || {};
160   window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
161   window.ShopifyAnalytics.meta.currency = 'IDR';
162   var meta = {"product":{"id":8144957800663,"gid":"gid:\/\/shopify\/Product\/8144957800663","vendor":"Outerbloom Florist","type":"KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.","variants":[{"id":44083045826775,"price":1000000
163   ,"name":"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia","public_title":null,"sku":"OBVSTF1086"}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":8144957800663}};
164   for (var attr in meta) {
165     window.ShopifyAnalytics.meta[attr] = meta[attr];
166   }
167 </script>
167
168 
168<script class="analytics">
169   (function () {
170     var customDocumentWrite = function(content) {
171       var jquery = null;
172 
173       if (window.jQuery) {
174         jquery = window.jQuery;
175       } else if (window.Checkout && window.Checkout.$) {
176         jquery = window.Checkout.$;
177       }
178 
179       if (jquery) {
180         jquery('body').append(content);
181       }
182     };
183 
184     var hasLoggedConversion = function(token) {
185       if (token) {
186         return document.cookie.indexOf('loggedConversion=' + token) !== -1;
187       }
188       return false;
189     }
190 
191     var setCookieIfConversion = function(token) {
192       if (token) {
193         var twoMonthsFromNow = new Date(Date.now());
194         twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
195 
196         document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
197       }
198     }
199 
200     var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
201     if (trekkie.integrations) {
202       return;
203     }
204     trekkie.methods = [
205       'identify',
206       'page',
207       'ready',
208       'track',
209       'trackForm',
210       'trackLink'
211     ];
212     trekkie.factory = function(method) {
213       return function() {
214         var args = Array.prototype.slice.call(arguments);
215         args.unshift(method);
216         trekkie.push(args);
217         return trekkie;
218       };
219     };
220     for (var i = 0; i < trekkie.methods.length; i++) {
221       var key = trekkie.methods[i];
222       trekkie[key] = trekkie.factory(key);
223     }
224     trekkie.load = function(config) {
225       trekkie.config = config || {};
226       trekkie.config.initialDocumentCookie = document.cookie;
227       var first = document.getElementsByTagName('script')[0];
228       var script = document.createElement('script');
229       script.type = 'text/javascript';
230       script.onerror = function(e) {
231         var scriptFallback = document.createElement('script');
232         scriptFallback.type = 'text/javascript';
233         scriptFallback.onerror = function(error) {
234                 var Monorail = {
235       produce: function produce(monorailDomain, schemaId, payload) {
236         var currentMs = new Date().getTime();
237         var event = {
238           schema_id: schemaId,
239           payload: payload,
240           metadata: {
241             event_created_at_ms: currentMs,
242             event_sent_at_ms: currentMs
243           }
244         };
245         return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
246       },
247       sendRequest: function sendRequest(endpointUrl, payload) {
248         // Try the sendBeacon API
249         if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
250           var blobData = new window.Blob([payload], {
251             type: 'text/plain'
252           });
253 
254           if (window.navigator.sendBeacon(endpointUrl, blobData)) {
255             return true;
256           } // sendBeacon was not successful
257 
258         } // XHR beacon
259 
260         var xhr = new XMLHttpRequest();
261 
262         try {
263           xhr.open('POST', endpointUrl);
264           xhr.setRequestHeader('Content-Type', 'text/plain');
265           xhr.send(payload);
266         } catch (e) {
267           console.log(e);
268         }
269 
270         return false;
271       },
272       isIos12: function isIos12() {
273         return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
274       }
275     };
276     Monorail.produce('monorail-edge.shopifysvc.com',
277       'trekkie_storefront_load_errors/1.1',
278       {shop_id: 15896833,
279       theme_id: 153139282135,
280       app_name: "storefront",
281       context_url: window.location.href,
282       source_url: "//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js"});
283 
284         };
285         scriptFallback.async = true;
286         scriptFallback.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js';
287         first.parentNode.insertBefore(scriptFallback, first);
288       };
289       script.async = true;
290       script.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js';
291       first.parentNode.insertBefore(script, first);
292     };
293     trekkie.load(
294       {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":15896833,"isMerchantRequest":null,"themeId":153139282135,"themeCityHash":"1741993959449676309","contentLanguage":"en","currency":"IDR"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain"},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
295     );
296 
297     var loaded = false;
298     trekkie.ready(function() {
299       if (loaded) return;
300       loaded = true;
301 
302       window.ShopifyAnalytics.lib = window.trekkie;
303 
304       var originalDocumentWrite = document.write;
305       document.write = customDocumentWrite;
306       try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
307       document.write = originalDocumentWrite;
308 
309       window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":8144957800663,"shopifyEmitted":true});
310 
311       var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
312       var token = match? match[1]: undefined;
313       if (!hasLoggedConversion(token)) {
314         setCookieIfConversion(token);
315         window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.","nonInteraction":true,"remote":false},undefined,undefined,{"shopifyEmitted":true});
316       window.ShopifyAnalytics.lib.track("monorail:\/\/trekkie_storefront_viewed_product\/1.1",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.","nonInteraction":true,"remote":false,"referer":"https:\/\/outerbloom.com\/products\/blossom-shine"});
317       }
318     });
319 
320 
321         var eventsListenerScript = document.createElement('script');
322         eventsListenerScript.async = true;
323         eventsListenerScript.src = "//outerbloom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-abeef7a0.js";
324         document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
325 
326 })();</script>
326
327   
327<script>
328   if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
329     window.ga = function ga() {
330       (window.ga.q = window.ga.q || []).push(arguments);
331       if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
332         window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
333       }
334       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.");
335     };
336     if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
337       window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
338     }
339   }
340 </script>
340
341 
341<script
342   defer
343   src="https://outerbloom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-2.0.13.min.js"
344   data-application="storefront-renderer"
345   data-shop-id="15896833"
346   data-render-region="gcp-asia-southeast1"
347   data-page-type="product"
348   data-theme-instance-id="153139282135"
349   data-theme-name=""
350   data-theme-version=""
351   data-monorail-region="shop_domain"
352   data-resource-timing-sampling-rate="10"
353   data-shs="true"
354   data-shs-beacon="true"
355   data-shs-export-with-fetch="true"
356   data-shs-logs-sample-rate="1"
357 ></script>
357
358
359 
359<script type="application/ld+json">
360{
361  "@context": "https://schema.org",
362  "@type": "Product",
363  "name": "KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia",
364  "image": "https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif",
365  "description": "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.",
366  "brand": {
367    "@type": "Brand",
368    "name": "KEBUNTOTO"
369  },
370  "sku": "KEBUNTOTO-LOGIN",
371  "mpn": "TOTO-MACAU",
372  "url": "https://hasilmacau88.com/",
373  "offers": {
374    "@type": "Offer",
375    "url": "https://hasilmacau88.com/",
376    "priceCurrency": "USD",
377    "price": "11",
378    "priceValidUntil": "2026-11-25",
379    "itemCondition": "https://schema.org/NewCondition",
380    "availability": "https://schema.org/InStock",
381    "seller": {
382      "@type": "Organization",
383      "name": "KEBUNTOTO"
384    }
385  },
386  "aggregateRating": {
387    "@type": "AggregateRating",
388    "ratingValue": "5.0",
389    "reviewCount": 89426
390  },
391  "review": [
392    {
393      "@type": "Review",
394      "reviewRating": {
395        "@type": "Rating",
396        "ratingValue": "5",
397        "bestRating": "5"
398      },
399      "author": {
400        "@type": "Person",
401        "name": "Galen Wiratma"
402      },
403      "reviewBody": "Begitu lihat hasil Toto Macau di KEBUNTOTO, rasanya lebih simpel. Tidak banyak tampilan yang bikin penuh mata, datanya langsung kelihatan dan gampang dipantau."
404    },
405    {
406      "@type": "Review",
407      "reviewRating": {
408        "@type": "Rating",
409        "ratingValue": "5",
410        "bestRating": "5"
411      },
412      "author": {
413        "@type": "Person",
414        "name": "Arsyan Devandra"
415      },
416      "reviewBody": "KEBUNTOTO cukup beda buat saya karena hasil Macau-nya disusun rapi. Cocok buat pemain yang ingin cek update cepat tanpa harus buka banyak halaman."
417    },
418    {
419      "@type": "Review",
420      "reviewRating": {
421        "@type": "Rating",
422        "ratingValue": "5",
423        "bestRating": "5"
424      },
425      "author": {
426        "@type": "Person",
427        "name": "Raviel Mahesa"
428      },
429      "reviewBody": "Saya biasanya cari hasil yang mudah dibaca dari HP, dan KEBUNTOTO cukup nyaman untuk itu. Update Toto Macau-nya jelas, tampilannya juga tidak bikin bingung."
430    },
431    {
432      "@type": "Review",
433      "reviewRating": {
434        "@type": "Rating",
435        "ratingValue": "5",
436        "bestRating": "5"
437      },
438      "author": {
439        "@type": "Person",
440        "name": "Darel Vionata"
441      },
442      "reviewBody": "Buat pantauan pemain Asia, KEBUNTOTO terasa praktis. Hasil terbaru Toto Macau bisa dilihat dengan lebih cepat, jadi tidak perlu lama-lama cari info."
443    },
444    {
445      "@type": "Review",
446      "reviewRating": {
447        "@type": "Rating",
448        "ratingValue": "5",
449        "bestRating": "5"
450      },
451      "author": {
452        "@type": "Person",
453        "name": "Naufan Elgard"
454      },
455      "reviewBody": "Yang saya suka, KEBUNTOTO menyajikan hasil Macau dengan gaya yang sederhana tapi tetap lengkap. Buat cek harian, ini enak banget karena informasinya langsung ketemu."
456    }
457  ]
458}
459</script>
vendor: 1 bytes, line 459
459
460<script type="application/ld+json">
461{
462  "@context": "https://schema.org",
463  "@type": "BreadcrumbList",
464  "itemListElement": [
465    {
466      "@type": "ListItem",
467      "position": 1,
468      "name": "KEBUNTOTO",
469      "item": "https://hasilmacau88.com/"
470    },
471    {
472      "@type": "ListItem",
473      "position": 2,
474      "name": "KEBUNTOTO LOGIN",
475      "item": "https://hasilmacau88.com/"
476    },
477    {
478      "@type": "ListItem",
479      "position": 3,
480      "name": "KEBUNTOTO DAFTAR",
481      "item": "https://hasilmacau88.com/"
482    },
483    {
484      "@type": "ListItem",
485      "position": 4,
486      "name": "KEBUNTOTO SITUS",
487      "item": "https://hasilmacau88.com/"
488    },
489     {
490      "@type": "ListItem",
491      "position": 9,
492      "name": "TOTO MACAU",
493      "item": "https://hasilmacau88.com/"
494    },
495    {
496      "@type": "ListItem",
497      "position": 9,
498      "name": "KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia",
499      "item": "https://hasilmacau88.com/"
500    }
501  ]
502}
503</script>
503
504		
504<script type="application/ld+json">
505			{
506				"@context": "https://schema.org",
507				"@type": "Organization",
508				"name": "KEBUNTOTO",
509				"url": "https://hasilmacau88.com/",
510				"logo": "https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif",
511				"sameAs": ["https://www.facebook.com/KEBUNTOTO", "https://twitter.com/KEBUNTOTO", "https://www.instagram.com/KEBUNTOTO"],
512				"contactPoint": {
513					"@type": "ContactPoint",
514					"telephone": "+62-812-8874-1411",
515					"contactType": "customer support",
516					"areaServed": "ID",
517					"availableLanguage": ["Indonesian", "English"]
518				}
519			}
520		</script>
520
521    
522<script type="application/ld+json" id="faq-schema">
523{
524  "@context": "https://schema.org",
525  "@graph": [
526    {
527      "@type": "FAQPage",
528      "mainEntity": [
529        {
530          "@type": "Question",
531          "name": "Kapan pemain Asia bisa melihat hasil Toto Macau terbaru di KEBUNTOTO?",
532          "acceptedAnswer": {
533            "@type": "Answer",
534            "text": "Pemain bisa memantau hasil Toto Macau terbaru melalui KEBUNTOTO saat update sudah tersedia. Informasinya dibuat rapi agar mudah dicek tanpa harus mencari ke banyak tempat."
535          }
536        },
537        {
538          "@type": "Question",
539          "name": "Apa yang membuat hasil Toto Macau di KEBUNTOTO enak dipantau setiap hari?",
540          "acceptedAnswer": {
541            "@type": "Answer",
542            "text": "Penyajiannya sederhana, jelas, dan tidak membingungkan. Pemain bisa langsung melihat hasil terbaru dengan tampilan yang mudah dibaca, baik dari HP maupun desktop."
543          }
544        },
545        {
546          "@type": "Question",
547          "name": "Apakah KEBUNTOTO cocok untuk pemain yang ingin pantauan cepat?",
548          "acceptedAnswer": {
549            "@type": "Answer",
550            "text": "Cocok, karena KEBUNTOTO menghadirkan akses yang praktis untuk melihat update hasil Toto Macau. Pemain bisa lebih mudah mengikuti perkembangan terbaru tanpa proses yang ribet."
551          }
552        },
553        {
554          "@type": "Question",
555          "name": "Kenapa hasil Toto Macau untuk pemain Asia perlu disajikan dengan rapi?",
556          "acceptedAnswer": {
557            "@type": "Answer",
558            "text": "Karena pemain dari berbagai wilayah membutuhkan informasi yang jelas dan mudah dipahami. Dengan data yang tersusun rapi, hasil terbaru bisa lebih cepat dibaca dan tidak bikin bingung."
559          }
560        },
561        {
562          "@type": "Question",
563          "name": "Apa yang bisa didapat pemain dari update hasil Toto Macau di KEBUNTOTO?",
564          "acceptedAnswer": {
565            "@type": "Answer",
566            "text": "Pemain bisa mendapatkan pantauan hasil terbaru, data yang lebih mudah dibaca, dan akses informasi yang nyaman. Semua dibuat agar pengalaman cek hasil terasa lebih praktis setiap hari."
567          }
568        }
569      ]
570    },
571    {
572      "@type": "Product",
573      "name": "KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia",
574      "image": "https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif",
575      "description": "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.",
576      "url": "https://hasilmacau88.com/",
577      "aggregateRating": {
578        "@type": "AggregateRating",
579        "ratingValue": "5.0",
580        "reviewCount": "8080"
581      },
582      "review": [
583        {
584          "@type": "Review",
585          "author": { "@type": "Person", "name": "Galen Wiratma" },
586          "datePublished": "2026-05-29",
587          "reviewBody": "Begitu lihat hasil Toto Macau di KEBUNTOTO, rasanya lebih simpel. Tidak banyak tampilan yang bikin penuh mata, datanya langsung kelihatan dan gampang dipantau.",
588          "name": "KEBUNTOTO"
589        },
590        {
591          "@type": "Review",
592          "author": { "@type": "Person", "name": "Arsyan Devandra" },
593          "datePublished": "2026-05-17",
594          "reviewBody": "KEBUNTOTO cukup beda buat saya karena hasil Macau-nya disusun rapi. Cocok buat pemain yang ingin cek update cepat tanpa harus buka banyak halaman.",
595          "name": "KEBUNTOTO LOGIN"
596        },
597        {
598          "@type": "Review",
599          "author": { "@type": "Person", "name": "Raviel Mahesa" },
600          "datePublished": "2026-05-24",
601          "reviewBody": "Saya biasanya cari hasil yang mudah dibaca dari HP, dan KEBUNTOTO cukup nyaman untuk itu. Update Toto Macau-nya jelas, tampilannya juga tidak bikin bingung.",
602          "name": "KEBUNTOTO DAFTAR"
603        },
604        {
605          "@type": "Review",
606          "author": { "@type": "Person", "name": "Darel Vionata" },
607          "datePublished": "2026-05-03",
608          "reviewBody": "Buat pantauan pemain Asia, KEBUNTOTO terasa praktis. Hasil terbaru Toto Macau bisa dilihat dengan lebih cepat, jadi tidak perlu lama-lama cari info.",
609          "name": "TOTO MACAU"
610        }
611      ]
612    }
613  ]
614}
615</script>
615
616
617<script type="application/ld+json">
618{
619  "@context": "https://schema.org",
620  "@type": "HowTo",
621  "name": "Cara Mengakses Link Toto Macau Resmi Terlengkap KEBUNTOTO",
622  "description": "Panduan langkah demi langkah untuk mengakses situs KEBUNTOTO, memilih game Toto Macau, dan menemukan rekomendasi pasaran Toto Macau dengan peluang kemenangan terbaik hari ini.",
623  "image": "https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png",
624  "step": [
625    {
626      "@type": "HowToStep",
627      "name": "Akses Link Resmi KEBUNTOTO",
628      "text": "Kunjungi link resmi KEBUNTOTO LOGIN untuk memastikan akses ke Toto Macau terlengkap dengan sistem permainan yang aman dan stabil.",
629      "url": "https://hasilmacau88.com/",
630      "image": "https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
631    },
632    {
633      "@type": "HowToStep",
634      "name": "Pilih Pasaran Toto Macau yang diinginkan",
635      "text": "Telusuri pasaran Toto Macau dengan feeling ataupun prediksi angka yang menurutmu membawa keburuntungan dan menghasilkan kemenangan yang luar biasa.",
636      "image": "https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
637    },
638    {
639      "@type": "HowToStep",
640      "name": "Perhatikan Prediksi dan Pasaran Toto Macau",
641      "text": "Pastikan memilih pasaran dengan prediksi angka yang dirasakan akan membawa kemenangan tinggi dari yang sudah disediakan situs KEBUNTOTO.",
642      "image": "https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
643    },
644    {
645      "@type": "HowToStep",
646      "name": "Manfaatkan Bonus dan Promo",
647      "text": "Gunakan bonus dan promo yang tersedia di KEBUNTOTO untuk menambah modal bermain dan meriah keuntungan.",
648      "image": "https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
649    },
650    {
651      "@type": "HowToStep",
652      "name": "Mainkan Toto Macau dengan Bijak",
653      "text": "Kelola modal dengan baik dan bermain secara disiplin agar pengalaman bermain Toto Macau tetap aman dan menyenangkan.",
654      "image": "https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
655    }
656  ],
657  "tool": [
658    {
659      "@type": "HowToTool",
660      "name": "Perangkat smartphone atau komputer"
661    },
662    {
663      "@type": "HowToTool",
664      "name": "Koneksi internet stabil"
665    }
666  ],
667  "totalTime": "PT5M"
668}
669</script>
669
670
671 </head><body
672     data-template="product"
673     id="blossom-shine"
674     class="template-product template-product"
675   >
676     <!-- Google Tag Manager (noscript) -->
vendor: 90 bytes, lines 676-679
676
677     <noscript
678       ><iframe
679         src="https://www.googletagmanager.com/ns.html?id=
679GTM-MF9VVZX
vendor: 129 bytes, lines 679-685
679"
680         height="0"
681         width="0"
682         style="display:none;visibility:hidden"
683       ></iframe
684     ></noscript>
685     
685<!-- End Google Tag Manager (noscript) -->
686 
687     
688 
689     <div class="header-wrapper">
690       
691       <div id="shopify-section-NotifBar" class="shopify-section m-0">
692
693 <style>
694#notification {
695    z-index: 99;
696    width: 100%;
697    transition: top 0.2s ease-in-out;
698}
699
700#notification.promo-up {
701    top: -48px !important;
702}
703
704.promo-bg {
705    width: 100%;
706    padding: 6px 0;
707    /* Gradient horizontal kiri - tengah - kanan */
708    background: linear-gradient(to right, #000000, #2bff00, #000000);
709}
710
711.notification__message p {
712    margin: 0;
713    color: #ffffff;
714    font-size: 20px !important;
715    font-weight: bold;
716}
717
718.notification__message p a {
719    text-decoration: underline;
720    color: #ffffff;
721}
722
723@media (max-width: 991px){
724    .notification__message p {
725        font-size: 14px !important;
726    }
727}
728</style>
729
730 <input id="clearCookie" class="hide" type="button" value="Delete Cookie" />
731 <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">
732   <div class="page-width notification__inner ">
733     
734     
735     <div class="notification__message text-center">
736       <p>KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia</p>
737     </div>
738   </div>
739 </div>
740 
741 
742 
743 
744 </div>
745       <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"/>
746 
747 
748 <header style="background: black;">
749   <div class="container">
750     <div class="header-container row justify-content-between pl-lg-0 pr-lg-0">
751         <a href="https://hasilmacau88.com/">
752         <img src="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" alt="LOGO KEBUNTOTO" style="width: 190px;"></a>
753       <link href="https://imgbest.store/images/2026/03/29/favicon-kebuntoto.png" rel="shortcut icon" type="image/x-icon" />
754         <div id="menu-hamburger" class="d-lg-none">
755           <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="16" height="10" viewBox="0 0 16 10" fill="none">
756   <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"/>
757 </svg>
758 
759         <a href="/"><svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" viewBox="0 0 854 78.29">
760   <g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><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><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><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><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><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><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><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><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><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><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></g></g>
761 </svg>
762 </a>
763       </div>
764 
765       <div class="header-icon-right header-icons col-3">
766         <div class="icon icon-account-header d-none d-lg-block">
767           <a href="https://hasilmacau88.com/">
768             <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="20" height="21" viewBox="0 0 20 21" fill="none">
769   <path d="M19.015 19.8549C18.4842 18.3662 17.3117 17.0514 15.6819 16.1134C14.052 15.1754 12.0547 14.6667 10.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"/>
770   <path d="M10.0002 10C12.5775 10 14.6668 7.91068 14.6668 5.33335C14.6668 2.75602 12.5775 0.666687 10.0002 0.666687C7.42283 0.666687 5.3335 2.75602 5.3335 5.33335C5.3335 7.91068 7.42283 10 10.0002 10Z" stroke="#ffffff" stroke-linecap="round"/>
771 </svg>
772 
773           </a>
774         </div>
775         <div class="icon icon-wishlist-header">
776           <a href="https://hasilmacau88.com/">
777             <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
778   <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
7786 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"/>
779 </svg>
780 
781             <span class="wishlist-count d-none">0</span>
782           </a>
783         </div>
784         <div class="icon icon-cart-header">
785           <a href="https://hasilmacau88.com/">
786             <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="22" height="21" viewBox="0 0 22 21" fill="none">
787   <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"/>
788   <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"/>
789 </svg>
790 
791           </a>
792         </div>
793       </div>
794     </div>
795   </div>
796 </header>
797 
798 <nav class="nav-header" style="background: linear-gradient(to bottom, #000000 0%, #2bff00 50%, #000000 100%);">
799   <div class="nav-account-mobile row m-0 d-lg-none">
800     <div class="col-6 welcome-cust p-0">
801       
802         <h1 class="logo">
803     <a href="https://hasilmacau88.com/">
804         <img src="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" alt="KEBUNTOTO" style="max-height:60px;">
805     </a>
806 </h1>
807 
808       
809     </div>
810     
811       <div class="col-6 login-register text-right p-0">
812         <a href="https://terbaru.hasilmacau88.live/">Log In</a> | <a href="https://terbaru.hasilmacau88.live/">Sign Up</a>
813       </div>
814   </div>
815   <ul class="nav-menu container">
816     
817       <li class=" nav-menu container">
818         <a href="https://hasilmacau88.com/">
819           <span style="color: #000000;">KEBUNTOTO</span>
820
821       <li class="nav-menu container">
822         <a href="https://hasilmacau88.com/">
823           <span style="color: #000000;">KEBUNTOTO LOGIN</span>
824         
825       <li class=" nav-menu container">
826         <a href="https://hasilmacau88.com/">
827           <span style="color: #000000;">KEBUNTOTO DAFTAR</span>
828           
829       <li class=" nav-menu container">
830         <a href="https://hasilmacau88.com/">
831           <span style="color: #000000;">KEBUNTOTO SITUS</span>
832
833       <li class=" nav-menu container">
834         <a href="https://hasilmacau88.com/">
835           <span style="color: #000000;">TOTO MACAU</span>    
836       
837 <div class="overlay-nav">
838   <!-- Mobile Close Button in Overlay -->
839   <button id="nav-close" class="nav-close-btn d-lg-none">
840     <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
841       <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
842     </svg>
843   </button>
844 </div>
845 
846 
846<script>
847   if ($(window).width() < 992) {
848     // Level 1 menu accordion (main menu items)
849     $(".nav-menu .nav-menu container > a").click(function(e){
850       e.preventDefault()
851       const parentLi = $(this).parent()
852       const isCurrentlyOpen = parentLi.hasClass("menu-open")
853       
854       // Close all other open menus (accordion behavior)
855       $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open")
856       $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp()
857       
858       // Toggle current menu
859       if (isCurrentlyOpen) {
860         parentLi.removeClass("menu-open")
861         $(this).next(".megamenu").slideUp()
862       } else {
863         parentLi.addClass("menu-open")
864         $(this).next(".megamenu").slideDown()
865       }
866     })
867 
868     // Level 2 menu accordion (submenu items with grandchildren)
869     $(document).on('click', '.dropdown-menu .has-submenu > a', function(e){
870       e.preventDefault()
871       const parentLi = $(this).parent()
872       const isCurrentlyOpen = parentLi.hasClass("submenu-open")
873       const grandchild = $(this).next(".grandchild")
874       
875       // Close all other open submenus in the same dropdown (accordion behavior)
876       parentLi.siblings('.has-submenu').removeClass("submenu-open")
877       parentLi.siblings('.has-submenu').find('.grandchild').slideUp()
878       parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)')
879       
880       // Toggle current submenu
881       if (isCurrentlyOpen) {
882         parentLi.removeClass("submenu-open")
883         grandchild.slideUp()
884         $(this).find('.chevron-right').css('transform', 'rotate(0deg)')
885       } else {
886         parentLi.addClass("submenu-open")
887         grandchild.slideDown()
888         $(this).find('.chevron-right').css('transform', 'rotate(90deg)')
889       }
890     })
891 
892     $("#menu-hamburger").click(function(e){
893       e.preventDefault()
894       $("body").toggleClass("nav_open")
895     })
896     
897     // Handle close button click
898     $("#nav-close").click(function(e){
899       e.preventDefault()
900       $("body").removeClass("nav_open")
901       // Close all open menus when close button is clicked
902       $(".nav-menu .nav-menu container").removeClass("menu-open")
903       $(".nav-menu .megamenu").slideUp()
904       $(".dropdown-menu .has-submenu").removeClass("submenu-open")
905       $(".dropdown-menu .grandchild").slideUp()
906       $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)')
907     })
908   }
909 
910   $(".overlay-nav").click(function(e){
911       e.preventDefault()
912       $("body").removeClass("nav_open")
913       // Close all open menus when overlay is clicked
914       $(".nav-menu .nav-menu container").removeClass("menu-open")
915       $(".nav-menu .megamenu").slideUp()
916       $(".dropdown-menu .has-submenu").removeClass("submenu-open")
917       $(".dropdown-menu .grandchild").slideUp()
918       $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)')
919   })
920 </script>
920
921 
922 
923 </div>
924 
925       <div id="shopify-section-search-popup" class="shopify-section m-0"><style>
926   #search-trigger {
927     cursor: pointer;
928   }
929   #search-popup {
930     display: none;
931     position: fixed;
932     left: 0;
933     width: 100%;
934     top: 0;
935     height: 100%;
936     justify-content: center;
937     z-index: 9999;
938     background: rgb(196 196 196 / 30%);
939   }
940   #search-input {
941     align-self: center;
942     width: 100%;
943     height: 80px;
944     position: absolute;
945     top: 0;
946     border-bottom: 0.5px solid #A3A3A3;
947     background-color: #fff;
948   }
949   #search-input * {
950     align-self: center;
951   }
952   #search-type {
953     width: 100%;
954     border: none;
955     padding-right: 20px;
956     padding-left: 20px;
957     font-size: 16px;
958     color: #757575;
959   }
960   #search-btn {
961     font-size: 16px;
962     font-weight: 500;
963   }
964   #search-result {
965     min-height: 490px;
966     width: 100%;
967     padding-top: 80px;
968   }
969   #search-result .container {
970     background-color: #fff;
971     padding: 20px 40px;
972   }
973   body.search-popup-open {
974   /* .search-popup-open */
975     overflow: hidden;
976   }
977   .search-popup-open #loc_delivery {
978     display: none
979   }
980   .search-header svg {
981     display: none;
982     cursor: pointer;
983   }
984   .wrapper-search-popup {
985     max-height: calc(100vh - 150px);
986     overflow-y: auto;
987     overflow-x: hidden;
988   }
989 
990   .group-recommend {
991     padding: 20px 40px;
992   }
993 
994   .resultsearch {
995     display: none;
996   }
997   .results { padding: 20px 40px }
998   .resultsearch label {
999     font-weight: 600;
1000     padding-bottom: 20px;
1001     display: block;
1002     margin-bottom: 20px;
1003     border-bottom: 1px solid #AAAAAA;
1004   }
1005 
1006   ul.result_product {
1007     max-height: 300px;
1008     overflow: auto;
1009   }
1010 
1011   .group-promotion ul {
1012     margin: 0;
1013   }
1014   .group-promotion li {
1015     list-style: none;
1016     margin-bottom: 12px;
1017   }
1018   .group-promotion li a {
1019     color: inherit;
1020   }
1021 
1022   .group-recent {
1023     position: relative;
1024     padding: 20px 40px;
1025   }
1026   .group-recent ul {
1027     margin: 0;
1028   }
1029   .group-recent li {
1030     list-style: none;
1031     display: inline-block;
1032     margin-right: 60px;
1033   }
1034   .group-recent li a {
1035     color: inherit;
1036   }
1037 
1038   .last-search svg {
1039     width: 20px;
1040     vertical-align: middle;
1041   }
1042   ul.last-search a {
1043     vertical-align: middle;
1044     padding: 0 10px;
1045   }
1046   ul.last-search li span {
1047     cursor: pointer;
1048   }
1049   .delete-all-history {
1050     position: absolute;
1051     top: 25px;
1052     right: 40px;
1053     text-decoration: underline;
1054     color: #e11d1d;
1055     cursor: pointer;
1056     font-size: 12px;
1057   }
1058 
1059   form.search.search-modal__form {
1060     position: relative;
1061   }
1062 
1063   button.search__button svg {
1064     width: 25px;
1065     color: #495057;
1066     fill: #757582;
1067   }
1068 
1069   button.search__button.field__button {
1070     position: absolute;
1071     top: 50%;
1072     margin-top: -12px;
1073   }
1074 
1075   .close-search {
1076     display: none;
1077     position: absolute;
1078     right: 65px;
1079     top: 10px;
1080     cursor: pointer;
1081   }
1082 
1083   .site-overlay {
1084     position: fixed;
1085     top: 0;
1086     width: 100vw;
1087     height: 100vh;
1088     z-index: 1000;
1089     background: #0000005c;
1090     visibility: hidden;
1091     opacity: 0;
1092     pointer-events: none;
1093     transition: all .3s linear;
1094     display: block !important;
1095   }
1096 
1097   .search-popup-open .site-overlay {
1098     opacity: 1;
1099     visibility: visible;
1100     pointer-events: all;
1101     z-index: -1;
1102     cursor: pointer;
1103   }
1104 
1105   @media (min-width: 991px) {
1106     .group-recent ul {
1107       column-count: 3;
1108     }
1109     .group-promotion li a {
1110       font-size: 12px;
1111       font-weight: 400;
1112     }
1113     .group-recent li a {
1114       font-size: 12px;
1115       font-weight: 400;
1116     }
1117   }
1118 
1119   .moreresult {
1120     padding: 10px 40px;
1121     border-top: 1px solid #AAAAAA;
1122   }
1123   .moreresult * {
1124     align-self: center;
1125   }
1126   .moreresult p {
1127     margin: 0;
1128     font-size: 12px !important;
1129   }
1130   .moreresult svg {
1131     width: 13px;
1132   }
1133 
1134   @media (max-width: 992px) {
1135     .icon-key-mobile {
1136         height: auto!important;
1137         width: 10px!important;
1138     }
1139     body.grid-view.search-popup-open .products {
1140       -ms-flex: 0 0 100%!important;
1141       flex: 0 0 100%!important;
1142       max-width: 100%!important;
1143     }
1144     button.search__button svg {
1145       width: 20px;
1146     }
1147     #search-result {
1148       padding-left: 0;
1149       padding-right: 0;
1150     }
1151     #search-result {
1152       padding-top: 55px;
1153     }
1154     #search-input {
1155       height: 55px;
1156     }
1157     .group-recommend {
1158       padding: 20px;
1159     }
1160     #search-input .container {
1161       padding: 0 20px;
1162     }
1163     #search-type {
1164       font-size: 14px;
1165     }
1166     #search-btn {
1167       font-size: 12px;
1168       text-decoration: underline;
1169     }
1170     .results {
1171       padding: 20px;
1172     }
1173     .group-recommend h3 {
1174       font-size: 16px;
1175     }
1176     .products .card-body {
1177       padding: 8px 0px 10px;
1178     }
1179     .moreresult {
1180       padding: 10px 20px;
1181     }
1182   }
1183 </style>
1184  <style type="text/css">
1185         div.advertisement-placeholder {
1186             text-align: center;
1187             padding-bottom: 20px;
1188             display: flex;
1189             flex-direction: column;
1190             justify-content: center;
1191         }
1192         div.advertisement-text p {
1193             margin: 0;
1194             font-family: Open Sans;
1195             font-style: normal;
1196             font-weight: normal;
1197             font-size: 10px;
1198             line-height: 20px;
1199             color: #999999;
1200         }
1201         div.advertisement-banner {
1202             margin: 0px auto;
1203         }
1204         div#div-gpt-ad-billboard-placeholder {
1205             width: 996px;
1206             margin: 0 auto;
1207             background: #F5F5F5;
1208             padding-bottom: unset !important;
1209             min-height: 200px;
1210         }
1211         div#div-gpt-ad-lb-placeholder {
1212             background: #F5F5F5;
1213             padding-bottom: unset !important;
1214             min-height: 280px;
1215         }
1216         .faq-section{
1217             max-width:1200px;
1218             margin:50px auto;
1219             padding:40px 20px;
1220             position:relative;
1221             background-color: rgba(0, 0, 0, 0.1);
1222             backdrop-filter: blur(25px);
1223             border-radius: 20px;
1224             }
1225         
1226         .faq-section::before{
1227             content:"";
1228             position:absolute;
1229             top:0;left:50%;
1230             transform:translateX(-50%);
1231             width:80%;
1232             height:2px;
1233             background:linear-gradient(90deg,transparent,#ffffff,transparent)
1234             }
1235             
1236         .faq-section h2{
1237             text-align:center;
1238             font-size:34px;font-weight:700;
1239             margin-bottom:50px;
1240             background: linear-gradient(135deg, #2bff00, #2bff00, #2bff00);
1241             -webkit-background-clip:text;
1242             -webkit-text-fill-color:transparent;
1243             background-clip:text;
1244             font-family:"Poppins",sans-serif;letter-spacing:1px
1245         }
1246         
1247         .faq-container{
1248             display:flex;
1249             flex-direction:column;
1250             gap:25px
1251         }
1252         
1253         .faq-item{
1254             background:linear-gradient(145deg,#0a0a0a,#1a1a1a);
1255             border:2px solid #cecece;
1256             border-radius:20px;overflow:hidden;
1257             transition:all .4s ease;box-shadow:0 5px 20px rgba(0,0,0,0.5)
1258         }
1259         
1260         .faq-item:hover{
1261             border-color:#d80000;
1262             transform:translateX(10px);
1263             box-shadow:0 12px 35px rgba(253, 187, 4, 0.25)
1264         }
1265 
1266         .faq-question{width:100%;
1267             padding:28px 35px;background:transparent;
1268             color:#ffffff;
1269             font-size:18px;
1270             font-weight:600;
1271             text-align:left;
1272             border:none;cursor:pointer;
1273             display:flex;
1274             justify-content:space-between;
1275             align-items:center;
1276             font-family:"Poppins",sans-serif;
1277             transition:all .3s ease
1278         }
1279         
1280         .faq-question:hover{
1281             color:#2bff00
1282         }
1283         
1284         .faq-question::after{
1285             content:'+';
1286             font-size:32px;
1287             font-weight:300;
1288             transition:all .4s ease;
1289             color:#2bff00;
1290             width:40px;
1291             height:40px;
1292             display:flex;
1293             align-items:center;
1294             justify-content:center;
1295             border:2px solid #2bff00;border-radius:50%;
1296             background:rgba(0, 0, 0, 0.1)
1297         }
1298         
1299         .faq-item.active .faq-question::after{
1300             transform:rotate(135deg);
1301             background:linear-gradient(to bottom, #2bff00 0%, #2bff00 50%, #2bff00 100%);
1302             color:#000;border-color:transparent
1303         }
1304         
1305         .faq-answer{
1306             max-height:0;
1307             overflow:hidden;
1308             transition:max-height .5s ease,padding .5s ease;
1309             background:linear-gradient(180deg,rgba(253,228,4,0.05),transparent);
1310             padding:0 35px
1311         }
1312         
1313         .faq-item.active .faq-answer{
1314             max-height:800px;padding:30px 35px;
1315             border-top:1px solid #2bff00
1316         }
1317         
1318         .faq-answer p{
1319             color:#e0e0e0;
1320             font-size:16px;
1321             line-height:2;
1322             margin:0;
1323             font-family:"Poppins",sans-serif
1324         }
1325 
1326         @media
1327             (max-width:768px)
1328         {
1329         
1330         .faq-section
1331             {padding:30px 15px}
1332         
1333         .faq-section h2
1334             {font-size:26px}
1335         
1336         .faq-question
1337             {font-size:16px;
1338             padding:22px 25px}
1339         
1340         .faq-question::after
1341             {width:35px;
1342             height:35px;
1343             font-size:28px}
1344         
1345         .faq-answer
1346             {padding:0 25px}
1347         
1348         .faq-item.active .faq-answer
1349             {padding:25px}
1350         
1351         .faq-item:hover
1352             {transform:translateX(5px)}
1353             }
1354     </style>
1355 <div id="search-popup">
1356   <div id="search-input" class="row">
1357     <div class="container w-100">
1358       <form
1359         action="/search"
1360         method="get"
1361         role="search"
1362         class="search search-modal__form d-flex justify-content-between"
1363       >
1364         <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="20" height="20" viewBox="0 0 20 20" fill="none">
1365   <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"/>
1366 </svg>
1367 
1368         <input type="hidden" name="type" value="product">
1369         <input
1370           type="text"
1371           id="search-type"
1372           name="q"
1373           class="search-popup"
1374           placeholder="Gifts that linger: Uncover treasures for cherished moments."
1375         >
1376         <div class="close-search"><svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="18" height="18" viewBox="0 0 18 18" fill="none">
1377   <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 
137712.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"/>
1378 </svg>
1379 </div>
1380         <button id="search-btn">Search</button>
1381       </form>
1382     </div>
1383   </div>
1384   <div id="search-result" class="container m-auto">
1385     <div class="container p-0">
1386       <div class="group-promotion">
1387         <div class="resultsearch">
1388           <div class="row results">
1389             <div class="col-12 col-lg-6 mb-3 mb-lg-0">
1390               <label>SUGGESTIONS</label>
1391               <ul class="result_collection"></ul>
1392             </div>
1393             <div class="col-12 col-lg-6">
1394               <label>PRODUCTS</label>
1395               <ul class="result_product"></ul>
1396             </div>
1397           </div>
1398           <div class="d-flex justify-content-between moreresult m-0">
1399             <p>Search for<span></span></p>
1400             <svg version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="32" height="32" viewBox="0 0 32 32">
1401 <title>icon-arrow-right</title>
1402 <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>
1403 </svg>
1404           </div>
1405         </div>
1406       </div>
1407       <div class="group-recent hide">
1408         <h3>RECENT SEARCH</h3>
1409         <span class="delete-all-history">Hapus riwayat</span>
1410         <ul class="last-search"></ul>
1411       </div>
1412       <div class="group-recommend">
1413         <h3>YOU MAY ALSO LIKE</h3>
1414         
1415         
1416           <div class="row popup-recommend c-products-grid infinite-case product-multi-">
1417             <div class="swiper-wrapper justify-content-between" style="margin-left:1px;">
1418               
1419                 
1420                   <div class="swiper-slide card">
1421                     
1422 
1423 
1424 
1425 <div class="products" data-lazy="false">
1426   <div class="bg-products">
1427     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake">
1428       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1429   <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.
142911233C11.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"/>
1430 </svg>
1431 
1432     </div>
1433     <a href="/products/mid-autumn-of-love-mooncake">
1434       
1435       <div class="product-card-img-container p-0 position-relative">
1436         
1437         <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">
1438       </div>
1439       <div class="card-body product-card-info">
1440         <h5 class="h5 mb-0">
1441           Mid Autumn of Love Mooncake
1442         </h5>
1443         <div class="product-card-price">
1444           
1445           <div class="product-price-sale">
1446             <s class="product-card-price-before card-money">Rp 588.000</s>
1447             <span class="product-card-discount small">	
1448               (-40%)
1449             </span> 	
1450           </div>
1451           
1452           
1453           
1454           <div class="price-discount">
1455             <h4 class="product-card-price-after card-money">Rp 348.000</h4>
1456           </div>
1457           
1458           
1459           
1460           
1461           
1462         </div>
1463         
1464       </div>
1465     </a>
1466   </div>
1467   
1468 </div>
1469 
1470                   </div>
1471                 
1472               
1473                 
1474                   <div class="swiper-slide card">
1475                     
1476 
1477 
1478 
1479 <div class="products" data-lazy="false">
1480   <div class="bg-products">
1481     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake">
1482       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1483   <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.
148311233C11.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"/>
1484 </svg>
1485 
1486     </div>
1487     <a href="/products/mid-autumn-of-joy-mooncake">
1488       
1489       <div class="product-card-img-container p-0 position-relative">
1490         
1491         <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">
1492       </div>
1493       <div class="card-body product-card-info">
1494         <h5 class="h5 mb-0">
1495           Mid Autumn of Joy Mooncake
1496         </h5>
1497         <div class="product-card-price">
1498           
1499           <div class="product-price-sale">
1500             <s class="product-card-price-before card-money">Rp 888.000</s>
1501             <span class="product-card-discount small">	
1502               (-33%)
1503             </span> 	
1504           </div>
1505           
1506           
1507           
1508           <div class="price-discount">
1509             <h4 class="product-card-price-after card-money">Rp 588.000</h4>
1510           </div>
1511           
1512           
1513           
1514           
1515           
1516         </div>
1517         
1518       </div>
1519     </a>
1520   </div>
1521   
1522 </div>
1523 
1524                   </div>
1525                 
1526               
1527                 
1528                   <div class="swiper-slide card">
1529                     
1530 
1531 
1532 
1533 <div class="products" data-lazy="false">
1534   <div class="bg-products">
1535     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake">
1536       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1537   <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.
153711233C11.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"/>
1538 </svg>
1539 
1540     </div>
1541     <a href="/products/mid-autumn-of-fortune-mooncake">
1542       
1543       <div class="product-card-img-container p-0 position-relative">
1544         
1545         <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">
1546       </div>
1547       <div class="card-body product-card-info">
1548         <h5 class="h5 mb-0">
1549           Mid Autumn of Fortune Mooncake
1550         </h5>
1551         <div class="product-card-price">
1552           
1553           <div class="product-price-sale">
1554             <s class="product-card-price-before card-money">Rp 1.188.000</s>
1555             <span class="product-card-discount small">	
1556               (-33%)
1557             </span> 	
1558           </div>
1559           
1560           
1561           
1562           <div class="price-discount">
1563             <h4 class="product-card-price-after card-money">Rp 788.000</h4>
1564           </div>
1565           
1566           
1567           
1568           
1569           
1570         </div>
1571         
1572       </div>
1573     </a>
1574   </div>
1575   
1576 </div>
1577 
1578                   </div>
1579                 
1580               
1581                 
1582                   <div class="swiper-slide card">
1583                     
1584 
1585 
1586 
1587 <div class="products" data-lazy="false">
1588   <div class="bg-products">
1589     <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake">
1590       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1591   <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.
159111233C11.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"/>
1592 </svg>
1593 
1594     </div>
1595     <a href="/products/mid-autumn-festival-mooncake">
1596       
1597       <div class="product-card-img-container p-0 position-relative">
1598         
1599         <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">
1600       </div>
1601       <div class="card-body product-card-info">
1602         <h5 class="h5 mb-0">
1603           Mid Autumn Festival Mooncake
1604         </h5>
1605         <div class="product-card-price">
1606           
1607           <div class="product-price-sale">
1608             <s class="product-card-price-before card-money">Rp 1.288.000</s>
1609             <span class="product-card-discount small">	
1610               (-23%)
1611             </span> 	
1612           </div>
1613           
1614           
1615           
1616           <div class="price-discount">
1617             <h4 class="product-card-price-after card-money">Rp 988.000</h4>
1618           </div>
1619           
1620           
1621           
1622           
1623           
1624         </div>
1625         
1626       </div>
1627     </a>
1628   </div>
1629   
1630 </div>
1631 
1632                   </div>
1633                 
1634               
1635                 
1636                   <div class="swiper-slide card">
1637                     
1638 
1639 
1640 
1641 <div class="products" data-lazy="false">
1642   <div class="bg-products">
1643     <div class="wishlist-toggle" data-product-handle="the-jade-bouquet">
1644       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1645   <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.
164511233C11.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"/>
1646 </svg>
1647 
1648     </div>
1649     <a href="/products/the-jade-bouquet">
1650       
1651       <div class="product-card-img-container p-0 position-relative">
1652         
1653         <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">
1654       </div>
1655       <div class="card-body product-card-info">
1656         <h5 class="h5 mb-0">
1657           The Jade Bouquet
1658         </h5>
1659         <div class="product-card-price">
1660           
1661           <div class="product-price-sale">
1662             <s class="product-card-price-before card-money">Rp 435.000</s>
1663             <span class="product-card-discount small">	
1664               (-34%)
1665             </span> 	
1666           </div>
1667           
1668           
1669           
1670           <div class="price-discount">
1671             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1672           </div>
1673           
1674           
1675           
1676           
1677           
1678         </div>
1679         
1680       </div>
1681     </a>
1682   </div>
1683   
1684 </div>
1685 
1686                   </div>
1687                 
1688               
1689                 
1690                   <div class="swiper-slide card">
1691                     
1692 
1693 
1694 
1695 <div class="products" data-lazy="false">
1696   <div class="bg-products">
1697     <div class="wishlist-toggle" data-product-handle="the-selena-bouquet">
1698       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1699   <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.
169911233C11.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"/>
1700 </svg>
1701 
1702     </div>
1703     <a href="/products/the-selena-bouquet">
1704       
1705       <div class="product-card-img-container p-0 position-relative">
1706         
1707         <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">
1708       </div>
1709       <div class="card-body product-card-info">
1710         <h5 class="h5 mb-0">
1711           The Selena Bouquet
1712         </h5>
1713         <div class="product-card-price">
1714           
1715           <div class="product-price-sale">
1716             <s class="product-card-price-before card-money">Rp 335.000</s>
1717             <span class="product-card-discount small">	
1718               (-29%)
1719             </span> 	
1720           </div>
1721           
1722           
1723           
1724           <div class="price-discount">
1725             <h4 class="product-card-price-after card-money">Rp 235.000</h4>
1726           </div>
1727           
1728           
1729           
1730           
1731           
1732         </div>
1733         
1734       </div>
1735     </a>
1736   </div>
1737   
1738 </div>
1739 
1740                   </div>
1741                 
1742               
1743                 
1744                   <div class="swiper-slide card">
1745                     
1746 
1747 
1748 
1749 <div class="products" data-lazy="false">
1750   <div class="bg-products">
1751     <div class="wishlist-toggle" data-product-handle="the-viola-bouquet">
1752       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1753   <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.
175311233C11.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"/>
1754 </svg>
1755 
1756     </div>
1757     <a href="/products/the-viola-bouquet">
1758       
1759       <div class="product-card-img-container p-0 position-relative">
1760         
1761         <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">
1762       </div>
1763       <div class="card-body product-card-info">
1764         <h5 class="h5 mb-0">
1765           The Viola Bouquet
1766         </h5>
1767         <div class="product-card-price">
1768           
1769           <div class="product-price-sale">
1770             <s class="product-card-price-before card-money">Rp 385.000</s>
1771             <span class="product-card-discount small">	
1772               (-25%)
1773             </span> 	
1774           </div>
1775           
1776           
1777           
1778           <div class="price-discount">
1779             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1780           </div>
1781           
1782           
1783           
1784           
1785           
1786         </div>
1787         
1788       </div>
1789     </a>
1790   </div>
1791   
1792 </div>
1793 
1794                   </div>
1795                 
1796               
1797                 
1798                   <div class="swiper-slide card">
1799                     
1800 
1801 
1802 
1803 <div class="products" data-lazy="false">
1804   <div class="bg-products">
1805     <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet">
1806       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1807   <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.
180711233C11.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"/>
1808 </svg>
1809 
1810     </div>
1811     <a href="/products/the-minerva-bouquet">
1812       
1813       <div class="product-card-img-container p-0 position-relative">
1814         
1815         <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">
1816       </div>
1817       <div class="card-body product-card-info">
1818         <h5 class="h5 mb-0">
1819           The Minerva Bouquet
1820         </h5>
1821         <div class="product-card-price">
1822           
1823           <div class="product-price-sale">
1824             <s class="product-card-price-before card-money">Rp 385.000</s>
1825             <span class="product-card-discount small">	
1826               (-25%)
1827             </span> 	
1828           </div>
1829           
1830           
1831           
1832           <div class="price-discount">
1833             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1834           </div>
1835           
1836           
1837           
1838           
1839           
1840         </div>
1841         
1842       </div>
1843     </a>
1844   </div>
1845   
1846 </div>
1847 
1848                   </div>
1849                 
1850               
1851                 
1852                   <div class="swiper-slide card">
1853                     
1854 
1855 
1856 
1857 <div class="products" data-lazy="false">
1858   <div class="bg-products">
1859     <div class="wishlist-toggle" data-product-handle="congraduations-bouquet">
1860       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1861   <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.
186111233C11.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"/>
1862 </svg>
1863 
1864     </div>
1865     <a href="/products/congraduations-bouquet">
1866       
1867       <div class="product-card-img-container p-0 position-relative">
1868         
1869         <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">
1870       </div>
1871       <div class="card-body product-card-info">
1872         <h5 class="h5 mb-0">
1873           Congraduations Bouquet
1874         </h5>
1875         <div class="product-card-price">
1876           
1877           <div class="product-price-sale">
1878             <s class="product-card-price-before card-money">Rp 380.000</s>
1879             <span class="product-card-discount small">	
1880               (-25%)
1881             </span> 	
1882           </div>
1883           
1884           
1885           
1886           <div class="price-discount">
1887             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1888           </div>
1889           
1890         </div>
1891         
1892       </div>
1893     </a>
1894   </div>
1895   
1896 </div>
1897 
1898                   </div>
1899                 
1900               
1901                 
1902                   <div class="swiper-slide card">
1903                     
1904 
1905 
1906 
1907 <div class="products" data-lazy="false">
1908   <div class="bg-products">
1909     <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet">
1910       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="21" viewBox="0 0 24 21" fill="none">
1911   <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.
191111233C11.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"/>
1912 </svg>
1913 
1914     </div>
1915     <a href="/products/grad-gorgeous-bouquet">
1916       
1917       <div class="product-card-img-container p-0 position-relative">
1918         
1919         <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 &amp; Gorgeous Bouquet" height="200" width="200">
1920       </div>
1921       <div class="card-body product-card-info">
1922         <h5 class="h5 mb-0">
1923           Grad & Gorgeous Bouquet
1924         </h5>
1925         <div class="product-card-price">
1926           
1927           <div class="product-price-sale">
1928             <s class="product-card-price-before card-money">Rp 380.000</s>
1929             <span class="product-card-discount small">	
1930               (-25%)
1931             </span> 	
1932           </div>
1933           
1934           
1935           
1936           <div class="price-discount">
1937             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1938           </div>
1939           
1940           
1941           
1942           
1943           
1944         </div>
1945         
1946       </div>
1947     </a>
1948   </div>
1949   
1950 </div>
1951 
1952                   </div>
1953                 
1954               
1955             </div>
1956           </div>
1957         
1958       </div>
1959     </div>
1960   </div>
1961 
1962   <div class="site-overlay" style="display: none"></div>
1963 </div>
1964 
1964<script>
1965   
1966   var swiper = new Swiper('.popup-recommend', {
1967       slidesPerView : 4, 
1968       spaceBetween: 30,
1969       lazy: true ,                            
1970       speed: 300,
1971       breakpoints: {
1972         // when window width is <= 576px
1973         576: {
1974             slidesPerView: 2,
1975               spaceBetween: 10,
1976             freeMode: true,
1977             resistance : true,
1978             resistanceRatio : 0,
1979             freeModeMomentumRatio : 0.45,
1980             freeModeMomentumVelocityRatio : 1.5
1981         },
1982         768: {
1983               slidesPerView: 2,
1984               spaceBetween: 10
1985             },
1986         992: {
1987               slidesPerView: 3,
1988               spaceBetween: 20
1989         }
1990       }
1991   });
1992 
1993   const searchContainer = $("#search-popup")
1994   const searchInput = $(".search-popup")
1995   const result_collection = $('.result_collection')
1996   const result_product = $('.result_product')
1997   const resultsearch = $('.resultsearch')
1998   const resultrecommend = $(".group-recommend")
1999   const moreresult = $(".moreresult")
2000 
2001   searchInput.keyup(function(){
2002     const input = $(this).val()
2003     moreresult.find("p span").text(` “${input}”`)
2004     if(input.length > 2) {
2005       $(".close-search").show()
2006       const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}`
2007       $.ajax({
2008         type: 'GET',
2009         url,
2010         beforeSend: function() {
2011             // setting a timeout
2012             // $(placeholder).addClass('loading');
2013         },
2014         success: function(response) {
2015             resultsearch.show()
2016             resultrecommend.hide()
2017             result_collection.html("")
2018             result_product.html("")
2019             const collections = response.resources.results.collections
2020             const products = response.resources.results.products
2021             let collection_length = collections.length
2022             let product_length = products.length
2023             // if(collections.length > 5) {
2024             //   collection_length = 5
2025             // }
2026             // if(products.length > 5) {
2027             //   product_length = 5
2028             // }
2029             for(let i=0;i<collection_length;i++){
2030               const title = collections[i].title
2031               const url = collections[i].url
2032               let html_collection
2033               if(!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) {
2034                 html_collection = `
2035                 <li class="item" data-title="${title}">
2036                   <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a>
2037                 </li>
2038                 `
2039               }
2040               result_collection.append(html_collection)
2041             }
2042             for(let i=0;i<product_length;i++){
2043               const title = products[i].title
2044               const url = products[i].url
2045               const image = products[i].featured_image.url
2046               const vendor = products[i].vendor
2047               let html_product
2048               if(vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')){
2049                 html_product = `
2050                 <li class="item" data-vendor="${vendor}">
2051                   <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}">
2052                     <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"><span>${title}</span>
2053                   </a>
2054                 </li>
2055                 `
2056               }
2057               result_product.append(html_product)
2058             }
2059         },
2060         error: function(xhr) { // if error occured
2061             alert("Error occured.please try again");
2062         },
2063         complete: function(response) {
2064             // $(placeholder).removeClass('loading');
2065         },
2066         dataType: 'JSON'
2067       });
2068     } else {
2069       result_collection.html("")
2070       result_product.html("")
2071       
2072       resultsearch.hide()
2073       resultrecommend.show()
2074     }
2075   })
2076 
2077   moreresult.click(function(){
2078     $("#search-btn").trigger("click");
2079   })
2080 
2081   $(".close-search").click(function(){
2082     $(this).hide()
2083     searchInput.val("")
2084     searchInput.focus()
2085     resultsearch.hide()
2086     resultrecommend.show()
2087   })
2088 
2089   function setCookie(name,value,days) {
2090     var expires = "";
2091     if (days) {
2092       var date = new Date();
2093       date.setTime(date.getTime() + (days*24*60*60*1000));
2094       expires = "; expires=" + date.toUTCString();
2095     }
2096     document.cookie = name + "=" + (value || "")  + expires + "; path=/";
2097   }
2098   function getCookie(name) {
2099     var nameEQ = name + "=";
2100     var ca = document.cookie.split(';');
2101     for(var i=0;i < ca.length;i++) {
2102       var c = ca[i];
2103       while (c.charAt(0)==' ') c = c.substring(1,c.length);
2104       if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
2105     }
2106     return null;
2107   }
2108   let last_search_name = []
2109   let last_search_url = []
2110   $(".group-recent").hide()
2111   if(getCookie("last_search_name") != null && getCookie("last_search_url") != null){
2112     if(getCookie("last_search_name") != "" && getCookie("last_search_url") != ""){
2113       $(".group-recent").show()
2114       last_search_name = getCookie("last_search_name");
2115       last_search_url = getCookie("last_search_url");
2116       const arrName = last_search_name.substring(1).split(',').reverse()
2117       const arrUrl = last_search_url.substring(1).split(',').reverse()
2118       console.log(arrName, 'Array Name')
2119       console.log(arrUrl, 'Array Url')
2120       let length = arrName.length
2121       if(arrName.length > 5) {
2122         length = 5
2123       }
2124       for(let n=0;n<length;n++){
2125         let html2 = `<li><svg viewBox="0 0 24 24" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif"><title/><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"/><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"/></svg><a href="${arrUrl[n]}">${arrName[n]}</a><span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span></li>`
2126         $(".group-recent ul").append(html2)
2127       }
2128     }
2129   }
2130   console.log(last_search_name, 'Name')
2131   console.log(last_search_url, 'url')
2132   
2133   resultsearch.delegate(".item a", "click", function(){
2134     let name = [last_search_name]
2135     let url = [last_search_url]
2136     name.push($(this).attr('data-title'))
2137     url.push($(this).attr('data-url'))
2138     setCookie("last_search_name",name,7);
2139     setCookie("last_search_url",url,7);
2140   })
2141   
2142   $(".delete-all-history").click(function() {
2143     setCookie("last_search_name",null,0);
2144     setCookie("last_search_url",null,0);
2145     $(".last-search").hide();
2146     setTimeout(function(){
2147       location.reload();
2148     }, 500);
2149   })
2150   
2151   $("#search-trigger").click(function(){
2152     search_open()
2153   })
2154   $(".icon-search-mobile").click(function(){
2155     search_open()
2156   })
2157   $(".search-header svg").click(function(){
2158     search_close()
2159   })
2160   $(".icon-key-mobile").click(function(){
2161     search_close()
2162   })
2163 
2164   function search_open() {
2165     $("body").addClass("search-popup-open")
2166     $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide()
2167     $("#search-popup, .search-header svg, .icon-key-mobile").show()
2168     $(".search-popup").focus()
2169     $('.popup-recommend')[0].swiper.update();
2170   }
2171   function search_close() {
2172     $("body").removeClass("search-popup-open")
2173     $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show()
2174     $("#search-popup, .search-header svg, .icon-key-mobile").hide()
2175     searchInput.val("")
2176     resultsearch.hide()
2177     resultrecommend.show()
2178   }
2179 
2180   $(".site-overlay").click(function(){
2181     search_close()
2182   })
2183 </script>
2183
2184 
2185 </div>
2186     </div>
2187 
2188     <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #000000;">
2189       <main class="main-content pt-0" role="main">
2190         
2191           <div id="breadcrumbProduct" class="d-none d-lg-block">
2192             <style>
2193   #breadcrumbProduct {
2194     padding: 20px 0;
2195   }
2196   #breadcrumbProduct ul {
2197       display: flex;
2198       padding: 0;
2199       list-style: none;
2200       margin: 0;
2201       gap: 12px;
2202   }
2203   #breadcrumbProduct ul li {
2204     text-transform: uppercase;
2205     margin: 0;
2206     font-size: 12px;
2207 }
2208   #breadcrumbProduct ul li a {
2209     color: #757575;
2210   }
2211 
2212   #breadcrumbProduct ul li svg {
2213     width: 10px;
2214     height: 10px;
2215     padding: 0;
2216     color: #757575;
2217     vertical-align: middle;
2218   }
2219 </style>
2220 <div class="container" style="color: #ffffff;">
2221   <ul role="navigation" aria-label="breadcrumbs">
2222     <li><a href="https://hasilmacau88.com/" style="color: #ffffff;">KEBUNTOTO</a></li>
2223     <li><svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="7" height="10" viewBox="0 0 7 10" fill="none">
2224     <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"/>
2225 </svg></li>
2226     <li><a href="https://hasilmacau88.com/" style="color: #ffffff;">KEBUNTOTO LOGIN</a></li>
2227     <li><svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="7" height="10" viewBox="0 0 7 10" fill="none">
2228     <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"/>
2229 </svg></li>
2230     <li><a href="https://hasilmacau88.com/" style="color: #ffffff;">TOTO MACAU</a></li>
2231     <li><svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="7" height="10" viewBox="0 0 7 10" fill="none">
2232     <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"/>
2233 </svg></li>
2234    <li><a style="color: #ffffff;">KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia</a></li>
2235
2236     
2237   </ul>
2238 </div>
2239 
2240           </div>
2241        
2242         
2243 <div id="shopify-section-Product" class="shopify-section product-section mt-0"><link href="//outerbloom.com/cdn/shop/t/138/assets/product.css?v=31392998782552138141759380387" rel="stylesheet" type="text/css" media="all" />
2244 
2245 
2246 <style>
2247     .bg-card {
2248     background-color: #000000;
2249 }
2250     </style>
2251 
2252 <!-- /templates/product.liquid -->
2253 
2254 
2255 <!-- <div itemscope itemtype="http://schema.org/Product"> -->
2256 
2257 
2258 <div class="product-standing-flower" data-product-type="flowerBoard">
2259   <meta itemprop="url" content="https://hasilmacau88.com/">
2260   <meta itemprop="image" content="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
2261 
2262   
2263   
2264   <input id="data-sku" type="hidden" value="OBVSTF1086">
2265   <div class="product-single" style="background-image: url(https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png); background-attachment: fixed;">
2266     <div id="product-top" class="container">
2267       <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;">
2268         <div id="product-image" class="col-lg-7 text-center">
2269           <div class="product-image">
2270             <div class="row no-gutters">
2271   
2272   <div id="product-featured-image" class="row w-100">
2273     
2274       <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block">
2275         
2276         <div class="swiper-container gallery-thumbs" style="min-height: 500px">
2277           <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx">
2278 
2279                   <li class="swiper-slide" data-type="image">
2280                     <a
2281                       href="files/Blossom-Shine-WM.jpg"
2282                       data-standard="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2283                       data-image="files/Blossom-Shine-WM.jpg"
2284                       data-position="1"
2285                       class="product-single__thumbnail"
2286                     >
2287                       <img
2288                         class="lazyload w-100"
2289                         src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2290                         alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2291                         width=""
2292                         height=""
2293                       >
2294                     </a>
2295                   </li>
2296                 
2297               
2298             
2299 
2300                   <li class="swiper-slide" data-type="image">
2301                     <a
2302                       href="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2303                       data-standard="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2304                       data-image="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2305                       data-position="2"
2306                       class="product-single__thumbnail"
2307                     >
2308                       <img
2309                         class="lazyload w-100"
2310                         src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2311                         alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2312                         width=""
2313                         height=""
2314                       >
2315                     </a>
2316                   </li>
2317                 
2318               
2319             
2320 
2321                   <li class="swiper-slide" data-type="image">
2322                     <a
2323                       href="files/Blossom-Shine_3-WM.jpg"
2324                       data-standard="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2325                       data-image="files/Blossom-Shine_3-WM.jpg"
2326                       data-position="3"
2327                       class="product-single__thumbnail"
2328                     >
2329                       <img
2330                         class="lazyload w-100"
2331                         src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2332                         alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2333                         width=""
2334                         height=""
2335                       >
2336                     </a>
2337                   </li>
2338                 
2339               
2340             
2341 
2342                   <li class="swiper-slide" data-type="image">
2343                     <a
2344                       href="files/Blossom-Shine_4.jpg"
2345                       data-standard="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2346                       data-image="files/Blossom-Shine_4.jpg"
2347                       data-position="4"
2348                       class="product-single__thumbnail"
2349                     >
2350                       <img
2351                         class="lazyload w-100"
2352                         src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2353                         alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2354                         width=""
2355                         height=""
2356                       >
2357                     </a>
2358                   </li>
2359                 
2360               
2361             
2362           </ul>
2363         </div>
2364         
2365       </div>
2366     
2367     <div
2368       id="featured-image-product"
2369       class="col-lg-10 col-12 d-none d-lg-block"
2370     >
2371       <div class="swiper-container gallery-top">
2372         <div class="swiper-slide product-single__image">
2373           
2374 <div class="product-single__photos slider slider-for" id="ProductPhoto">
2375   
2376 
2377   <div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails">
2378     <a href="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png">
2379       <img
2380         src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2381         alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2382         id="ProductPhotoImg"
2383         class="lazyload"
2384       >
2385       
2386     </a>
2387   </div>
2388 </div>
2389 
2390         </div>
2391         <div class="swiper-slide product-single__video" style="display: none">
2392           <video
2393             src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4"
2394             playsinline
2395             loop
2396             muted
2397           ></video>
2398         </div>
2399       </div>
2400     </div>
2401   </div>
2402 
2403   <div id="featured-image-product2" class="col-12 d-lg-none">
2404     <div class="swiper-container gallery-mobile">
2405       <ul class="swiper-wrapper">
2406 <li class="swiper-slide img">
2407               
2408                 <img
2409                   class="swiper-lazy"
2410                   src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2411                   data-src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2412                   alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2413                   width=""
2414                   height=""
2415                 >
2416               
2417             </li>
2418           
2419         
2420 <li class="swiper-slide img">
2421               
2422                 <img
2423                   class="swiper-lazy"
2424                   src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2425                   data-src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2426                   alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2427                   width=""
2428                   height=""
2429                 >
2430               
2431             </li>
2432           
2433         
2434 <li class="swiper-slide img">
2435               
2436                 <img
2437                   class="swiper-lazy"
2438                   src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2439                   data-src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2440                   alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2441                   width=""
2442                   height=""
2443                 >
2444               
2445             </li>
2446           
2447         
2448 <li class="swiper-slide img">
2449               
2450                 <img
2451                   class="swiper-lazy"
2452                   src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2453                   data-src="https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png"
2454                   alt="KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia"
2455                   width=""
2456                   height=""
2457                 >
2458               
2459             </li>
2460           
2461         
2462       </ul>
2463       
2464         <div class="swiper-button-prev"><svg class="icon icon-chevron-left" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="7" height="12" viewBox="0 0 7 12"> <circle cx="60%" cy="50%" r="12" fill="transparent" /> <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"/> </svg></div>
2465         <div class="swiper-button-next"><svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="7" height="10" viewBox="0 0 7 10" fill="none">
2466     <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"/>
2467 </svg></div>
2468 
2469         <!-- Add Pagination -->
2470         <div class="swiper-pagination"></div>
2471       
2472     </div>
2473   </div>
2474 
2475   <div class="product-m-pageleb-video col-12 text-center d-lg-none">
2476     <!-- product video -->
2477     <style>
2478        .c-pdp-product-info {
2479        background-color: #000000 !important;
2480        padding: 12px;
2481        margin: 0;
2482        color: white;
2483    }
2484       .view-video{display:block; margin:auto; padding:5px 10px;font-size:16px;font-weight:bold;border:2px solid #ffffff;background:#fff;}
2485       .view-video .icon-play{fill:#ffffff;vertical-align: middle;}
2486       .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;}
2487       .close-video{position:absolute;right:9px; top:8%;z-index:2;padding:5px;}
2488       .close-video .icon{width:30px;height:30px;}
2489       /*responsive iframe */
2490       .video-container {position: relative;padding-bottom: 48.25%;padding-top: 35px;height: 0;box-shadow: 0 4px 5px 0 rgba(0,0,0,0.14), 0 1px 10px 0 rgba(0,0,0,0.12), 0 2px 4px -1px rgba(0,0,0,0.3);}
2491       .video-container iframe {position: absolute;top:60%;left: 0;width: 100%;height: 100%;}
2492 
2493       .youtube {
2494         background-color: #000;
2495         margin-bottom: 30px;
2496         position: relative;
2497         padding-top: 56.25%;
2498         overflow: hidden;
2499         cursor: pointer;
2500         width: 100%;
2501       }
2502       .swiper-slide .youtube {
2503         max-width: 480px;
2504       }
2505       .youtube img {
2506         width: 100%;
2507         top: -16.82%;
2508         left: 0;
2509         opacity: 0.7;
2510       }
2511       .youtube .play-button {
2512         width: 90px;
2513         height: 60px;
2514         background-color: #333;
2515         box-shadow: 0 0 30px rgba( 0,0,0,0.6 );
2516         z-index: 1;
2517         opacity: 0.8;
2518         border-radius: 6px;
2519       }
2520       .youtube .play-button:before {
2521         content: "";
2522         border-style: solid;
2523         border-width: 15px 0 15px 26.0px;
2524         border-color: transparent transparent transparent #fff;
2525       }
2526       .youtube img,
2527       .youtube .play-button {
2528         cursor: pointer;
2529       }
2530       .youtube img,
2531       .youtube iframe,
2532       .youtube .play-button,
2533       .youtube .play-button:before {
2534         position: absolute;
2535       }
2536       .youtube .play-button,
2537       .youtube .play-button:before {
2538         top: 50%;
2539         left: 50%;
2540         transform: translate3d( -50%, -50%, 0 );
2541       }
2542       .youtube iframe {
2543         height: 100%;
2544         width: 100%;
2545         top: 0;
2546         left: 0;
2547       }
2548     </style>
2549 
2550     
2551   </div>
2552 </div>
2553 
2554 <div class="product-desc-add position-relative d-none d-lg-block m-0">
2555 
2556 </div>
2557 
2558 
2558<script>
2559   if ($(window).width() < 991) {
2560     var direction = 'horizontal'
2561   } else {
2562     var direction = 'vertical'
2563     $(".gallery-thumbs").height($("#ProductPhotoImg").height())
2564   }
2565   var swiper = new Swiper('.gallery-thumbs', {
2566     
2567     direction,
2568     slidesPerView: 4.5,
2569     spaceBetween: 12,
2570     navigation: {
2571       nextEl: '.swiper-button-next',
2572       prevEl: '.swiper-button-prev',
2573     }
2574   });
2575   
2576   var swiper = new Swiper('.gallery-mobile', {
2577     //loop: true,
2578     lazy: true,
2579     speed: 300,
2580     resistance : true,
2581     resistanceRatio : 0,
2582     freeModeMomentumRatio : 0.45,
2583     freeModeMomentumVelocityRatio : 1.5,
2584     navigation: {
2585       nextEl: '.swiper-button-next',
2586       prevEl: '.swiper-button-prev',
2587     },
2588     pagination: {
2589       el: '.swiper-pagination'
2590     },
2591     useCSS3Transforms: false,
2592     loop: false,
2593     on: {
2594       init: function () {
2595         console.log('swiper initialized');
2596         var currentVideo =  $("[data-swiper-slide-index=" + this.realIndex + "]").find("video");
2597         currentVideo.trigger('play');
2598       },
2599     },
2600   });
2601 
2602   /* GET ALL VIDEOS */
2603   var sliderVideos = $(".swiper-slide video");
2604   
2605   /* SWIPER API - Event will be fired after animation to other slide (next or previous) */
2606   swiper.on('slideChange', function () {
2607     console.log('slide changed');
2608     /* stop all videos  */
2609     sliderVideos.each(function( index ) {
2610       this.currentTime = 0;
2611     });
2612   
2613     /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */
2614     var prevVideo =  $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video");
2615     var currentVideo =  $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video");
2616     prevVideo.trigger('stop');
2617     currentVideo.trigger('play');
2618   });
2619   
2620 
2621   $("[data-video]").click(function(){
2622     const file = $(this).data("video")
2623     $(".product-single__video").show()
2624     $(".product-single__image").hide()
2625     $(".product-single__video").find("video").attr("src", file)
2626     $(".product-single__video").find("video")[0].play();
2627   })
2628   $("[data-image]").click(function(){
2629     $(".product-single__video").hide()
2630     $(".product-single__image").show()
2631     $(".product-single__video").find("video")[0].pause();
2632   })
2633 
2634   $("#product-image .swiper-slide").each(function(){
2635     let width = $(this).width()
2636     $(this).height(width)
2637   })
2638 
2639   $(window).resize(function() {
2640     $("#product-image .swiper-slide").each(function(){
2641       let width = $(this).width()
2642       $(this).height(width)
2643     })
2644   })
2645 </script>
2645
2646 
2647           </div>
2648 
2649   
2650     <div class="grid__item_product-info mb-3">
2651       <div class="c-pdp-product-info">
2652                                            <h2 style="color: #2bff00;">KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia</h2>
2653                                            <p><a href="https://hasilmacau88.com/" style="color: #2bff00;">KEBUNTOTO</a> menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia yang ingin mendapatkan informasi dengan cara lebih cepat, jelas, dan tidak ribet. Setiap update hasil disajikan dengan tampilan yang rapi, sehingga pemain bisa langsung melihat data penting tanpa harus membuka banyak halaman lain. Buat yang rutin mengikuti perkembangan Toto Macau, KEBUNTOTO terasa praktis karena informasinya mudah dibaca dari HP maupun desktop, cocok untuk pantauan harian yang simpel tapi tetap lengkap.</p>
2654                                            <p style="text-align: justify; color: #ffffff;">Selain menghadirkan hasil terbaru, KEBUNTOTO juga dibuat agar pemain lebih nyaman saat mencari update <a href="https://hasilmacau88.com/" style="color: #2bff00;">Toto Macau</a> setiap hari. Penyajian datanya tidak dibuat berlebihan, jadi pemain bisa langsung fokus ke informasi yang dibutuhkan. Inilah yang membuat banyak pemain merasa KEBUNTOTO berbeda, karena hasil Macau yang ditampilkan terasa lebih bersih, mudah dipantau, dan relevan untuk seluruh pemain Asia yang ingin mengikuti update dengan lebih santai dan terarah.</p>
2655         </ul>
2656       </div>
2657     </div>
2658     
2659   
2660
2661 <style>
2662   .c-pdp-product-info__service--active {
2663     font-size: 12px;
2664     padding-left: 10px;
2665     text-align: left;
2666     max-width: 550px;
2667     margin: auto;
2668   }
2669   .c-pdp-product-info__service--active li {
2670     list-style: disc;
2671   }
2672   .c-pdp-product-info {
2673     background-color: #f5f5f5;
2674     padding: 12px;
2675     margin: 0;
2676   }
2677   .freeship em {
2678     font-style: italic;
2679     font-size: 12px !important;
2680   }
2681 
2682 
2683 </style>
2684 
2685 
2685<script>
2686   $(document).ready(function(){
2687     if ( $(".c-pdp-product-info__service li").length == 1 ) {
2688       $(".c-pdp-product-info__service").addClass("no-bullet");
2689       $(".c-pdp-product-info__service li").addClass("no-bullets");
2690     }
2691   });
2692 </script>
2692
2693   
2694         </div>
2695         <div id="product-meta" class="col-lg-5 p-0">
2696           <div class="product-meta">
2697             <style>
2698   .product-meta--review {margin-top:10px}
2699   .freeship * {font-size: 14px !important;font-style: normal;}
2700 </style>
2701 <h1 itemprop="name" class="mb-2" style="color: rgb(21, 255, 0); font-weight: bold;">KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia</h1>
2702 
2703 <div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
2704   <meta itemprop="priceCurrency" content="IDR">
2705 
2706   <link itemprop="availability" href="https://schema.org/InStock">
2707   
2707<script
2708     type="text/javascript"
2709     src="//platform-api.sharethis.com/js/sharethis.js#property=5acdc0aa3ef3c0001396fd50&product=custom-share-buttons"
2710     async="async"
2711   ></script>
2711
2712
2713   <span class="visually-hidden">Translation missing: en.products.general.regular_price</span>
2714   
2715     <span class="visually-hidden">Translation missing: en.products.general.sale_price</span>
2716   
2717   <div class="row no-gutters mb-3">
2718     <span
2719       id="ProductPrice"
2720       class="h2 ProductPrice"
2721       itemprop="price"
2722       content="835000" style="color: #ffffff;"
2723     >
2724       Rp 5.000
2725     </span>
2726     <div class="discount-product-detail">
2727       <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0">
2728         Rp 100.000
2729       </p>
2730       <span class=" tag-discount">
2731         
2732           
2733           <span id="newDiscount" class="product-tag persentase-discount hide"> 
2734       (90%)
2735       </span><br>
2736         
2737       </span>
2738     </div>
2739   </div>
2740 
2741   <div class="row no-gutters meta-sds">
2742     <div class="col-12 mb-2 mb-lg-0 stock-info">
2743       
2744       
2745       <span
2746         id="ProductStock-Product"
2747         class="product-single__stock mb-2 hide"
2748       >
2749         
2750           
2751             
2752               
2753               Barang dikirim pada 
2754             
2755           
2756         
2757       </span>
2758 
2759       <style>
2760     .short-desc-desktop {
2761         margin-bottom: 2rem;
2762         color: white;
2763     }
2764     .short-desc ul li:nth-child(n + 4) {
2765         display: none;
2766     }
2767     .short-desc ul li.showList:nth-child(n + 4) {
2768         display: list-item;
2769     }
2770     label.more {
2771         display: none;
2772     }
2773     label.more.showMe {
2774         display: block;
2775         font-size: 12px;
2776         text-transform: uppercase;
2777         font-weight: 700;
2778         cursor: pointer;
2779     }
2780 </style>
2781 
2782     <div class="short-desc-desktop d-none d-lg-block">
2783         <div class="short-desc">
2784            
2785 <p>KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.</p>
2786         </div>
2787         <label class="more">Show More →</label>
2788     </div><br>
2789 
2790 
2791 
2791<script>
2792     var liCount;
2793     $(document).ready(function () {
2794         $(".short-desc ul").each(function() {
2795             liCount = $(this).children("li").length;
2796             if (liCount > 3) {
2797                 $(this).parent(".short-desc").next(".more").addClass("showMe");
2798             }
2799         });
2800 
2801         $(".more").click(function () {
2802             //$(".short-desc").find("li").addClass("showList");
2803             // $(this).hide();
2804             $("#product-desc").find("ul").show()
2805             $('html, body').animate({
2806                 scrollTop: $("#product-desc").offset().top - 250
2807             }, 2000);
2808             $("#product-desc").css("height","auto");
2809             $("#more_content").remove();
2810             $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>")
2811         });
2812     });
2813 </script>
2813
2814 
2815       
2816     </div>
2817   </div>
2818 
2819   <div id="purchaseProduct">
2820   
2821   
2822 
2823 
2824 <style>
2825   .variant-metafield {
2826     display: block!important;
2827     width: 1px;
2828     padding: 0;
2829     border-color: #fff;
2830   }
2831   .select2-results__option[aria-disabled] {
2832     display: none;
2833   }
2834 
2835   .towel-bordir {
2836     width: 100%;
2837     display: flex;
2838     align-items: center;
2839     justify-content: space-around;
2840   }
2841 </style>
2842 
2843 
2844 
2845 
2846 
2846<script>
2847   
2848   
2849 </script>
2849
2850 
2851 
2852 
2853 
2854 
2855 
2856 <select
2857   name="id[]"
2858   id="productSelect"
2859   class="product-single__variants ignore hide hide"
2860 >
2861   
2862     
2863       
2864       <option
2865         
2866           selected="selected"
2867         
2868         data-sku="OBVSTF1086"
2869         value="44083045826775"
2870       >
2871         Default Title
2872       </option>
2873 
2874     
2875   
2876 </select>
2877 
2878 
2878<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="text/javascript"></script>
2878
2879 
2880 
2880<script>
2881   $('.size-chart-open-popup').magnificPopup({
2882     type:'inline',
2883     midClick: true
2884   });
2885 </script>
2885
2886 
2887   
2888   
2889   
2890   <div class="upload-image-preview">
2891     
2892     
2893     
2894     
2895     
2896     <style>
2897   .file-dnd * {
2898     margin: 0;
2899     padding: 0;
2900     box-sizing: border-box;
2901   }
2902   .file-dnd {
2903     width: 100%;
2904     height: 250px;
2905     border: 1px solid #ddd;
2906     border-radius: 10px;
2907     padding: 15px;
2908     display: flex;
2909     flex-direction: column;
2910     gap: 10px;
2911     /* box-shadow: 0px 2px 10px 2px rgba(0,0,0,0.05); */
2912     margin: auto;
2913   }
2914   .file-dnd input {
2915     display: none;
2916   }
2917   .file-dnd .before-upload {
2918     border: 1px dashed #888;
2919     flex: 1;
2920     border-radius: 5px;
2921     display: flex;
2922     justify-content: center;
2923     align-items: center;
2924     text-align: center;
2925     cursor: pointer;
2926   }
2927   .file-dnd .before-upload > div {
2928     display: flex;
2929     flex-direction: column;
2930     align-items: center;
2931     gap: 8px;
2932   }
2933   .file-dnd .before-upload > div h4 {
2934     width: 150px;
2935   }
2936   .file-dnd .before-upload > div p {
2937     font-size: 12px !important;
2938     color: #555;
2939   }
2940   .file-dnd.active .before-upload {
2941     border: 1px solid #5750d9;
2942     background-color: #f5f5ff;
2943   }
2944   .file-dnd .after-upload {
2945     position: relative;
2946     display: none;
2947   }
2948   .file-dnd .after-upload img {
2949     width: 100%;
2950     border-radius: 5px;
2951     max-height: 180px;
2952     object-fit: contain;
2953     display: block;
2954   }
2955   .file-dnd .after-upload .clear-btn {
2956     position: absolute;
2957     top: 10px;
2958     right: 10px;
2959     background: rgba(0, 0, 0, 0.5);
2960     width: 15px;
2961     height: 15px;
2962     text-align: center;
2963     line-height: 15px;
2964     border-radius: 50%;
2965     color: #fff;
2966     cursor: pointer;
2967     font-size: 14px;
2968   }
2969 </style>
2970 
2971 <div
2972   class="file-dnd mb-3"
2973   
2974     style="display: none"
2975   
2976 >
2977   <label for="upload-photo">Upload your Photo:</label>
2978   <input type="file" id="upload-photo" accept="image/*">
2979   <input type="hidden" data-properties="Photo">
2980   <div class="before-upload">
2981     <div>
2982       <svg id="surface1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="33.053" height="41.719" viewBox="0 0 33.053 41.719">
2983   <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>
2984   <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>
2985   <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>
2986 </svg>
2987 
2988       <h4>Drag & Drop Photo file or Browse</h4>
2989       <p>Supports: JPEG, PNG, GIF, TIFF</p>
2990     </div>
2991   </div>
2992   <div class="after-upload">
2993     <div class="clear-btn">&times;</div>
2994     <img src="" width="" height="">
2995   </div>
2996 </div>
2997 
2997<script>
2998   function applyDndFile(el) {
2999     const parent = document.querySelector(".file-dnd")
3000     const beforeUploadEl = el.querySelector(".before-upload")
3001     const afterUploadEl = el.querySelector(".after-upload")
3002     const inputFile = el.querySelector("input[type=file]")
3003     const imagePreview = el.querySelector(".after-upload img")
3004     const clearBtn = el.querySelector(".after-upload .clear-btn")
3005     const inputProps = parent.querySelector("[data-properties]");
3006 
3007     async function upload(name, uri, type) {
3008       try {
3009         const filename = name.split('.')[0]
3010         let formData = new FormData(); 
3011         formData.append("file", uri);
3012         const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, {
3013           method: "POST", 
3014           body: formData
3015         })
3016         if(response) {
3017           const res = await response.json()
3018           return res
3019         }
3020       } catch(err){
3021         console.log(err)
3022       }
3023     }
3024 
3025     function showImagePreview(img) {
3026       if(img){
3027         const blobUrl = URL.createObjectURL(img)
3028         imagePreview.src = blobUrl
3029         afterUploadEl.style.display = "block"
3030         beforeUploadEl.style.display = "none"
3031       }
3032     }
3033 
3034     beforeUploadEl.addEventListener("click", (e) => {
3035       e.preventDefault()
3036       inputFile.click()
3037     })
3038 
3039     inputFile.addEventListener("change", async (e) => {
3040       e.preventDefault()
3041       showImagePreview(e.target.files[0])
3042       var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type)
3043       inputProps.value = uploadData?.url
3044     })
3045 
3046     clearBtn.addEventListener("click", (e) => {
3047       afterUploadEl.style.display = "none"
3048       beforeUploadEl.style.display = "flex"
3049       inputProps.value = ""
3050     })
3051 
3052     beforeUploadEl.addEventListener("dragover", (e) => {
3053       e.preventDefault()
3054       el.classList.add("active")
3055     })
3056 
3057     beforeUploadEl.addEventListener("dragleave", (e) => {
3058       e.preventDefault()
3059       el.classList.remove("active")
3060     })
3061 
3062     beforeUploadEl.addEventListener("drop", async (e) => {
3063       e.preventDefault()
3064       el.classList.remove("active")
3065       showImagePreview(e.dataTransfer.files[0])
3066       var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type)
3067       console.log(uploadData)
3068       inputProps.value = uploadData?.url
3069     })
3070   }
3071 
3072   applyDndFile(document.querySelector(".file-dnd"))
3073 
3074   $(document).ready(function(){
3075     $(".variant-swatch").change(function(){
3076       const v = $(this).val().toLowerCase()
3077       const list = ["photo", "custom one side", "custom two side", "small", "big"]
3078       if(list.some(item => v.includes(item))) return $(".file-dnd").show()
3079       $(".file-dnd").hide()
3080       $(".file-dnd").find("[data-properties]").val("")
3081       $(".after-upload").hide()
3082       $(".before-upload").css("display", "flex")
3083     })
3084   })
3085 </script>
3085
3086 
3087   </div>
3088   
3089     
3090     <div class="delivery-city mb-4">
3091         <a href="https://terbaru.hasilmacau88.live/">
3092        <center><img src="https://imgbest.store/images/2026/06/13/gif-panjang-kebuntoto.gif" alt="logo-daftar" style="width: 260px; margin-top: -20px;"></center></a><br>
3093   <h4 class="fw-600 text-uppercase mb-15" style="color: #ffd900; font-weight: bold;">KEBUNTOTO hadir sebagai tempat di mana para pecinta toto macau berkumpul untuk melihat hasil terbaru yang telah diluncurkan untuk seluruh pemain asia dengan angka yang jelas dan akurat langsung dari pusat.</h4>
3094   <div class="row justify-content-between m-0">
3095     <select id="cities" class="form-control select-search" required>
3096       <option value="">Login Dan Mainkan toto macau Pasaran Favorit Kalian dan Rasakan Sensasi Kemenangan besar & memuaskan di KEBUNTOTO Sekarang.</option>
3097     </select>
3098   </div>
3099 </div>
3100 
3101 <style>
3102   @media (max-width: 768px) {
3103     .select2-search__field {
3104       pointer-events: none !important;
3105     }
3106     
3107     .select2-search {
3108       display: none !important;
3109     }
3110   }
3111 </style>
3112 
3113 
3113<script>
3114   $(document).ready(function() {
3115     // Check if mobile
3116     if (window.innerWidth <= 768) {
3117       // When cities select2 opens on mobile, remove focus from search
3118       $('#cities').on('select2:open', function() {
3119         setTimeout(function() {
3120           $('.select2-search__field').blur();
3121           $('.select2-search__field').prop('readonly', true);
3122         }, 100);
3123       });
3124     }
3125   });
3126 </script>
3126
3127 
3128  <style>
3129 .icon-img-footer {
3130     width: 80px; 
3131     padding: 0px 5px;
3132 }
3133 @media (min-width: 768px) {
3134     .icon-img-footer {
3135         width: 120px; 
3136     }
3137 }
3138 @media (min-width: 992px) {
3139     .icon-img-footer {
3140         width: 120px; 
3141     }
3142 }
3143 
3144 
3145 </style>
3146<style>
3147    :root {
3148        --brand: #00fffb;
3149        --brand-mid: #009297;
3150        --brand-dark: #006962;
3151        --border: #e5e7eb;
3152        --bg: #fff;
3153        --shadow: 0 6px 15px rgba(0, 0, 0, .08);
3154    }
3155
3156    .app-card {
3157        max-width: 650px;
3158        margin: 25px auto;
3159        background: var(--bg);
3160        border-radius: 14px;
3161        overflow: hidden;
3162        box-shadow: var(--shadow);
3163        border: 1px solid var(--border);
3164        transition: transform .2s, box-shadow .3s;
3165        font-family: system-ui, Arial, sans-serif;
3166        font-size: .92rem;
3167    }
3168
3169    .app-card:hover {
3170        transform: translateY(-2px);
3171        box-shadow: 0 10px 25px rgba(0, 0, 0, .12);
3172    }
3173
3174    .app-header {
3175        padding: 12px 16px;
3176        text-align: center;
3177        background: linear-gradient(135deg, #000000, #ffd700, #000000);
3178        color: #fff;
3179        font-weight: 800;
3180        font-size: 1.15rem;
3181        text-shadow: 0 1px 2px rgba(0, 0, 0, .3);
3182    }
3183
3184    .app-table {
3185        width: 100%;
3186        border-collapse: collapse;
3187    }
3188
3189    .app-table th,
3190    .app-table td {
3191        padding: 8px 12px;
3192        vertical-align: middle;
3193    }
3194
3195    .app-table th {
3196        width: 35%;
3197        background: #e7e7e7;
3198        color: #585858;
3199        font-weight: 700;
3200        letter-spacing: .2px;
3201        text-transform: uppercase;
3202        font-size: .85rem;
3203    }
3204
3205    .app-table td {
3206        border-bottom: 1px solid var(--border);
3207        color: #1f1f1f;
3208        font-size: .9rem;
3209        text-align: center;
3210    }
3211
3212    @media (max-width: 640px) {
3213        .app-table,
3214        .app-table tbody,
3215        .app-table tr,
3216        .app-table th,
3217        .app-table td {
3218            display: block;
3219            width: 100%;
3220        }
3221    }
3222
3223    .review-section {
3224        max-width: 850px;
3225        margin: 30px auto;
3226        display: flex;
3227        flex-direction: column;
3228        gap: 18px;
3229        font-family: system-ui, Arial, sans-serif;
3230    }
3231
3232    .review-card {
3233        background: #f5f5f5;
3234        padding: 16px 20px;
3235        border-radius: 10px;
3236        border-left: 5px solid #000000;
3237        box-shadow: 0 3px 6px rgba(0, 0, 0, .05);
3238        transition: all .25s ease-in-out;
3239    }
3240
3241    .review-card:hover {
3242        transform: translateY(-3px);
3243        box-shadow: 0 5px 10px rgba(0, 0, 0, .08);
3244    }
3245
3246    .review-author {
3247        font-weight: 700;
3248        color: var(--brand-dark);
3249        margin-bottom: 4px;
3250        display: flex;
3251        align-items: center;
3252        gap: 6px;
3253        font-size: .92rem;
3254    }
3255
3256    .review-author::before {
3257        content: "👤";
3258        font-size: 1rem;
3259    }
3260
3261    .review-card p {
3262        margin: 0;
3263        color: #222;
3264        font-size: .94rem;
3265    }
3266
3267    .review-rating {
3268        margin-left: auto;
3269        font-weight: 700;
3270    }
3271
3272    .stars {
3273        --rating: 5;
3274        --star-size: 1rem;
3275        --star-gap: 2px;
3276        --star-empty: #e5e7eb;
3277        --star-fill: #f4c430;
3278        position: relative;
3279        display: inline-block;
3280        font-size: var(--star-size);
3281        line-height: 1;
3282        letter-spacing: var(--star-gap);
3283    }
3284
3285    .stars::before {
3286        content: "★★★★★";
3287        color: var(--star-empty);
3288    }
3289
3290    .stars::after {
3291        content: "★★★★★";
3292        color: var(--star-fill);
3293        position: absolute;
3294        left: 0;
3295        top: 0;
3296        width: calc((var(--rating) / 5) * 100%);
3297        overflow: hidden;
3298        white-space: nowrap;
3299        pointer-events: none;
3300    }
3301
3302    .stars.lg {
3303        --star-size: 1.1rem;
3304        letter-spacing: 3px;
3305    }
3306
3307    .badge {
3308        display: inline-flex;
3309        align-items: center;
3310        gap: 8px;
3311        flex-wrap: wrap;
3312    }
3313
3314    .badge small {
3315        color: #555;
3316        font-weight: 600;
3317    }
3318</style>
3319
3320<div class="review-section">
3321    <div class="review-card">
3322        <div class="review-author">
3323            Galen Wiratma
3324            <span class="review-rating stars" style="--rating: 5" aria-label="Rating 5.0 dari 5"></span>
3325        </div>
3326        <p>
3327            Begitu lihat hasil Toto Macau di KEBUNTOTO, rasanya lebih simpel. Tidak banyak tampilan yang bikin penuh mata, datanya langsung kelihatan dan gampang dipantau.
3328        </p>
3329    </div>
3330
3331    <div class="review-card">
3332        <div class="review-author">
3333            Arsyan Devandra
3334            <span class="review-rating stars" style="--rating: 4.8" aria-label="Rating 4.8 dari 5"></span>
3335        </div>
3336        <p>
3337            KEBUNTOTO cukup beda buat saya karena hasil Macau-nya disusun rapi. Cocok buat pemain yang ingin cek update cepat tanpa harus buka banyak halaman.
3338        </p>
3339    </div>
3340
3341    <div class="review-card">
3342        <div class="review-author">
3343            Raviel Mahesa
3344            <span class="review-rating stars" style="--rating: 4.9" aria-label="Rating 4.9 dari 5"></span>
3345        </div>
3346        <p>
3347            Saya biasanya cari hasil yang mudah dibaca dari HP, dan KEBUNTOTO cukup nyaman untuk itu. Update Toto Macau-nya jelas, tampilannya juga tidak bikin bingung.
3348        </p>
3349    </div>
3350</div>
3351
3352<div class="review-card">
3353        <div class="review-author">
3354            Darel Vionata
3355            <span class="review-rating stars" style="--rating: 4.9" aria-label="Rating 4.9 dari 5"></span>
3356        </div>
3357        <p>
3358            Buat pantauan pemain Asia, KEBUNTOTO terasa praktis. Hasil terbaru Toto Macau bisa dilihat dengan lebih cepat, jadi tidak perlu lama-lama cari info.
3359        </p>
3360    </div>
3361</div>
3362
3363
3364 <div class="purchasePopup purchasePopupSpotify" style="display: none;">
3365   <div class="purchaseArea">
3366     <div class="sectionPurchase sectionPurchaseSpotify">
3367       <div class="wrapperPurchase">
3368         <div class="headerPurchase">
3369           <h3>personalize spotify photo print</h3>
3370           <a class="close-purchase-popup">
3371             <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="18" height="18" viewBox="0 0 18 18" fill="none">
3372               <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>
3373             </svg>
3374           </a>
3375         </div>
3376         <div class="contentPurchase">
3377           <div class="spotifyAddons"></div>
3378         </div>
3379 
3380         <div class="purchase-button btn-addon row m-0" style="display: none;">
3381           <div class="col-12 col-lg-2 text-left mb-2 p-0">
3382             <button class="back-purchase-button back-addon text-uppercase">
3383               <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
3384                 <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>
3385               </svg>
3386               <span>Back</span>
3387             </button>
3388           </div>
3389           <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;">
3390             <button class="btn next-purchase-button next-addon text-uppercase">
3391               <span>continue without add-ons</span>
3392             </button>
3393           </div>
3394         </div>
3395       </div>
3396     </div>
3397   </div>
3398 </div>
3399 
3400 <style>
3401   #PBarNextFrameWrapper {
3402     display: none;
3403   }
3404   #backgroundPopup {
3405     display: none;
3406     position: fixed;
3407     _position: absolute;
3408     height: 100%;
3409     width: 100%;
3410     top: 0;
3411     left: 0;
3412     background: rgb(117 117 117 / 24%);
3413     z-index: 1;
3414   }
3415   .sectionPurchase {
3416     height: 100%;
3417     position: relative;
3418     max-width: 1344px;
3419     background-color: #fff;
3420     padding: 0;
3421     overflow: hidden; /* Changed from auto to hidden */
3422     display: flex;
3423     flex-direction: column;
3424   }
3425   .sectionPurchase.purchaseAddonSpotify {
3426     max-width: 1070px!important;
3427     max-height: 765px!important;
3428   }
3429   .sectionPurchaseBoard {
3430     max-width: 872px!important;
3431     max-height: 821px!important;
3432   }
3433   .purchaseAddonSpotify .btn-action {
3434     position: absolute;
3435     bottom: 0;
3436     left: 0;
3437     width: 100%;
3438     display: flex;
3439     gap: 10px;
3440   }
3441   .wrapperPurchase {
3442     position: relative;
3443     height: 100%;
3444     display: flex;
3445     flex-direction: column;
3446   }
3447   
3448   /* New styles for scrollable content and sticky button */
3449   .purchase-content {
3450     flex: 1;
3451     overflow-y: auto;
3452     overflow-x: hidden;
3453     padding: 20px;
3454   }
3455   
3456   .purchase-button-wrapper {
3457     position: sticky;
3458     bottom: 0;
3459     background-color: #fff;
3460     border-top: 1px solid #e0e0e0;
3461     padding: 15px 0;
3462     margin-top: auto;
3463     z-index: 10;
3464   }
3465   
3466   .purchasePopup {
3467     display: none;
3468     position: fixed;
3469     background: rgb(117 117 117 / 24%);
3470     z-index: 999;
3471     padding: 40px;
3472     font-size: 13px;
3473     top: 0;
3474     left: 0;
3475     width: 100%;
3476     height: 100%;
3477   }
3478   .popupPurchaseClose{
3479     font-size:14px;
3480     line-height:14px;
3481     right:45px;
3482     top:45px;
3483     position:absolute;
3484     color:#6fa5fd;
3485     font-weight:700;
3486     display:block;
3487     cursor: pointer;
3488   }
3489 
3490   .headerPurchase {
3491     margin-bottom: 30px;
3492     display: flex;
3493     justify-content: space-between;
3494   }
3495 
3496   .headerPurchase h3 {
3497     font-size: 16px;
3498     text-transform: uppercase;
3499   }
3500 
3501   .sectionPurchaseBoard .headerPurchase {
3502     margin-bottom: 15px;
3503   }
3504 
3505   .sectionPurchaseBoard .formAddressPurchase {
3506     padding-top: 0;
3507   }
3508 
3509   .purchaseArea {
3510     position: relative;
3511     height: 100%;
3512   }
3513 
3514   .purchaseArea h4 {
3515     width: 100%;
3516     font-size: 12px;
3517     font-weight: 600;
3518     margin-bottom: 10px;
3519     text-transform: uppercase;
3520   }
3521 
3522   .menuPurchase {
3523     margin-bottom: 30px;
3524   }
3525 
3526   .menuPurchase ul {
3527     list-style-type: none;
3528     margin: 0;
3529   }
3530 
3531   .menuPurchase ul li {
3532     display: inline-block;
3533     border: 1px solid #ffffff;
3534     padding: 5px 20px;
3535     margin-right: 5px;
3536     margin-bottom: 10px;
3537     font-size: 12px;
3538     font-weight: 400;
3539   }
3540 
3541   .menuPurchase ul li:hover, .menuPurchase ul li.selected {
3542     background-color: #ffffff;
3543     color: #ffffff;
3544   }
3545 
3546   .contentPurchase h5 {
3547       font-size: 12px;
3548       margin-bottom: 10px;
3549       font-weight: 400;
3550       overflow: hidden;
3551   }
3552 
3553   /* Card */
3554 
3555   #itemCards {
3556     max-height: 430px;
3557     overflow: auto;
3558   }
3559 
3560   .item-cards {
3561       width: 100%;
3562   }
3563   .item-card.selected {
3564       border: 1px solid #ffffff;
3565   }
3566   .item-card:hover {
3567       border: 1px solid #C4C4C4;
3568   }
3569   .item-cards .item-card {
3570     position: relative;
3571     width: calc(33% - 10px);
3572     max-width: calc(33% - 10px);
3573     flex: 0 0 calc(33% - 10px);
3574     margin-bottom: 20px;
3575   }
3576   .item-cards .item-card label,
3577   .item-addons .item-addon label {
3578       position: absolute;
3579       left: 0;
3580       width: 100%;
3581       height: 100%;
3582   }
3583   .item-cards .item-card .card-image img,
3584   .item-addons .item-addon .card-image img {
3585       display: block;
3586       width: 100%;
3587   }
3588   .item-card .card-meta,
3589   .item-addon .card-meta {
3590       padding: 10px 5px 5px;
3591   }
3592   .item-card.selected .card-meta,
3593   .item-addon.selected .card-meta,
3594   .item-card.selected .card-qty {
3595       background-color: #ffffff;
3596       color: #fff;
3597       visibility: visible!important;
3598   }
3599   .item-card:hover .card-meta,
3600   .item-addon:hover .card-meta,
3601   .item-card:hover .card-qty {
3602       background-color: #C4C4C4;
3603       color: #fff;
3604       visibility: visible!important;
3605   }
3606   .item-cards .item-card p,
3607   .item-addons .item-addon p {
3608     font-size: 12px !important;
3609     margin: 0;
3610     font-weight: 600;
3611   }
3612   .item-card .card-meta input,
3613   .item-addon .card-meta input {
3614       display: none;
3615   }
3616   .item-cards .item-card h5,
3617   .item-addons .item-addon h5 {
3618     text-transform: uppercase;
3619     max-height: 35px;
3620   }
3621 
3622   @media (max-width: 768px) {
3623     .item-cards .item-card {
3624         width: calc(50% - 10px);
3625         max-width: calc(50% - 10px);
3626         flex: 0 0 calc(50% - 10px);
3627         margin-bottom: 0;
3628     }
3629   }
3630 
3631   .card-qty {
3632     display: flex;
3633     padding: 5px;
3634     visibility: hidden;
3635     background-color: #fff !important;
3636     z-index: 999;
3637   }
3638   .card-qty a {
3639     border-width: 1px;
3640     width: 30%;
3641     cursor: pointer;
3642     text-align: center;
3643     align-self: center;
3644     height: 28px;
3645     display: block;
3646     position: relative;
3647   }
3648   .card-qty a svg {
3649     position: absolute;
3650     top: 50%;
3651     left: 50%;
3652     transform: translate(-50%, -50%);
3653     text-align: center;
3654   }
3655   input.btn-qty {
3656     border-width: 0px;
3657     border-radius: 0;
3658     background-color: #fff;
3659     -webkit-appearance: none;
3660     box-shadow: none !important;
3661     -webkit-box-shadow: none !important;
3662     -moz-box-shadow: none!important;
3663     width: 40%;
3664     border-left: 1px solid #c4c4c4;
3665     border-right: 1px solid #c4c4c4;
3666     padding: 0;
3667   }
3668 
3669   .sectionPurchaseBoard #itemAddons .item-card {
3670     width: calc(20% - 15px);
3671     max-width: calc(20% - 15px);
3672     flex: 0 0 calc(20% - 15px);
3673   }
3674 
3675   .purchase-button {
3676     width: 100%;
3677     padding: 0; /* Reset padding as it's now handled by wrapper */
3678     margin: 0;
3679   }
3680 
3681   .sectionPurchaseBoard .purchase-button {
3682     margin-top: 0 !important; /* Reset margin */
3683   }
3684 
3685   .back-purchase-button, .back-spotify {
3686       width: 139px;
3687       border: 1px solid;
3688       height: 43px;
3689   }
3690   .purchase-button .btn {
3691     width: 297px;
3692     height: 43px;
3693     background-color: #ffffff;
3694     color: #ffffff;
3695   }
3696   .purchase-button .btn[disabled] {
3697     background-color: #EEEEEE;
3698   }
3699   .back-purchase-button svg, .back-spotify svg {
3700     align-self: center;
3701     vertical-align: middle;
3702     margin-right: 10px;
3703   }
3704 
3705   #purchaseProduct .row .error {
3706     font-size: 12px !important;
3707     color: orange;
3708     margin-top: 5px;
3709   }
3710 
3711   .reviewCardPurchase {
3712     max-width: 448px;
3713     float: right;
3714   }
3715 
3716   .addonsPurchase .addon-item {display: flex;justify-content: space-between;}
3717   .addon-item * {align-self: center;font-size: 12px;}
3718   .addon-itm-title {width: 360px;}
3719   .addon-itm-line-price {color: #757575;width: 80px;justify-content: space-between;display: flex;}
3720 
3721   .propsAddonSpotify p {
3722     margin: 0;
3723     display: flex;
3724     font-size: 12px !important;
3725     margin-bottom: 5px;
3726   }
3727   .propsAddonSpotify p span:first-child {
3728     text-transform: uppercase;
3729     font-weight: 600;
3730     -ms-flex: 0 0 150px;
3731     flex: 0 0 150px;
3732     max-width: 150px;
3733   }
3734 
3735   .addonsPurchase .addons {
3736     max-height: 250px;
3737     overflow: auto;
3738   }
3739 
3740   .btn .loading:after {
3741     content: "";
3742     display: inline-block;
3743     width: 20px;
3744     height: 20px;
3745     padding: 3px;
3746     aspect-ratio: 1;
3747     border-radius: 50%;
3748     background: #FFFFFF;
3749     --_m: conic-gradient(#0000 10%, #ffffff), linear-gradient(#ffffff 0 0) content-box;
3750     -webkit-mask: var(--_m);
3751     mask: var(--_m);
3752     -webkit-mask-composite: source-out;
3753     mask-composite: subtract;
3754     animation: l3 1s infinite linear;
3755     margin: auto;
3756     vertical-align: middle;
3757     margin-left: 10px;
3758   }
3759 
3760   #qrcode img, #qrcode canvas {
3761     width: 50px;
3762     position: absolute;
3763     top: 12px;
3764     left: 16px;
3765   }
3766 
3767   .t-preview {
3768     position: absolute;
3769     top: 17px;
3770     left: 75px;
3771   }
3772   .t-preview p {
3773     margin: 0;
3774     font-size: 12px !important;
3775   }
3776   .t-preview .h3 {
3777     font-size: 16px !important;
3778     margin-bottom: 5px;
3779     font-weight: 600;
3780   }
3781   .scanCard {
3782     width: 100%;
3783     border: 1px solid;
3784     height: 76px;
3785     background-color: #fff;
3786   }
3787   .scanCard > div > img {
3788     position: absolute;
3789     right: 0;
3790     width: 55px;
3791   }
3792 
3793   @keyframes l3 {
3794     100% {
3795       transform: rotate(1turn);
3796     }
3797   }
3798 
3799   @media (min-width: 991px) {
3800     .sectionPurchase {
3801       height: 100%;
3802       position: relative;
3803       max-width: 1344px;
3804       background-color: #fff;
3805       top: 50%;
3806       left: 50%;
3807       transform: translate(-50%, -50%);
3808     }
3809     .headerPurchase h3 {
3810       font-size: 20px;
3811     }
3812     .purchaseArea h4 {
3813       font-size: 16px;
3814     }
3815 
3816     .menuPurchase ul li {
3817         font-size: 16px;
3818     }
3819     
3820     .contentPurchase {
3821       margin-bottom: 30px;
3822     }
3823     .contentPurchase h5 {
3824       font-size: 16px;
3825     }
3826 
3827     .item-cards .item-card p,
3828     .item-addons .item-addon p {
3829       font-size: 16px !important;
3830     }
3831 
3832     .cards {
3833       float: right;
3834       width: 400px;
3835     }
3836 
3837     .item-cards .item-card {
3838       width: calc(25% - 30px);
3839       max-width: calc(25% - 30px);
3840       flex: 0 0 calc(25% - 30px);
3841     }
3842 
3843       #itemAddons .item-card {
3844         position: relative;
3845         width: calc(16% - 40px);
3846         max-width: calc(16% - 40px);
3847         flex: 0 0 calc(16% - 40px);
3848       }
3849       
3850     .purchase-button-wrapper {
3851         padding: 10px 20px;
3852     }
3853   }
3854 
3855   @media (max-width: 1200px) {
3856     .item-cards .item-card {
3857       width: calc(33% - 30px);
3858       max-width: calc(33% - 30px);
3859       flex: 0 0 calc(33% - 30px);
3860     }
3861   }
3862 
3863   @media (max-width: 992px) {
3864     .purchasePopup {
3865       padding: 0;
3866     }
3867     .item-cards .item-card h5,
3868     .item-addons .item-addon h5 {
3869       max-height: 30px;
3870     }
3871 
3872     .back-purchase-button, .back-spotify, .next-purchase-button {
3873         width: 100%;
3874     }
3875     .addon-itm-title {
3876       width: 300px;
3877     }
3878     .addon-itm-line-price {
3879       margin-right: 10px;
3880     }
3881     .t-preview {
3882       top: 10px;
3883     }
3884 
3885     .card-qty a {
3886       height: 15px;
3887     }
3888     
3889     .purchase-button-wrapper {
3890       padding: 15px;
3891     }
3892   }
3893 
3894   @media (max-width: 576px) {
3895     .purchase-button .btn {
3896         width: 100%!important;
3897     }
3898     .purchase-button > .col-12 {
3899       padding-left: 0;
3900       padding-right: 0;
3901     }
3902   }
3903 </style>
3904 
3905 
3906 <div class="purchasePopup">
3907   <div class="purchaseArea">
3908     
3909       <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard">
3910         <div class="wrapperPurchase">
3911           <div class="purchase-content">
3912             <div class="headerPurchase">
3913   <h3 class="text-uppercase">
3914     
3915       customize your flower board
3916     
3917   </h3>
3918   <a class="close-purchase-popup">
3919   <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="18" height="18" viewBox="0 0 18 18" fill="none">
3920     <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"/>
3921   </svg>
3922 </a>
3923 
3924 </div>
3925 <div class="contentPurchase">
3926   <div class="row">
3927     
3928       <div class="col-12">
3929         
3930 
3931 <style>
3932   
3933   
3934   .customize-papan .group-field-1 .input-field {float: left;width: 100%;height: 317px;background-color: #E5E5EA;}
3935   .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: #ffffff;border: none;}
3936   
3937   .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;}
3938   .customize-papan .btn-upload-papan svg {width: 21px;height: 25px;display: block;align-self: center;margin: auto;margin-bottom: 12px;}
3939   .svgLogoPapan {position: absolute;width: 100%;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;}
3940   .svgLogoPapan p {color: #8E8E93; margin: 0;}
3941   .svgLogoPapan p span {font-size: 12px;color: #ffd700;}
3942   .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;}
3943   #suggest-messages {position: absolute;bottom: 5px;left: 5px;}
3944   #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;}
3945   .case-occasion .nice-select:after {border-bottom: 2px solid #333;border-right: 2px solid #333;right: 20px;top: 42%;width: 10px;height: 10px;}
3946   .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: #ffffff;}
3947   .customize-papan .input-field .limit {position: absolute;right: 15px;top: 0;color: #757575;}
3948 
3949   @media (min-width: 991px) {
3950     .customize-papan:before {content: "";position: absolute;border: 4px solid #ffffff;bottom: -50px;left: 210px;width: 100px;display: block;-ms-transform: rotate(60deg);-webkit-transform: rotate(60deg);transform: rotate(-65deg);}
3951     .customize-papan:after {content: "";position: absolute;border: 4px solid #ffffff;bottom: -52px;right: 240px;width: 100px;display: block;-ms-transform: rotate(-120deg);-webkit-transform: rotate(70deg);transform: rotate(70deg);}
3952   }
3953 </style>
3954 
3955 <input type="hidden" data-properties="penerima" value="-">
3956 <div class="customize-papan">
3957   <div class="container">
3958     <div class="field-papan group-field-1 form-group">
3959       <div class="input-field">
3960         <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.
3961 (Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea>
3962         <p class="limit">0/100</p>
3963         <div id="suggest-messages">
3964           <a id="show_note_papan1" href="#">
3965             <div class="suggest-message" id="note_btn_div1">
3966               <span class="promo-code-link" id="note_btn_papan1">Contoh Kata WEDDING</span>
3967             </div>
3968           </a>
3969           <a id="show_note_papan2" href="#">
3970             <div class="suggest-message" id="note_btn_div2">
3971               <span class="promo-code-link" id="note_btn_papan2">Contoh Kata SELAMAT</span>
3972             </div>
3973           </a>
3974           <a id="show_note_papan3" href="#">
3975             <div class="suggest-message" id="note_btn_div3">
3976               <span class="promo-code-link" id="note_btn_papan3">Contoh Kata DUKA CITA</span>
3977             </div>
3978           </a>
3979         </div>
3980       </div>
3981     </div>
3982     <div class="hide">
3983       <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;">
3984       <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1">
3985     </div>
3986     <div class="hide">
3987       <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;">
3988       <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2">
3989     </div>
3990     <div class="hide">
3991       <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;">
3992       <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3">
3993     </div>
3994     <div class="field-papan group-field-2 form-group">
3995       
3996       <label for="logoPapan" onclick="" class="input-field field-logo">
3997         
3998         
3999         
4000         <div class="btn-upload-papan w-100">
4001           <?xml version="1.0" encoding="UTF-8"?>
4002           <img src="" style="display:none">
4003           <div class="svgLogoPapan">
4004             <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="22" height="26" viewBox="0 0 22 26" fill="none">
4005               <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black"/>
4006             </svg>
4007             <p>Upload Logo <span>*optional</span></p>
4008           </div>
4009         </div>
4010         
4011       </label>
4012       
4013       <input
4014         type="hidden"
4015         data-properties="papan-logo"
4016         value=""
4017       >
4018       <input
4019         type="file"
4020         id="logoPapan"
4021         accept="image/*"
4022         style="position: absolute;width: 1px;height: 1px;padding: 0"
4023       >
4024       
4025       <div class="input-field">
4026         <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35"/>
4027         <p class="limit">0/35</p>
4028       </div>
4029       
4030     </div>
4031     
4032   </div>
4033 </div>
4034       </div>
4035     
4036   </div>
4037 </div>
4038 
4039           </div>
4040           <div class="purchase-button-wrapper">
4041             <div class="purchase-button btn-card row m-0">
4042   <div class="col-12 col-lg-2 text-left mb-2 p-0">
4043     
4044   </div>
4045   <div class="btn-next-card col-12 col-lg-10 text-right">
4046     
4047     
4048     <button
4049       
4050         
4051       
4052       class="btn next-purchase-button text-uppercase"
4053       
4054         disabled
4055       
4056     >
4057       <span>save your flower board</span>
4058     </button>
4059   </div>
4060 </div>
4061 
4062           </div>
4063         </div>
4064       </div>
4065     
4066     
4067     
4068       <div
4069         class="sectionPurchase sectionPurchaseBoard hide"
4070         data-section="address"
4071       >
4072         <div class="wrapperPurchase">
4073           <div class="purchase-content">
4074             <div class="headerPurchase">
4075   <h3>
4076     Complete Your Order
4077   </h3>
4078   <a class="close-purchase-popup">
4079   <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="18" height="18" viewBox="0 0 18 18" fill="none">
4080     <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"/>
4081   </svg>
4082 </a>
4083 
4084 </div>
4085 <div class="contentPurchase">
4086   <div class="row">
4087     <div class="col-12 position-relative">
4088       <div class="addressPurchase">
4089         
4090           <h4 class="text-uppercase">recipient delivery address</h4>
4091           <p>Share the delivery address to send your heartfelt blooms straight to their door.</p>
4092         
4093         <div class="formAddressPurchase row">
4094           <div class="col-12">
4095             <form>
4096               <div class="form-group row mb-2 mb-lg-4">
4097                 <div class="col-6 position-relative">
4098                   <input id="first_name" type="text" class="form-control input__field" placeholder="" required>
4099                   <label for="first_name" class="input__label">First Name<span>*</span></label>
4100                 </div>
4101                 <div class="col-6 position-relative">
4102                   <input id="last_name" type="text" class="form-control input__field" placeholder="" required>
4103                   <label for="last_name" class="input__label">Last Name<span>*</span></label>
4104                 </div>
4105                 <input type="hidden" data-properties="nama-penerima">
4106               </div>
4107               
4108                 <h4 class="text-uppercase">how you want to input your address</h4>
4109                 <div class="form-group row mb-2 mb-lg-4 form-address-upload">
4110                   <div class="col-6 position-relative">
4111                     <label class="address-manualy">
4112                       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="18" height="17" viewBox="0 0 18 17" fill="none">
4113   <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
41131216 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
41135 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"/>
4114 </svg>
4115 <span>Input Address Manually</span>
4116                     </label>
4117                   </div>
4118                   <div class="col-6 position-relative">
4119                     <label for="address-upload" class="address-upload">
4120                       <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="12" height="13" viewBox="0 0 12 13" fill="none">
4121   <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"/>
4122 </svg>
4123 <span>Upload Address Picture</span>
4124                     </label>
4125                     <input
4126                       id="address-upload"
4127                       type="file"
4128                       accept="image/png, image/jpeg"
4129                       style="position: absolute; padding: 0;width: 1px;height: 1px"
4130                     >
4131                     <input type="hidden" class="props-address-upload" data-properties="foto-alamat">
4132                   </div>
4133                 </div>
4134                 <img width="150" height="" src="" class="photo-address" style="display: none;">
4135               
4136               <div class="form-group row position-relative mb-2 mb-lg-4 form-address">
4137                 <div class="col-12">
4138                   <textarea
4139                     id="delivery_address"
4140                     data-properties="alamat-penerima"
4141                     class="form-control input__field col-12"
4142                     placeholder=""
4143                     required
4144                   ></textarea>
4145                   <label for="delivery_address" class="input__label">Delivery Address<span>*</span></label>
4146                   
4147                 </div>
4148               </div>
4149               <div class="form-group row mb-2 mb-lg-4 form-address">
4150                 <div class="col-6 position-relative">
4151                   <input
4152                     id="recipient_number"
4153                     type="text"
4154                     data-properties="telepon-penerima"
4155                     class="form-control input__field"
4156                     placeholder=""
4157                     required
4158                   >
4159                   <label for="recipient_number" class="input__label">Recipient number<span>*</span></label>
4160                 </div>
4161                 <div class="col-6 position-relative">
4162                   <input
4163                     id="company"
4164                     type="text"
4165                     data-properties="company"
4166                     class="form-control input__field"
4167                     placeholder=""
4168                   >
4169                   <label for="company" class="input__label">Company (Optional)</label>
4170                 </div>
4171               </div>
4172               <div class="form-group row mb-2 mb-lg-4 form-address">
4173                 <div class="col-6 position-relative">
4174                   <input
4175                     id="province"
4176                     type="text"
4177                     class="form-control input__field"
4178                     placeholder=""
4179                     value="Jakarta"
4180                     data-properties="province"
4181                   >
4182                   <label for="province" class="input__label">Province</label>
4183                 </div>
4184                 <div class="col-6 position-relative">
4185                   <select id="zip" class="form-control select-search" required></select>
4186                 </div>
4187               </div>
4188             </form>
4189           </div>
4190         </div>
4191       </div>
4192       <div class="addonsPurchase">
4193         <h4 class="text-uppercase">add-ons</h4>
4194         <div class="addons">
4195           <p>No Add-Ons</p>
4196           <!--
4197             <button class="add-addon">
4198               <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="12" height="12" viewBox="0 0 12 12" fill="none">
4199                 <path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/>
4200               </svg>
4201               <span>Enhance my moment with Add-ons</span>
4202             </button>
4203           -->
4204         </div>
4205       </div>
4206     </div>
4207     
4208   </div>
4209 </div>
4210 
4211 
4211<script>
4212 document.addEventListener('DOMContentLoaded', function() {
4213   // Detect iOS
4214   var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
4215   
4216   if (isIOS) {
4217     document.querySelector('.formAddressPurchase').classList.add('ios');
4218     
4219     // iOS specific fixes
4220     var inputs = document.querySelectorAll('.formAddressPurchase .input__field');
4221     
4222     inputs.forEach(function(input) {
4223       // Force enable touch events on iOS
4224       input.style.webkitUserSelect = 'text';
4225       input.style.webkitTouchCallout = 'default';
4226       input.style.pointerEvents = 'auto';
4227       input.style.touchAction = 'manipulation';
4228       
4229       // Add explicit touch event listeners for iOS
4230       input.addEventListener('touchstart', function(e) {
4231         e.stopPropagation();
4232         this.focus();
4233       }, { passive: false });
4234       
4235       input.addEventListener('touchend', function(e) {
4236         e.preventDefault();
4237         e.stopPropagation();
4238         this.focus();
4239         this.click();
4240       }, { passive: false });
4241       
4242       // Force focus on tap for iOS
4243       input.addEventListener('click', function(e) {
4244         e.stopPropagation();
4245         if (document.activeElement !== this) {
4246           this.focus();
4247         }
4248       });
4249     });
4250     
4251     // Fix for label overlapping on iOS
4252     var labels = document.querySelectorAll('.formAddressPurchase .input__label');
4253     labels.forEach(function(label) {
4254       label.style.pointerEvents = 'none';
4255       label.addEventListener('touchstart', function(e) {
4256         e.preventDefault();
4257         var input = this.parentNode.querySelector('.input__field');
4258         if (input) {
4259           input.focus();
4260         }
4261       });
4262     });
4263   }
4264   
4265   // Handle input state for all browsers, especially iOS
4266   var inputs = document.querySelectorAll('.input__field');
4267   
4268   inputs.forEach(function(input) {
4269     // Handle input events
4270     input.addEventListener('input', function() {
4271       if (this.value.trim() !== '') {
4272         this.classList.add('has-value');
4273       } else {
4274         this.classList.remove('has-value');
4275       }
4276     });
4277     
4278     // Handle focus
4279     input.addEventListener('focus', function() {
4280       this.classList.add('focused');
4281       // iOS specific: ensure input is visible
4282       if (isIOS) {
4283         setTimeout(function() {
4284           input.scrollIntoView({ behavior: 'smooth', block: 'center' });
4285         }, 300);
4286       }
4287     });
4288     
4289     // Handle blur
4290     input.addEventListener('blur', function() {
4291       this.classList.remove('focused');
4292       if (this.value.trim() !== '') {
4293         this.classList.add('has-value');
4294       } else {
4295         this.classList.remove('has-value');
4296       }
4297     });
4298     
4299     // Initial check for pre-filled values
4300     if (input.value.trim() !== '') {
4301       input.classList.add('has-value');
4302     }
4303   });
4304   
4305   // Additional iOS fixes
4306   if (isIOS) {
4307     // Prevent iOS Safari from adding default styling
4308     document.addEventListener('touchstart', function() {}, { passive: true });
4309     
4310     // Fix viewport issues on iOS
4311     var viewport = document.querySelector('meta[name=viewport]');
4312     if (viewport) {
4313       viewport.setAttribute('content', 
4314         'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no'
4315       );
4316     }
4317   }
4318 });
4319 </script>
4319
4320           </div>
4321           <div class="purchase-button-wrapper">
4322             <div class="purchase-button btn-address row m-0">
4323   <div class="col-12 col-lg-2 text-left mb-2 p-0">
4324     
4325       <button class="back-purchase-button back-address text-uppercase">
4326         <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
4327           <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"/>
4328         </svg>
4329         <span>Back</span>
4330       </button>
4331     
4332   </div>
4333   <div class="btn-next-card col-12 col-lg-10 text-right">
4334     
4335       <!--
4336         <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0">
4337           <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
4338             <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"/>
4339           </svg>
4340           <span>Back</span>
4341         </button>
4342       -->
4343     
4344     
4345     <button
4346       
4347         id="addtocart-card"
4348       
4349       class="btn  next-address text-uppercase"
4350       
4351     >
4352       <span>add to cart</span>
4353     </button>
4354   </div>
4355 </div>
4356 
4357           </div>
4358         </div>
4359       </div>
4360     
4361   </div>
4362 </div>
4363 <div id="backgroundPopup"></div>
4364 
4365 
4366 
4367 <input
4368   data-index="1"
4369   type="hidden"
4370   id="properties-delivery-date"
4371   name="properties[Delivery Date]"
4372   value="-"
4373 >
4374 <input
4375   data-index="2"
4376   type="hidden"
4377   id="properties-delivery-time"
4378   name="properties[Delivery Time]"
4379   value="-"
4380 >
4381 <input
4382   data-index="4"
4383   type="hidden"
4384   id="properties-nama-penerima"
4385   name="properties[Nama Penerima]"
4386   value="-"
4387 >
4388 <input
4389   data-index="5"
4390   type="hidden"
4391   id="properties-alamat-penerima"
4392   name="properties[Alamat Penerima]"
4393   value="-"
4394 >
4395 <input
4396   data-index="6"
4397   type="hidden"
4398   id="properties-kodepos"
4399   name="properties[Kodepos]"
4400   value="-"
4401 >
4402 <input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]">
4403 
4404   
4405     <input
4406       data-index="8"
4407       type="hidden"
4408       id="properties-kartu-nama-penerima"
4409       name="properties[Kartu Nama Penerima]"
4410       value="-"
4411     >
4412   
4413   <textarea
4414     data-index="9"
4415     type="hidden"
4416     id="properties-kartu-pesan"
4417     name="properties[Kartu Pesan]"
4418     style="display: none"
4419   >-</textarea>
4420 
4421 
4422 
4423   <input
4424     data-index="10"
4425     type="hidden"
4426     id="properties-kartu-nama-pengirim"
4427     name="properties[Kartu Nama Pengirim]"
4428     value="-"
4429   >
4430 
4431 
4432 
4433   
4434   
4435 
4436 
4437 
4438 
4439 
4440 
4441 
4442 
4443 
4444 
4445 
4446 
4447 
4448 <!-- Additional Shipping -->
4449 <input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]">
4450 <input
4451   type="hidden"
4452   id="properties-kota-pengiriman-country"
4453   name="properties[Country]"
4454   value="Indonesia"
4455 >
4456 <input type="hidden" id="properties-shipping" name="properties[Shipping]">
4457 
4458 <input type="hidden" id="properties-time" name="properties[Time]">
4459 <input type="hidden" id="properties-card" name="properties[Card]">
4460 <input type="hidden" id="properties-addons" name="properties[Addons]">
4461 
4462 <input
4463   type="hidden"
4464   id="properties-company"
4465   name="properties[Company]"
4466   value=""
4467 >
4468 
4468<script>
4469   
4470   $(document).ready(function(){
4471     
4472     var text_max_papan1=150;
4473     var msg_text_papan1="";
4474     $('#kartu-ucapan-ucapan').keyup(function(){
4475       var text_length_papan1=$('#kartu-ucapan-ucapan').val().length;
4476       var msg_text_papan1=$('#kartu-ucapan-ucapan').val();
4477     });
4478 
4479     var notes_papan1 = [
4480       
4481       [0,"Happy Wedding (nama & nama)."],[1,"Congratulations lovebirds (nama & nama)."],[2,"Selamat berbahagia (nama & nama)."],[3,"Selamat menempuh hidup baru (nama & nama)."]
4482       
4483     ];
4484     $('#show_note_papan1').click(function(event){
4485       event.preventDefault();
4486       var idx_papan1=parseInt($('#note_id_papan1').val());
4487       if(isNaN(idx_papan1)){
4488         idx_papan1=0;
4489       }else{
4490         idx_papan1++;
4491         idx_papan1=idx_papan1%notes_papan1.length;
4492       }
4493       var note_papan1=notes_papan1[idx_papan1][1];
4494       $('#note_id_papan1').val(idx_papan1);
4495       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1);
4496       $('#msgDelivery').val(note_papan1);
4497 
4498       var text_length_papan1=$('#kartu-ucapan-papan').val().length;
4499       var idx_2_papan1=parseInt($('#note_btn_id_papan1').val());
4500       if(isNaN(idx_2_papan1)){
4501         idx_2_papan1=0;
4502       }else{
4503         idx_2_papan1++;
4504         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4505       }
4506       $('#note_btn_id_papan1').val(idx_2_papan1);
4507       //var note_btn=note_btn_text[idx_2][1];
4508       //$('#note_btn').text(note_btn);
4509     });
4510 
4511     var text_max_papan2=150;
4512     var msg_text_papan2="";
4513     $('#kartu-ucapan-ucapan').keyup(function(){
4514       var text_length_papan2=$('#kartu-ucapan-ucapan').val().length;
4515       var msg_text_papan2=$('#kartu-ucapan-ucapan').val();
4516     });
4517 
4518     var notes_papan2 = [
4519       
4520       [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)."]
4521       
4522     ];
4523     $('#show_note_papan2').click(function(event){
4524       event.preventDefault();
4525       var idx_papan2=parseInt($('#note_id_papan2').val());
4526       if(isNaN(idx_papan2)){
4527         idx_papan2=0;
4528       }else{
4529         idx_papan2++;
4530         idx_papan2=idx_papan2%notes_papan2.length;
4531       }
4532       var note_papan2=notes_papan2[idx_papan2][1];
4533       $('#note_id_papan2').val(idx_papan2);
4534       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2);
4535       $('#msgDelivery').val(note_papan2);
4536       var text_length_papan2=$('#kartu-ucapan-papan').val().length;
4537       var idx_2_papan2=parseInt($('#note_btn_id_papan2').val());
4538       if(isNaN(idx_2_papan2)){
4539         idx_2_papan2=0;
4540       }else{
4541         idx_2_papan2++;
4542         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4543       }
4544       $('#note_btn_id_papan2').val(idx_2_papan2);
4545       //var note_btn=note_btn_text[idx_2][1];
4546       //$('#note_btn').text(note_btn);
4547     });
4548 
4549     var text_max_papan3=150;
4550     var msg_text_papan3="";
4551     $('#kartu-ucapan-ucapan').keyup(function(){
4552       var text_length_papan3=$('#kartu-ucapan-ucapan').val().length;
4553       var msg_text_papan3=$('#kartu-ucapan-ucapan').val();
4554     });
4555 
4556     var notes_papan3 = [
4557       
4558       [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)."]
4559       
4560     ];
4561     $('#show_note_papan3').click(function(event){
4562       event.preventDefault();
4563       var idx_papan3=parseInt($('#note_id_papan3').val());
4564       if(isNaN(idx_papan3)){
4565         idx_papan3=0;
4566       }else{
4567         idx_papan3++;
4568         idx_papan3=idx_papan3%notes_papan3.length;
4569       }
4570       var note_papan3=notes_papan3[idx_papan3][1];
4571       $('#note_id_papan3').val(idx_papan3);
4572       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3);
4573       $('#msgDelivery').val(note_papan3);
4574       var text_length_papan3=$('#kartu-ucapan-papan').val().length;
4575       var idx_2_papan3=parseInt($('#note_btn_id_papan3').val());
4576       if(isNaN(idx_2_papan3)){
4577         idx_2_papan3=0;
4578       }else{
4579         idx_2_papan3++;
4580         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4581       }
4582       $('#note_btn_id_papan3').val(idx_2_papan3);
4583       //var note_btn=note_btn_text[idx_2][1];
4584       //$('#note_btn').text(note_btn);
4585     });
4586 
4587     var text_max_papan4=150;
4588     var msg_text_papan4="";
4589     $('#kartu-ucapan-ucapan').keyup(function(){
4590       var text_length_papan4=$('#kartu-ucapan-ucapan').val().length;
4591       var msg_text_papan4=$('#kartu-ucapan-ucapan').val();
4592     });
4593 
4594     $('#show_note_papan4').click(function(event){
4595       var notes_papan4 = [
4596         [0,"Here’s to you—steadier, stronger and better every day."],
4597         [1,"Warmest wishes for a speedy recovery!"],
4598         [2,"Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."],
4599         [3,"Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."]
4600       ];
4601       event.preventDefault();
4602       var idx_papan4=parseInt($('#note_id_papan4').val());
4603       console.log(idx_papan4, 'idx_papan4')
4604       if(isNaN(idx_papan4)){
4605         idx_papan4=0;
4606       }else{
4607         idx_papan4++;
4608         idx_papan4=idx_papan4%notes_papan4.length;
4609       }
4610       var note_papan4=notes_papan4[idx_papan4][1];
4611       $('#note_id_papan4').val(idx_papan4);
4612       $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4);
4613       console.log(note_papan4, 'note_papan4')
4614       var text_length_papan4=$('#kartu-ucapan-papan').val().length;
4615       var idx_2_papan4=parseInt($('#note_btn_id_papan4').val());
4616       if(isNaN(idx_2_papan4)){
4617         idx_2_papan4=0;
4618       }else{
4619         idx_2_papan4++;
4620         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4621       }
4622       $('#note_btn_id_papan4').val(idx_2_papan4);
4623     });
4624 
4625     /*
4626     $("#jenisPapan").change(function(){
4627       $( "select option:selected").each(function(){
4628         if($(this).attr("value")=="Happy Wedding"){
4629           $("#suggest-messages a").hide();
4630           $("#show_note_papan1").show();
4631           $("#kartu-ucapan-papan").val("");
4632         }
4633         if($(this).attr("value")=="Congratulations"){
4634           $("#suggest-messages a").hide();
4635           $("#show_note_papan2").show();
4636           $("#kartu-ucapan-papan").val("");
4637         }
4638         if($(this).attr("value")=="Duka Cita"){
4639           $("#suggest-messages a").hide();
4640           $("#show_note_papan3").show();
4641           $("#kartu-ucapan-papan").val("");
4642         }
4643       });
4644     }).change();
4645     */
4646 
4647     
4648 
4649     
4650 
4651     $(".variant-metafield").each(function(){
4652       const t = $(this)
4653       const id = t.attr("id")
4654       const target = $(`[data-select=${id}]`)
4655       t.on('select2:selecting', function(e) {
4656         const data = e.params.args.data
4657         target.val(data.text)
4658       });
4659     })
4660   })
4661 </script>
4661
4662 
4663 <div id="popupCart">
4664   <div class="container">
4665     <div class="wrapperPopupCart">
4666       <div class="headerPopupCart">
4667         <div class="d-flex pl-5 pr-5 p-4">
4668           <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="16" height="12" viewBox="0 0 16 12" fill="none">
4669             <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"/>
4670           </svg>
4671           <span>item added to your cart</span>
4672         </div>
4673         <a class="close-purchase-popup">
4674   <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="18" height="18" viewBox="0 0 18 18" fill="none">
4675     <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"/>
4676   </svg>
4677 </a>
4678 
4679       </div>
4680       <div class="contentPopupCart">
4681         <div class="pl-5 pr-5 p-4">
4682           <div class="itemContent row m-0 justify-content-between">
4683             <div class="col-2 align-self-center">
4684               
4685               <img
4686                 class="d-block"
4687                 width="80"
4688                 src="//outerbloom.com/cdn/shop/files/Blossom-Shine-WM_80x.jpg?v=1695788426"
4689               >
4690             </div>
4691             <div class="col-10 align-self-center">
4692               <div class="row pl-3">
4693                 <div class="col-12 col-lg-7">
4694                   <span class="titleCartPopup text-uppercase">KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia</span>
4695                 </div>
4696                 <div class="d-flex justify-content-end col-12 col-lg-5">
4697                   <span class="deleteCartPopup hide">Delete</span>
4698                   <span class="lineCartPrice align-self-center">Rp 10.000</span>
4699                 </div>
4700               </div>
4701             </div>
4702           </div>
4703           <div class="itemProperties">
4704             
4705               <div class="propDeliver">
4706                 <h4>delivery option detail</h4>
4707                 <p>
4708                   <span>delivery city</span>
4709                   <span class="propDeliveryCity">jakarta</span>
4710                 </p>
4711                 <p>
4712                   <span>delivery date</span>
4713                   <span class="propDeliveryDate">24/03/2025</span>
4714                 </p>
4715                 <p>
4716                   <span>delivery time</span>
4717                   <span class="propDeliveryTime">Afternoon | 13:00 - 18:00</span>
4718                 </p>
4719               </div>
4720               <div class="propAddress">
4721                 <h4>delivery option detail</h4>
4722                 <p>
4723                   <span>RECIPIENT NAME</span>
4724                   <span class="propDeliveryName">jane doe</span>
4725                 </p>
4726                 <p>
4727                   <span>delivery address</span>
4728                   <span class="propDeliveryAddress"
4729                     >Jl. Gatot Subroto No. 25, RT.2/RW.4, Kuningan Barat, Kecamatan Mampang Prapatan, Kota Jakarta
4730                     Selatan, Daerah Khusus Ibukota Jakarta 12710, Indonesia</span
4731                   >
4732                 </p>
4733                 <p>
4734                   <span>recipient phone number</span>
4735                   <span class="propDeliveryPhone">(+62) 812-3456-7890</span>
4736                 </p>
4737                 <p>
4738                   <span>PROVINCE</span>
4739                   <span class="propDeliveryProv">Jakarta</span>
4740                 </p>
4741                 <p>
4742                   <span>postal code</span>
4743                   <span class="propDeliveryZip">12710</span>
4744                 </p>
4745                 
4746                 
4747               </div>
4748             
4749           </div>
4750           <div class="itemAddonCart">
4751             <div class="toggleAddonCart d-flex justify-content-between">
4752               <h4>add-ons (0)</h4>
4753               <svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="5" height="9" viewBox="0 0 5 9" fill="none">
4754                 <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"/>
4755               </svg>
4756             </div>
4757             <div class="wrapperItemAddonCart"></div>
4758           </div>
4759           
4760         </div>
4761       </div>
4762       <div class="footerPopupCart">
4763         <div class="row m-0 pl-5 pr-5 p-4">
4764           <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a>
4765           <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a>
4766           <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a>
4767         </div>
4768       </div>
4769     </div>
4770   </div>
4771 </div>
4772 
4773 
4774 
4774<script>
4775   const shareButton = document.getElementById('shareButton');
4776 
4777   shareButton.addEventListener('click', () => {
4778     if (navigator.share) {
4779       navigator.share({
4780         title: "KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia",
4781         url: "/products/blossom-shine",
4782         text: 'Check out this page!'
4783       })
4784       .then(() => console.log('Successful share'))
4785       .catch((error) => console.log('Error sharing', error));
4786     } else {
4787       alert('Web Share API is not supported in this browser.');
4788     }
4789   });
4790 
4791   // Inventory validation function
4792   function checkInventoryStatus() {
4793     const productSelect = document.getElementById('productSelect');
4794     const purchaseButton = document.querySelector('#personalizeBtn button');
4795     
4796     if (!productSelect || !purchaseButton) return;
4797 
4798     const selectedVariantId = productSelect.value;
4799     
4800     // Get variant data from Shopify
4801     fetch(`/products/blossom-shine.js`)
4802       .then(response => response.json())
4803       .then(product => {
4804         const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId);
4805         
4806         if (selectedVariant) {
4807           const isOutOfStock = selectedVariant.inventory_quantity <= 0 && 
4808                                selectedVariant.inventory_management === 'shopify' && 
4809                                selectedVariant.inventory_policy !== 'continue';
4810           
4811           if (isOutOfStock) {
4812             purchaseButton.disabled = true;
4813             purchaseButton.textContent = 'Out of Stock';
4814             purchaseButton.setAttribute('data-out-of-stock', 'true');
4815             purchaseButton.style.backgroundColor = '#cccccc';
4816             purchaseButton.style.cursor = 'not-allowed';
4817           } else {
4818             // Check if button was disabled due to other conditions
4819             
4820             
4821             
4822             
4823             
4824             
4825             
4826             
4827             const isOtherDisabled = false || true || false;
4828             
4829             if (!isOtherDisabled) {
4830               purchaseButton.disabled = false;
4831               purchaseButton.textContent = 'customize your flower board';
4832               purchaseButton.removeAttribute('data-out-of-stock');
4833               purchaseButton.style.backgroundColor = '';
4834               purchaseButton.style.cursor = '';
4835             }
4836           }
4837         }
4838       })
4839       .catch(error => {
4840         console.error('Error checking inventory:', error);
4841       });
4842   }
4843 
4844   // Check inventory on page load
4845   document.addEventListener('DOMContentLoaded', function() {
4846     checkInventoryStatus();
4847     
4848     // Listen for variant changes
4849     const productSelect = document.getElementById('productSelect');
4850     if (productSelect) {
4851       productSelect.addEventListener('change', checkInventoryStatus);
4852     }
4853   });
4854 
4855   // Prevent form submission if out of stock
4856   document.addEventListener('click', function(e) {
4857     if (e.target.matches('button[data-out-of-stock="true"]')) {
4858       e.preventDefault();
4859       e.stopPropagation();
4860       alert('This product is currently out of stock and cannot be purchased.');
4861       return false;
4862     }
4863   });
4864 </script>
4864
4865 
4866 
4867   
4868 </div>
4869 
4870           </div>
4871         </div>
4872       </div>
4873     </div>
4874     <div id="product-bottom">
4875       
4876           <div class="container">
4877             
4878 
4879 
4880 
4881 
4882     <div class="short-desc-mobile d-block d-lg-none mb-3">
4883         <div class="short-desc">
4884             <ul>
4885 <li><strong>KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.</strong></li>
4886         </div>
4887         <label class="more-mobile">Show More →</label>
4888     </div>
4889 
4890 <style>
4891 .animated-title {
4892     text-align: center;
4893     font-weight: bold;
4894     color: #079c02;
4895     font-size: 28px;
4896     position: relative;
4897     animation: glow 2s infinite alternate, moveUpDown 3s infinite;
4898 }
4899 
4900 /* Efek glow / bercahaya hijau */
4901 @keyframes glow {
4902     0% { text-shadow: 0 0 5px #079c02; color: #079c02; }
4903     50% { text-shadow: 0 0 20px #00ff55; color: #12d12b; }
4904     100% { text-shadow: 0 0 10px #1bff00; color: #079c02; }
4905 }
4906 
4907 /* Efek gerakan naik turun */
4908 @keyframes moveUpDown {
4909     0% { transform: translateY(0px); }
4910     50% { transform: translateY(-5px); }
4911     100% { transform: translateY(0px); }
4912 }
4913 </style>
4914 
4915 
4915<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
4915
4916 
4916<script>
4917   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});
4918 
4919   const productType = $("[data-product-type]").data("product-type")
4920   const productDate = Date.parse(new Date())
4921   
4922   const shop = 'outerbloom1.myshopify.com'
4923   const host = 'https://app.asmaraku.com'
4924   // const host = 'http://localhost:5001'
4925 
4926   const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec"
4927   
4928   const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ')
4929 
4930   $("#properties-time").val(new Date().getTime())
4931 
4932   const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent);
4933 
4934   if(!isIOS) {
4935     $("#full-date").attr("type", "button")
4936   }
4937 
4938   let dateTime = new Date();
4939   let today = dateTime.getDate();
4940   let day = dateTime.getDay();
4941   let hour = dateTime.getHours();
4942   let min = dateTime.getMinutes();
4943   let timeOfDay = hour + (min / 100);
4944 
4945   async function getFetch(url) {
4946     const response = await fetch(url);
4947     let status = false
4948     let result
4949     if(response.ok) {
4950       status = true
4951       result = await response.json();
4952     }
4953     return {
4954       status,
4955       data: result
4956     }
4957   }
4958 
4959   
4960 
4961   function setCookie(cname, cvalue, exMins) {
4962     var d = new Date();
4963     d.setTime(d.getTime() + (exMins*60*1000));
4964     var expires = "expires="+d.toUTCString();  
4965     document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
4966   }
4967 
4968   function getCookie(cname) {
4969     let name = cname + "=";
4970     let decodedCookie = decodeURIComponent(document.cookie);
4971     let ca = decodedCookie.split(';');
4972     for(let i = 0; i <ca.length; i++) {
4973       let c = ca[i];
4974       while (c.charAt(0) == ' ') {
4975         c = c.substring(1);
4976       }
4977       if (c.indexOf(name) == 0) {
4978         return c.substring(name.length, c.length);
4979       }
4980     }
4981     return "";
4982   }
4983 
4984   async function renderDate() {
4985     let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8144957800663&v=${Date.now()}`);
4986     console.log(dataDate, 'renderDate')
4987     const data = dataDate?.data
4988     const date = data.date
4989     const time = data.time
4990 
4991     console.log(date, 'DATE')
4992 
4993     const weekday = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
4994     const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
4995     const htmlDate = []
4996     for(let i = 0;i < date.length;i++) {
4997       const full = date[i].date
4998       const d = new Date(date[i].date);
4999       const day = weekday[d.getDay()];
5000       const dt = d.getDate();
5001       const mt = monthly[d.getMonth()];
5002       const yr = d.getFullYear();
5003       const isDate = Boolean(date[i].isEnabled)
5004       const cutoffpagi = date[i].cutoff?.pagi
5005       const cutoffsiang = date[i].cutoff?.siang
5006       const cutoffMalam = date[i].cutoff?.Malam
5007       var html = `
5008         <button data-id="8144957800663" 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'}>
5009           ${dt === today ?
5010             `Today<span>${dt < 10 ? '0' + dt : dt}</span>` :
5011             `${day}<span>${dt < 10 ? '0' + dt : dt}</span>`
5012           }
5013         </button>
5014       `
5015       htmlDate.push(html)
5016     }
5017     const htmlTime = []
5018     for(var i = 0;i < time.length;i++) {
5019       const timeText = time[i].text
5020       const timeTime = time[i].time
5021       const timeEnabled = time[i].isEnabled
5022       var html = `
5023           <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button>
5024         `
5025       htmlTime.push(html)
5026     }
5027     const deliveryDate = document.getElementById("deliveryDate");
5028     if(deliveryDate) {
5029       deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join(''))
5030       $("#deliveryTime").html(htmlTime)
5031       if(productType !== '') {
5032         console.log("clarity event " + productType + ' calendaring')
5033         window.clarity("event", `${productType} calendaringSchedule`)
5034         // window.clarity("set", productType, `calendaringSchedule - ${productDate}`)
5035       }
5036     }
5037   }
5038 
5039   async function getProvince(city) {
5040     let { data: { province } } = await getFetch(`${host}/api/shipping/address/province?city=${city}`);
5041     console.log(province, 'province')
5042     $("#province").val(province)
5043   }
5044 
5045   async function renderAddress() {
5046     let current
5047     if(getCookie("location_delivery")){
5048       current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1)
5049     }
5050     let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8144957800663`);
5051     console.log(address)
5052     const data = address?.data?.city
5053     const htmlAddress = []
5054     const grouping = []
5055     for(let i = 0;i < data?.length;i++) {
5056       if(data[i]){
5057         if(data[i]?.group) {
5058           grouping.push(data[i].group)
5059         }
5060         const price = rupiah.format(data[i]?.rate)
5061         let promo = '(Promo Free Delivery)'
5062         if(data[i]?.name === 'Jakarta - PickUp ASHTA'){
5063           promo = '(at SCBD, Ashta)'
5064         } else if(data[i]?.name === 'Jakarta - PickUp ITC'){
5065           promo = '(at Kuningan, ITC Kuningan)'
5066         } else if(data[i]?.name === 'BSD - PickUp'){
5067           promo = '(at Goldfinch Gading Serpong)'
5068         } else if(data[i]?.name === 'Kota Lainnya'){
5069           promo = ''
5070         }
5071         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>`)
5072       }
5073     }
5074     
5075     const deliveryCity = document.getElementById("cities");
5076     if(deliveryCity) {
5077       deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join(''))
5078       if(!isIOS) {
5079         $(deliveryCity).select2();
5080       }
5081     }
5082   }
5083 
5084   async function renderZip(v, v2, v3) {
5085     const deliveryZip = document.getElementById("zip");
5086     if(v === '') {
5087       return
5088     }
5089     let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`);
5090     let zip = dataZip?.data?.zip
5091     console.log(zip)
5092     let htmlZip = []
5093     for(let i = 0; i < zip?.length;i++) {
5094       htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`)
5095     }
5096     deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join(''))
5097   }
5098 
5099   renderDate()
5100   renderAddress()
5101 
5102   let rupiah = new Intl.NumberFormat('id-ID', {
5103     style: 'currency',
5104     currency: 'IDR',
5105     maximumFractionDigits: 0, 
5106     minimumFractionDigits: 0
5107   });
5108 
5109   async function insertCard(data) {
5110     const response = await fetch(`${host}/api/card/new`, {
5111         method: "POST",
5112         headers: {
5113           'Content-Type': 'application/json',
5114         },
5115         body: data
5116     })
5117     const result = await response.json()
5118     let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1]
5119     $("#greetingCard").attr("data-index", rowIndex)
5120     return result
5121   }
5122     
5123   async function updateCard(data){
5124     const rowIndex = $("#greetingCard").data("index")
5125     const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, {
5126         method: "PUT",
5127         headers: {
5128           'Content-Type': 'application/json',
5129         },
5130         body: data
5131     })
5132     return response
5133   }
5134     
5135   function bytesToSize(bytes) {
5136     var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p'];
5137     for (var i = 0; i < sizes.length; i++) {
5138       if (bytes <= 1024) {
5139         return bytes + ' ' + sizes[i];
5140       } else {
5141         bytes = parseFloat(bytes / 1024).toFixed(2)
5142       }
5143     }
5144     return bytes + ' P';
5145   }
5146 
5147   async function uploadMedia(uri, type) {
5148     nameq = $("#properties-nama-penerima").val()
5149     dear = $("#properties-kartu-nama-penerima").val()
5150     card = $("[data-properties=ucapan]").val()
5151     sender = $("#properties-kartu-nama-pengirim").val()
5152     photo = $("#properties-photo").val()
5153     video = $("#properties-video").val()
5154     status = "Product"
5155         
5156     const name = qrID
5157     let formData = new FormData(); 
5158     formData.append("file", uri);
5159     const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
5160       method: "POST", 
5161       body: formData
5162     })
5163     const result = await response.json();
5164     if(result) {
5165       const url = result.url
5166       if(type === 'image/jpeg') {
5167         $("#properties-photo").val(url)
5168         $(".preview-image").show()
5169         $(".remove-image").show()
5170         photo = url
5171       } else {
5172         $("#properties-video").val(url)
5173         $("#label-input-video span").text("Change File")
5174         $(".case-qrcode-preview p").text("Scan here for a secret message")
5175         $(".remove-media").show()
5176         $("#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>`)
5177         $("[for=input-video]").hide()
5178         video = url
5179       }
5180       $(".case-video-preview").show()
5181       $(".steps-card-preview").removeClass("loading")
5182       // updateCard(nameq, dear, card, sender, photo, video, status)
5183 
5184       $(".nextBtn").attr("disabled", false)
5185     }
5186   }
5187 
5188   function randomString(length, chars) {
5189     var result = '';
5190     for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))];
5191     return result;
5192   }
5193 
5194   function getNoteCity(fulldate) {
5195     const h_1 = new Date(new Date().setDate(new Date().getDate() + 1))
5196     const weekday = ["Min","Sen","Sel","Rab","Kam","Jum","Sab"];
5197     const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
5198     const d = new Date(h_1);
5199     const day = weekday[d.getDay()];
5200     const dt = d.getDate();
5201     const mt = monthly[d.getMonth()];
5202     const yr = d.getFullYear();
5203     const p = $("#cities").parent(".form-group")
5204   }
5205 
5206   function disabledSameDay() {
5207     let btnFirst = $("#deliveryDate").find("button:first-child")
5208     let getDay = new Date().getDay();
5209 
5210     
5211       
5212       if(getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5){
5213         if(hour >= 14.00){
5214           btnFirst.attr("disabled", true)
5215         }
5216       } else if(getDay == 6){
5217         if(hour >= 16.00){
5218           btnFirst.attr("disabled", true)
5219         }
5220       } else if(getDay == 0){
5221         if(hour >= 16.00){
5222           btnFirst.attr("disabled", true)
5223         }
5224       }
5225       
5226     
5227   }
5228 
5229   function disabledays(date) {
5230     let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
5231     //if u have to disable a list of day
5232     let removeDays
5233     
5234     
5235     
5236         removeDays = ["2025-2-13", "2025-2-14"];
5237     
5238     if ($.inArray(ymd, removeDays) >= 0) {
5239       return [false];
5240     } else {
5241       let day = date.getDay();
5242       if(day == 0 && date.getDate() == 13 && date.getMonth() == 1){
5243           return [(day == 0),  ''];
5244       }
5245       
5246       if(day == 0){
5247         return [(day == 0),  ''];
5248       }
5249       
5250       
5251       return [(day != 0),  ''];
5252     }
5253   }
5254 
5255   /* Indonesian initialisation for the jQuery UI date picker plugin. */
5256   /* Written by Deden Fathurahman ([email protected]). */
5257   ( function( factory ) {
5258     if ( typeof define === "function" && define.amd ) {
5259 
5260       // AMD. Register as an anonymous module.
5261       define( [ "../widgets/datepicker" ], factory );
5262     } else {
5263 
5264       // Browser globals
5265       factory( jQuery.datepicker );
5266     }
5267   }( function( datepicker ) {
5268 
5269   datepicker.regional.id = {
5270     closeText: "Tutup",
5271     prevText: "&#x3C;mundur",
5272     nextText: "maju&#x3E;",
5273     currentText: "Today",
5274     monthNames: [ "January","February","March","April","May","Juny",
5275                   "July","August","September","October","November","December" ],
5276     monthNamesShort: [ "Jan","Feb","Mar","Apr","May","Jun",
5277                       "Jul","Agu","Sep","Oct","Nov","Dec" ],
5278     dayNames: [ "Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu" ],
5279     dayNamesShort: [ "Sun","Mon","Tue","Wed","Thu","Fri","Sat" ],
5280     dayNamesMin: [ "Mg","Sn","Sl","Rb","Km","jm","Sb" ],
5281     weekHeader: "Mg",
5282     dateFormat: "D, dd M",
5283     firstDay: 0,
5284     isRTL: false,
5285     showMonthAfterYear: false,
5286     yearSuffix: "" };
5287   datepicker.setDefaults( datepicker.regional.id );
5288 
5289   return datepicker.regional.id;
5290 
5291 } ) );
5292 
5293   function loadPopup() {
5294     $("#backgroundPopup").fadeIn("slow");
5295     $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow");
5296     const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first()
5297     if(firstSection.hasClass("purchasePersonalize")) {
5298       if(productType !== '') {
5299         console.log("clarity event " + productType + ' personalize')
5300         window.clarity("event", `${productType} cardPersonalization`)
5301         // window.clarity("set", productType, `cardPersonalization - ${productDate}`)
5302       }
5303     } else if (firstSection.hasClass("sectionPurchaseBoard")) {
5304         console.log("clarity event " + productType + ' personalizeBoard')
5305         window.clarity("event", `${productType} personalizeBoard`)
5306         // window.clarity("set", productType, `personalizeBoard - ${productDate}`)
5307     }
5308     firstSection.removeClass("hide")
5309     
5310     // Auto-trigger addon loading when addon section becomes visible
5311     setTimeout(function() {
5312       const addonSection = $(".purchaseAddon")
5313       if(addonSection.length > 0 && !addonSection.hasClass("hide")) {
5314         if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
5315           $("[data-addon=upsell-all]").trigger("click")
5316         }
5317       }
5318     }, 200)
5319   }
5320 
5321   function disablePopup() {
5322     $("#backgroundPopup").fadeOut("slow");
5323     $(".purchasePopup").fadeOut("slow");
5324     $("#popupCart").fadeOut("slow");
5325   }
5326 
5327     function scrollTo(parent, div, dur) {
5328       $(parent).animate({
5329         scrollTop: $(div).offset().top
5330       }, dur);
5331     }
5332 
5333   function loadPopupPersonalize() {
5334     const div = "#purchaseProduct"
5335     const p = "html, body, .product-meta"
5336     $("p.error").remove()
5337     loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all")
5338     const isCity = $("#cities[required]")
5339     const isDate = $("#propDeliveryDate[required]")
5340     const isTime = $("#propDeliveryTime[required]")
5341     // loadPopup()
5342     if(isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') {
5343       loadPopup()
5344     }
5345     if(isCity.val() == '') {
5346       isCity.parent(".row").append("<p class='error'>Choose delivery city</p>")
5347       scrollTo(p, div, 500)
5348     }
5349     if(isDate.val() == '') {
5350       isDate.parents(".row").append("<p class='error'>Choose delivery date</p>")
5351       scrollTo(p, div, 500)
5352     }
5353     if(isTime.val() == '') {
5354       isTime.parents(".row").append("<p class='error'>Choose delivery time</p>")
5355       scrollTo(p, div, 500)
5356     }
5357   }
5358 
5359   function quantityCounter() {
5360     $(document).on("click", ".item-card.selected .q_up", function () {
5361       var C = $(this).attr("data-id"),
5362           S =
5363               parseInt(
5364                   $(this)
5365                       .siblings(".quantity-cart-" + C)
5366                       .val()
5367               ) + 1;
5368       $(this).attr("data-quantity", S),
5369           $(this)
5370               .siblings(".quantity-cart-" + C)
5371               .val(S);
5372     }),
5373     $(document).on("click", ".item-card.selected .q_down", function () {
5374         var C = $(this).attr("data-id"),
5375             S = parseInt(
5376                 $(this)
5377                     .siblings(".quantity-cart-" + C)
5378                     .val()
5379             );
5380         0 < S && $(this).attr("data-quantity", S - 1),
5381             0 < S &&
5382                 $(this)
5383                     .siblings(".quantity-cart-" + C)
5384                     .val(S - 1);
5385     });
5386   }
5387 
5388   quantityCounter()
5389 
5390   const itemAddon = $(".item-card").length
5391   const nofree = $(".nofree").length
5392 
5393   const upsell = ''
5394   
5395   if(nofree === itemAddon) {
5396       // $("#itemAddons").html("<p>No Items available</p>")
5397   }
5398 
5399   $("#itemAddons .item-card").each(function(e){
5400       $("#itemAddons").attr("data-length", e)
5401   })
5402 
5403   $("[data-addon]").click(function(){
5404       
5405       
5406       
5407       const t = $(this)
5408       
5409       const data = t.data("addon")
5410       
5411       $("[data-addon]").removeClass("selected")
5412       t.addClass("selected")
5413       $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status){
5414           const products = data.products
5415           const html = []
5416           for(let i = 0; i < products.length; i++) {
5417               const id = products[i].id
5418               const variantId = products[i].variants[0].id
5419               const img = products[i].images[0].src
5420               let img2 = img.split('.jpg')[0]
5421               const title = products[i].title
5422               const price = products[i].variants[0].price
5423               const tags = products[i].tags
5424               const qty = products[i].variants[0].available
5425               let type_upsell = ''
5426               if(tags.includes('upsell-item-standing')) {
5427                   type_upsell = 'standing'
5428               }
5429               console.log(type_upsell)
5430               if(type_upsell !== '') {
5431                   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}">
5432                       
5433                           <div class="card-image">
5434                               <img src="${img2}_150x.jpg" alt="${title}" width="" height="" />
5435                           </div>
5436                           <div class="card-meta">
5437                               <h5>${title}</h5>
5438                               <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p>
5439                               <input id="card-${variantId}" type="hidden" name="" value="${variantId}">
5440                           </div>
5441                           <div class="card-qty">
5442                               <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a>  
5443                               <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}
5443" value="0" data-price=${price} name="quantity">
5444                               <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="12" height="13" viewBox="0 0 12 13" fill="none">
5445 <path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/>
5446 </svg></a>   
5447                           </div>
5448                       </div>`
5449                   html.push(body)
5450               }
5451           }
5452           $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html)
5453           $("#itemAddons").attr("data-length", products.length)
5454           // $('#itemAddons')[0].swiper.update();
5455       });
5456   })
5457 
5458   async function isAddon(){
5459     let ids = []
5460     $("#itemAddons .item-card.selected").each(function(i, e){
5461       const id = $(this).data("id")
5462       ids.push(id)
5463     })
5464     console.log(ids)
5465     return ids
5466   }
5467   
5468   $("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function(){
5469     const t = $(this).parent()
5470     const id = t.data("id")
5471     const btn =  t.parents(".purchaseAddon").find(".next-purchase-button")
5472     t.toggleClass("selected");
5473     //$(this).next("input").toggleAttr('name', 'id[]');
5474     if (t.hasClass('selected')) {
5475         t.find("input").val(1)
5476         t.find("input").attr('name', 'id[]');
5477     } else {
5478         t.find("input").val(0)
5479         t.find("input").removeAttr('name');
5480     }
5481     $("#properties-addons").val(addons)
5482     const is = await isAddon()
5483     if(is.length === 0) {
5484       btn.text("continue without add-ons")
5485       return
5486     }
5487     if(is.includes(8835692069079)) {
5488       btn.text("personalize acrylic frame")
5489     } else {
5490       btn.text("Continue")
5491     }
5492       
5493   })
5494 
5495   async function myAddon(data) {
5496     const c = $(".addonsPurchase .addons")
5497     let items = []
5498     
5499     const spotifyAddons = $(".spotifyAddons").find("[data-index]")
5500     // if(spotifyAddons.length > 0) {
5501     //   $(spotifyAddons).each(function(i, e){
5502     //     const spotifyLink = $(this).find(".spotifyLink").val()
5503     //     const spotifySong = $(this).find(".spotifySong").val()
5504     //     const spotifyArtist = $(this).find(".spotifyArtist").val()
5505     //     const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val()
5506     //     if(spotifyLink !== '') {
5507     //       spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1">
5508     //         <div class="addon-itm-img">
5509     //           <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"/>
5510     //         </div>
5511     //         <div class="addon-itm-title">
5512     //           <span>[US] Outerbloom Acrylic Frame 4R</span>
5513     //         </div>
5514     //         <div class="addon-itm-line-total">
5515     //           <span>Rp 99.000</span>
5516     //         </div>
5517     //       </div>
5518     //       <div class="propsAddonSpotify row m-0">
5519     //         <div class="col-12 col-lg-2"></div>
5520     //           <div class="col-12 col-lg-10">
5521     //             <p>
5522     //               <span>spotify link</span>
5523     //               <span class="spotifyLinkAddon">${spotifyLink}</span>
5524     //             </p>
5525     //             <p>
5526     //               <span>uploaded photo</span>
5527     //               <span class="spotifyFotoAddon">${spotifyFotoAddon}</span>
5528     //             </p>
5529     //             <p>
5530     //               <span>song / playlist name</span>
5531     //               <span class="spotifySongAddon">${spotifySong}</span>
5532     //             </p>
5533     //             <p>
5534     //               <span>artist name</span>
5535     //               <span class="spotifyArtistAddon">${spotifyArtist}</span>
5536     //             </p>
5537     //           </div>
5538     //       </div>`
5539     //       items.push(spotifyAddon)
5540     //     }
5541     //   })
5542     // }
5543     for(let i = 0; i < data.length; i++) {
5544       if(data[i].title !== '[US] Outerbloom Acrylic Frame 4R' ) {
5545         const img = data[i].image
5546         const title = data[i].title
5547         const qty = data[i].qty
5548         const price = data[i].price
5549         const total = Number(qty) * Number(price)
5550         let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}">
5551               <div class="addon-itm-img">
5552                 <img src="${img}" alt="" width="70"/>
5553               </div>
5554               <div class="addon-itm-title">
5555                 <span>${title}</span>
5556               </div>
5557               <div class="addon-itm-line-price">
5558                 <span>${rupiah.format(price)}</span>
5559                 ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`}
5560               </div>
5561               <div class="addon-itm-line-total">
5562                 <span>${rupiah.format(total)}</span>
5563               </div>
5564             </div>`
5565           items.push(addons)
5566       }
5567     }
5568     c.html(items)
5569     const parent = $(".purchaseAddon")
5570     const next = parent.next(".sectionPurchase")
5571     parent.addClass("hide")
5572     next.removeClass("hide")
5573     // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart")
5574     // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`)
5575   }
5576 
5577   async function listAddon() {
5578     const data = $("#itemAddons").find(".selected")
5579     let ids = []
5580     $(data).each(function(){
5581       const id = $(this).data("variant")
5582       const image = $(this).find(".card-image img").attr("src")
5583       const title = $(this).find(".card-meta h5").text()
5584       const qty = $(this).find(".card-qty input").val()
5585       const price = $(this).find(".card-qty input").data("price")
5586       ids.push({
5587         id: Number(id),
5588         image,
5589         title,
5590         qty,
5591         price
5592       })
5593     })
5594     myAddon(ids)
5595   }
5596 
5597   async function customSpotify(idx, length, type){
5598     let isCard = false
5599     
5600     let p = $(".purchasePopupSpotify")
5601     const preLink = $(".spotifyLinkFirst").val()
5602     $("[data-index]").hide()
5603     p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`)
5604     p.find(".regulerAddons, .purchase-button").hide()
5605     p.find(".spotifyAddons").show()
5606     
5607     const data = await trackUrl(preLink)
5608     
5609     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://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="13" height="11" viewB
5609ox="0 0 13 11" fill="none">
5610 <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"/>
5611 </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://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif><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://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="13" height="11" viewB
5611ox="0 0 13 11" fill="none">
5612 <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"/>
5613 </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>`
5614     // console.log(html)
5615     
5616     $(".spotifyAddons").append(html)
5617     
5618     $(`[data-index=${idx}]`).show()
5619     
5620     if (preLink !== '') {
5621       $(".btn-action .btn").attr("disabled", false)
5622     } else {
5623       $(".btn-action .btn").attr("disabled", true)
5624     }
5625 
5626     return html
5627     
5628   }
5629 
5630   $(".spotifyLinkFirst").keyup(async function(){
5631     const v = $(this).val()
5632     if(v.includes('spotify:user:spotify')) {
5633       const correct = v.split('user:spotify:')[1]
5634       console.log(correct, 'BNER')
5635       $(this).val(correct)
5636       return
5637     }
5638     if(v.includes("spotify:") || v.includes("https://open.spotify.com/")){
5639       const data = await trackUrl(v)
5640       if(!data || !data.status) {
5641         $(this).parent().addClass("error")
5642         // $(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>`)
5643         $("#personalizeBtnSpotify .btn").attr("disabled", true)
5644         return
5645       }
5646       $(this).parent().removeClass("error")
5647       // $(this).parent().remove("txt-error")
5648       $("#personalizeBtnSpotify .btn").attr("disabled", false)
5649     } else {
5650       $("#personalizeBtnSpotify .btn").attr("disabled", true)
5651     }
5652   })
5653 
5654   $(".purchaseAddon").delegate(".next-addon", "click", function(){
5655     const parent = $(this).parents(".purchaseAddon")
5656     const next = parent.next(".sectionPurchase")
5657     if(next.hasClass("purchaseAddress")) {
5658       if(productType !== '') {
5659         console.log("clarity event " + productType + ' purchaseDelivery')
5660         window.clarity("event", `${productType} purchaseDelivery`)
5661         // window.clarity("set", productType, `purchaseDelivery - ${productDate}`)
5662       }
5663     }
5664     const data = $("#itemAddons").find(".selected")
5665     const length = $(".quantity-cart-46067682607319").val()
5666     const checked = data.length;
5667     if(checked > 0) {
5668       if(length > 0) {
5669         $(".purchaseAddon").addClass("purchaseAddonSpotify")
5670         customSpotify(1, length, 'addon')
5671       } else {
5672         listAddon()
5673       }
5674     } else {
5675       parent.addClass("hide")
5676       next.removeClass("hide")
5677     }
5678   })
5679 
5680   $("#personalizeBtnSpotify .btn").click(async function(){
5681     const isCity = $("#cities[required]")
5682     const isDate = $("#propDeliveryDate[required]")
5683     if((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) {
5684       alert('Please choose Delivery City & Delivery Date')
5685       return
5686     }
5687     const data = await customSpotify(1, 1, 'product')
5688     if(data) {
5689       $("#backgroundPopup").fadeIn("slow");
5690       $(".purchasePopupSpotify").fadeIn("slow");
5691 
5692       if(productType !== '') {
5693         console.log("clarity event " + productType + ' spotify')
5694         window.clarity("event", `${productType} spotify`)
5695         // window.clarity("set", productType, `purchaseDelivery - ${productDate}`)
5696       }
5697     }
5698   })
5699 
5700   function formatBytes(bytes, decimals = 2) {
5701     if (!+bytes) return '0 Bytes'
5702 
5703     const k = 1024
5704     const dm = decimals < 0 ? 0 : decimals
5705     const sizes = ['B', 'KB', 'MB']
5706 
5707     const i = Math.floor(Math.log(bytes) / Math.log(k))
5708 
5709     return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`
5710   }
5711 
5712   async function trackUrl(link){
5713     try {
5714       let trackId = link.split('/').pop().split('?')[0];
5715       let type = ''
5716       if(link.includes("spotify:")) {
5717         const uri = link.split('spotify:')[1]
5718         trackId = uri.split(':')[1]
5719         type = uri.split(':')[0] + 's'
5720       } else {
5721         if(link.match('track')){
5722           type = 'tracks'
5723         } else if(link.match('playlist')) {
5724           type = 'playlists'
5725         } else if(link.match('artist')) {
5726           type = 'artists'
5727         } else if(link.match('album')) {
5728           type = 'albums'
5729         }
5730       }
5731       console.log(`${host}/api/spotify/${type}/${trackId}`)
5732       const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`)
5733       console.log(data, 'DATA')
5734       const song = data?.data?.name
5735       const artist = data?.data?.artist
5736       return {
5737         song, artist, type, trackId, status: data.status
5738       }
5739     } catch(err) {
5740       console.log(err)
5741     }
5742   }
5743 
5744   $(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function(){
5745     const parent = $(this).parents("[data-index]")
5746     const preview = parent.find(".previewImage")
5747     const file = $(this)[0].files[0];
5748     if (file) {
5749         const reader = new FileReader();
5750         reader.onload = async function(e) {
5751           parent.find(".uploadResult label").hide()
5752           parent.find(".uploadedResult").remove()
5753           parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between">
5754           <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>
5755           <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;">
5755<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
5756   <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 />
5757 </svg>
5758 </span></div></div>`)
5759           parent.find(".frameImageUploaded svg").hide()
5760           parent.find(".frameImage").addClass("uploaded")
5761           preview.attr("src", e.target.result);
5762           preview.show();
5763           let formData = new FormData(); 
5764           formData.append("file", file);
5765           const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, {
5766             method: "POST", 
5767             body: formData
5768           })
5769           const result = await response.json();
5770           if(result){
5771             parent.find(".resultPhotoSpotify").val(result.url)
5772           }
5773         }
5774         
5775         reader.readAsDataURL(file);
5776     } else {
5777         preview.hide();
5778     }
5779   });
5780 
5781   $(".spotifyAddons").delegate(".uploadResult", "click", function(){
5782     $(this).next("input[type=file]").trigger("click")
5783   })
5784 
5785   $(".spotifyAddons").delegate(".changeUpload", "click", function(){
5786     $(this).parents("input[type=file]").trigger("click")
5787   })
5788 
5789   $(".spotifyAddons").delegate(".removeUpload", "click", function(){
5790     const parent = $(this).parents("[data-index]")
5791     parent.find(".uploadPhotoSpotify").val("")
5792     parent.find(".uploadResult label").show()
5793     parent.find(".uploadedResult").remove()
5794     parent.find(".frameImageUploaded svg").show()
5795     parent.find(".previewImage").hide()
5796     parent.find(".frameImage").removeClass("uploaded")
5797   })
5798 
5799   $(".spotifyAddons").delegate("label.checkbox", "click", function(){
5800     const parent = $(this).parents("[data-index]")
5801     parent.toggleClass("checked")
5802   })
5803 
5804   $(".spotifyAddons").delegate(".spotifyLink", "change", async function(){
5805     const parent = $(this).parents("[data-index]")
5806     const link = $(this).val()
5807     const data = await trackUrl(link)
5808 
5809     console.log(data)
5810 
5811     if(data.song) {
5812       parent.find(".spotifySong").val(data.song)
5813       parent.find(".spotifyData").find("h3").text(data.song)
5814     }
5815     if(data.artist) {
5816       parent.find(".spotifyArtist").val(data.artist)
5817       parent.find(".spotifyData").find("p").text(data.artist)
5818     }
5819     parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`)
5820     // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M
5821     if (data.status === true) {
5822       parent.find(".btn-action .btn").attr("disabled", false)
5823     } else {
5824       parent.find(".btn-action .btn").attr("disabled", true)
5825     }
5826   })
5827   
5828   $(".spotifyAddons").delegate(".spotifySong", "keyup", async function(){
5829     const parent = $(this).parents("[data-index]")
5830     const v = $(this).val()
5831     parent.find(".spotifyData h3").text(v)
5832   })
5833 
5834   $(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function(){
5835     const parent = $(this).parents("[data-index]")
5836     const v = $(this).val()
5837     parent.find(".spotifyData p").text(v)
5838   })
5839 
5840   $(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function(){
5841     const parent = $(this).parents("[data-index]")
5842     const length = parent.data("length")
5843     const index = parent.data("index")
5844     const indexNext = Number(index) + 1
5845     customSpotify(indexNext, length, 'addon')
5846   })
5847 
5848   
5849   $(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function(){
5850     const parent = $(this).parents(".purchaseAddon")
5851     const next = parent.next(".sectionPurchase")
5852     parent.addClass("hide")
5853     next.removeClass("hide")
5854     next.find(".purchase-button").show()
5855     listAddon()
5856   })
5857 
5858   $(".spotifyAddons").delegate(".back-spotify", "click", async function(){
5859     const t = $(this).parents("[data-index]")
5860     const parent = $(this).parents(".sectionPurchase")
5861     const current = t.data("index")
5862     const prevCurrent = Number(current) - 1
5863     if(current == 1) {
5864       parent.removeClass("purchaseAddonSpotify")
5865       parent.find(".purchase-button").show()
5866       parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!")
5867       $(".spotifyAddons").empty()
5868       $(".regulerAddons").show()
5869       return
5870     }
5871     t.hide()
5872     t.prev("[data-index]").show()
5873     t.remove()
5874     parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`)
5875   })
5876 
5877   $("#personalizeBtn .btn").click(async function() {
5878     loadPopupPersonalize()
5879   });
5880 
5881   $(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function(){
5882     $(".sectionPurchaseSpotify").hide()
5883     loadPopupPersonalize()
5884   })
5885 
5886   $(".close-purchase-popup").click(function() {
5887       disablePopup();
5888   });
5889   $("#backgroundPopup").click(function() {
5890       // disablePopup();
5891   });
5892 
5893   $("#popupCart .close-purchase-popup").click(function() {
5894       location.reload()
5895   });
5896 
5897   $('#popupCart').on('hide.bs.modal', function (e) {
5898     location.reload()
5899   })
5900 
5901   $(".next-card").click(function(){
5902     const parent = $(this).parents(".sectionPurchase")
5903     const next = parent.next(".sectionPurchase")
5904     parent.addClass("hide")
5905     next.removeClass("hide")
5906   })
5907 
5908   $(".back-purchase-button").click(function(){
5909     const parent = $(this).parents(".sectionPurchase")
5910     const prev = parent.prev(".sectionPurchase")
5911     parent.addClass("hide")
5912     prev.removeClass("hide")
5913   })
5914   
5915   $(document).keypress(function(e) {
5916       if (e.keyCode == 27 && popupStatus == 1) {
5917           disablePopup();
5918       }
5919   });
5920   
5921   const parentImg = $(".case-img-preview")
5922   const parentVid = $(".case-video-preview")
5923   
5924   function readURL(input) {
5925     if (input.files && input.files[0]) {
5926       let reader = new FileReader();
5927 
5928       let type = 'image/jpeg'
5929       const size = input.files[0].size
5930       if(input.files[0].type.match('video/')){
5931         type = 'video/mp4'
5932         if(size > 15728640) {
5933           alert('File size exceeds maximum limit 15 MB')
5934           return
5935         }
5936       } else {
5937         if(size > 5242880) {
5938           alert('File size exceeds maximum limit 5 MB')
5939           return
5940         }
5941       }
5942 
5943       reader.onload = function (e) {
5944         $(".nextBtn").attr("disabled", true)
5945         if(type === 'image/jpeg') {
5946           
5947             $('.placeholder-image').hide();
5948             $('.preview-image').show()
5949             $('.preview-image').attr('src', e.target.result);
5950           
5951         } else {
5952           // parentVid.find(".ajax-loader").show();
5953           $(".steps-card-preview").addClass("loading")
5954         }
5955       }
5956 
5957       
5958 
5959       reader.readAsDataURL(input.files[0]);
5960     }
5961   }
5962 
5963   async function readURLPapan(input) {
5964     if (input.files && input.files[0]) {
5965       let reader = new FileReader();
5966 
5967       reader.onload = function (e) {
5968         $('.btn-upload-papan').siblings('label').hide();
5969         $('.btn-upload-papan img').attr('src', e.target.result);
5970         $('.btn-upload-papan img').show();
5971         $('.svgLogoPapan').hide();
5972       }
5973       
5974       const type = 'image/jpeg'
5975       const name = `logo-8144957800663-${Date.parse(new Date())}`
5976 
5977       let formData = new FormData(); 
5978       formData.append("file", input.files[0]);
5979       const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
5980         method: "POST", 
5981         body: formData
5982       })
5983       const result = await response.json();
5984       if(result) {
5985         const url = result.url
5986         $("[data-properties=papan-logo]").val(url)
5987       }
5988 
5989       reader.readAsDataURL(input.files[0]);
5990     }
5991   }
5992 
5993   async function readURLAddress(input) {
5994     console.log(input, 'readURLAddress')
5995     if (input.files && input.files[0]) {
5996       let reader = new FileReader();
5997 
5998       reader.onload = function (e) {
5999         $('.photo-address').attr('src', e.target.result);
6000         $('.photo-address').show();
6001       }
6002       
6003       const type = 'image/jpeg'
6004       const name = input.files[0].name?.split('.')[0]
6005 
6006       let formData = new FormData(); 
6007       formData.append("file", input.files[0]);
6008       const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
6009         method: "POST", 
6010         body: formData
6011       })
6012       const result = await response.json();
6013 
6014       reader.readAsDataURL(input.files[0]);
6015 
6016       return result
6017     }
6018   }
6019 
6020   
6021 
6022   
6023   async function addToCartUang() {
6024     var productAddOnId1 = 42122101162199;
6025     var productAddOnId2 = 42122101194967;
6026     var product_id = 8144957800663
6027     const data = {
6028       items: [
6029           {
6030               quantity: $("#Quantity-" + productAddOnId1).val(),
6031               id: productAddOnId1,
6032               "properties": { "Time": $("#properties-time").val() }
6033           },
6034           {
6035               quantity: $("#Quantity-" + productAddOnId2).val(),
6036               id: productAddOnId2,
6037               "properties": { "Time": $("#properties-time").val() }
6038           }
6039       ]
6040     }
6041     await fetch(window.Shopify.routes.root + 'cart/add.js', {
6042       method: 'POST',
6043       headers: {
6044         'Content-Type': 'application/json'
6045       },
6046       body: JSON.stringify(data)
6047     })
6048     .then(response => {
6049       console.error('Sukses Buket Uang:', response);
6050       $(".form-flower").submit()
6051     })
6052     .catch((error) => {
6053       console.error('Error Buket Uang:', error);
6054       $(".form-flower").submit()
6055     });
6056   }
6057   
6058   async function saveCard(){
6059     let isCard = true
6060     const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : ''
6061     const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : ''
6062     const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : ''
6063     const foto = $("#properties-photo").val()
6064     const video = $("#properties-video").val()
6065     const data = JSON.stringify({
6066       "id": qrID, 
6067       "penerima": $("#properties-nama-penerima").val(), 
6068       "kartu_penerima": kartu_penerima, 
6069       "kartu_ucapan": kartu_ucapan, 
6070       "kartu_pengirim": kartu_pengirim, 
6071       "foto": foto,
6072       "video": video, 
6073       "productId": "8144957800663", 
6074       "order_name": "", 
6075       "status": "Cart"
6076     })
6077 
6078     
6079   }
6080 
6081   async function additem(items){
6082     try {
6083       let formData = items
6084       if(items?.length) {
6085         formData = {
6086            'items': items
6087         };
6088       }
6089   
6090       const add = await fetch(window.Shopify.routes.root + 'cart/add.js', {
6091         method: 'POST',
6092         headers: {
6093           'Content-Type': 'application/json',
6094           'X-Requested-With':'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */
6095         },
6096         body: JSON.stringify(formData)
6097       })
6098   
6099       const data = await add.json();
6100       return data
6101     } catch(err){
6102       console.log('Error additem', err)
6103     }
6104   }
6105 
6106   async function addons(){
6107     let items = []
6108     $(".addon-item").each(function(){
6109       const p = $(this)
6110       const props = p.next(".propsAddonSpotify")
6111       const id = $(this).data("id")
6112       const quantity = $(this).data("qty")
6113       const propId = $("#properties-time").val()
6114       let properties = {}
6115       if(id === 46067682607319) {
6116         const link = props.find(".spotifyLinkAddon").text()
6117         const photo = props.find(".spotifyFotoAddon").text()
6118         const song = props.find(".spotifySongAddon").text()
6119         const artist = props.find(".spotifyArtistAddon").text()
6120         properties = {
6121           id: propId,
6122           "Spotify Link": link !== '' ? link : '-',
6123           "Spotify Photo": photo !== '' ? photo : '-',
6124           "Spotify Song": song !== '' ? song : '-',
6125           "Spotify Artist": artist !== '' ? artist : '-',
6126           type: 'addon'
6127         }
6128       } else {
6129         properties = { 
6130           "id": propId, 
6131           "type": "addon"
6132         }
6133       }
6134       items.push({
6135         id, 
6136         quantity, 
6137         properties
6138       })
6139     })
6140     return items
6141   }
6142 
6143   async function propItems() {
6144     let props = {}
6145     $("[data-properties]").each(function(e){
6146       let elementType = this.tagName;
6147       const k = $(this).data("properties")
6148       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') {
6149         const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val();
6150         if(v !== '') {
6151           props[k] = v?.replace(/[\s\n]/g, '');
6152         }
6153       }
6154     })
6155     return props
6156   }
6157 
6158   async function showPopupCart(items){
6159     if(productType !== '') {
6160       console.log("clarity event " + productType + ' completeOrder')
6161       window.clarity("event", `${productType} completeOrder`)
6162       // window.clarity("set", productType, `completeOrder - ${productDate}`)
6163     }
6164     $("#popupCart").show()
6165     
6166       $(".propDeliveryCity").text($("#cities").val())
6167       $(".propDeliveryDate").text($("#propDeliveryDate").val())
6168       $(".propDeliveryTime").text($("#propDeliveryTime").val())
6169       $(".propDeliveryName").text($("[data-properties=nama-penerima]").val())
6170       $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val())
6171       $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val())
6172       $(".propDeliveryProv").text($("#province").val())
6173       $(".propDeliveryZip").text($("#zip").val())
6174       
6175     
6176 
6177     const addons = []
6178     if(items && items.length > 0) {
6179       for(let i = 1; i < items.length; i++) {
6180         const spotifyLink = items[i].properties['Spotify Link']
6181         const spotifyPhoto = items[i].properties['Spotify Photo']
6182         const spotifySong = items[i].properties['Spotify Song']
6183         const spotifyArtist = items[i].properties['Spotify Artist']
6184         const price = items[i].price / 100
6185         const props = spotifyLink ? `<div class="propsAddonCart row m-0">
6186                   <div class="col-12 col-lg-2"></div>
6187                   <div class="col-12 col-lg-10">
6188                     <p>
6189                       <span>spotify link</span>
6190                       <span>${spotifyLink}</span>
6191                     </p>
6192                     <p>
6193                       <span>Upload Photo</span>
6194                       <span>${spotifyPhoto}</span>
6195                     </p>
6196                     <p>
6197                       <span>song / playlist name</span>
6198                       <span>${spotifySong}</span>
6199                     </p>
6200                     <p>
6201                       <span>artist name</span>
6202                       <span>${spotifyArtist}</span>
6203                     </p>
6204                   </div>
6205                 </div>` : '';
6206         addons.push(`<div class="row m-0">
6207                   <div class="imgAddonCart col-2">
6208                     <img
6209                       width="43"
6210                       src="${items[i].image}"
6211                       alt=""
6212                     >
6213                   </div>
6214                   <div class="imgAddonTitlePrice col-10 align-self-center">
6215                     <div class="row justify-content-between m-0">
6216                       <div class="col-12 col-lg-8">
6217                         <h5>${items[i].title}</h5>
6218                       </div>
6219                       <div class="col-12 col-lg-4 text-lg-right">
6220                         <span>${rupiah.format(price)}</span>
6221                       </div>
6222                     </div>
6223                   </div>
6224                 </div>${props}`)
6225       }
6226     }
6227     // console.log(addons)
6228     if(addons.length === 0) {
6229       $(".itemAddonCart").hide()
6230       return
6231     }
6232     $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`)
6233     $(".wrapperItemAddonCart").html(addons)
6234   }
6235 
6236   const money = (money) => {
6237       return new Intl.NumberFormat('id-ID',
6238           { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 }
6239       ).format(money);
6240   }
6241 
6242   async function showNoteMoney() {
6243     let qty50k = $("[data-properties='Uang 50k']").val()
6244     let qty100k = $("[data-properties='Uang 100k']").val()
6245     const total50k = Number(qty50k) * 50000
6246     const total100k = Number(qty100k) * 100000
6247     const total_all = total50k + total100k
6248     $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`)
6249     $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`)
6250     $(".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> and contact our <a href="https://terbaru.hasilmacau88.live/" target="_blank" style="text-decoration: underline;
6250 color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`)
6251   }
6252 
6253   async function removeImage() {
6254     const data = JSON.stringify({
6255       "ID": $("#properties-properties-qrId").val(), 
6256       "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 
6257       "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 
6258       "Kartu Ucapan": $("[data-properties=ucapan]").val(), 
6259       "Nama Penerima": $("#properties-nama-penerima").val(), 
6260       "Order Number":"",
6261       "Status":"Product", 
6262       "Foto": "", 
6263       "Media": $("#properties-video").val(), 
6264       "Image": "8144957800663"
6265     })
6266     const remove = updateCard(data)
6267     if(remove) {
6268       $(this).hide()
6269       $("#properties-photo").val("-")
6270       $(".placeholder-image").show()
6271       $(".preview-image").attr("src", "")
6272     }
6273   }
6274 
6275   async function removeVideo() {
6276     const data = JSON.stringify({
6277       "ID": $("#properties-properties-qrId").val(), 
6278       "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 
6279       "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 
6280       "Kartu Ucapan": $("[data-properties=ucapan]").val(), 
6281       "Nama Penerima": $("#properties-nama-penerima").val(), 
6282       "Order Number":"",
6283       "Status":"Product", 
6284       "Foto": $("#properties-photo").val(), 
6285       "Media": "", 
6286       "Image": "8144957800663"
6287     })
6288     const remove = updateCard(data)
6289     if(remove) {
6290       $("#properties-video").val("-")
6291       $(this).find("img").hide()
6292       $(this).hide()
6293       $(this).prev("p").text("Add video to make it more special (optional)")
6294       $("#label-input-video").show()
6295       $("#label-input-video span").text("Upload Video")
6296       $(".case-video-preview p span").remove()
6297     }
6298   }
6299 
6300   async function loadItemOccasion(t, occasion) {
6301     const name = occasion?.replace('greeting-card-', '')
6302     $("#kartu-ucapan").val("")
6303     $("[data-occassion]").removeClass("selected")
6304     $("[data-properties=ucapan]").val("")
6305     $("#save-card").attr("disabled", true)
6306     t.addClass("selected")
6307     $("#show_note").attr("data-card-occassion", name)
6308     $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status){
6309         const products = data.products
6310         const html = []
6311         for(let i = 0; i < products.length; i++) {
6312             const id = products[i].id
6313             const variantId = products[i].variants[0].id
6314             const img = products[i].images[0].src
6315             const title = products[i].title
6316             const price = products[i].variants[0].price
6317             const qty = products[i].variants[0].inventory_quantity
6318             const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}>
6319                 <label for="card-${variantId}"></label>
6320                     <div class="card-image">
6321                         <img src="${img}" alt="${title}" width="" height="" />
6322                     </div>
6323                     <div class="card-meta text-center">
6324                         <h5>${title}</h5>
6325                         <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p>
6326                         <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}">
6327                     </div>
6328                 </div>`
6329             html.push(body)
6330         }
6331         const withoutCard = `<div class="item-card item-without-card">
6332                 <label for="card-0"></label>
6333                     <div class="card-image">
6334                         <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" />
6335                     </div>
6336                     <div class="card-meta text-center">
6337                         <h5>
6337Send without a greeting card</h5>
6338                         <input id="card-0" type="radio" name="id" value="" data-price="">
6339                     </div>
6340                 </div>`
6341         $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join(""))
6342     });
6343   }
6344         
6345   $(document).ready(function(){
6346 
6347     // Observer to auto-trigger addon loading when addon section becomes visible
6348     const addonObserver = new MutationObserver(function(mutations) {
6349       mutations.forEach(function(mutation) {
6350         const target = $(mutation.target)
6351         if(target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') {
6352           if(!target.hasClass('hide')) {
6353             // Addon section just became visible, ensure items are loaded
6354             setTimeout(function() {
6355               if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6356                 console.log("Auto-triggering addon load...")
6357                 $("[data-addon=upsell-all]").trigger("click")
6358               }
6359             }, 150)
6360           }
6361         }
6362       })
6363     })
6364     
6365     // Start observing addon section
6366     const addonSection = document.querySelector('.purchaseAddon')
6367     if(addonSection) {
6368       addonObserver.observe(addonSection, { 
6369         attributes: true, 
6370         attributeFilter: ['class'] 
6371       })
6372     }
6373 
6374     $(".purchasePopup").delegate("#addtocart-card", "click", async function(){
6375     
6376     $(this).find("span").addClass("loading")
6377     let isValid = true
6378     $(".formAddressPurchase [required]").each(function(){
6379       const t = $(this)
6380       const input = t.val()
6381       const p = t.parent()
6382       if(input === '') {
6383         p.addClass("error")
6384         isValid = false
6385       }
6386     })
6387 
6388     if(!isValid) {
6389       $(this).find("span").removeClass("loading")
6390       return
6391     }
6392     
6393     let items = []
6394     const mainProps = {
6395       
6396         "Delivery Date": $("#propDeliveryDate").val(),
6397         "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-' ,
6398         "Kota Pengiriman": $("#cities").val(),
6399         "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-' ,
6400         "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-' ,
6401         "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-' ,
6402         "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-' ,
6403       
6404       
6405         "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-' ,
6406         "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-' ,
6407         "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-' ,
6408         "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-' ,
6409         "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-' ,
6410       
6411       
6412       "Province": $("#province").val() !== '' ? $("#province").val() : '-' ,
6413       "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-' ,
6414       "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-' ,
6415       "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-' ,
6416       "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-',
6417       "type": 'product'
6418     }
6419     const props = await propItems()
6420     properties = {...mainProps, ...props };
6421     const id = $("#productSelect").find('option:selected').val()
6422     console.log(id, 'main ID')
6423     const mainItem = {
6424       id: Number(id),
6425       quantity: 1,
6426       properties
6427     }
6428     items.push(mainItem)
6429     const cardId = $("#itemCards").find(".selected input").val()
6430     const cardItem = {
6431       id: Number(cardId),
6432       quantity: 1,
6433       properties: { "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', type: 'card' }
6434     }
6435     console.log(cardId, 'cardId')
6436     if(cardId) {
6437       items.push(cardItem)
6438     }
6439     const addon = await addons()
6440     if(addon) {
6441       for(let i = 0;
6441 i < addon.length; i++){
6442         items.push({
6443           id: addon[i].id,
6444           quantity: addon[i].quantity,
6445           properties: addon[i].properties
6446         })
6447       }
6448     }
6449     const addItems = await additem(items)
6450     console.log(addItems.items, 'add items')
6451     if(addItems) {
6452       $(this).find("span").removeClass("loading")
6453       disablePopup()
6454       showPopupCart(addItems.items)
6455       
6456       localStorage.setItem("items", JSON.stringify(addItems.items))
6457     }
6458   })
6459   
6460   $("#addtocart-cart .btn").click(async function(){
6461     const id = $("#productSelect").find('option:selected').val()
6462     const mainProps = {
6463       id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 
6464       type: 'product'
6465     }
6466     const props = await propItems()
6467     const properties = { ...mainProps, ...props };
6468     const items = {
6469       id: Number(id),
6470       quantity: 1,
6471       properties
6472     }
6473     const addItems = await additem(items)
6474     if(addItems) {
6475       showPopupCart(addItems.items)
6476       localStorage.setItem("items", JSON.stringify(addItems))
6477     }
6478   })
6479 
6480   $(".formAddressPurchase [required]").change(function(){
6481     const t = $(this)
6482     const p = t.parent()
6483     const v = t.val()
6484     if(v !== '') {
6485       p.removeClass("error")
6486     }
6487   })
6488 
6489   $("#save-card").click(async function(){
6490     const parent = $(this).parents(".sectionPurchase")
6491     const next = parent.next(".sectionPurchase")
6492     $(this).find("span").addClass("loading")
6493     const card = await saveCard()
6494     console.log(card, 'ssaveCCC')
6495     if(card?.status === 200 || card?.status === 201) {
6496       $(".scanCard").removeClass("hide")
6497       $(this).find("span").removeClass("loading")
6498       parent.addClass("hide")
6499       next.removeClass("hide")
6500       if(next.hasClass("purchaseAddon")) {
6501         $("[data-addon=upsell-all]").click()
6502         console.log("clarity event addons")
6503         window.clarity("event", `${productType} add-ons`)
6504         // Ensure addon items are loaded when entering addon popup
6505         setTimeout(function() {
6506           if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6507             $("[data-addon=upsell-all]").trigger("click")
6508           }
6509         }, 100)
6510       }
6511       if(next.hasClass("purchaseAddress")) {
6512         $("#zip").select2()
6513       }
6514     }
6515   })
6516 
6517   $("#skip-card").click(async function(){
6518     $("#greetingCard [data-properties]").val("")
6519     $("#properties-photo").val("")
6520     $("#properties-video").val("")
6521     const parent = $(this).parents(".sectionPurchase")
6522     const next = parent.next(".sectionPurchase")
6523     parent.addClass("hide")
6524     next.removeClass("hide")
6525     // $("#itemCards").html("")
6526     removeImage()
6527     removeVideo()
6528     if(next.hasClass("purchaseAddon")) {
6529       $("[data-addon='upsell-all']").click()
6530       console.log("clarity event addons")
6531       window.clarity("event", `${productType} add-ons`)
6532       // Ensure addon items are loaded when entering addon popup
6533       setTimeout(function() {
6534         if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6535           $("[data-addon='upsell-all']").trigger("click")
6536         }
6537       }, 100)
6538     }
6539     if(next.hasClass("purchaseAddress")) {
6540       $("#zip").select2()
6541     }
6542   })
6543 
6544   $("#msgCard").click(async function(){
6545       $(this).parent().addClass("loading")
6546       let occasion = $(".selected[data-occassion]").data("occassion")
6547       occasion = occasion?.replace("greeting-card-", "")
6548       const { data } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`);
6549       const d = data?.data
6550       for(let i = 0; i < d.length; i++) {
6551         const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1);
6552         const greeting = d[num]?.Greeting
6553         $(".greetingCard textarea").val(greeting)
6554         $(this).parent().removeClass("loading")
6555       }
6556       $("#save-card").attr("disabled", false)
6557     })
6558 
6559   $(".sectionPurchaseBoard .next-purchase-button").click(function(){
6560     const parent = $(this).parents(".sectionPurchase")
6561     const next = parent.next(".sectionPurchase")
6562     parent.addClass("hide")
6563     next.removeClass("hide")
6564   })
6565 
6566   $("#editCard").click(function(){
6567     $(".custom-card").show()
6568     $(".preview-card").hide()
6569   })
6570 
6571   $("#first_name, #last_name").change(function(){
6572     const v = $(this).val()
6573     const first_name = $("#first_name").val()
6574     const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : ''
6575     $("[data-properties=nama-penerima]").val(first_name+last_name)
6576   })
6577 
6578   $("[data-occassion]").click(function(){
6579       const t = $(this)
6580       const p = t.parents(".sectionPurchase")
6581       // $(".greetingCard").addClass("disabled")
6582       const occasion = t.data("occassion")
6583       loadItemOccasion(t, occasion)
6584   })
6585 
6586   $("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function(){
6587       const id = $(this).parent(".item-card").data("id")
6588       const t = $(this).parent(".item-card")
6589       const target = t.find("input")
6590       const v = $('.item-card input[type="radio"]:checked').val();
6591       $("#itemCards .item-card").removeClass("selected")
6592       t.addClass("selected")
6593       $("#itemCards .item-card").find("input").attr("name", "")
6594       if(target.length > 0) {
6595           target.attr("name", "id[]")
6596           $("#properties-card").val(id)
6597           $(".greetingCard").removeClass("disabled")
6598           $("#skip-card").attr("disabled", false)
6599       } else {
6600           $("#properties-card").val("")
6601       }
6602   })
6603 
6604   $("#itemCards").delegate(".item-without-card label", "click", function(){
6605     const parent = $(this).parents(".sectionPurchase")
6606     const next = parent.next(".sectionPurchase")
6607     $(".greetingCard").addClass("disabled")
6608     parent.addClass("hide")
6609     next.removeClass("hide")
6610     $("[data-addon=upsell-all]").click()
6611     $("#zip").select2()
6612   })
6613 
6614   $("[data-properties=ucapan]").keyup(function(){
6615     const v = $(this).val()
6616     const p = $(this).parents(".sectionPurchase")
6617     $(".purchaseAddress").find(".greetingCard textarea").val(v)
6618     if(v.length > 3) {
6619       p.find(".next-purchase-button").attr("disabled", false)
6620     } else {
6621       p.find(".next-purchase-button").attr("disabled", true)
6622     }
6623   })
6624 
6625   $("[data-properties=penerima]").keyup(function(){
6626     const v = $(this).val()
6627     $(".purchaseAddress").find("[data-properties=penerima]").val(v)
6628   })
6629 
6630   $("[data-properties=pengirim]").keyup(function(){
6631     const v = $(this).val()
6632     $(".purchaseAddress").find("[data-properties=pengirim]").val(v)
6633   })
6634 
6635   $(document).click(function(e){
6636 
6637      if($(e.target).closest('.wrapperPopupCart').length != 0) return false;
6638      // $('#popupCart').fadeOut('slow');
6639     // location.reload()
6640   });
6641 
6642   $(".toggleAddonCart").click(function(){
6643     const p = $(this).parent(".itemAddonCart")
6644     p.toggleClass("open")
6645   })
6646 
6647   $(".btnViewCart").click(function(){
6648     window.location.href = "https://outerbloom.com/cart";
6649   })
6650 
6651   $(".btnViewCheckout").click(async function(){
6652     $(this).find("span").addClass("loading")
6653     let zip = $("#zip").val()
6654     const first_name = $("#first_name").val()
6655     const last_name = $("#last_name").val()
6656     const company = $("#company").val() !== '' ? $("#company").val() : ''
6657     const address1 = $("#delivery_address").val()
6658     const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : ''
6659     zip = zip && zip !== '' ? zip?.split(' - ')[0] : ''
6660     const phone = $("#recipient_number").val()
6661     const city = $("#cities").val()
6662     const province = $("#province").val()
6663     const country = 'Indonesia'
6664     const ver = Date.parse(new Date())
6665     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}`
6666 
6667     const clear = await fetch(`/cart/clear.js`, {method: 'POST'})
6668     if(clear.status === 200) {
6669       const savedItem = window.localStorage.getItem("items");
6670       const items = JSON.parse(savedItem)
6671       const addItems = await additem(items)
6672       console.log(addItems, 'new addItems')
6673       if(addItems) {
6674         window.location.href = `https://outerbloom.com/checkout?${params}`;
6675       }
6676     }
6677   })
6678 
6679   $(".btnContinueShopping").click(function(){
6680     window.location.href = "https://outerbloom.com/";
6681   })
6682 
6683     if (isIOS) {
6684       $(".empty-state-card").click(function(){
6685         $("#input-foto").trigger("click")
6686       })
6687       $(".btn-upload-image").click(function(){
6688         $("#input-foto").trigger("click")
6689       })
6690       $("[for=input-video]").click(function(){
6691         $("#input-video").trigger("click")
6692       })
6693       $(".btn-upload-papan").click(function(){
6694         $("#logoPapan").trigger("click")
6695       })
6696     }
6697   
6698     $("[data-properties]").each(function(){
6699       const select = $(this).parents(".form-group").find("select")
6700       $(this).change(function(){
6701         const name = $(this).data("properties")
6702         const v = $(this).val()
6703         if (name == 'telepon-penerima') {
6704           let phone = v.replace(/[^0-9]/g, '')
6705           $(this).val(phone);
6706           $("#properties-telepon-penerima").val(phone)
6707           $('.iti__search-input').val('-') 
6708         } else {
6709           $("#properties-" + name).val(v)
6710         }
6711       })
6712       select.on("change", function(){
6713         const name = $(this).data("properties")
6714         const v = $(this).val()
6715         $("#properties-" + name).val(v)
6716       })
6717     })
6718 
6719     $("#show_note").click(function(){
6720       nameq = $("#properties-nama-penerima").val()
6721       dear = $("#properties-kartu-nama-penerima").val()
6722       card = $("[data-properties=ucapan]").val()
6723       sender = $("#properties-kartu-nama-pengirim").val()
6724       photo = $("#properties-photo").val()
6725       video = $("#properties-video").val()
6726       updateCard(nameq, dear, card, sender, photo, video, status)
6727     })
6728 
6729     $(".remove-image").click(function(e){
6730       e.preventDefault()
6731       $(this).find("img").show()
6732       removeImage()
6733     })
6734 
6735     $(".remove-media").click(function(e){
6736       e.preventDefault()
6737       $(this).find("img").show()
6738       removeVideo()
6739     })
6740 
6741     
6742 
6743     $("[data-delivery_method]").click(function(e){
6744       e.preventDefault()
6745       const t = $(this)
6746       const data = t.data("delivery_method")
6747       $("[data-delivery_method]").removeClass("selected")
6748       t.addClass("selected")
6749       $("#cities").val("")
6750       $("#properties-delivery-date").val("-")
6751       $("#deliveryDate button").removeClass("selected")
6752       $("#full-date").val("Full Calendar →")
6753       $("#propDeliveryDate").val("")
6754       const step3 = $("#step-3")
6755       if(data.match('PickUp')) {
6756         $(".selfpickup-point").show()
6757         step3.find("[data-finished=false]").hide()
6758         $("#panel-4").hide()
6759         step3.find("[data-finished=true]").show()
6760         $("#cities").attr("required", false)
6761         $("#form-group-city").hide()
6762         $("#row-delivery-time").hide()
6763         $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-")
6764         $("#propDeliveryTime").attr("required", false)
6765         // $("#deliveryDate").find("button:first-child").addClass("stop")
6766         $(".form-selfpickup").show()
6767         $(".form-delivery").hide()
6768         $(".form-delivery").find("input, textarea, select").val("")
6769         $(".form-delivery").find("input, textarea, select").attr("required", false)
6770         $("#properties-shipping").val("0")
6771         $("#noteDeliveryDate").hide()
6772         $(".form-delivery .form-control").attr("required", false)
6773         $("#stepNav4").hide()
6774         
6775         $("#deliveryDate").find("button:nth-child(1)").addClass("stop")
6776         
6777         
6778         
6779         if(timeOfDay >= 16.01){
6780           $("#deliveryDate").find("button:nth-child(2)").addClass("stop")
6781         }
6782       } else {
6783         
6784         
6785         $("#deliveryDate").find("button:nth-child(1)").removeClass("stop")
6786         step3.find("[data-finished=false]").show()
6787         $("#panel-4").show()
6788         step3.find("[data-finished=true]").hide()
6789         $("#cities").attr("required", true)
6790         $(".selfpickup-point").hide()
6791         $("#form-group-city").show()
6792         $("#cities").val('').trigger('change');
6793         $("#properties-kota-pengiriman").val("-")
6794         
6795         $("#row-delivery-date, #row-delivery-time").show()
6796         $("#propDeliveryDate, #propDeliveryTime").attr("required", true)
6797         $("#deliveryDate").find("button").removeClass("stop")
6798         $(".form-selfpickup").hide()
6799         $(".form-delivery").show()
6800         $(".form-delivery").find("input, textarea, select").attr("required", true)
6801         $(".form-delivery [data-properties]").attr("readonly", false)
6802         $("#properties-kodepos").val("-")
6803         $("#properties-alamat-penerima").val("-")
6804         $(".form-delivery .form-control").attr("required", true)
6805         $(this).parents(".setup-content").attr("id", "step-1")
6806         
6807         $("#stepNav4").show()
6808       }
6809     })
6810 
6811     $("[name=selfpickup]").click(function(){
6812         const p = $(this).parents(".row-pickup")
6813         const pickupCity = $("input[name='selfpickup']:checked").val();
6814         const pickupAddress = $("input[name='selfpickup']:checked").data("address");
6815         const pickupZip = $("input[name='selfpickup']:checked").data("zip");
6816 
6817         $(".row-pickup").removeClass("selected")
6818         p.addClass("selected")
6819         
6820         $("#properties-kota-pengiriman").val(pickupCity)
6821         $("#province").val("Jakarta")
6822         $("#properties-alamat-penerima").val(pickupAddress)
6823         $("#properties-kodepos").val(pickupZip)
6824     })
6825 
6826     $("#cities").change(function(e){
6827       e.preventDefault()
6828       $(this).parent(".row").find("p.error").remove()
6829       $("#full-date").val("Full Calendar")
6830       $("#deliveryDate, #deliveryDateFull label ").show()
6831       $("#deliveryDateFull").removeClass("filled")
6832       $(".btnChangeDeliveryDate").addClass("hide")
6833       $("#full-date").prop('disabled', false);
6834       $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success")
6835       $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true)
6836       const step3 = $("#step-3")
6837       $("#cityNote").remove()
6838       $("#noteDeliveryDate").hide()
6839       $("#noteDeliveryDate").empty()
6840       let v = $(this).val()
6841       let v2 = $('option:selected', this).attr('data-city');
6842       let v3 = $('option:selected', this).attr('data-province');
6843       let price = $('option:selected', this).attr('data-price');
6844       $("#country").val(v)
6845       $("#properties-kota-pengiriman").val(v)
6846       $("#properties-shipping").val(price)
6847       $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected")
6848       $("#properties-delivery-date, #properties-delivery-time").val("-")
6849       $("#propDeliveryDate, #propDeliveryTime").val("")
6850       let note = $('option:selected', this).attr('data-note');
6851       if(v === 'Kota Lainnya') {
6852         $("#noteDeliveryDate").show()
6853         $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.")
6854         $("#zip").attr("required", false)
6855         $("#zip").hide()
6856         $("#propDeliveryDate, #propDeliveryTime").attr("required", false)
6857         $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-")
6858         $("#row-delivery-date, #row-delivery-time").hide()
6859         $("#properties-shipping").val("")
6860         // $(this).parents(".setup-content").attr("id", "step-2")
6861         
6862       } else {
6863         $("#noteDeliveryDate").hide()
6864         $("#zip").attr("required", true)
6865         $("#zip").show()
6866         $("#row-delivery-date, #row-delivery-time").show()
6867         $("#propDeliveryDate, #propDeliveryTime").attr("required", true)
6868         $("#deliveryDate").find("button").removeClass("stop")
6869         // $(this).parents(".setup-content").attr("id", "step-1")
6870         
6871       }
6872       
6873       
6874       
6875       // if(v !== 'Jakarta') {
6876       //   $("[data-type=upsell]").hide()
6877       // } else {
6878       //   $("[data-type=upsell]").show()
6879       // }
6880       // $('.collection-addons')[0].swiper.update();
6881       
6882       
6883       getProvince(v)
6884       $("#zip").html(`<option value="">Choose Postal Code</option>`)
6885       renderZip(v, v2, v3)
6886       
6887       disabledSameDay()
6888       
6889 
6890       if(v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') {
6891         
6892         $("#cardOccasion, #navAddon, .collection-addons").hide()
6893         
6894         $("[data-addon=giftcard]").show()
6895         $("[data-addon=giftcard]").click()
6896         $("#itemAddons").show()
6897         $("#flower-step").addClass("nonjadetabek")
6898       } else {
6899         $("#cardOccasion, #navAddon, .collection-addons").show()
6900         $("[data-addon=all]").click()
6901         $("#flower-step").removeClass("nonjadetabek")
6902       }
6903       
6904         if(v !== '') {
6905           $("#personalizeBtn .btn").attr("disabled", false)
6906         } else {
6907           $("#personalizeBtn .btn").attr("disabled", true)
6908         }
6909       
6910     })
6911 
6912     $("#zip").change(function(e){
6913       let v = $(this).val()
6914       var city = $("#cities").find('option:selected');
6915       $("#properties-kodepos").val(v)
6916       if(city === 'Kota Lainnya') {
6917         $(this).attr("required", true)
6918         $("#recipient-address").val("")
6919       }
6920     })
6921 
6922     
6923       var minDate = +7
6924       
6925     
6926 
6927     $("#full-date").datepicker({
6928       minDate,
6929       dateFormat: 'Mdd_yy', //Nop22_2021,
6930       
6931       beforeShowDay: disabledays,
6932       
6933       onSelect: function (date) {
6934         $("#deliveryDate, #deliveryDateFull label ").hide()
6935         $("#deliveryDateFull").addClass("filled")
6936         $(".btnChangeDeliveryDate").removeClass("hide")
6937         $("#full-date").prop('disabled', true);
6938         $('#propDeliveryDate, #properties-delivery-date').val('Kirim_'+date);
6939         $(".date-full").addClass("selected")
6940         $(".date-single, .calendar-group").removeClass("selected")
6941         $("#propDeliveryTime").val('')
6942         $("#properties-delivery-time").val('-')
6943         $(".time-single").removeClass("selected")
6944         
6945         
6946       }
6947     });
6948 
6949     $(".btnChangeDeliveryDate").click(function(){
6950         $("#deliveryDate, #deliveryDateFull label ").show()
6951         $("#deliveryDateFull").removeClass("filled")
6952         $(".btnChangeDeliveryDate").addClass("hide")
6953         $("#full-date").prop('disabled', false);
6954     })
6955   
6956     $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e){
6957       e.preventDefault()
6958       $(this).parents("#row-delivery-date").find("p.error").remove()
6959       const fulldate = $(this).data("fulldate")
6960       const day = $(this).data("day")
6961       const date = $(this).data("date")
6962       const month = $(this).data("month")
6963       const year = $(this).data("year")
6964       const off_pagi = $(this).data("offpagi")
6965       const off_siang = $(this).data("offsiang")
6966       const off_Malam = $(this).data("offMalam")
6967       $(".calendarbutton").removeClass("selected")
6968       $(this).addClass("selected")
6969       $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`)
6970       $("#propDeliveryTime").val('')
6971       $("#properties-delivery-time").val('-')
6972       $(".calendarbutton2").removeClass("selected")
6973       $("#full-date").val("Full Calendar")
6974 
6975       
6976       if(off_pagi && timeOfDay > off_pagi) {
6977         $("[data-time=Morning]").attr("disabled", true)
6978       } else {
6979         $("[data-time=Morning]").attr("disabled", false)
6980       }
6981       if(off_siang && timeOfDay > off_siang) {
6982         $("[data-time=Afternoon]").attr("disabled", true)
6983       } else {
6984         $("[data-time=Afternoon]").attr("disabled", false)
6985       }
6986       
6987 
6988       
6989     })
6990     
6991     if(today === 14 && timeOfDay > 17.00) {
6992       $("#deliveryDate button:first-child").attr("disabled", true)
6993     }
6994   
6995     $("#deliveryTime").delegate(".calendarbutton2", "click", function(e){
6996       e.preventDefault()
6997       const time = $(this).data("time")
6998       const date = $("#propDeliveryDate").val()
6999       if(date == '') {
7000         return alert('Silakan pilih tanggal terlebih dahulu')
7001       }
7002       $(".calendarbutton2").removeClass("selected")
7003       $(this).addClass("selected")
7004       $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`)
7005     })
7006       
7007     $('textarea.has-limit, input.has-limit').keyup(function () {
7008       max = this.getAttribute("maxlength");
7009       let len = $(this).val().length;
7010       let limit = $(this).siblings(".limit");
7011       if (len > max) {
7012         alert('you have reached the limit');
7013       } else {
7014         limit.text(`${len}/${max}`);
7015       }
7016     });
7017     
7018     $("#button-action-step .btn").click(function(){
7019       $(this).find("span").text("Processing...");
7020     });
7021 
7022     $(".finishBtn").on('click', function() {
7023       $(this).addClass("is-adding");
7024       // $(this).click();
7025     });
7026 
7027     $('.setup-panel .nav-item a.btn-success').trigger('click');
7028 
7029     $("#button-action .btn").click(function(){
7030       $("#flower-step").addClass("block");
7031       $("#button-action").hide();
7032     });
7033         
7034     $(".close-how-order").click(function(){
7035       $("#flower-step").removeClass("block");
7036       $("#button-action").show();
7037     });
7038 
7039     $("#input-foto, #input-video").change(function(e){
7040       readURL(this);
7041     });
7042 
7043     $("#logoPapan").change(function(){
7044       readURLPapan(this);
7045     });
7046 
7047     $("#address-upload").change(async function(){
7048       const upload_address = await readURLAddress(this)
7049       if(upload_address) {
7050         const url = upload_address.url
7051         $(".props-address-upload").val(url)
7052         $(".form-address").addClass("address-uploaded")
7053         $(".form-address-upload").addClass("uploaded")
7054 
7055         $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false)
7056       }
7057     })
7058 
7059     $(".address-manualy").click(function(){
7060       $(".form-address-upload").removeClass("uploaded");
7061       $(".photo-address").hide();
7062       $(".form-address").removeClass("address-uploaded")
7063       $("#formAddressPurchase").find(".form-control").attr("required", true)
7064     });
7065 
7066     $(".case-video-preview").delegate(".replace-video", "click", function(){
7067       $("#input-video").trigger("click")
7068     })
7069 
7070     $('.date-single').click(function(e) {
7071       e.preventDefault();
7072       $('.date-single').removeClass('selected');
7073       $('#full-date').removeClass('selected');
7074       $(this).addClass('selected');
7075       $('#full-date').html('Full' + '<br/>' + 'Calendar');
7076     });
7077     $('#full-date').click(function(e){
7078       e.preventDefault();
7079       $('.date-single').removeClass('selected');
7080       $(this).addClass('selected');
7081     });
7082     
7083     // $("tr").each(function(){
7084     //   if($(this).text().match('SKU')) {
7085     //     $(".sku-product").html($(this).parents("table").html())
7086     //   }
7087     // })
7088     
7089     $("#product-image").scroll(function(){
7090       $(".desc-add").each(function(){
7091         const img = $(this).find("img")
7092         const src = img.data("src")
7093         img.attr("src", src)
7094       })
7095     })
7096 
7097     $(".product-fixed").hide()
7098     
7099     let target = $("#personalizeBtn")
7100     
7101 
7102     $(".product-meta").scroll(function() {
7103         if ($(window).scrollTop() >= target.offset().top ) {
7104             $(".product-fixed").addClass("show")
7105         } else {
7106           $(".product-fixed").removeClass("show")
7107         }
7108     });
7109 
7110     $(window).scroll(function() {
7111         if ($(window).scrollTop() >= target.offset().top ) {
7112             $(".product-fixed").addClass("show")
7113         } else {
7114           $(".product-fixed").removeClass("show")
7115         }
7116     });
7117   });
7118 </script>
7118
7119 
7120   
7120<script>
7121     //
7122   </script>
7122
7123 
7124 
7124<script>
7125   $(document).ready(function(){
7126     $('table tr td').each(function(){
7127       var texto = $(this).text();
7128       var nextto = $(this).next("td");
7129       var sku = $("#data-sku").val()
7130       if(texto == 'SKU'){
7131         nextto.text(sku)
7132       }
7133     });
7134     
7135     $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan");
7136     $(".stamped-summary-actions-newreview").text("Tulis Review");
7137     $("#tab-questions").text("Pertanyaan");
7138     
7139     $(".freeship .icon").click(function(){
7140       $(".fs-content").slideToggle();
7141       $(this).parents(".freeship").toggleClass("expand");
7142     });
7143     
7144     var $easyzoom = $('.easyzoom').easyZoom();
7145     // Setup thumbnails example
7146     var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom');
7147     $('.thumbnails').on('click', 'a', function(e) {
7148       var $this = $(this);
7149       e.preventDefault();
7150       // Use EasyZoom's `swap` method
7151       api1.swap($this.data('standard'), $this.attr('href'));
7152     });
7153 
7154     $('#playerID').click(function(){
7155       var videoURL = $('#VdoID').attr('src'),
7156           dataplay = $('#VdoID').attr('data-play');
7157 
7158       //for check autoplay
7159       //if not set autoplay=1
7160       if(dataplay == 0 ){
7161         $('#VdoID').attr('src',videoURL+'?autoplay=1');
7162         $('#VdoID').attr('data-play',1);
7163       }
7164       else{
7165         var videoURL = $('#VdoID').attr('src');
7166         videoURL = videoURL.replace("?autoplay=1", "");
7167         $('#VdoID').prop('src','');
7168         $('#VdoID').prop('src',videoURL);
7169 
7170         $('#VdoID').attr('data-play',0);
7171       }
7172 
7173     });
7174     
7175     $(".product-photo-thumb-video").click(function(e){
7176       e.preventDefault();
7177 
7178       var newEmbed = $(this).attr('href');
7179       $("#featured-image-product").addClass("img-video");
7180       $("#ProductPhotoImg").hide();
7181       $("#featured-image-product .video").show();
7182       $("#featured-image-product iframe").attr('src', newEmbed);
7183       $("#VdoID")[0].src += "&autoplay=1";
7184     });
7185     $(".product-single__thumbnail").click(function(evt){
7186       evt.preventDefault();
7187       $("#featured-image-product").removeClass("img-video");
7188       $("#ProductPhotoImg").show();
7189       $("#featured-image-product .video").hide();
7190       $("#featured-image-product iframe").attr('src', '');
7191     });
7192     
7193     if($('#product-meta .short-desc > div').length >= 1){
7194       //console.log('div detected')
7195       var replacer = $('#product-meta .short-desc > div').contents();
7196       $('#product-meta .short-desc > div').replaceWith(replacer);
7197 
7198       var cAssured =  $('.c-assured').detach();
7199       cAssured.insertAfter('.meta-sds .stock-info');
7200     }
7201 
7202     
7203     
7204     $(".heading-toggle").click(function(){
7205       $(this).parent().toggleClass("open")
7206       
7207     });
7208   });
7209 </script>
7209
7210 
7211 
7212   
7212<script type="application/json" id="ProductJson-Product">
7213         
7214         {"id":8144957800663,"title":"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eKEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses."}
7215   </script>
7215
7216   
7217     
7217<script type="application/json" id="VariantJson-Product">
7218       [
7219         
7220           {
7221              "incoming": false,
7222              "next_incoming_date": null
7223           }
7224         
7225       ]
7226     </script>
7226
7227   
7228 
7229 
7230 
7231 </div>
7232 
7233 
7234 
7234<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
7234
7235 <style>
7236     .stamped-review-header-title,
7237     .stamped-review-header .author,
7238     .stamped-review-content-body,
7239     .stamped-sort-select,
7240     .stamped-review-header .verified-badge[data-type=buyer]:after,
7241     .stamped-review-header-byline,
7242     .stamped-review-reply-body {font-size: 14px!important;font-family: 'Barlow',sans-serif!important;}
7243     .stamped-review {margin-bottom: 0;}
7244     .stamped-review-body {padding-left: 65px;}
7245     .stamped-review:first-child {padding-top: 25px;}
7246     .stamped-review-content {clear: none;}
7247     .stamped-review-reply {margin: 15px 0 0 65px;background: #f2f2f2;border-left: none;}
7248     .stamped-review-reply-body {padding-left: 65px;}
7249     .stamped-review-header .author {text-transform: capitalize;}
7250     .stamped-questions .stamped-review-content {padding-left: 65px;}
7251 
7252     .stamped-pagination {margin: 20px 0 0;}
7253     .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;}
7254     .stamped-pagination li a {color: #121212;padding: 13px 18px;vertical-align: middle;display: block;}
7255     .stamped-pagination li.active a {background-color: #ddd;font-weight: 400;}
7256     .stamped-pagination li:hover a {background: #ddd;}
7257     .stamped-pagination .next {border-right: 1px solid #ccc;}
7258     .stamped-pagination li:first-child {border-top-left-radius: 5px;border-bottom-left-radius: 5px;}
7259     .stamped-pagination li:last-child {border-top-right-radius: 5px;border-bottom-right-radius: 5px;}
7260 
7261     #stamped-pagination-question span.page {display: inline-block;border: 1px solid #ccc;width: 47px;}
7262     #stamped-pagination-question span {font-size: 14px;}
7263     #stamped-pagination-question .page.active {padding: 12px;font-weight: 400;background: #ddd;}
7264     #stamped-pagination-question a, #stamped-pagination-question .page.active {color: #121212;padding: 13px 18px;vertical-align: middle;display: inline-block;}
7265     .stamped-pagination-deco {color: #121212;padding: 13px 18px;width: 47px;vertical-align: middle;display: inline-block;border: 1px solid #ccc;padding: 12px;}
7266     .stamped-pagination-prev, .stamped-pagination-next {position: inherit;}
7267     .stamped-pagination-prev a, .stamped-pagination-next a {width: auto!important;border: 1px solid #ccc;}
7268 
7269     @media (max-width: 480px){
7270       .stamped-review-reply {margin-left: 0!important;}
7271       select.stamped-sort-select {font-size: 13px!important;}
7272     }
7273 
7274   #product-reviews .stamped-summary-ratings, #product-reviews .stamped-summary-actions, .stamped-content {
7275       display: block !important;
7276   }
7277 </style>
7278 
7278<script>
7279     var selectCallback = function(variant, selector) {
7280       timber.productPage({
7281         money_format: "Rp {{amount_no_decimals}}",
7282         variant: variant,
7283         selector: selector
7284       });
7285     };
7286 
7287     jQuery(function($) {
7288       new Shopify.OptionSelectors('productSelect', {
7289         product:
7290 
7291 
7292 
7293 
7294 
7295 {"id":8144957800663,"title":"KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eKEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses."},
7296         onVariantSelected: selectCallback,
7297         enableHistoryState: true
7298       });
7299 
7300       // Add label if only one product option and it isn't 'Title'. Could be 'Size'.
7301       
7302 
7303       // Hide selectors if we only have 1 variant and its title contains 'Default'.
7304       
7305         $('.selector-wrapper').hide();
7306       
7307     });
7308 </script>
7308
7309 
7310 
7311 
7312   
7312<script type="application/ld+json">
7313     {
7314     "@context": "http://schema.org",
7315     "@type": "Product",
7316 "offers": {
7317 "@type": "Offer",
7318 "availability":"https://schema.org/InStock",
7319 "price": 835000,
7320 "priceValidUntil": "05-10-2025",
7321 "priceCurrency": "IDR",
7322 "url": "https://hasilmacau88.com/"
7323 },
7324 "brand": {
7325 "@type": "Brand",
7326 "name": "Outerbloom Florist"
7327 },
7328 "sku": "8144957800663",
7329 "gtin13": "Jawa",
7330 "name": "KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia",
7331 "description": "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.",
7332 "category": "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses.",
7333 "url": "https://hasilmacau88.com/",
7334 "image": {
7335 "@type": "ImageObject",
7336 "url": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426",
7337 "image": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426",
7338 "name": "KEBUNTOTO | Hasil Terbaru Toto Macau Telah Diluncurkan untuk Seluruh Pemain Asia",
7339 "width": 1024,
7340 "height": 1024
7341 }
7342     }
7343   </script>
7343
7344 
7345 
7346 
7347 
7348         
7349 
7349<script id="bss-ltap-hide-price" type="text/javascript" >
7350 !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)}))}
7350)),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)}
7350)),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("sparklinbluewholesale.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()}
7350if("bluebasketb2b.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)}
7350if(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");
7350c&&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&&"sparklinbluewholesale.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
7350-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");
7350i&&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
7350--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
7350opify.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&&"sparklinbluewholesale.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");
7350e.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=
7350o.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");
7350if(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","sparklinbluewholesale.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();
7350let 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("bluebasketb2b.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()}]);
7351 </script>
7351
7352 
7353       </main>
7354       
7355       <div id="shopify-section-newsletter" class="shopify-section"><br>
7356        
7357  <style>
7358/* Section Newsletter */
7359#shopify-section-newsletter {
7360    background: url(https://imgbest.store/images/2026/06/16/KEBUNTOTO-Hasil-Terbaru-Toto-Macau-Telah-Diluncurkan-untuk-Seluruh-Pemain-Asia.png);
7361    background-attachment: fixed;
7362    margin-bottom: 0;
7363}
7364
7365input:-webkit-autofill,
7366input:-webkit-autofill:hover,
7367input:-webkit-autofill:active,
7368input:-webkit-autofill:focus {
7369    -webkit-box-shadow: 0 0 0 50px white inset;
7370    -webkit-text-fill-color: #ffffff;
7371}
7372
7373.section-newsletter {
7374    max-width: 800px;
7375    margin: auto;
7376    padding: 50px 0;
7377}
7378
7379.section-newsletter h2 {
7380    font-weight: 700;
7381    font-size: 24px;
7382}
7383
7384.section-newsletter input[type="email"] {
7385    width: 100%;
7386    text-align: center;
7387    border: none;
7388    border-bottom: 1px solid #ffffff;
7389    font-size: 16px;
7390    color: #757575;
7391    background-color: #eeeeee;
7392}
7393
7394.section-newsletter .row label {
7395    font-size: 14px;
7396    cursor: pointer;
7397}
7398
7399.section-newsletter .radio-inline input {
7400    width: auto;
7401}
7402
7403.section-newsletter .btn {
7404    width: 130px;
7405    border: 1px solid #ffffff;
7406    box-shadow: none;
7407    font-size: 16px;
7408    font-weight: 500;
7409    text-transform: uppercase;
7410}
7411
7412.section-newsletter form {
7413    margin: 30px 0 60px;
7414}
7415
7416.section-newsletter input[type="radio"] {
7417    position: absolute;
7418    width: 1px;
7419    height: 1px;
7420}
7421
7422.section-newsletter [type="radio"]:checked + label,
7423.section-newsletter [type="radio"]:not(:checked) + label {
7424    position: relative;
7425    padding-left: 28px;
7426    cursor: pointer;
7427    line-height: 20px;
7428    display: inline-block;
7429    color: #666;
7430}
7431
7432.section-newsletter [type="radio"]:checked + label:before,
7433.section-newsletter [type="radio"]:not(:checked) + label:before {
7434    content: '';
7435    position: absolute;
7436    left: 0;
7437    top: 0;
7438    width: 18px;
7439    height: 18px;
7440    border: 1px solid #ddd;
7441    border-radius: 100%;
7442    background: #fff;
7443}
7444
7445.section-newsletter [type="radio"]:checked + label:after,
7446.section-newsletter [type="radio"]:not(:checked) + label:after {
7447    content: '';
7448    width: 12px;
7449    height: 12px;
7450    background: #ffffff;
7451    position: absolute;
7452    top: 3px;
7453    left: 3px;
7454    border-radius: 100%;
7455    transition: all 0.2s ease;
7456}
7457
7458.section-newsletter [type="radio"]:not(:checked) + label:after {
7459    opacity: 0;
7460    transform: scale(0);
7461}
7462
7463.opt-newsletter { display: none; }
7464
7465.footer-newsletter p, 
7466.footer-newsletter p a {
7467    color: #757575;
7468}
7469
7470@media (max-width:991px){
7471    .section-newsletter h2 {
7472        font-size: 32px;
7473    }
7474    .section-newsletter input {
7475        width: 300px;
7476        font-size: 14px;
7477    }
7478    .section-newsletter {
7479        padding: 50px 20px;
7480    }
7481}
7482
7483@media (max-width: 480px){
7484    .section-newsletter input[type="email"] {
7485        font-size: 16px;
7486    }
7487}
7488
7489/* Icon Footer */
7490.icon-img-footer {
7491    width: 80px; 
7492    padding: 0px 5px;
7493}
7494
7495@media (min-width: 768px) {
7496    .icon-img-footer {
7497        width: 120px; 
7498    }
7499}
7500
7501@media (min-width: 992px) {
7502    .icon-img-footer {
7503        width: 120px; 
7504    }
7505}
7506
7507/* Tombol Login & Daftar */
7508.button-login-daftar {
7509    display: grid;
7510    grid-template-columns: repeat(2, 1fr);
7511    font-weight: 700;
7512}
7513
7514.button-login-daftar a {
7515    text-align: center;
7516    display: block;
7517}
7518
7519.login,
7520.register {
7521    color: #000000;
7522    padding: 15px 10px;
7523    font-size: 23px;
7524    border: 6px solid #d4d4d4;
7525    /* Gradient horizontal: kiri - tengah - kanan */
7526    background: linear-gradient(to right, #000000 0%, #2bff00 50%, #000000 100%);
7527}
7528
7529.login,
7530.login-button {
7531    background: linear-gradient(to right, #000000 0%, #2bff00 50%, #000000 100%);
7532    border: 6px solid #d4d4d4;
7533}
7534
7535.register,
7536.register-button {
7537    background: linear-gradient(to right, #000000 0%, #2bff00 50%, #000000 100%);
7538    border: 6px solid #d4d4d4;
7539}
7540
7541</style>
7542
7543 
7544 <!-- wp:html -->
7545  
7545<script>
7546         document.addEventListener('DOMContentLoaded',
7547             function(){const faqItems=document.querySelectorAll('.faq-item');
7548             faqItems.forEach(item=>{const question=item.querySelector('.faq-question');
7549             question.addEventListener('click',
7550             ()=>{const isActive=item.classList.contains('active');
7551             faqItems.forEach(otherItem=>{otherItem.classList.remove('active')});
7552             if(!isActive){item.classList.add('active')}})})});
7553         </script>
7553
7554 
7555 
7556             <div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1">
7557             </div>
7558 <div class="faq-section">
7559         <h2>FAQ KEBUNTOTO</h2>
7560 <div class="faq-container">
7561
7562    <div class="faq-item">
7563        <button class="faq-question">
7564            Kapan pemain Asia bisa melihat hasil Toto Macau terbaru di KEBUNTOTO?
7565            <span></span>
7566        </button>
7567        <div class="faq-answer">
7568            <p>
7569                Pemain bisa memantau hasil Toto Macau terbaru melalui KEBUNTOTO saat update sudah tersedia. Informasinya dibuat rapi agar mudah dicek tanpa harus mencari ke banyak tempat.
7570            </p>
7571        </div>
7572    </div>
7573
7574    <div class="faq-item">
7575        <button class="faq-question">
7576            Apa yang membuat hasil Toto Macau di KEBUNTOTO enak dipantau setiap hari?
7577            <span></span>
7578        </button>
7579        <div class="faq-answer">
7580            <p>
7581                Penyajiannya sederhana, jelas, dan tidak membingungkan. Pemain bisa langsung melihat hasil terbaru dengan tampilan yang mudah dibaca, baik dari HP maupun desktop.
7582            </p>
7583        </div>
7584    </div>
7585
7586    <div class="faq-item">
7587        <button class="faq-question">
7588            Apakah KEBUNTOTO cocok untuk pemain yang ingin pantauan cepat?
7589            <span></span>
7590        </button>
7591        <div class="faq-answer">
7592            <p>
7593                Cocok, karena KEBUNTOTO menghadirkan akses yang praktis untuk melihat update hasil Toto Macau. Pemain bisa lebih mudah mengikuti perkembangan terbaru tanpa proses yang ribet.
7594            </p>
7595        </div>
7596    </div>
7597
7598    <div class="faq-item">
7599        <button class="faq-question">
7600            Kenapa hasil Toto Macau untuk pemain Asia perlu disajikan dengan rapi?
7601            <span></span>
7602        </button>
7603        <div class="faq-answer">
7604            <p>
7605                Karena pemain dari berbagai wilayah membutuhkan informasi yang jelas dan mudah dipahami. Dengan data yang tersusun rapi, hasil terbaru bisa lebih cepat dibaca dan tidak bikin bingung.
7606            </p>
7607        </div>
7608    </div>
7609
7610    <div class="faq-item">
7611        <button class="faq-question">
7612            Apa yang bisa didapat pemain dari update hasil Toto Macau di KEBUNTOTO?
7613            <span></span>
7614        </button>
7615        <div class="faq-answer">
7616            <p>
7617                Pemain bisa mendapatkan pantauan hasil terbaru, data yang lebih mudah dibaca, dan akses informasi yang nyaman. Semua dibuat agar pengalaman cek hasil terasa lebih praktis setiap hari.
7618            </p>
7619        </div>
7620    </div>
7621</div>
7622 
7623         </div>
7624 
7625     </div>
7626 
7627 
7628 <div class="overlay overlay-cart"></div>
7629 <div id="CartDrawer" class="drawer drawer--right">
7630   <div class="drawer__header pl-2 pr-2">
7631     <div class="drawer__icon-cart display-table-cell">
7632       <a href="/cart" class="">
7633         <svg class="icon icon-cart" version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" 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.
7633005-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>
7634       </a>
7635     </div>
7636     <div class="drawer__title h4">Keranjang Belanja</div>
7637     <div class="drawer__close js-drawer-close">
7638       <button type="button">
7639         <svg class="icon icon-close" version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="32" height="32" viewBox="0 0 32 32">
7640 <title>icon-close</title>
7641 <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>
7642 </svg>
7643       </button>
7644     </div>
7645   </div>
7646   <div id="CartContainer" class="p-2"></div>
7647 </div>
7648 
7649 
7649<script>
7650       
7651     </script>
7651
7652       
7652<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer></script>
7652
7653       <!-- /snippets/ajax-cart-template.liquid -->
7654 
7655   
7655<script id="CartTemplate" type="text/template">
7656   
7657     <form action="/cart" method="post" novalidate class="cart ajaxcart">
7658       <div class="ajaxcart__inner" {{ cart.item_count }}>
7659         {{#items}}
7660         <div class="ajaxcart__product">
7661           <div class="ajaxcart__row" data-line="{{line}}">
7662             <div class="grid">
7663               <div class="grid__item one-quarter">
7664                 <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a>
7665               </div>
7666               <div class="grid__item three-quarters">
7667                 <p class="d-block mb-3">
7668                   <a class="h4 d-block mb-2" href="{{url}}" class="ajaxcart__product-name">{{name}}</a>
7669                   {{#if variation}}
7670                     <span class="ajaxcart__product-meta p">{{variation}}</span>
7671                   {{/if}}
7672                   {{#properties}}
7673                     {{#each this}}
7674                       {{#if this}}
7675                         <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span>
7676                       {{/if}}
7677                     {{/each}}
7678                   {{/properties}}
7679                   
7680                 </p>
7681                 <div class="grid--full display-table">
7682                   <div class="grid__item display-table-cell one-half">
7683                     <div class="ajaxcart__qty">
7684                       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}">
7685                         <svg version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" 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>
7686                         <span class="visually-hidden">Kurangi jumlah barang</span>
7687                       </button>
7688                       <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]*">
7689                       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}">
7690                         <svg version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" 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>
7691                         <span class="visually-hidden">Tambahkan jumlah barang</span>
7692                       </button>
7693                     </div>
7694                   </div>
7695                   <div class="grid__item display-table-cell one-half text-right">
7696                     {{#if discountsApplied}}
7697                       <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small>
7698                       <br><span class="h4">{{{linePrice}}}</span>
7699                     {{else}}
7700                       <span class="h4">{{{linePrice}}}</span>
7701                     {{/if}}
7702                     </div>
7703                   </div>
7704                   {{#if discountsApplied}}
7705                     <div class="grid--full display-table">
7706                       <div class="grid__item text-right">
7707                         {{#each discounts}}
7708                           <small class="ajaxcart-item__discount">{{ this.title }}</small><br>
7709                         {{/each}}
7710                       </div>
7711                     </div>
7712                   {{/if}}
7713                   </div>
7714                 </div>
7715               </div>
7716             </div>
7717           </div>
7718         </div>
7719         {{/items}}
7720       </div>
7721       <div class="ajaxcart__footer">
7722         <div class="grid--full cart-subtotal py-2">
7723             <p>Subtotal</p>
7724             <h3 class="primary">{{{totalPrice}}}</h3>
7725           {{#if totalCartDiscount}}
7726             <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p>
7727           {{/if}}
7728         </div>
7729         
7730         <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a>
7731         
7732         <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p>
7733       </div>
7734     </form>
7735   
7736   </script>
7736
7737   
7737<script id="AjaxQty" type="text/template">
7738   
7739     <div class="ajaxcart__qty">
7740       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}">
7741         <svg version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="24" viewBox="0 0 32 32">
7742             <title>icon-minus</title>
7743             <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>
7744         </svg>
7745         <span class="visually-hidden">Kurangi jumlah barang</span>
7746           </button>
7747               <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*">
7748           <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}">
7749         <svg version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" 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>
7750         <span class="visually-hidden">Tambahkan jumlah barang</span>
7751       </button>
7752     </div>
7753   
7754   </script>
7754
7755   
7755<script id="JsQty" type="text/template">
7756   
7757     <div class="js-qty mx-auto mt-2">
7758       <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}">
7759         <svg version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" 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>
7760         <span class="visually-hidden">Kurangi jumlah barang</span>
7761       </button>
7762       <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}">
7763       <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}">
7764         <svg version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" 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>
7765         <span class="visually-hidden">Tambahkan jumlah barang</span>
7766       </button>
7767     </div>
7768   
7769   </script>
7769
7770 
7771 <style>
7772   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button,
7773   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button,
7774   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button {display: none;}
7775   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input,
7776   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,
7777   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;opacity: 0.5;}
7778   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input,
7779   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,
7780   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;}
7781 </style>
7782       
7782<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51128912329657147331752652452" defer></script>
7782
7783       
7783<script>
7784         jQuery(function($) {
7785           ajaxCart.init({
7786             formSelector: '#AddToCartForm',
7787             cartContainer: '#CartContainer',
7788             addToCartSelector: '#AddToCartXX',
7789             cartCountSelector: '#CartCount, #CartCount2',
7790             cartCostSelector: '#CartCost',
7791             moneyFormat: "Rp {{amount_no_decimals}}"
7792           });
7793           });
7794 
7795           jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) {
7796             // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM
7797             timber.RightDrawer.open();
7798           });
7799       </script>
7799
7800     
7801 
7802 
7803 
7804 <style>
7805   /** Search AutoComplete **/
7806   .resultsearch .ui-menu-item[data-cat="Collection"],
7807   .resultsearch .ui-menu-item[data-cat="Collection"] {display: none;}
7808   .resultsearch .ui-widget.ui-widget-content {
7809     width: 100%;
7810     top: 48px;
7811     border: none;
7812     box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
7813   }
7814   .resultsearch .ui-menu-item {text-align: left;}
7815   .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-focus, .resultsearch .ui-menu .ui-state-active {margin: 0;}.ui-state-active, .ui-widget-content .ui-state-active {background: #f2f2f2;border: none;color: #ffffff;}.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: #f2f2f2;width: 100%;display: block;color: #ffffff;}.ui-autocomplete-category.ui-menu-item[data-cat="Produk"] span {display: none;}
7816   .ui-state-active {
7817     border: none!important;
7818     background-color: #fafafa!important;
7819     color: #000!important;
7820   }
7821   .ui-menu-item a[data-cat="Collection"] {padding: 5px 12px;}
7822   .ui-menu .ui-menu-item {line-height: normal;}
7823 </style>
7824 
7824<script>
7825 $(window).load(function(){
7826 
7827   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;}
7828 
7829   $.widget("custom.catcomplete", $.ui.autocomplete, {
7830     _renderMenu: function (ul, items) {
7831       // have search reults split up in categories
7832       var that = this,
7833           currentCategory = "";
7834       $.each(items, function (index, item) {
7835         if (item.category != currentCategory) {
7836           ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>");
7837           currentCategory = item.category;
7838         }
7839         that._renderItemData(ul, item);
7840       });
7841     }
7842   });
7843 
7844   // higlight searched for term
7845   $.ui.autocomplete.prototype._renderItem = function( ul, item ) {
7846     var term = this.element.val(),
7847         html = item.label.replace( term, "<b>$&</b>" );
7848     return $( "<li>" )
7849     .append(format(item))
7850     .appendTo( ul );
7851   };
7852 
7853 
7854   var data = [
7855       { 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: "Chléa 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: " ", price: " " },{ label: "Craft Sweetbox Newborn", category: "Co
7855llection", 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: " " }
7855,{ 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: " " }
7855,{ 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: " " }
7855,{ 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
7855dal", 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-
7855hampers", 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
7855o-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: " " }
7855,{ 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: " " }
7855,{ 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: " " }
7855,{ 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: " " }
7855,{ 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: " " }
7855,{ 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: " " }
7855,{ 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: " " }
7855,{ 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: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakse
7855s.", category: "Collection", url: "/collections/standing-flower", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. Bali", category: "Collection", url: "/collections/standing-flower-bali", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. Bandung", category: "Collection", url: "/collections/standing-flower-bandung", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. Congratulations", category: "Collection", url: "/collections/standing-flower-congratulations", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. Demak", category: "Collection", url: "/collections/standing-flower-demak", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. Jepara", category: "Collection", url: "/collections/standing-flower-jepara", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. Semarang", category: "Collection", url: "/collections/standing-flower-semarang", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. Sidoarjo", category: "Collection", url: "/collections/standing-flower-sidoarjo", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. Surabaya", category: "Collection", url: "/collections/standing-flower-surabaya", images: " ", price: " " },{ label: "KEBUNTOTO menjadi tempat pantauan hasil Toto Macau terbaru untuk pemain Asia, menyajikan update harian yang jelas, mudah dibaca, dan praktis diakses. 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: "Tisane", 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: " " }
7855,{ 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: " " }
7855,{ 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
7855dal", 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: " " },
7856       { 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" }
7856,{ 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" }
7856,{ label: "majestic blue romance bouquet", category: "Produk", url: "/products/majestic-blue-romance-bouquet", images: "//outerbloom.com/cdn/shop/files/OBVBUN1357_Majestic-Blue-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" }
7857   ];
7858 
7859              
7860         $( ".header-input-search" ).catcomplete({
7861          appendTo: ".searchResult",source: function(request, response) {
7862             var results = $.ui.autocomplete.filter(data, request.term);
7863             var predicate = function () {
7864                 var counter = { Collection: 0, Produk: 0 };
7865             var fn = function(item) {counter[item.category] += 1;return (counter[item.category] <= 5);}
7866             return fn
7867             }();
7868             response(results.filter(predicate));
7869           },
7870           minLength:1,
7871            //results are clickable
7872           select: function( event, ui ) {window.location = ui.item.url;}
7873 });
7874 $( ".header-input-search2" ).catcomplete({
7875         appendTo: ".searchResult2",
7876                    source: function(request, response) {
7877                     var results = $.ui.autocomplete.filter(data, request.term);
7878                     var predicate = function () {
7879                         var counter = { Collection: 0, Produk: 0 };
7880               var fn = function(item) {
7881               counter[item.category] += 1;
7882   return (counter[item.category] <= 5);
7883 }
7884                return fn
7885                }();
7886 response(results.filter(predicate));
7887 },
7888   minLength:1,
7889         //results are clickable
7890         select: function( event, ui ) {
7891           window.location = ui.item.url;
7892         }
7893 });
7894 });
7895 </script>
7895
7896 
7897     
7897<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer></script>
7897
7898 
7898<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer></script>
7898
7899 
7900 
7900<script>
7901   ( function() {
7902     var youtube = document.querySelectorAll( ".youtube" );
7903     for (var i = 0; i < youtube.length; i++) {
7904       var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault_1x.jpg";
7905       var datasource = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg";
7906       var image = new Image();
7907       image.src = source;
7908       image.setAttribute("data-src", datasource);
7909       image.classList.add("swiper-lazy");
7910       image.addEventListener( "load", function() {
7911         youtube[ i ].appendChild( image );
7912       }( i ) );
7913       youtube[i].addEventListener( "click", function() {
7914         var iframe = document.createElement( "iframe" );
7915         iframe.setAttribute( "width", "480" );
7916         iframe.setAttribute( "height", "480" );
7917         iframe.setAttribute( "frameborder", "0" );
7918         iframe.setAttribute( "allowfullscreen", "" );
7919         iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" );
7920         this.innerHTML = "";
7921         this.appendChild( iframe );
7922       } );
7923     };
7924 
7925   } )();
7926 
7927   /* Lazy Load */
7928   const mainLazyLoad = new LazyLoad({threshold:400});
7929   $(document).ready(function(){
7930 
7931     $("selectxxx").addClass("needsclick");
7932     FastClick.attach(document.body);
7933     
7934     var $customSelects = $('.select-search');
7935     $customSelects.select2({
7936       templateResult: function(result, container) {
7937         if (!result.id) {
7938           return result.text;
7939         }
7940         container.className += ' needsclick';
7941         return result.text;
7942       }
7943     });
7944     $customSelects.each(function(index, el){$(el).data('select2').$container.find('*').addClass('needsclick');});
7945     $(document).on('select2:open', () => {
7946       document.querySelector('.select2-search__field').focus();
7947     });
7948     
7949 
7950     $(".overlay").click(function(){
7951       $(".js-drawer-close").click();
7952     });
7953     $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function(){
7954       $("html").toggleClass("nav_open");
7955     });
7956     
7957     $('.swatch-element label').on('click', function(){
7958       var srcImg = $(this).data('src');
7959       $('#thumb-image-product .product-single__thumbnail').each(function(){
7960         if ($(this).attr("href") == srcImg) {
7961           $(this).trigger('click');
7962         }
7963       });
7964     });
7965     var defaultValue = $(".swatch input:checked").val()
7966     
7967     $('#purchaseProduct .swatch [type=radio]').change(function() {
7968       var optionIndex = $(this).closest('.swatch').attr('data-option-index');
7969       var optionValue = $(this).val();
7970       console.log(optionIndex, optionValue)
7971       var value = parseInt(optionValue.split(' ')[0])
7972       $(this)
7973       .closest('#purchaseProduct')
7974       .find('.single-option-selector')
7975       .eq(optionIndex)
7976       .val(optionValue)
7977       .trigger('change');
7978       
7979     });
7980     
7981   });
7982   $(document).ready(function(){
7983     $(".nav-search a").click(function(e){
7984       e.preventDefault();
7985       $(".icon-navsearch").toggle();
7986       $(".icon-navclose").toggle();
7987       $(".site-nav__item > .site-nav__link").toggle();
7988       $(".open-search").toggle();
7989       $(".open-search input").focus();
7990     });
7991     $(".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'>");
7992     if ($(window).width() < 768) {
7993       $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>");
7994       $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>");
7995       $(".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'>");
7996     } else {
7997       $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>");
7998       $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>");
7999       $(".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'>");
8000     }
8001     $(".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'>");
8002     $(".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'>");
8003   });
8004 </script>
8004
8005 
8006 
8007     
8008     
8009     
8010     
8011 
8012     
8012<script type="text/javascript">
8013       var wishlistpage = 0;
8014        
8015        var quickShop_money_format="<span class='money'>"+"Rp {{amount_no_decimals}}"+"</span>";
8016     </script>
8016
8017     
8018       <!-- Remove duplicate wishlist.js reference -->
8019       <style>
8020   .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-content{}.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;filter:alpha(opacity=20);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: #ffffff;}.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: #ffffff;}.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:#ffffff;background:#ffffff;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:none;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)}}
8021 </style>
8022 
8023 <div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog">
8024   <div class="modal-dialog" role="document">
8025     <div class="modal-content">        
8026       <div class="modal-body">Your Wishlist is empty!</div>
8027       <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>          
8028     </div>
8029   </div>
8030 </div> 
8031 
8032 <div class="wishlist-model">
8033   <div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true">
8034     <div class="modal-dialog white-modal">
8035       <div class="modal-content">
8036         <div class="modal-header">
8037           <button type="button" class="close" data-dismiss="modal" aria-label="Close">
8038             <svg class="icon icon-close" version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="32" height="32" viewBox="0 0 32 32">
8039 <title>icon-close</title>
8040 <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>
8041 </svg>
8042           </button>
8043         </div>
8044         <div class="modal-body">
8045           <div class="wishlist-left">
8046             <div class="wishlist-note">
8047               <span class="cirle"><svg version="1.1" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="32" height="32" viewBox="0 0 32 32">
8048 <title>icon-check</title>
8049 <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>
8050 </svg></span>
8051               Product added to <a href="/pages/wish-list">Wishlist</a>
8052             </div>
8053             <div class="wishlist-product">
8054               <div class="product-left">
8055                 <div class="wishlist-image"></div>
8056               </div>
8057               <div class="product-right">
8058                 <div class="wishlist-name"></div>
8059                 <div class="wishlist-price"></div>
8060               </div>
8061             </div>
8062           </div>
8063           <div class="wishlist-right">
8064             <div class="wishlist-cart">
8065               <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data">                  
8066                 <div class="others-bottom">
8067                   <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a>
8068                   <button type="submit" name="add" id="AddToCart" class="btn btn-cta">
8069                     <span id="AddToCartText" class="">Beli Sekarang</span>
8070                   </button>
8071                 </div>
8072                 <div id="wishlist-variants-container" class="variants-wrapper"></div> 
8073                 <div class="quantity-content">
8074                   <label>QTY</label>
8075                   <input type="number" size="5" class="" name="quantity" value="1" />
8076                 </div>
8077               </form> 
8078             </div>
8079           </div>
8080         </div>
8081       </div>
8082     </div>
8083   </div>
8084 </div>
8085 
8086     
8087     <style>
8088        .stamped-badge[data-rating="0.0"]{display: none !Important;}
8089        
8090         div[data-load-type="continue"] ul.stamped-pagination li.next a, div[data-widget-load-type="continue"] ul.stamped-pagination li.next a {
8091           border-radius: 0px;
8092       }
8093           .stamped-review-body {
8094           padding-left: 0px !important;
8095       }
8096           #product-reviews .stamped-header:after {
8097             display:none !Important;
8098           }
8099       #stamped-main-widget .stamped-container, .stamped-badge-caption,#stamped-reviews-widget {
8100           font-family:inherit !important;
8101       }
8102     </style>
8103 
8104     
8105 
8106 <div id='stamped-rewards-init' class='stamped-rewards-init'
8107   data-key-public=''
8108 
8109 ></div>
8110 
8111     
8111<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer></script>
8111
8112     <!-- Remove duplicate jQuery reference and load wishlist script properly -->
8113     
8113<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer></script>
8113
8114 
8115     
8115<script>
8116       function myInit(){ StampedFn.init({ apiKey: 'pubkey-hCS8DHE9QbBHhHN89WXFkuJ0Y3422D', sId: '23462' }); }
8117     </script>
8117
8118     
8118<script async onload="myInit()" type="text/javascript" src="https://cdn1.stamped.io/files/widget.min.js"></script>
8118<style>
8119   .jss59 {
8120     background-color: rgba(0, 0, 0, 0.6);
8121   }
8122   .MuiBackdrop-root {
8123     top: 0;
8124     left: 0;
8125     right: 0;
8126     bottom: 0;
8127     display: flex;
8128     z-index: -1;
8129     position: fixed;
8130     align-items: center;
8131     justify-content: center;
8132     background-color: rgba(0, 0, 0, 0.5);
8133     -webkit-tap-highlight-color: transparent;
8134   }
8135   .MuiDialog-scrollPaper {
8136     display: flex;
8137     align-items: center;
8138     justify-content: center;
8139   }
8140   .MuiDialog-container {
8141     height: 100%;
8142     outline: 0;
8143   }
8144   .MuiPaper-elevation24 {
8145     box-shadow: 0px 11px 15px -7px rgba(0,0,0,0.2), 0px 24px 38px 3px rgba(0,0,0,0.14), 0px 9px 46px 8px rgba(0,0,0,0.12);
8146   }
8147   .MuiDialog-paper {
8148     margin: 32px;
8149     position: relative;
8150     overflow-y: auto;
8151   }
8152   .MuiDialog-paperScrollPaper {
8153     display: flex;
8154     max-height: calc(100% - 64px);
8155     flex-direction: column;
8156   }
8157   .MuiDialog-paperWidthSm {
8158     max-width: 600px;
8159   }
8160   #location-lock-dialog {
8161     top: 20%;
8162     left: 0;
8163     right: 0;
8164     width: 30%;
8165     margin: 0px auto;
8166     display: block;
8167     padding: 30px;
8168     z-index: 99999;
8169     position: fixed;
8170     font-size: 14px;
8171     background: rgb(0, 0, 0);
8172     box-shadow: rgba(11, 11, 12, 0.2) 2px 4px 5px 0px;
8173     text-align: center;
8174     font-family: Roboto, Arial, sans-serif;
8175     line-height: 1;
8176     border-radius: 8px;
8177     -webkit-font-smoothing: subpixel-antialiased;
8178   }
8179   .MuiButtonBase-root {
8180     color: inherit;
8181     border: 0;
8182     cursor: pointer;
8183     margin: 0;
8184     display: inline-flex;
8185     outline: 0;
8186     padding: 0;
8187     position: relative;
8188     align-items: center;
8189     user-select: none;
8190     border-radius: 0;
8191     vertical-align: middle;
8192     -moz-appearance: none;
8193     justify-content: center;
8194     text-decoration: none;
8195     background-color: transparent;
8196     -webkit-appearance: none;
8197     -webkit-tap-highlight-color: transparent;
8198   }
8199   .MuiIconButton-root {
8200     flex: 0 0 auto;
8201     color: rgba(0, 0, 0, 0.54);
8202     padding: 12px;
8203     overflow: visible;
8204     font-size: 1.5rem;
8205     text-align: center;
8206     transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8207     border-radius: 50%;
8208   }
8209   .MuiIconButton-label {
8210     width: 100%;
8211     display: flex;
8212     align-items: inherit;
8213     justify-content: inherit;
8214   }
8215   .MuiSvgIcon-root {
8216     fill: currentColor;
8217     width: 1em;
8218     height: 1em;
8219     display: inline-block;
8220     font-size: 1.5rem;
8221     transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8222     flex-shrink: 0;
8223     user-select: none;
8224   }
8225   .MuiTouchRipple-root {
8226     top: 0;
8227     left: 0;
8228     right: 0;
8229     bottom: 0;
8230     z-index: 0;
8231     overflow: hidden;
8232     position: absolute;
8233     border-radius: inherit;
8234     pointer-events: none;
8235   }
8236   .jss36 {
8237     color: #222222;
8238     font-size: 24px;
8239     font-family: Roboto, Arial, sans-serif;
8240     font-weight: 500;
8241   }
8242   .jss37 {
8243     color: #555555;
8244     padding: 10px 0px 0px;
8245     font-size: 14px;
8246   }
8247   .MuiFormGroup-root {
8248     display: flex;
8249     flex-wrap: wrap;
8250     flex-direction: column;
8251   }
8252   .MuiFormGroup-row {
8253     flex-direction: row;
8254   }
8255   .jss63 {
8256     width: 85%;
8257     margin: 15px auto;
8258     display: flex;
8259     padding: 11px 0px 0px;
8260     justify-content: space-evenly;
8261   }
8262   .MuiFormControlLabel-root {
8263     cursor: pointer;
8264     display: inline-flex;
8265     align-items: center;
8266     margin-left: -11px;
8267     margin-right: 16px;
8268     vertical-align: middle;
8269     -webkit-tap-highlight-color: transparent;
8270   }
8271   .jss70 {
8272     margin: 0;
8273   }
8274   .MuiButtonBase-root {
8275     color: inherit;
8276     border: 0;
8277     cursor: pointer;
8278     margin: 0;
8279     display: inline-flex;
8280     outline: 0;
8281     padding: 0;
8282     position: relative;
8283     align-items: center;
8284     user-select: none;
8285     border-radius: 0;
8286     vertical-align: middle;
8287     -moz-appearance: none;
8288     justify-content: center;
8289     text-decoration: none;
8290     background-color: transparent;
8291     -webkit-appearance: none;
8292     -webkit-tap-highlight-color: transparent;
8293   }
8294   .MuiIconButton-root {
8295     flex: 0 0 auto;
8296     color: rgba(0, 0, 0, 0.54);
8297     padding: 12px;
8298     overflow: visible;
8299     font-size: 1.5rem;
8300     text-align: center;
8301     transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8302     border-radius: 50%;
8303   }
8304   .MuiIconButton-colorSecondary {
8305     color: #f50057;
8306   }
8307   .jss71 {
8308     padding: 9px;
8309   }
8310   .MuiRadio-root {
8311     color: rgba(0, 0, 0, 0.54);
8312   }
8313   .jss64 {
8314     padding: 2px;
8315   }
8316   .MuiRadio-colorSecondary.Mui-checked {
8317     color: #f50057;
8318   }
8319   .MuiIconButton-label {
8320     width: 100%;
8321     display: flex;
8322     align-items: inherit;
8323     justify-content: inherit;
8324   }
8325   .MuiTypography-root {
8326     margin: 0;
8327   }
8328   .MuiTypography-body1 {
8329     font-size: 18px;
8330     font-family: Roboto,sans-serif;
8331     font-weight: 400;
8332     line-height: 1.5;
8333   }
8334   .location-popup_area-block__sp9Ws {
8335     display: -moz-box;
8336     display: flex;
8337     -moz-box-orient: vertical;
8338     -moz-box-direction: normal;
8339     flex-direction: column;
8340     -moz-box-pack: center;
8341     justify-content: center;
8342     position: relative;
8343     margin: 10px 10% 0;
8344   }
8345   .location-popup_pin-search-box__3l5mJ {
8346     width: 100%;
8347     display: -moz-box;
8348     display: flex;
8349     -moz-box-align: center;
8350     align-items: center;
8351   }
8352   .location-popup_place-icon-city__1XAX5, .location-popup_place-icon__jSG0Q {
8353     position: absolute;
8354     z-index: 999;
8355   }
8356   .location-popup_place-icon__jSG0Q {
8357     color: #ffffff;
8358     padding-left: 8px;
8359   }
8360   .location-popup_place-icon__jSG0Q svg {
8361     width: 18px;
8362     height: 18px;
8363   }
8364   .location-popup_cancel-icon__FHujU {
8365     color: #fff;
8366     right: 10px;
8367     width: 16px;
8368     cursor: pointer;
8369     height: 16px;
8370     display: none;
8371     padding: 5px;
8372     position: absolute;
8373     background: #999;
8374     text-align: center;
8375     border-radius: 50%;
8376   }
8377   .location-popup_pin-search-box__3l5mJ>div>select {
8378 /*     -webkit-box-shadow: 0 0 10px #ffffff;
8379     box-shadow: 0 0 10px #ffffff; */
8380     text-transform: capitalize;
8381     border: 1px solid #ffffff;
8382     color: #ffffff;
8383     width: 100%;
8384     margin: 0;
8385     display: -moz-box;
8386     display: flex;
8387     padding: 0 30px;
8388     -webkit-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8389     -moz-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8390     animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8391     font-size: 16px;
8392     border-radius: 4px;
8393     height: 44px;
8394     moz-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;
8395     webkit-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;
8396   }
8397   .MuiButtonBase-root {
8398     color: inherit;
8399     border: 0;
8400     cursor: pointer;
8401     margin: 0;
8402     display: inline-flex;
8403     outline: 0;
8404     padding: 0;
8405     position: relative;
8406     align-items: center;
8407     user-select: none;
8408     border-radius: 0;
8409     vertical-align: middle;
8410     -moz-appearance: none;
8411     justify-content: center;
8412     text-decoration: none;
8413     background-color: transparent;
8414     -webkit-appearance: none;
8415     -webkit-tap-highlight-color: transparent;
8416   }
8417   .MuiButton-root {
8418     color: rgba(0, 0, 0, 0.87);
8419     padding: 6px 16px;
8420     font-size: 0.875rem;
8421     min-width: 64px;
8422     box-sizing: border-box;
8423     transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,border 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8424     font-family: Roboto,sans-serif;
8425     font-weight: 500;
8426     line-height: 1.75;
8427     border-radius: 4px;
8428     text-transform: uppercase;
8429   }
8430   .MuiButton-contained {
8431     color: rgba(0, 0, 0, 0.87);
8432     box-shadow: 0px 3px 1px -2px rgba(0,0,0,0.2), 0px 2px 2px 0px rgba(0,0,0,0.14), 0px 1px 5px 0px rgba(0,0,0,0.12);
8433     background-color: #e0e0e0;
8434   }
8435   .MuiButtonBase-root.Mui-disabled {
8436     cursor: default;
8437     pointer-events: none;
8438   }
8439   .MuiButton-label {
8440     width: 100%;
8441     display: inherit;
8442     align-items: inherit;
8443     justify-content: inherit;
8444   }
8445   .cartButton_login_content__2j1f7 {
8446     display: -moz-box;
8447     display: flex;
8448     text-align: center;
8449     z-index: 9;
8450     font-size: 18px;
8451     font-weight: 500;
8452     color: #fff;
8453   }
8454   
8455   .jss35 {
8456     top: 5px;
8457     right: 5px;
8458     padding: 4px;
8459     position: absolute;
8460     border-radius: 50%;
8461   }
8462   .jss67 {
8463     cursor: pointer;
8464     font-size: 15px;
8465     line-height: 1.3;
8466     padding-left: 5px;
8467   }
8468   .jss69 {
8469     color: #222222;
8470   }
8471   .jss80 {
8472     color: #fff;
8473     width: 100%;
8474     height: 52px;
8475     padding: 11px 16px;
8476     font-size: 18px;
8477     min-width: 88px;
8478     min-height: 36px;
8479     transition: background-color 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms,box-shadow 250ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8480     font-weight: 500;
8481     line-weight: 1em;
8482     border-radius: 4px;
8483     text-transform: uppercase;
8484     background-color: #E87325;
8485   }
8486   @media (min-width: 991px){
8487     .cartButton_login_content__2j1f7 {
8488         font-weight: 500;
8489     }
8490   }
8491 
8492   @media (max-width: 992px) {
8493     #location-lock-dialog {
8494       width: 100%;
8495       top: auto;
8496       bottom: 0;
8497       padding-left: 0;
8498       padding-right: 0;
8499     }
8500     .MuiFormGroup-row {
8501       display: block
8502     }
8503     .MuiIconButton-label input {
8504       margin: 0;
8505     }
8506   }
8507 </style>
8508 <div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;">
8509   <div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div>
8510   <div tabindex="0" data-test="sentinelStart"></div>
8511   <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;">
8512     <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog">
8513       <div class="jss31 undefined" id="location-lock-dialog">
8514         <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close">
8515           <span class="MuiIconButton-label">
8516             <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true">
8517               <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>
8518             </svg>
8519           </span>
8520           <span class="MuiTouchRipple-root"></span>
8521         </button>
8522         <div>
8523           <div class="jss36">Select Delivery Location</div>
8524           <div class="jss37">Select a delivery location to see product availability</div>
8525         </div>
8526         <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup">
8527           <label for="jabodetabek" class="MuiFormControlLabel-root jss45">
8528             <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false">
8529               <span class="MuiIconButton-label">
8530                 <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location">
8531                 <span class="jss41"></span>
8532               </span>
8533               <span class="MuiTouchRipple-root"></span>
8534             </span>
8535             <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1">
8536               <span class="jss67 jss69">Jabodetabek</span>
8537             </span>
8538           </label>
8539           <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45">
8540             <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false">
8541               <span class="MuiIconButton-label">
8542                 <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location">
8543                 <span class="jss40"></span>
8544               </span>
8545               <span class="MuiTouchRipple-root"></span>
8546             </span>
8547             <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1">
8548               <span class="jss67 jss68">Outside Jabodetabek</span>
8549             </span>
8550           </label>
8551         </div>
8552         <div>
8553           <div class="MuiGrid-root location-popup_area-block__sp9Ws">
8554             <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false">
8555               <div class="MuiGrid-root location-popup_place-icon__jSG0Q">
8556                 <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>
8557               </div>
8558               <div class="MuiGrid-root location-popup_cancel-icon__FHujU false">
8559                 <i class="material-icons location-popup_clear-pin__s1dRc">close</i>
8560               </div>
8561               <div style="width: 100%;">
8562                 <select id="choose-location" class="form-control">
8563                   <option value="">Choose Location</option>
8564                   <option value="jakarta">Jakarta</option>
8565                   <option value="bogor">Bogor</option>
8566                   <option value="depok">Depok</option>
8567                   <option value="tangerang">Tangerang</option>
8568                   <option value="bekasi">Bekasi</option>
8569                 </select>
8570               </div>
8571             </div>
8572           </div>
8573         </div>
8574         <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="">
8575           <span class="MuiButton-label">
8576             <span class=""></span>
8577             <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span>
8578           </span>
8579         </button>
8580       </div>
8581     </div>
8582   </div>
8583   <div tabindex="0" data-test="sentinelEnd"></div>
8584 </div>
8585 
8586 
8586<script>
8587   const jabodetabek = [
8588     {
8589       "code": "jakarta",
8590       "city": "jakarta",
8591       "zip": []
8592     },
8593     {
8594       "code": "bogor",
8595       "city": "bogor",
8596       "zip": []
8597     },
8598     {
8599       "code": "depok",
8600       "city": "depok",
8601       "zip": []
8602     },
8603     {
8604       "code": "tangerang",
8605       "city": "tangerang",
8606       "zip": []
8607     },
8608     {
8609       "code": "bekasi",
8610       "city": "bekasi",
8611       "zip": []
8612     }
8613   ]
8614   let cityNonJabodetabek = [
8615     
8616     "pengiriman_aceh",
8617     
8618     
8619     
8620     
8621     
8622     "pengiriman_ambon",
8623     
8624     
8625     
8626     
8627     
8628     "pengiriman_atambua",
8629     
8630     
8631     
8632     
8633     
8634     "pengiriman_badung",
8635     
8636     
8637     
8638     
8639     
8640     "pengiriman_bali",
8641     
8642     
8643     
8644     
8645     
8646     "pengiriman_balikpapan",
8647     
8648     
8649     
8650     
8651     
8652     "pengiriman_bandar lampung",
8653     
8654     
8655     
8656     
8657     
8658     "pengiriman_bandung",
8659     
8660     
8661     
8662     
8663     
8664     "pengiriman_bandung barat",
8665     
8666     
8667     
8668     
8669     
8670     "pengiriman_banjarmasin",
8671     
8672     
8673     
8674     
8675     
8676     "pengiriman_banyumas",
8677     
8678     
8679     
8680     
8681     
8682     "pengiriman_banyuwangi",
8683     
8684     
8685     
8686     
8687     
8688     "pengiriman_batam",
8689     
8690     
8691     
8692     
8693     
8694     
8695     
8696     
8697     
8698     "pengiriman_biak",
8699     
8700     
8701     
8702     
8703     
8704     "pengiriman_binjai",
8705     
8706     
8707     
8708     
8709     
8710     "pengiriman_blitar",
8711     
8712     
8713     
8714     
8715     
8716     "pengiriman_blora",
8717     
8718     
8719     
8720     
8721     
8722     
8723     
8724     
8725     
8726     "pengiriman_bojonegoro",
8727     
8728     
8729     
8730     
8731     
8732     "pengiriman_boyolali",
8733     
8734     
8735     
8736     
8737     
8738     "pengiriman_bukittinggi",
8739     
8740     
8741     
8742     
8743     
8744     "pengiriman_buleleng",
8745     
8746     
8747     
8748     
8749     
8750     "pengiriman_ciamis",
8751     
8752     
8753     
8754     
8755     
8756     "pengiriman_cianjur",
8757     
8758     
8759     
8760     
8761     
8762     "pengiriman_cibinong",
8763     
8764     
8765     
8766     
8767     
8768     "pengiriman_cikarang",
8769     
8770     
8771     
8772     
8773     
8774     "pengiriman_cikupa",
8775     
8776     
8777     
8778     
8779     
8780     "pengiriman_cilacap",
8781     
8782     
8783     
8784     
8785     
8786     "pengiriman_cileunyi",
8787     
8788     
8789     
8790     
8791     
8792     "pengiriman_cimahi",
8793     
8794     
8795     
8796     
8797     
8798     "pengiriman_cirebon",
8799     
8800     
8801     
8802     
8803     
8804     "pengiriman_ciwidey",
8805     
8806     
8807     
8808     
8809     
8810     "pengiriman_deli serdang",
8811     
8812     
8813     
8814     
8815     
8816     "pengiriman_demak",
8817     
8818     
8819     
8820     
8821     
8822     "pengiriman_denpasar",
8823     
8824     
8825     
8826     
8827     
8828     
8829     
8830     
8831     
8832     "pengiriman_garut",
8833     
8834     
8835     
8836     
8837     
8838     "pengiriman_gianyar",
8839     
8840     
8841     
8842     
8843     
8844     "pengiriman_gresik",
8845     
8846     
8847     
8848     
8849     
8850     "pengiriman_gunung kidul",
8851     
8852     
8853     
8854     
8855     
8856     
8857     
8858     
8859     
8860     "pengiriman_jambi",
8861     
8862     
8863     
8864     
8865     
8866     "pengiriman_jayapura",
8867     
8868     
8869     
8870     
8871     
8872     "pengiriman_jember",
8873     
8874     
8875     
8876     
8877     
8878     "pengiriman_jepara",
8879     
8880     
8881     
8882     
8883     
8884     "pengiriman_jombang",
8885     
8886     
8887     
8888     
8889     
8890     "pengiriman_karanganyar",
8891     
8892     
8893     
8894     
8895     
8896     "pengiriman_karawang",
8897     
8898     
8899     
8900     
8901     
8902     "pengiriman_karo",
8903     
8904     
8905     
8906     
8907     
8908     "pengiriman_kebumen",
8909     
8910     
8911     
8912     
8913     
8914     "pengiriman_kediri",
8915     
8916     
8917     
8918     
8919     
8920     "pengiriman_keerom",
8921     
8922     
8923     
8924     
8925     
8926     "pengiriman_kendal",
8927     
8928     
8929     
8930     
8931     
8932     "pengiriman_klaten",
8933     
8934     
8935     
8936     
8937     
8938     
8939     
8940     
8941     
8942     "pengiriman_kudus",
8943     
8944     
8945     
8946     
8947     
8948     "pengiriman_kupang",
8949     
8950     
8951     
8952     
8953     
8954     "pengiriman_lainnya",
8955     
8956     
8957     
8958     
8959     
8960     "pengiriman_lamongan",
8961     
8962     
8963     
8964     
8965     
8966     "pengiriman_lampung",
8967     
8968     
8969     
8970     
8971     
8972     "pengiriman_lampung barat",
8973     
8974     
8975     
8976     
8977     
8978     "pengiriman_lembang",
8979     
8980     
8981     
8982     
8983     
8984     "pengiriman_lombok",
8985     
8986     
8987     
8988     
8989     
8990     "pengiriman_lumajang",
8991     
8992     
8993     
8994     
8995     
8996     "pengiriman_madiun",
8997     
8998     
8999     
9000     
9001     
9002     "pengiriman_magelang",
9003     
9004     
9005     
9006     
9007     
9008     "pengiriman_majalengka",
9009     
9010     
9011     
9012     
9013     
9014     "pengiriman_makassar",
9015     
9016     
9017     
9018     
9019     
9020     "pengiriman_malang",
9021     
9022     
9023     
9024     
9025     
9026     "pengiriman_manado",
9027     
9028     
9029     
9030     
9031     
9032     "pengiriman_medan",
9033     
9034     
9035     
9036     
9037     
9038     "pengiriman_mengwi",
9039     
9040     
9041     
9042     
9043     
9044     "pengiriman_mojokerto",
9045     
9046     
9047     
9048     
9049     
9050     "pengiriman_nganjuk",
9051     
9052     
9053     
9054     
9055     
9056     "pengiriman_ngawi",
9057     
9058     
9059     
9060     
9061     
9062     "pengiriman_padang",
9063     
9064     
9065     
9066     
9067     
9068     "pengiriman_palembang",
9069     
9070     
9071     
9072     
9073     
9074     "pengiriman_pasuruan",
9075     
9076     
9077     
9078     
9079     
9080     "pengiriman_pati",
9081     
9082     
9083     
9084     
9085     
9086     "pengiriman_pekalongan",
9087     
9088     
9089     
9090     
9091     
9092     "pengiriman_pekanbaru",
9093     
9094     
9095     
9096     
9097     
9098     "pengiriman_pemalang",
9099     
9100     
9101     
9102     
9103     
9104     "pengiriman_ponorogo",
9105     
9106     
9107     
9108     
9109     
9110     "pengiriman_pontianak",
9111     
9112     
9113     
9114     
9115     
9116     "pengiriman_probolinggo",
9117     
9118     
9119     
9120     
9121     
9122     "pengiriman_purbalingga",
9123     
9124     
9125     
9126     
9127     
9128     "pengiriman_purwakarta",
9129     
9130     
9131     
9132     
9133     
9134     "pengiriman_purwokerto",
9135     
9136     
9137     
9138     
9139     
9140     "pengiriman_rembang",
9141     
9142     
9143     
9144     
9145     
9146     "pengiriman_riau",
9147     
9148     
9149     
9150     
9151     
9152     "pengiriman_salatiga",
9153     
9154     
9155     
9156     
9157     
9158     "pengiriman_samarinda",
9159     
9160     
9161     
9162     
9163     
9164     "pengiriman_semarang",
9165     
9166     
9167     
9168     
9169     
9170     "pengiriman_sentani",
9171     
9172     
9173     
9174     
9175     
9176     "pengiriman_serang",
9177     
9178     
9179     
9180     
9181     
9182     "pengiriman_sidoarjo",
9183     
9184     
9185     
9186     
9187     
9188     "pengiriman_singkawang",
9189     
9190     
9191     
9192     
9193     
9194     "pengiriman_sragen",
9195     
9196     
9197     
9198     
9199     
9200     "pengiriman_subang",
9201     
9202     
9203     
9204     
9205     
9206     "pengiriman_sukabumi",
9207     
9208     
9209     
9210     
9211     
9212     "pengiriman_sumbawa",
9213     
9214     
9215     
9216     
9217     
9218     "pengiriman_surabaya",
9219     
9220     
9221     
9222     
9223     
9224     "pengiriman_surakarta solo",
9225     
9226     
9227
9228
9229     
9230     "pengiriman_tasikmalaya",
9231     
9232     
9233     
9234     
9235     
9236     "pengiriman_tegal",
9237     
9238     
9239     
9240     
9241     
9242     "pengiriman_timika",
9243     
9244     
9245     
9246     
9247     
9248     "pengiriman_wamena",
9249     
9250     
9251     
9252     
9253     
9254     "pengiriman_wiyung",
9255     
9256     
9257     
9258     
9259     
9260     "pengiriman_wonokromo",
9261     
9262     
9263     
9264     
9265     
9266     "pengiriman_yogyakarta",
9267     
9268     
9269   ]
9270   console.log(cityNonJabodetabek)
9271   let non_jabodetabek = []
9272   for(var i=0;i<cityNonJabodetabek.length;i++) {
9273     const obj = {
9274       "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ','-'),
9275       "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ','-'),
9276       "zip": []
9277     }
9278     non_jabodetabek.push(obj)
9279   }
9280   let current_location = getCookie("location_delivery")
9281   $("[name=location]").change(function(){
9282     let v = $(this).val()
9283     let option = []
9284     if(v == 'Jabodetabek') {
9285       for(var i=0;i<jabodetabek.length;i++) {
9286         const jabodetabekHtml = `<option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>`
9287         option.push(jabodetabekHtml)
9288       }
9289       $("#choose-location").html(`<option value="">Choose Location</option>${option}`)
9290     } else {
9291       for(var i=0;i<non_jabodetabek.length;i++) {
9292         const nonjabodetabekHtml = `<option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>`
9293         option.push(nonjabodetabekHtml)
9294       }
9295       $("#choose-location").html(`<option value="">Choose Location</option>${option}`)
9296     }
9297   })
9298 
9299   $("#location-lock-submit").click(function(e){
9300     let select = $("#choose-location")
9301     let value = select.val().toLowerCase()
9302     console.log(value)
9303     if(select.val() == "") {
9304       return alert("Choose Your Location")
9305       e.preventDefault()
9306     }
9307     setCookie("location_delivery",value,1000000);
9308     
9309     location.reload();
9310     
9311   })
9312 
9313   $("#close-popup-delivery").click(function(){
9314     $(".MuiDialog-root").hide()
9315     if(!current_location){
9316       setCookie("location_delivery","jakarta",1000000);
9317       $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta")
9318     }
9319   })
9320   $("#loc_delivery, #loc_delivery_mobile").click(function(){
9321     $(".MuiDialog-root").show()
9322   })
9323 
9324   
9325   if(!current_location){
9326     
9327   } else {
9328     $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location)
9329     console.log(current_location)
9330     $("#choose-location").each(function(){
9331       if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi'){
9332         $("#jabodetabek").trigger("click")
9333       } else {
9334         $("#non-jabodetabek").trigger("click")
9335       }
9336       $("#choose-location").find("option[value="+current_location+"]").attr("selected", "selected")
9337     })
9338   }
9339 
9340   // 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'){
9341   //   $("#timeMalam").attr("disabled", false)
9342   // } else {
9343   //   $("#timeMalam").attr("disabled", true)
9344   // }
9345 
9346   if(current_location && current_location != 'jakarta') {
9347     $("#self-pickup").attr("disabled", true)
9348   }
9349 
9350   function setCookie(name,value,days) {
9351     var expires = "";
9352     if (days) {
9353       var date = new Date();
9354       date.setTime(date.getTime() + (days*24*60*60*1000));
9355       expires = "; expires=" + date.toUTCString();
9356     }
9357     document.cookie = name + "=" + (value || "")  + expires + "; path=/";
9358   }
9359   function getCookie(name) {
9360     var nameEQ = name + "=";
9361     var ca = document.cookie.split(';');
9362     for(var i=0;i < ca.length;i++) {
9363       var c = ca[i];
9364       while (c.charAt(0)==' ') c = c.substring(1,c.length);
9365       if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
9366     }
9367     return null;
9368   }
9369 </script>
9369
9370 <!-- One Tap -->
9371     
9371<script>
9372       console.log("Outerbloom...");
9373     </script>
9373
9374   <div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block">
9375 
9376 <link rel="stylesheet" href="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.css" />
9377 
9377<script src="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.js" defer></script>
9377
9378 
9378<script>
9379   const widgetConfig = {
9380     id: "clz7897za002cz7otleaz0d3d",
9381     showQuickResponse: false,
9382     quickResponsesData: [],
9383     themeColor: "#ffffff",
9384     widgetText: "",
9385     radiusType: "circle",
9386     widgetIconType: "whatsapp",
9387     position: "right",
9388     storeLogo: "",
9389     storeName: "Outerbloom",
9390     storeDescription: "",
9391     size: "small",
9392     showCard: false,
9393     widgetColorType: "solid",
9394     widgetColor1: "#008069",
9395     widgetColor2: "#008069",
9396     social: {
9397       socialOrders: ["instagram","tiktok","facebook","x","youtube","linkedin","email"],
9398       values: {
9399         instagram: {
9400           enabled: false,
9401           value: "",
9402         },
9403         facebook: {
9404           enabled: false,
9405           value: "",
9406         },
9407         email: {
9408           enabled: false,
9409           value: "",
9410         },
9411         x: {
9412           enabled: false,
9413           value: "",
9414         },
9415         tiktok: {
9416           enabled: false,
9417           value: "",
9418         },
9419         linkedin: {
9420           enabled: false,
9421           value: "",
9422         },
9423         youtube: {
9424           enabled: false,
9425           value: "",
9426         },
9427       },
9428     },
9429   };
9430 
9431   function initializeWidget() {
9432     if (typeof BBBWidget !== 'undefined') {
9433       BBBWidget.init(widgetConfig);
9434     } else {
9435       setTimeout(initializeWidget, 100);
9436     }
9437   }
9438 
9439   initializeWidget();</script>
9439
9440 
9441 
9442 </div><div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block">
9443 
9444 
9445 <div style="position: fixed; bottom: 0; right: 0"></div>
9446 
9447 
9447<script>
9448 console.info("bitlogin extension version: v2.5.7");
9449 
9450 const googleScript = document.createElement("script");
9451 googleScript.setAttribute("src", "https://accounts.google.com/gsi/client");
9452 document.head.append(googleScript);
9453 
9454 const bitLoginBaseUrl = "https://api.bitbybit.studio";
9455 const apiUrl = `${bitLoginBaseUrl}/bitlogin/api`;
9456 
9457 const appearance = {"style":"square","hasShadow":true,"domain":"outerbloom1.myshopify.com","colorScheme":"match","backgroundColor":"#ffffff","outlineColor":"#ffe100","textColor":"#700000","position":"top","hideDivider":false,"dividerText":"","size":"small","format":"contentFlex","language":"en","buttonText":"Continue With","redirectLink":"\/account","googleOneTap":true,"googleOneTapBanner":true,"captureAdditionalData":true,"customerTag":"bitLogin","redirectOneTapDesktop":"[{\"label\":\"Account\",\"label2\":\"Desktop: Account\",\"value\":\"account\",\"parentValue\":\"Desktop\"}]","redirectOneTapMobile":"[{\"label\":\"Thank you page\",\"label2\":\"Mobile: Thank you page\",\"value\":\"thank_you\",\"parentValue\":\"Mobile\"}]","watermark":true,"buttonList":{"google":"Continue with Google","facebook":"Continue with Facebook","apple":"Continue with Apple","whatsapp":"Continue with WhatsApp","microsoft":"Continue with Microsoft","twitter":"Continue with X","amazon":"Continue with Amazon","instagram":"Continue with Instagram","magic_link":"Continue with Magic Link","mobile_app":"Continue with Mobile App","linkedin":"Continue with LinkedIn"}};
9458 const config = [{"domain":"outerbloom1.myshopify.com","provider":"FACEBOOK","enabledMobile":false,"enabledWeb":true,"clientId":"922184709213757","clientSecret":"e3c874c8bce6da4211538ebda706d1cb","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"GOOGLE","enabledMobile":true,"enabledWeb":true,"clientId":"933600373534-vk6hiu9lqrtbblj0357q0gsoo7mqvsd0.apps.googleusercontent.com","clientSecret":"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","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":true,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"APPLE","enabledMobile":true,"enabledWeb":true,"clientId":"com.bitlogin.outerbloom","clientSecret":"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","appleTeamId":"1A","applePrivateKey":"1A","usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"WHATSAPP","enabledMobile":false,"enabledWeb":true,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"MICROSOFT","enabledMobile":false,"enabledWeb":false,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"TWITTER","enabledMobile":false,"enabledWeb":false,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"AMAZON","enabledMobile":false,"enabledWeb":false,"clientId":"amzn1.application-oa2-client.5b560a5e3e2943d6b25c50cd6dca5532","clientSecret":"amz
9458n1.oa2-cs.v1.1cb5f9085a202341f60daf5a7be16c570ccc0b4bd5908b3afd080f34e9b8935d","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null}];
9459 const redirectUrl = appearance.redirectLink;
9460 
9461 let locationCacheSet = false;
9462 let errorLocation = false;
9463 let oneTapSet = false;
9464 
9465 let bitloginCache = {
9466   appearance: appearance,
9467   config: config
9468 };
9469 
9470 let isInitializing = false;
9471 const queue = [];
9472 
9473 // Add CSS for the popup
9474 const popupStyles = document.createElement('style');
9475 popupStyles.textContent = `
9476   /* Styles for login popup */
9477   .bitlogin-popup-overlay {
9478     position: fixed;
9479     top: 0;
9480     left: 0;
9481     width: 100%;
9482     height: 100%;
9483     background: rgba(0, 0, 0, 0.45);
9484     backdrop-filter: blur(4px);
9485     display: flex;
9486     align-items: center;
9487     justify-content: center;
9488     opacity: 0;
9489     transition: opacity 0.3s ease-in-out;
9490     z-index: 999999;
9491   }
9492   
9493   .bitlogin-popup-overlay.visible {
9494     opacity: 1;
9495   }
9496   
9497   .bitlogin-popup {
9498     background: #FFFFFF;
9499     box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
9500     border-radius: 16px;
9501     width: 100%;
9502     max-width: 560px;
9503     display: flex;
9504     overflow: hidden;
9505     position: relative;
9506     opacity: 0;
9507     transform: translateY(20px) scale(0.98);
9508     transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
9509   }
9510   
9511   .bitlogin-popup.visible {
9512     opacity: 1;
9513     transform: translateY(0) scale(1);
9514   }
9515   
9516   .bitlogin-popup-with-image {
9517     max-width: 640px;
9518   }
9519   
9520   .bitlogin-popup-right-image {
9521     flex-direction: row-reverse;
9522   }
9523   
9524   .bitlogin-popup-image {
9525     object-fit: cover;
9526     width: 50%;
9527     height: auto;
9528   }
9529   
9530   .bitlogin-popup-content {
9531     padding: 32px;
9532     position: relative;
9533     width: 50%;
9534   }
9535   
9536   .bitlogin-popup-close {
9537     position: absolute;
9538     top: 16px;
9539     right: 16px;
9540     background: white;
9541     border: none;
9542     width: 30px;
9543     height: 30px;
9544     display: flex;
9545     align-items: center;
9546     justify-content: center;
9547     cursor: pointer;
9548     transition: background-color 0.2s;
9549     color: inherit;
9550     padding: 0;
9551   }
9552   
9553   .bitlogin-popup-close:hover {
9554     background-color: #e5e5e5;
9555   }
9556   
9557   .bitlogin-popup-buttons {
9558     display: flex;
9559     flex-direction: column;
9560     gap: 12px;
9561     margin-top: 24px;
9562   }
9563   
9564   /* Button styles within popup - override width for popup buttons */
9565   .bitlogin-popup-buttons #google-login,
9566   .bitlogin-popup-buttons #facebook-login,
9567   .bitlogin-popup-buttons #apple-login,
9568   .bitlogin-popup-buttons #whatsapp-login,
9569   .bitlogin-popup-buttons #microsoft-login,
9570   .bitlogin-popup-buttons #twitter-login,
9571   .bitlogin-popup-buttons #amazon-login,
9572   .bitlogin-popup-buttons #instagram-login,
9573   .bitlogin-popup-buttons #magic-link-login,
9574   .bitlogin-popup-buttons #mobile-app-login {
9575     width: 100% !important;
9576     font-family: inherit !important;
9577   }
9578   
9579   .bitlogin-popup-footer {
9580     margin-top: 32px;
9581     text-align: center;
9582     font-size: 14px;
9583     opacity: 0.6;
9584   }
9585   
9586   /* Modern Typography */
9587   .bitlogin-popup h2 {
9588     margin-top: 12px;
9589     font-size: 21px !important;
9590     line-height: 1.2 !important;
9591     font-weight: 700 !important;
9592     letter-spacing: -0.02em !important;
9593     margin-bottom: 16px !important;
9594   }
9595   
9596   .bitlogin-popup-header {
9597     position: relative;
9598     margin-bottom: 24px;
9599   }
9600   
9601   /* Modern gradient accent */
9602   .bitlogin-popup-content > div {
9603     font-size: 16px !important;
9604     line-height: 1.2 !important;
9605     opacity: 0.85 !important;
9606   }
9607   
9608   /* Enhanced button interactions */
9609   .bitlogin-popup-buttons button {
9610     position: relative;
9611     overflow: hidden;
9612   }
9613   
9614   @keyframes ripple {
9615     0% {
9616       transform: scale(0, 0);
9617       opacity: 0.5;
9618     }
9619     100% {
9620       transform: scale(100, 100);
9621       opacity: 0;
9622     }
9623   }
9624   
9625   /* Responsive adjustments */
9626   @media (max-width: 640px) {
9627     .bitlogin-popup {
9628       max-width: 90%;
9629       width: 90%;
9630       margin: 0 16px;
9631     }
9632     
9633     .bitlogin-popup-with-image {
9634       flex-direction: column !important;
9635     }
9636     
9637     .bitlogin-popup-image {
9638       width: 100%;
9639       height: 180px;
9640     }
9641     
9642     .bitlogin-popup-content {
9643       padding: 24px;
9644     }
9645     
9646     .bitlogin-popup h2 {
9647       font-size: 24px !important;
9648     }
9649   }
9650 `;
9651 
9652 document.head.appendChild(popupStyles);
9653 
9654 // Add fonts link for different font options
9655 const fontsLink = document.createElement('link');
9656 fontsLink.rel = 'stylesheet';
9657 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';
9658 document.head.appendChild(fontsLink);
9659 
9660 (async () => {
9661   try {
9662     let host = window.location.host;
9663     if (host === "admin.shopify.com") {
9664       host = `${window.location.pathname.split("/")[2]}.myshopify.com`;
9665     }
9666 
9667     const urlSearchParams = new URLSearchParams(window.location.search);
9668     const checkoutUrl = urlSearchParams.get("checkout_url");
9669 
9670     async function init({ inputRef, index }) {
9671       if (isInitializing) {
9672         queue.push(() => init({ inputRef, index }));
9673         return;
9674       }
9675 
9676       isInitializing = true;
9677 
9678       try {
9679         let bitLoginSectionRoot = document.querySelector(
9680           `.bitlogin-root[data-index="${index}"]`
9681         );
9682 
9683         const formRef = inputRef?.closest(
9684           "form:not([action='/account/recover'])"
9685         );
9686 
9687         if (formRef && !bitLoginSectionRoot) {
9688           await getLocation();
9689 
9690           bitLoginSectionRoot = document.createElement(`div`);
9691 
9692           bitLoginSectionRoot.setAttribute("class", "bitlogin-root");
9693           bitLoginSectionRoot.setAttribute("data-index", `${index}`);
9694 
9695           updateAppearance({
9696             formRef,
9697             rootRef: bitLoginSectionRoot,
9698             host,
9699           });
9700         }
9701       } catch (err) {
9702         console.error(`error while initiating bitlogin extensions`, err);
9703       } finally {
9704         // Release the lock
9705         isInitializing = false;
9706 
9707         // Check if there are pending items in the queue
9708         if (queue.length > 0) {
9709           // Process the next function in the queue
9710           const nextFunction = queue.shift();
9711           nextFunction();
9712         }
9713       }
9714     }
9715 
9716     function initAll() {
9717       return new Promise((resolve, reject) => {
9718         setTimeout(async () => {
9719           const inputRefs = document.querySelectorAll(
9720             'input[name="customer[email]"]'
9721           );
9722 
9723           for (let i = 0; i < inputRefs.length; i++) {
9724             const currentInputRef = inputRefs[i];
9725             const isVisible = isElementVisible(currentInputRef);
9726 
9727             if (isVisible) {
9728               await init({ inputRef: currentInputRef, index: i });
9729             }
9730           }
9731 
9732           resolve("ok");
9733         }, 100);
9734       });
9735     }
9736 
9737     const observer = new MutationObserver((mutationsList) => {
9738       for (let mutation of mutationsList) {
9739         initAll();
9740       }
9741     });
9742 
9743     observer.observe(document.body, {
9744       childList: true,
9745       subtree: true,
9746       attributes: true,
9747     });
9748 
9749     initAll();
9750 
9751     if (appearance.googleOneTap) {
9752       setupOneTap({ host, checkoutUrl });
9753     }
9754 
9755     // Initialize popup
9756     await initPopup(host);
9757   } catch (error) {
9758     console.error("Error initializing BitLogin:", error);
9759   }
9760 })();
9761 
9762 async function initPopup(host) {
9763   // Check if user is already logged in using Liquid checks properly
9764   const isLoggedIn = false || 
9765                     document.querySelector('.customer-logout-link') || 
9766                     document.querySelector('.account-link') || 
9767                     window.location.pathname.includes('/account');
9768   
9769   if (isLoggedIn) {
9770     return; // User is logged in, don't show popup
9771   }
9772 
9773   try {
9774     // Fetch the popup configuration
9775     const popupConfig = await fetch(`${apiUrl}/appearance/popup/domain/${host}`)
9776       .then(res => res.json())
9777       .catch(err => {
9778         console.error('Error fetching popup configuration:', err);
9779         return null;
9780       });
9781 
9782     if (!popupConfig || !popupConfig.enabled) {
9783       return;
9783 // Don't show popup if disabled or config not found
9784     }
9785 
9786     // Create popup after 10 seconds
9787     setTimeout(() => {
9788       // Check if user is still on the page and still not logged in
9789       if (document.visibilityState === 'visible') {
9790         // Additional check in case user logged in during the 10 second wait
9791         const currentlyLoggedIn = false || 
9792                               document.querySelector('.customer-logout-link') || 
9793                               document.querySelector('.account-link');
9794         
9795         if (!currentlyLoggedIn) {
9796           createLoginPopup(popupConfig, host);
9797         }
9798       }
9799     }, 10000);
9800   } catch (error) {
9801     console.error('Error initializing popup:', error);
9802   }
9803 }
9804 
9805 function createLoginPopup(popupConfig, host) {
9806   // Font mapping
9807   const fontFamilyMap = {
9808     system_fonts: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
9809     montserrat: 'Montserrat, sans-serif',
9810     roboto: 'Roboto, sans-serif',
9811     open_sans: 'Open Sans, sans-serif',
9812     noto_sans: 'Noto Sans, sans-serif',
9813     lato: 'Lato, sans-serif',
9814     poppins: 'Poppins, sans-serif',
9815     quicksand: 'Quicksand, sans-serif',
9816     raleway: 'Raleway, sans-serif',
9817     pt_sans: 'PT Sans, sans-serif',
9818     oswald: 'Oswald, sans-serif',
9819   };
9820 
9821   // Create overlay
9822   const overlay = document.createElement('div');
9823   overlay.className = 'bitlogin-popup-overlay';
9824   
9825   // Create popup container with appropriate styling
9826   const popup = document.createElement('div');
9827   popup.className = 'bitlogin-popup';
9828 
9829   if (popupConfig.layout === 'default') {
9830     popup.style.maxWidth = '400px';
9831   }
9832   
9833   // Function to close the popup
9834   const closePopup = () => {
9835     overlay.classList.remove('visible');
9836     popup.classList.remove('visible');
9837     setTimeout(() => {
9838       if (document.body.contains(overlay)) {
9839         document.body.removeChild(overlay);
9840       }
9841     }, 300);
9842   };
9843   
9844   // Add click handler to the overlay to close when clicking outside
9845   overlay.addEventListener('click', (event) => {
9846     // Close only if clicking directly on the overlay, not its children
9847     if (event.target === overlay) {
9848       closePopup();
9849     }
9850   });
9851   
9852   // Add escape key handler to close popup
9853   document.addEventListener('keydown', (event) => {
9854     if (event.key === 'Escape' && document.body.contains(overlay)) {
9855       closePopup();
9856     }
9857   });
9858 
9859   // Create layout with image if specified
9860   let contentWrapper;
9861   if (popupConfig.layout !== 'default' && popupConfig.popupImage) {
9862     popup.classList.add('bitlogin-popup-with-image');
9863     
9864     if (popupConfig.layout === 'right') {
9865       popup.classList.add('bitlogin-popup-right-image');
9866     }
9867     
9868     // Add image
9869     const image = document.createElement('img');
9870     image.className = 'bitlogin-popup-image';
9871     image.src = popupConfig.popupImage;
9872     image.alt = 'Login';
9873     image.loading = 'lazy';
9874     popup.appendChild(image);
9875     
9876     // Create content container
9877     contentWrapper = document.createElement('div');
9878     contentWrapper.className = 'bitlogin-popup-content';
9879 
9880     if (popupConfig.layout === 'right') {
9881       const closeButton = document.createElement('button');
9882       closeButton.className = 'bitlogin-popup-close';
9883       closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
9884         <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
9885       </svg>`;
9886       closeButton.setAttribute('aria-label', 'Close');
9887       closeButton.onclick = closePopup;
9888   
9889       popup.appendChild(closeButton);
9890     }
9891   } else {
9892     contentWrapper = document.createElement('div');
9893     contentWrapper.className = 'bitlogin-popup-content';
9894     contentWrapper.style.width = '100%';
9895   }
9896 
9897   // Set background style
9898   if (popupConfig.backgroundTheme === 'gradient') {
9899     contentWrapper.style.background = `linear-gradient(135deg, ${popupConfig.backgroundPopupColor}, ${popupConfig.gradientColor})`;
9900   } else {
9901     contentWrapper.style.backgroundColor = popupConfig.backgroundPopupColor;
9902   }
9903 
9904   // Apply font family
9905   contentWrapper.style.setProperty('font-family', fontFamilyMap[popupConfig.font] || fontFamilyMap.system_fonts, 'important');
9906 
9907   if (popupConfig.layout !== 'right') {
9908     const closeButton = document.createElement('button');
9909     closeButton.className = 'bitlogin-popup-close';
9910     closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
9911       <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
9912     </svg>`;
9913     closeButton.setAttribute('aria-label', 'Close');
9914     closeButton.onclick = closePopup;
9915   
9916     contentWrapper.appendChild(closeButton);
9917   }
9918 
9919   // Add heading with subtle animation effect
9920   const header = document.createElement('div');
9921   header.className = 'bitlogin-popup-header';
9922   
9923   const heading = document.createElement('h2');
9924   heading.textContent = popupConfig.headingText || 'Sign in for exclusive benef
9924its';
9925   heading.style.color = popupConfig.fontColor;
9926   header.appendChild(heading);
9927 
9928   // Add body text with improved formatting
9929   const bodyText = document.createElement('div');
9930   bodyText.innerHTML = popupConfig.bodyText || 'Join our community to access exclusive offers and a personalized shopping experience.';
9931   bodyText.style.color = popupConfig.fontColor;
9932   header.appendChild(bodyText);
9933   
9934   contentWrapper.appendChild(header);
9935 
9936   // Create buttons container with modern styling
9937   const buttonsContainer = document.createElement('div');
9938   buttonsContainer.className = 'bitlogin-popup-buttons';
9939   
9940   // Add social buttons
9941   const providerLabels = {
9942     'GOOGLE': 'Continue with Google',
9943     'FACEBOOK': 'Continue with Facebook',
9944     'APPLE': 'Continue with Apple',
9945     'WHATSAPP': 'Continue with WhatsApp',
9946     'MAGIC_LINK': 'Continue with Email',
9947   };
9948 
9949   // Add first login provider button
9950   if (popupConfig.loginProvider1 !== 'NONE') {
9951     const buttonConfig = {
9952       theme: popupConfig.colorScheme || 'match',
9953       customColor: popupConfig.textColor,
9954       format: 'contentFlex',
9955       buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider1.toLowerCase()],
9956       hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true,
9957       style: popupConfig.style || 'rounded',
9958       size: popupConfig.size || 'medium',
9959       colorScheme: popupConfig.colorScheme || 'match',
9960       backgroundColor: popupConfig.backgroundColor || '#3B82F6',
9961       textColor: popupConfig.textColor || '#FFFFFF',
9962       outlineColor: popupConfig.outlineColor || '#3B82F6',
9963       host: host
9964     };
9965     
9966     const button1 = createSocialLoginButton(popupConfig.loginProvider1, buttonConfig);
9967     
9968     // Handle click event - this overrides the default click handler in createSocialLoginButton
9969     button1.onclick = () => {
9970       onClickSocialLogin({ provider: popupConfig.loginProvider1.toLowerCase(), host });
9971       closePopup();
9972     };
9973     
9974     buttonsContainer.appendChild(button1);
9975   }
9976 
9977   // Add second login provider button if enabled
9978   if (popupConfig.loginProvider2 !== 'NONE') {
9979     const buttonConfig = {
9980       theme: popupConfig.colorScheme || 'match',
9981       customColor: popupConfig.textColor,
9982       format: 'contentFlex',
9983       buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider2.toLowerCase()],
9984       hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true,
9985       style: popupConfig.style || 'rounded',
9986       size: popupConfig.size || 'medium',
9987       colorScheme: popupConfig.colorScheme || 'match',
9988       backgroundColor: popupConfig.backgroundColor || '#3B82F6',
9989       textColor: popupConfig.textColor || '#FFFFFF',
9990       outlineColor: popupConfig.outlineColor || '#3B82F6',
9991       host: host
9992     };
9993     
9994     const button2 = createSocialLoginButton(popupConfig.loginProvider2, buttonConfig);
9995     
9996     // Handle click event - this overrides the default click handler in createSocialLoginButton
9997     button2.onclick = () => {
9998       onClickSocialLogin({ provider: popupConfig.loginProvider2.toLowerCase(), host });
9999       closePopup();
10000     };
10001     
10002     buttonsContainer.appendChild(button2);
10003   }
10004 
10005   contentWrapper.appendChild(buttonsContainer);
10006 
10007   // Append content to popup
10008   popup.appendChild(contentWrapper);
10009   
10010   // Append popup to overlay
10011   overlay.appendChild(popup);
10012   
10013   // Append overlay to body
10014   document.body.appendChild(overlay);
10015   
10016   // Trigger animation with slight delay for better perceived performance
10017   setTimeout(() => {
10018     overlay.classList.add('visible');
10019     setTimeout(() => {
10020       popup.classList.add('visible');
10021     }, 50);
10022   }, 10);
10023 }
10024 
10025 window.addEventListener("load", () => {
10026   window.addEventListener("message", (event) => {
10027     const receivedData = event.data;
10028 
10029     if (receivedData.type === "authorize") {
10030       post(
10031         JSON.parse(
10032           JSON.stringify({
10033             "customer[email]": receivedData.email,
10034             "customer[password]": receivedData.password,
10035             form_type: "customer_login",
10036             utf8: "✓",
10037             return_url: redirectUrl,
10038           })
10039         )
10040       );
10041     } else if (receivedData.type === "rejected") {
10042       if (receivedData.reason === "customer_account_disabled") {
10043         showAlert(
10044           "Your account needs to be activated. We've sent you an activation link - please check your email to complete this step."
10045         );
10046       } else if (receivedData.reason === "customer_entry_created_email_not_set") {
10047         showAlert(
10048           "A new account was created but requires an email address. Please update your account with a valid email address to continue."
10049         );
10050       } else if (receivedData.reason === "customer_exist_email_not_set") {
10051         showAlert(
10052           "Your existing account is missing an email address. Please contact support to update your account with a valid email address."
10053         );
10054       }
10055     }
10056 
10057     if (receivedData.type === "customer_authenticated") {
10058       // Dispatch a custom event that merchants can listen for to implement their custom logic
10059       const customerAuthEvent = new CustomEvent('bitlogin:customer_authenticated', {
10060         detail: {
10061           provider: receivedData.provider,
10062           customer: receivedData.customer,
10063           shopifyCustomerCreated: receivedData.shopifyCustomerCreated
10064         }
10065       });
10066       
10067       // Dispatch the event on the window object so merchants can listen for it
10068       window.dispatchEvent(customerAuthEvent);
10069       
10070     }
10071   });
10072 });
10073 
10074 // Reusable functions for social login buttons
10075 function createSocialLoginButton(provider, config = {}) {
10076   const {
10077     theme = 'match',
10078     customColor = null,
10079     format = 'contentFlex',
10080     buttonText = null,
10081     hasShadow = true,
10082     style = 'rounded',
10083     size = 'medium',
10084     colorScheme = 'match',
10085     backgroundColor = '#3B82F6',
10086     textColor = '#FFFFFF',
10087     outlineColor = '#3B82F6',
10088     rootRef = null,
10089     host = null
10090   } = config;
10091   
10092   // Create button element with appropriate ID and attributes
10093   const button = document.createElement('button');
10094   button.id = `${provider.toLowerCase()}-login`;
10095   button.type = 'button';
10096   
10097   // Set the inner SVG based on provider
10098   switch (provider.toUpperCase()) {
10099     case 'GOOGLE':
10100       button.innerHTML = googleLoginIcon(theme, customColor);
10101       break;
10102     case 'FACEBOOK':
10103       button.innerHTML = facebookLoginIcon(theme, customColor);
10104       break;
10105     case 'APPLE':
10106       button.innerHTML = appleLoginIcon(theme, customColor);
10107       break;
10108     case 'WHATSAPP':
10109       button.innerHTML = whatsappLoginIcon(theme, customColor);
10110       break;
10111     case 'MICROSOFT':
10112       button.innerHTML = microsoftLoginIcon(theme, customColor);
10113       break;
10114     case 'TWITTER':
10115       button.innerHTML = twitterLoginIcon(theme, customColor);
10116       break;
10117     case 'AMAZON':
10118       button.innerHTML = amazonLoginIcon(theme, customColor);
10119       break;
10120     case 'INSTAGRAM':
10121       button.innerHTML = instagramLoginIcon(theme, customColor);
10122       break;
10123     case 'MAGIC_LINK':
10124       button.innerHTML = magicLinkLoginIcon(theme, customColor);
10125       break;
10126     case 'MOBILE_APP':
10127       button.innerHTML = mobileAppLoginIcon(theme, customColor);
10128       break;
10129     case 'LINKEDIN':
10130       button.innerHTML = linkedinLoginIcon(theme, customColor);
10131       break;
10132   }
10133   
10134   // Add text if format isn't icon-only and buttonText is provided
10135   if (format !== "wrapperFlexContainerOnlyLogo" && buttonText) {
10136     button.innerHTML += `<p>${buttonText}</p>`;
10137   }
10138   
10139   // Apply styling
10140   // Shadow
10141   if (hasShadow) {
10142     const shadowProperties = `0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)`;
10143     button.style["box-shadow"] = shadowProperties;
10144   }
10145   
10146   // Border radius
10147   const radiusProperties =
10148     style === "rounded"
10149       ? "8px"
10150       : style === "square"
10151       ? "0px"
10152       : style === "fullRounded"
10153       ? format === "wrapperFlexContainerOnlyLogo"
10154         ? "50%"
10155         : "50px"
10156       : undefined;
10157   button.style["border-radius"] = radiusProperties;
10158   
10159   // Size
10160   const sizeProperties =
10161     size === "medium"
10162       ? "12px"
10163       : size === "small"
10164       ? "8px"
10165       : size === "large"
10166       ? "16px"
10167       : "8px";
10168 
10169   button.style["padding-block"] = sizeProperties;
10170 
10171   // Format styling
10172   if (format) {
10173     if (
10174       format === "contentFlexReverse" ||
10175       format === "contentFlexCenterReverse"
10176     ) {
10177       const flexDir = `row-reverse`;
10178       button.style["flex-direction"] = flexDir;
10179     }
10180     
10181     if (
10182       format === "contentFlexCenter" ||
10183       format === "contentFlexCenterReverse"
10184     ) {
10185       const justifyContent = `center`;
10186       button.style["justify-content"] = justifyContent;
10187     } else if (
10188       format === "contentFlex" ||
10189       format === "contentFlexReverse"
10190     ) {
10191       const buttonTextElement = button.querySelector("p");
10192       if (buttonTextElement) {
10193         buttonTextElement.style["flex-grow"] = 1;
10194         buttonTextElement.style["text-align"] = "center";
10195       }
10196     }
10197 
10198     if (format === "wrapperFlexContainerOnlyLogo" && rootRef) {
10199       rootRef.style["flex-direction"] = "row";
10200       rootRef.style["gap"] = "8px";
10201       rootRef.style["display"] = "flex";
10202       rootRef.style["flex-wrap"] = "wrap";
10203 
10204       const sizeMapping = {
10205         small: "52px",
10206         medium: "62px",
10207         large: "72px",
10208       };
10209       const buttonSize = sizeMapping[size] || "52px";
10210 
10211       button.style["margin"] = 0;
10212       button.style["width"] = buttonSize;
10213       button.style["height"] = buttonSize;
10214       button.style["display"] = "flex";
10215       button.style["align-items"] = "center";
10216       button.style["justify-content"] = "center";
10217 
10218       const svgElement = button.querySelector("svg");
10219       if (svgElement) {
10220         svgElement.style["flex"] = "none";
10221       }
10222     }
10223   }
10224 
10225   // Color scheme styling
10226   if (colorScheme === "black") {
10227     button.classList.add("scheme-black");
10228   } else if (colorScheme === "white") {
10229     button.classList.add("scheme-white");
10230   } else if (colorScheme === "custom") {
10231     button.style["background-color"] = backgroundColor;
10232     button.style["color"] = textColor;
10233     button.style["border-color"] = outlineColor;
10234 
10235     const darkenColor = (color, percentage) => {
10236       const value = parseInt(color.slice(1), 16);
10237       const r = Math.max(0, ((value >> 16) & 0xff) - (0xff * percentage));
10238       const g = Math.max(0, ((value >> 8) & 0xff) - (0xff * percentage));
10239       const b = Math.max(0, (value & 0xff) - (0xff * percentage));
10240       return `rgb(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)})`;
10241     };
10242 
10243     button.addEventListener("mouseover", () => {
10244       button.style["background-color"] = darkenColor(backgroundColor, 0.2);
10245     });
10246     button.addEventListener("mouseout", () => {
10247       button.style["background-color"] = backgroundColor;
10248     });
10249   } else if (colorScheme === "match") {
10250     button.classList.add("scheme-match");
10251   } else if (colorScheme === "matchOutline") {
10252     button.classList.add("scheme-match-outline");
10253   }
10254   
10255   // Add click event listener if host is provided
10256   if (host) {
10257     button.addEventListener("click", () => 
10258       onClickSocialLogin({ provider: provider.toLowerCase(), host })
10259     );
10260   }
10261   
10262   return button;
10263 }
10264 
10265 function setupSocialLoginButtons(config, rootRef, data, host) {
10266   // Clear any existing content
10267   rootRef.innerHTML = '';
10268 
10269   const sortedEnabledProviders = config
10270     .filter(c => c.enabledWeb)
10271     .sort((a, b) => a.position - b.position);
10272 
10273   sortedEnabledProviders.forEach(provider => {
10274     const key = provider.provider;
10275     const lowerKey = key.toLowerCase();
10276 
10277     const buttonText = data.format !== "wrapperFlexContainerOnlyLogo"
10278       ? (lowerKey === 'twitter'
10279           ? data.buttonList.twitter.replace('Twitter', 'X')
10280           : data.buttonList[lowerKey])
10281       : null;
10282 
10283     const button = createSocialLoginButton(key, {
10284       theme: data.colorScheme || 'match',
10285       customColor: data.textColor,
10286       format: data.format,
10287       buttonText: buttonText,
10288       hasShadow: data.hasShadow !== undefined ? data.hasShadow : true,
10289       style: data.style,
10290       size: data.size,
10291       colorScheme: data.colorScheme,
10292       backgroundColor: data.backgroundColor,
10293       textColor: data.textColor,
10294       outlineColor: data.outlineColor,
10295       rootRef: rootRef,
10296       host: host
10297     });
10298 
10299     rootRef.appendChild(button);
10300   });
10301 
10302   return rootRef;
10303 }
10304 
10305 function updateAppearance({ formRef, rootRef, host }) {
10306   if (!formRef) return;
10307 
10308   const data = bitloginCache.appearance || {
10309     style: "square",
10310     hasShadow: false,
10311     colorScheme: "match",
10312     backgroundColor: "#FFFFFF",
10313     outlineColor: "#000000",
10314     textColor: "#000000",
10315     position: "bottom",
10316     hideDivider: "false",
10317     dividerText: "OR",
10318     size: "small",
10319     format: "contentFlex",
10320     language: "en",
10321     buttonText: "Continue with",
10322     redirectLink: "/account",
10323     googleOneTap: true,
10324     googleOneTapBanner: true,
10325     customerTag: "bitLogin",
10326     redirectOneTapDesktop: null,
10327     redirectOneTapMobile: null,
10328     buttonList: {
10329       google: "Continue with Google",
10330       facebook: "Continue with Facebook",
10331       apple: "Continue with Apple",
10332       whatsapp: "Continue with WhatsApp",
10333       microsoft: "Continue with Microsoft",
10334       twitter: "Continue with X",
10335       amazon: "Continue with Amazon",
10336       instagram: "Continue with Instagram",
10337       magic_link: "Continue with Magic Link",
10338       mobile_app: "Continue with Mobile App",
10339       linkedin: "Continue with LinkedIn",
10340     },
10341   };
10342 
10343   // Use the new setupSocialLoginButtons function to create and configure all buttons
10344   setupSocialLoginButtons(bitloginCache.config, rootRef, data, host);
10345 
10346   let divider;
10347 
10348   if (!data.hideDivider) {
10349     divider = document.createElement("div");
10350     const dividerStyle = "text-align:center;margin-block:16px";
10351     divider.setAttribute("style", dividerStyle);
10352     divider.innerHTML = data.dividerText;
10353   }
10354 
10355   if (data.position === "bottom") {
10356     if (divider) {
10357       formRef.appendChild(divider);
10358     }
10359     formRef.appendChild(rootRef);
10360   } else if (data.position === "top") {
10361     if (divider) {
10362       formRef.prepend(divider);
10363     }
10364     formRef.prepend(rootRef);
10365   }
10366 }
10367 
10368 
10369 async function onClickSocialLogin({ provider, host }) {
10370   const rand = Math.random().toString();
10371 
10372   const locationQueryString = bitloginCache.location
10373     ? `&${objectToQueryString(bitloginCache.location)}`
10374     : "";
10375 
10376   const width = 800;
10377   const height = 600;
10378   const left = (window.screen.width / 2) - (width / 2);
10379   const top = (window.screen.height / 2) - (height / 2) - 50;
10380 
10381   if(provider === 'whatsapp') {
10382     window.open(
10383       `/apps/bitlogin/whatsapp${locationQueryString ? `?${locationQueryString}` : ''}`,
10384       "mywindow",
10385       `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`
10386     );
10387   } else {
10388     window.open(
10389       `${apiUrl}/login/${provider}?referrerId=${rand}&shop=${host}${locationQueryString}`,
10390       "mywindow",
10391       `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`
10392     );
10393   }
10394 }
10395 
10396 function objectToQueryString(obj) {
10397   return Object.keys(obj)
10398     .map((key) => {
10399       return encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]);
10400     })
10401     .join("&");
10402 }
10403 
10404 async function getLocation() {
10405   if (locationCacheSet) return;
10406 
10407   try {
10408     const response = await fetch("https://ipapi.co/json/");
10409 
10410     if (!response.ok) {
10411       console.error(`error retrieving location...`, response.status);
10412       errorLocation = true;
10413     } else {
10414       const data = await response.json();
10415 
10416       const { city, region, country_name, country_code } = data;
10417 
10418       const formattedLocationData = {
10419         city,
10420         region,
10421         country_name,
10422         country_code,
10423       };
10424 
10425       bitloginCache.location = formattedLocationData;
10426       locationCacheSet = true;
10427       errorLocation = false;
10428     }
10429   } catch (err) {
10430     console.error(`error fetching location`, err);
10431     errorLocation = true;
10432   }
10433 }
10434 
10435 function post(params) {
10436   // The rest of this code assumes you are not using a library.
10437   // It can be made less verbose if you use one.
10438   const form = document.createElement("form");
10439   form.method = "post";
10440   form.action = `/account/login`;
10441   form.acceptCharset = "UTF-8";
10442   form.setAttribute("data-login-with-shop-sign-in", "true");
10443   form.setAttribute("novalidate", "novalidate");
10444 
10445   for (const key in params) {
10446     if (params.hasOwnProperty(key)) {
10447       const hiddenField = document.createElement("input");
10448       hiddenField.type = "hidden";
10449       hiddenField.name = key;
10450       hiddenField.value = params[key];
10451 
10452       form.appendChild(hiddenField);
10453     }
10454   }
10455 
10456   document.body.appendChild(form);
10457   form.submit();
10458 }
10459 
10460 async function setupOneTap({ host, checkoutUrl }) {
10461   if (oneTapSet) return;
10462 
10463   const redirectOneTapDesktop = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapDesktop || '[]'));
10464   const redirectOneTapMobile = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapMobile || '[]'));
10465 
10466   const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
10467   const redirectList = JSON.parse(isMobile ? redirectOneTapMobile : redirectOneTapDesktop);
10468 
10469   const currentPath = window.location.pathname.toLowerCase();
10470   const currentUrl = window.location.href.toLowerCase();
10471 
10472   const shouldHideGoogleOneTap = redirectList.some(({ value }) => {
10473     switch (value) {
10474       case 'home':
10475         return currentPath === '/';
10476       case 'product':
10477         return currentPath.startsWith('/products/');
10478       case 'collections':
10479         return currentPath.startsWith('/collections');
10480       case 'cart':
10481         return currentPath === '/cart';
10482       case 'checkout':
10483         return currentPath.startsWith('/checkouts') && !currentPath.includes('thank_you');
10484       case 'thank_you':
10485         return currentPath.includes('/thank_you');
10486       case 'account':
10487         return currentPath.startsWith('/account');
10488       case 'pages':
10489         return currentPath.startsWith('/pages');
10490       case 'blogs':
10491         return currentPath === '/blogs' || currentPath === '/blogs/news';
10492       case 'blog_post':
10493         return currentPath.startsWith('/blogs/') && currentPath.split('/').length > 3;
10494       default:
10495         return false;
10496     }
10497   });
10498 
10499   if (shouldHideGoogleOneTap) return;
10500 
10501   const oneTapClientId = bitloginCache.config.find(
10502     (config) => config.provider === "GOOGLE"
10503   )?.clientId;
10504 
10505   const isLoggedIn = false;
10506 
10507   if (bitloginCache.appearance.googleOneTap && oneTapClientId && !isLoggedIn) {
10508     const googleOneTapButton = document.createElement("div");
10509     googleOneTapButton.setAttribute("id", "g_id_onload");
10510     googleOneTapButton.setAttribute("data-client_id", oneTapClientId);
10511     googleOneTapButton.setAttribute("data-context", "signin");
10512     googleOneTapButton.setAttribute(
10513       "data-callback",
10514       "handleGoogleOneTapResponse"
10515     );
10516     googleOneTapButton.setAttribute("data-itp_support", "true");
10517 
10518     const googleOneTapScript = document.createElement("script");
10519 
10520     googleOneTapScript.innerHTML += `
10521           function handleGoogleOneTapResponse(response) {
10522               if (response.credential) {
10523                   const idToken = response.credential;
10524                   fetch('${bitLoginBaseUrl}/bitlogin/api/login/google-one-tap', {
10525                       method: 'POST',
10526                       headers: { 'Content-Type': 'application/json' },
10527                       body: JSON.stringify({ idToken, shop: "${host}", ...bitloginCache.location })
10528                   }).then(response => {
10529                       response.json().then((data) => {
10530                         post(
10531                           JSON.parse(
10532                             JSON.stringify({
10533                               "customer[email]": data.email,
10534                               "customer[password]": data.password,
10535                               form_type: "customer_login",
10536                               utf8: "✓",
10537                               return_url: redirectUrl,
10538                             })
10539                           )
10540                         );
10541                       });  
10542                   }).catch(error => {
10543                       console.error('Error occurred:', error);
10544                   });
10545               } else {
10546                   console.error('No credential available');
10547               }
10548           }
10549        `;
10550 
10551     document.body.append(googleOneTapButton);
10552     document.body.append(googleOneTapScript);
10553   }
10554 
10555   oneTapSet = true;
10556 }
10557 
10558 const googleLoginIcon = (
10559   theme,
10560   customColor
10561 ) => `
10562 ${
10563   theme === "match" || theme === "matchOutline" || theme === "custom"
10564     ? `<svg
10565     xmlns='https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif'
10566     xmlns:v='https://vecta.io/nano'
10567     width='24'
10568     height='24'
10569     viewBox='0 0 186.69 190.5'
10570   >
10571     <g transform="translate(1184.583 765.171)"><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="${
10572       theme === "custom" ? customColor : "#4285f4"
10573     }"/><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="${
10574         theme === "custom" ? customColor : "#34a853"
10575       }"/><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="${
10576         theme === "custom" ? customColor : "#fbbc05"
10577       }"/><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="${
10578         theme === "custom" ? customColor : "#ea4335"
10579       }" clip-path="none" mask="none"/></g>
10580   </svg>`
10581     : `<svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="25" height="25" viewBox="0 0 25 25" fill="none">
10582 <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="${
10583         theme !== "black" ? "black" : "white"
10584       }"/>
10585 <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="${
10586         theme !== "black" ? "black" : "white"
10587       }"/>
10588 <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="${
10589         theme !== "black" ? "black" : "white"
10590       }"/>
10591 <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="${
10592         theme !== "black" ? "black" : "white"
10593       }"/>
10594 </svg>`
10595 }`;
10596 
10597 const appleLoginIcon = (
10598   theme,
10599   customColor
10600 ) => `<svg width="24" height="24" viewBox="0 0 19 24" fill="none" xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
10601 <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="${
10602   theme === "custom"
10603     ? customColor
10604     : theme === "match" || theme === "black"
10605     ? "white"
10606     : "black"
10607 }"/>
10608 </svg>`;
10609 
10610 const facebookLoginIcon = (
10611   theme,
10612   customColor
10613 ) => `
10614 ${
10615   theme === "match" || theme === "matchOutline" || theme === "custom"
10616     ? `<svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="25" viewBox="0 0 24 25" fill="none">
10617     <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="${
10618       theme === "custom" ? customColor : theme === "match" ? "white" : "#1977F3"
10619     }"/>
10620     <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="${
10621       theme === "match" ? "#1778f2" : "transparent"
10622     }"/>
10623     </svg>`
10624     : `<svg xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif" width="24" height="25" viewB
10624ox="0 0 24 25" fill="none">
10625 <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="${
10626         theme === "black" ? "white" : "black"
10627       }"/>
10628 <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="${
10629         theme === "black" ? "black" : "white"
10630       }"/>
10631 </svg>`
10632 }`;
10633 
10634 const whatsappLoginIcon = (
10635   theme,
10636   customColor
10637 ) => `<svg
10638   viewBox="0 0 24 24"
10639   fill="none"
10640   width="24"
10641   height="25"
10642   xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif"
10643 >
10644   <g id="SVGRepo_bgCarrier" stroke-width="0"></g>
10645   <g
10646     id="SVGRepo_tracerCarrier"
10647     stroke-linecap="round"
10648     stroke-linejoin="round"
10649   ></g>
10650   <g id="SVGRepo_iconCarrier">
10651     <path
10652       fill-rule="evenodd"
10653       clip-rule="evenodd"
10654       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"
10655       fill="${
10656         theme === "match" || theme === "black"
10657           ? "#ffffff"
10658           : theme === "white"
10659           ? "#000000"
10660           : theme === "matchOutline"
10661           ? "#25d366"
10662           : customColor
10663       }"
10664     ></path>
10665   </g>
10666 </svg>`;
10667 
10668 const microsoftLoginIcon = (
10669   theme,
10670   customColor
10671 ) => `<svg
10672 xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif"
10673 width="25"
10674 height="25"
10675 viewBox="0 0 48 48">
10676 <path fill="${
10677   theme === "match" || theme == "matchOutline"
10678     ? "#ff5722"
10679     : theme === "black"
10680     ? "#ffffff"
10681     : theme === "white"
10682     ? "#000000"
10683     : customColor
10684 }" d="M6 6H22V22H6z" transform="rotate(-180 14 14)"></path>
10685 <path
10686   fill="${
10687     theme === "match" || theme == "matchOutline"
10688       ? "#4caf50"
10689       : theme === "black"
10690       ? "#ffffff"
10691       : theme === "white"
10692       ? "#000000"
10693       : customColor
10694   }"
10695   d="M26 6H42V22H26z"
10696   transform="rotate(-180 34 14)"></path>
10697 <path
10698   fill="${
10699     theme === "match" || theme == "matchOutline"
10700       ? "#ffc107"
10701       : theme === "black"
10702       ? "#ffffff"
10703       : theme === "white"
10704       ? "#000000"
10705       : customColor
10706   }"
10707   d="M26 26H42V42H26z"
10708   transform="rotate(-180 34 34)"></path>
10709 <path fill="${
10710   theme === "match" || theme == "matchOutline"
10711     ? "#03a9f4"
10712     : theme === "black"
10713     ? "#ffffff"
10714     : theme === "white"
10715     ? "#000000"
10716     : customColor
10717 }" d="M6 26H22V42H6z" transform="rotate(-180 14 34)"></path>
10718 </svg>`;
10719 
10720 const twitterLoginIcon = (
10721   theme,
10722   customColor
10723 ) => `<svg
10724 xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif"
10725 width="25"
10726 height="25"
10727 viewBox="0 0 48 48">
10728 <polygon fill="${
10729   theme === "match" || theme === "black"
10730     ? "#ffffff"
10731     : theme === "matchOutline" || theme === "white"
10732     ? "#000000"
10733     : customColor
10734 }" points="41,6 9.929,42 6.215,42 37.287,6"></polygon>
10735 <polygon
10736   fill="${
10737     theme === "match" || theme === "black"
10738       ? "#000000"
10739       : theme === "matchOutline" || theme === "white"
10740       ? "#ffffff"
10741       : customColor
10742   }"
10743   fill-rule="evenodd"
10744   points="31.143,41 7.82,7 16.777,7 40.1,41"
10745   clip-rule="evenodd"></polygon>
10746 <path
10747   fill="${
10748     theme === "match" || theme === "black"
10749       ? "#ffffff"
10750       : theme === "matchOutline" || theme === "white"
10751       ? "#000000"
10752       : customColor
10753   }"
10754   d="M15.724,9l20.578,30h-4.106L11.618,9H15.724 M17.304,6H5.922l24.694,36h11.382L17.304,6L17.304,6z"></path>
10755 </svg>`;
10756 
10757 const amazonLoginIcon = (theme, customColor) => `
10758  <svg
10759       xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif"
10760       x="0px"
10761       y="0px"
10762       width="25"
10763       height="25"
10764       viewBox="0 0 50 50"
10765     >
10766       <path
10767         fill="${
10768           theme === "black"
10769             ? "#ffffff"
10770             : theme === "matchOutline"
10771             ? "#FF9900"
10772             : theme === "white" || theme === "match"
10773             ? "#000000"
10774             : customColor
10775         }"
10776         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"
10777       ></path>
10778     </svg>`;
10779 
10780 const instagramLoginIcon= (theme, customColor) => `
10781     <svg
10782       width="25"
10783       height="25"
10784       viewBox="0 0 25 24"
10785       fill="none"
10786       xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif">
10787       <path
10788         fill-rule="evenodd"
10789         clip-rule="evenodd"
10790         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.
1079064321C8.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"
10791         fill="url(#paint0_radial_378_3535)" />
10792       <path
10793         fill-rule="evenodd"
10794         clip-rule="evenodd"
10795         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"
10796         fill="url(#paint0_radial_378_3535)" />
10797       <path
10798         fill-rule="evenodd"
10799         clip-rule="evenodd"
10800         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.
1080064321C8.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"
10801         fill="url(#paint0_radial_378_3535)" />
10802       <path
10803         fill-rule="evenodd"
10804         clip-rule="evenodd"
10805         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"
10806         fill="url(#paint1_radial_378_3535)" />
10807       <defs>
10808         <radialGradient
10809           id="paint0_radial_378_3535"
10810           cx="0"
10811           cy="0"
10812           r="1"
10813           gradientUnits="userSpaceOnUse"
10814           gradientTransform="translate(17.4 22.7) rotate(-115.776) scale(27.2737 40.5665)">
10815           <stop offset="0.24392" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF1B90' : customColor}" />
10816           <stop offset="0.436673" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#F80261' : customColor}" />
10817           <stop offset="0.688476" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#ED00C0' : customColor}" />
10818           <stop offset="0.776787" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#C500E9' : customColor}" />
10819           <stop offset="0.893155" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#7017FF' : customColor}" />
10820         </radialGradient>
10821         <radialGradient
10822           id="paint1_radial_378_3535"
10823           cx="0"
10824           cy="0"
10825           r="1"
10826           gradientUnits="userSpaceOnUse"
10827           gradientTransform="translate(7.75 19.31) rotate(-57.4396) scale(11.8174 12.2918)">
10828           <stop stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FFD600' : customColor}" />
10829           <stop offset="0.484375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF6930' : customColor}" />
10830           <stop offset="0.734375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" />
10831           <stop offset="1" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" stop-opacity="0" />
10832         </radialGradient>
10833       </defs>
10834     </svg>`;
10835 
10836 const magicLinkLoginIcon = (theme, customColor) => `
10837   <svg
10838     xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif"
10839     width="25"
10840     height="25"
10841     fill="none"
10842     viewBox="0 0 25 25"
10843   >
10844     <path
10845       fill="${
10846         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' || theme === 'white' ? '#000000' : customColor
10847       }"
10848       fillRule="evenodd"
10849       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"
10850       clipRule="evenodd"
10851     ></path>
10852   </svg>`;
10853 
10854 const mobileAppLoginIcon = (theme, customColor) => `
10855   <svg
10856     width="20"
10857     height="24"
10858     viewBox="0 0 12 16"
10859     fill="none"
10860     xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif"
10861   >
10862     <path
10863       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"
10864       fill=${
10865         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#FD823E' : theme === 'white' ? '#000000' : customColor
10866       }
10867     />
10868   </svg>
10869 `;
10870 
10871 const linkedinLoginIcon = (theme, customColor) => `
10872   <svg
10873     xmlns="https://imgbest.store/images/2026/06/01/LOGO-GIF-KEBUN.gif"
10874     width="25"
10875     height="24"
10876     viewBox="0 0 25 24"
10877     fill="none"
10878   >
10879     <path
10880       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"
10881       fill=${
10882         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#0A66C2' : theme === 'white' ? '#000000' : customColor
10883       }
10884     />
10885   </svg>
10886 `;
10887 
10888 function isElementVisible(element) {
10889   return (
10890     document.body.contains(element) &&
10891     getComputedStyle(element).display !== "none" &&
10892     getComputedStyle(element).visibility !== "hidden" &&
10893     getComputedStyle(element).opacity !== "0" &&
10894     !element.hasAttribute("hidden") &&
10895     !isAncestorHidden(element)
10896   );
10897 }
10898 
10899 function isAncestorHidden(element) {
10900   let parent = element.parentElement;
10901   while (parent) {
10902     if (
10903       getComputedStyle(parent).display === "none" ||
10904       getComputedStyle(parent).visibility === "hidden" ||
10905       getComputedStyle(parent).opacity === "0" ||
10906       parent.hasAttribute("hidden")
10907     ) {
10908       return true;
10909     }
10910     parent = parent.parentElement;
10911   }
10912   return false;
10913 }
10914 
10915 function showAlert(message) {
10916   const alertBox = document.createElement("div");
10917   alertBox.textContent = message;
10918   alertBox.style.position = "fixed";
10919   alertBox.style.top = "20px";
10920   alertBox.style.right = "-300px"; // Start off-screen
10921   alertBox.style.backgroundColor = "#000000"; // Black background
10922   alertBox.style.color = "#ffffff"; // White text
10923   alertBox.style.padding = "15px";
10924   alertBox.style.borderRadius = "8px";
10925   alertBox.style.zIndex = "1000";
10926   alertBox.style.transition =
10927     "right 0.5s ease-in-out, opacity 0.5s ease-in-out"; // Transition for sliding and fading
10928   alertBox.style.boxShadow = "0 2px 5px rgba(0, 0, 0, 0.2)"; // Optional shadow for depth
10929 
10930   document.body.appendChild(alertBox);
10931 
10932   // Slide in
10933   requestAnimationFrame(() => {
10934     alertBox.style.right = "20px"; // Move into view
10935     alertBox.style.opacity = "1"; // Ensure opacity is set to 1
10936   });
10937 
10938   // Slide out and remove the alert after a few seconds
10939   setTimeout(() => {
10940     alertBox.style.opacity = "0"; // Fade out
10941     alertBox.style.right = "-300px"; // Move out of view
10942 
10943     // Wait for the transition to finish before removing the element
10944     setTimeout(() => {
10945       document.body.removeChild(alertBox);
10946     }, 500); // Match this duration with the exit transition duration
10947   }, 3000);
10948 }
10949 </script>
10949
10950
10951 <style>
10952.daftarku-fixed-footer {
10953    display: flex;
10954    justify-content: space-around;
10955    position: fixed;
10956    left: 0;
10957    right: 0;
10958    bottom: 0;
10959    z-index: 99;
10960    padding: 5px 0;
10961    border-radius: 40px 40px 0 0;
10962    border-style: dashed;
10963    /* Gradient horizontal kiri-tengah-kanan */
10964    background: linear-gradient(to right, #000000, #2bff00, #000000);
10965    box-shadow: 0 0 12px #dbdbdb;
10966    outline: none;
10967}
10968
10969.daftarku-fixed-footer a {
10970    flex-basis: calc((100% - 15px*6)/5);
10971    text-decoration: none;
10972    display: flex;
10973    flex-direction: column;
10974    justify-content: center;
10975    align-items: center;
10976    color: #fff;
10977    max-width: 75px;
10978    font-size: 12px;
10979    font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
10980}
10981
10982.daftarku-fixed-footer a:hover {
10983    font-weight: bold;
10984}
10985
10986.daftarku-fixed-footer .center {
10987    transform: scale(1.5) translateY(-5px);
10988    background: center no-repeat;
10989    background-size: contain;
10990    background-color: inherit;
10991    border-radius: 50%;
10992}
10993
10994.daftarku-fixed-footer img {
10995    max-width: 30px;
10996    max-height: 30px;
10997    margin-bottom: 0;
10998}
10999</style>
11000
11001     <div class="daftarku-fixed-footer">
11002     <a href="https://terbaru.hasilmacau88.live/" rel="nofollow noopener" target="_blank">
11003         <img layout="intrinsic" height="30px" width="30px" src="https://imgbest.store/images/2026/03/29/favicon-kebuntoto.png" alt="PROMOSI">
11004         PROMO
11005     </a>
11006     <a href="https://terbaru.hasilmacau88.live/" rel="nofollow noopener" target="_blank">
11007         <img layout="intrinsic" height="30px" width="30px" src="https://imgbest.store/images/2026/03/29/favicon-kebuntoto.png" alt="LOGIN">
11008         LOGIN
11009     </a>
11010     <a href="https://terbaru.hasilmacau88.live/" rel="nofollow noopener" target="_blank" class="tada">
11011         <img layout="intrinsic" height="30px" width="30px" src="https://imgbest.store/images/2026/03/29/favicon-kebuntoto.png" alt="DAFTAR">
11012         DAFTAR
11013     </a>
11014     <a href="https://terbaru.hasilmacau88.live/" rel="nofollow noopener" target="_blank"
11015         class="js_live_chat_link live-chat-link">
11016         <img class="live-chat-icon" layout="intrinsic" height="30px" width="30px" src="https://imgbest.store/images/2026/03/29/favicon-kebuntoto.png" alt="Live Chat">
11017         Live Chat
11018     </a>
11019 </div>
11020 </div>
11021 
11021<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"1496c6c168314d5ba25fec5ffebcba92","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
11021
11022 
11022<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"35c0090c7d544a5ebd6cb76e1773c81a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11022
11022
11023<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"1ee2ccbada1c4a408938a31140cbccef","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11023
11023
11024<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"5f80b552d3d14bd6a988a79c643c3b0f","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11024
11024
11025<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"bd4a1bdaab4c445d80d2d23ed1efd4a1","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11025
11025
11026<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"e88ce8c1c33a4ffd98c05e4b7dfde52b","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11026
11026
11027<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"ee65bb49086b47eaa57abf7b51739110","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11027
11027
11028<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"63853f95dbca404ab18d9ff85ffe2440","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11028
11028
11029<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"3da0d7293a774ef694880e1ea14b3463","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11029
11029
11030<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"3da0d7293a774ef694880e1ea14b3463","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11030
11030
11031<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"425e45c4c1f447e9809c4c85d6b60bc7","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11031
11031
11032<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"01790e0cb61849d6b9129ac62d7feae7","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11032
11032
11033<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"0b193c936b0c4e10a51bc038d919919a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11033
11033
11034<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"0b193c936b0c4e10a51bc038d919919a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11034
11034
11035<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"0b193c936b0c4e10a51bc038d919919a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11035
11035
11036<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"0b193c936b0c4e10a51bc038d919919a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11036
11036
11037<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"0b193c936b0c4e10a51bc038d919919a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11037
11037
11038<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"0b193c936b0c4e10a51bc038d919919a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11038
11038
11039<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"7df66b113f9c45c0af3fff2ab1686f2e","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11039
11039
11040<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"7df66b113f9c45c0af3fff2ab1686f2e","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11040
11040
11041<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"7df66b113f9c45c0af3fff2ab1686f2e","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11041
11041
11042<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"7df66b113f9c45c0af3fff2ab1686f2e","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11042
11042
11043<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"7df66b113f9c45c0af3fff2ab1686f2e","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11043
11043
11044<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50df27520d98481eb5da78c4ea0e2f27","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11044
11044
11045<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50df27520d98481eb5da78c4ea0e2f27","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11045
11045
11046<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50df27520d98481eb5da78c4ea0e2f27","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11046
11046
11047<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50df27520d98481eb5da78c4ea0e2f27","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11047
11047
11048<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50df27520d98481eb5da78c4ea0e2f27","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11048
11048
11049<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50df27520d98481eb5da78c4ea0e2f27","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11049
11049
11050<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50df27520d98481eb5da78c4ea0e2f27","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11050
11050
11051<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"50df27520d98481eb5da78c4ea0e2f27","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11051
11051
11052<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"7f2273edfafb4ea984a0077f2af6fb8a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11052
11052
11053<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"7f2273edfafb4ea984a0077f2af6fb8a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11053
11053
11054<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"7f2273edfafb4ea984a0077f2af6fb8a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11054
11054
11055<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"7f2273edfafb4ea984a0077f2af6fb8a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11055
11055
11056<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"b896bcaed7174a3eb1e8bf97ec27b0d4","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11056
11056
11057<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"b896bcaed7174a3eb1e8bf97ec27b0d4","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11057
11057
11058<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":"b896bcaed7174a3eb1e8bf97ec27b0d4","r":1,"spa":2}' crossorigin="anonymous"></script>
11058
11059</body>
11060 </html>

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.