PageSourceSearch

https://ladangwin4d.com/

html ladangwin4d.com collected 2026-10-10 01:42:10 UTC 672,505 bytes, 12,983 lines download raw bytes

1<!doctype html>
2<!--Brumm Brumm-->
3  <html class="no-js">
4    <head>
5   	<meta charset="utf-8" />
6  <meta name="pinterest" content="nosearch">
7  <meta name="pinterest" content="nopin" />
8    <meta http-equiv="X-UA-Compatible" content="IE=edge">
9    <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1">
10    <meta name="apple-itunes-app" content="app-id=1576832504">
11    <link rel="icon" type="image/x-icon" href="https://w4d.kumostock.com/win4d/fresdo/icon-win4d.webp">
12     <!-- Title and description -->
13    <title>WIN4D 🎮 Nikmati Pengalaman Bersama kami Salah Satu Platform Gaming TerpercaWIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesiaya Dukungan Resmi Di Indonesia</title>
14    <meta name="description" content="WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.">
15    <meta name="keywords" content="win4d, win 4d, win4d login, win4d daftar, win4d link, win4d resmi" />
16<link rel="canonical" href="https://ladangwin4d.com/" />
17<link rel="amphtml" href="https://ladangwin4d.com/resmi/" />
18<link rel="alternate" href="https://ladangwin4d.com/resmi/">
19<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="ja">
20<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="en">
21<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="zh-Hant">
22<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="zh-Hans">
23<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="th">
24<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="id">
25<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="ko">
26<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="de">
27<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="es">
28<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="ru">
29<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="fr">
30<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="it">
31<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="ms">
32<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="my">
33<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="pl">
34<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="pt">
35<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="tr">
36<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="vi">
37<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="ar">
38<link rel="alternate" href="https://ladangwin4d.com/resmi/" hreflang="x-default">
39    <!-- /snippets/social-meta-tags.liquid -->
40    <meta property="og:type" content="WIN4D">
41    <meta property="og:title" content="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia">
42    <meta property="og:image" content="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
43    <meta property="og:image:secure_url" content="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
44    <meta property="og:image" content="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
45    <meta property="og:image:secure_url" content="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
46    <meta property="og:image" content="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
47    <meta property="og:image:secure_url" content="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
48    <meta property="og:description" content="WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.">
49    <meta property="og:price:amount" content="10,000-,">
50    <meta property="og:price:currency" content="IDR">
51    <meta property="og:url" content="http://win4dream.com/">
52    <meta property="og:site_name" content="WIN4D">
53    <meta name="twitter:site" content="@WIN4D">
54    <meta name="twitter:card" content="summary">
55    <meta name="twitter:title" content="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia">
56    <meta name="twitter:description" content="WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.">
57    <meta name="twitter:image" content="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
58    <meta name="twitter:image:width" content="600">
59    <meta name="twitter:image:height" content="600">
60    <link rel="shortcut icon" href="https://w4d.kumostock.com/win4d/fresdo/icon-win4d.webp" type="image/png">
61    <meta name="theme-color" content="#ffffff">
62    <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet">
63    <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" />
64    <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201">
64<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer></script>
64
65    
65<script
66      src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js"
67      integrity="sha512-57oZ/vW8ANMjR/KQ6Be9v/+/h6bq9/l3f0Oc7vn6qMqyhvPd1cvKBRWWpzu0QoneImqr2SkmO4MSqU+RpHom3Q=="
68      crossorigin="anonymous"
69      referrerpolicy="no-referrer"
70      defer
71    ></script>
71
72    
72<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js" async="async"></script>
72
73    
73<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js" defer></script>
73<!-- Facebook Pixel Code -->
74    
74<script>
vendor: 462 bytes, lines 74-83
74
75      !function(f,b,e,v,n,t,s)
76      {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
77      n.callMethod.apply(n,arguments):n.queue.push(arguments)};
78      if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
79      n.queue=[];t=b.createElement(e);t.async=!0;
80      t.src=v;s=b.getElementsByTagName(e)[0];
81      s.parentNode.insertBefore(t,s)}(window, document,'script',
82      'https://connect.facebook.net/en_US/fbevents.js');
83      fbq('init', '
83165971065669324
vendor: 42 bytes, lines 83-85
83');
84      fbq('track', 'PageView');
85    
85</script>
85
86    <noscript
87      ><img
88        height="1"
89        width="1"
90        style="display:none"
91        src="https://www.facebook.com/tr?id=165971065669324&ev=PageView&noscript=1"
92    ></noscript>
93    <!-- End Facebook Pixel Code -->
94
95    <!-- Google G4 Script - Disabled by developer (William) to prioritize Mobile App tracking -->
96    <!--
97     Global site tag (gtag.js) - Google Analytics -->
vendor: 75 bytes, lines 97-98
97
98          <script async src="https://www.googletagmanager.com/gtag/js?id=
98G-X26HYP4083
vendor: 23 bytes, lines 98-99
98"></script>
99          
99<script>
100            
vendor: 170 bytes, lines 100-104
100window.dataLayer = window.dataLayer || [];
101            function gtag(){dataLayer.push(arguments);}
102            gtag('js', new Date());
103  
104            gtag('config', '
104G-X26HYP4083
vendor: 15 bytes, lines 104-105
104');
105          
105</script>
105
106      <!-- Global site tag (gtag.js) - Google Analytics -->
107    
108    <div class="button-login-daftar">
109                    <a class="login" href="https://ladangwin4d.com/resmi/" rel="nofollow noreferrer" style="color: white;">
110                        LOGIN
111                    </a>
112                    <a class="register" href="https://ladangwin4d.com/resmi/" rel="nofollow noreferrer" style="color: white;">
113                        DAFTAR
114                    </a>
115                </div>
116  
117    
117<script src="//cdnjs.cloudflare.com/ajax/libs/vissense/0.9.0/vissense.js" defer></script>
117
118  
119    <!-- Bing UET -->
120    
120<script>
121      (function(w,d,t,r,u)
122      {
123          var f,n,i;
124          w[u]=w[u]||[],f=function()
125          {
126              var o={ti:"343051754", tm:"shpfy_ui", enableAutoSpaTracking: true};
127              o.q=w[u],w[u]=new UET(o),w[u].push("pageLoad")
128          },
129          n=d.createElement(t),n.src=r,n.async=1,n.onload=n.onreadystatechange=function()
130          {
131              var s=this.readyState;
132              s&&s!=="loaded"&&s!=="complete"||(f(),n.onload=n.onreadystatechange=null)
133          },
134          i=d.getElementsByTagName(t)[0],i.parentNode.insertBefore(n,i)
135      })
136      (window,document,"script","//bat.bing.com/bat.js","uetq");
137    </script>
137
138    
138<script>
139      window.uetq = window.uetq || [];
140      window.uetq.push('event', '', {"revenue_value":0,"currency":"IDR"});
141    </script>
141
142    <!-- End Bing UET -->
143  
144    <!-- Microsoft Clarity -->
145    
145<script type="text/javascript">
146      (function(c,l,a,r,i,t,y){
147          c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
148          t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
149          y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
150      })(window, document, "clarity", "script", "h7rbxqry9k");
151    </script>
151
152    <!-- End Microsoft Clarity -->
153
154
155<link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all" />
156
157<link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all" />
158<link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css">
159
160<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
vendor: 2 bytes, line 160
160
161<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="text/javascript"></script>
vendor: 2 bytes, line 161
161
162<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
162
163    
163<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
163
164<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog">
165<link rel="alternate" type="application/json+oembed" href="https://ladangwin4d.com/.oembed">
166<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID"></script>
vendor: 2 bytes, line 166
166
167<script id="shopify-features" type="application/json">{"accessToken":"d2e176e59f6658d5056234d6249b3ab4","betas":["rich-media-storefront-analytics"],"domain":"outerbloom.com","predictiveSearch":true,"shopId":15896833,"locale":"en"}</script>
vendor: 2 bytes, line 167
167
168<script>var Shopify = Shopify || {};
169Shopify.shop = "outerbloom1.myshopify.com";
170Shopify.locale = "en";
171Shopify.currency = {"active":"IDR","rate":"1.0"};
172Shopify.country = "ID";
173Shopify.theme = {"name":"web-outerbloom-shopify\/main","id":153139282135,"schema_name":null,"schema_version":null,"theme_store_id":null,"role":"main"};
174Shopify.theme.handle = "null";
175Shopify.theme.style = {"id":null,"handle":null};
176Shopify.cdnHost = "outerbloom.com/cdn";
177Shopify.routes = Shopify.routes || {};
178Shopify.routes.root = "/";</script>
vendor: 2 bytes, line 178
178
179<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 2 bytes, line 179
179
180<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>
vendor: 2 bytes, line 180
180
181<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
vendor: 2 bytes, line 181
181
182<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});
183"></script>
vendor: 2 bytes, line 183
183
184<script>(function() {
185  var isLoaded = false;
186  function asyncLoad() {
187    if (isLoaded) return;
188    isLoaded = true;
189    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"];
190    for (var i = 0; i < urls.length; i++) {
191      var s = document.createElement('script');
192      s.type = 'text/javascript';
193      s.async = true;
194      s.src = urls[i];
195      var x = document.getElementsByTagName('script')[0];
196      x.parentNode.insertBefore(s, x);
197    }
198  };
199  if(window.attachEvent) {
200    window.attachEvent('onload', asyncLoad);
201  } else {
202    window.addEventListener('load', asyncLoad, false);
203  }
204})();</script>
vendor: 2 bytes, line 204
204
205<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>
vendor: 2 bytes, line 205
205
206<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 2 bytes, line 206
206
207<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>
vendor: 2 bytes, line 207
207
208<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>
vendor: 2 bytes, line 208
208
209<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)}};
210</script>
vendor: 2 bytes, line 210
210
211<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
212  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);
213</script>
vendor: 2 bytes, line 213
213
214<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})}}));
215</script>
215
216
217<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
217
218    <!-- /snippets/oldIE-js.liquid -->
219
220
221<!--[if lt IE 9]>
222<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
vendor: 2 bytes, line 222
222
223<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
223
224<link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy" />
225<link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect" />
226<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
226
227<![endif]-->
228
229
230
231  
232    
233  <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">
234<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
235<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://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 2 bytes, line 235
235
236<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://monorail-edge.shopifysvc.com/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: [],webPixelsConfigList: [{"id":"870383831","configuration":"{\"accountID\":\"outerbloom1\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"162380e6ffd3e5a2854f1aabf54537bb","type":"APP","apiClientId":32196493313,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"824574167","configuration":"{\"shop\":\"outerbloom1.myshopify.com\", \"backend\": \"api.bitbybit.studio\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"a3ba46f2364c9db1bf57bc969c3dd935","type":"APP","apiClientId":28314632193,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"521994455","configuration":"{\"config\":\"{\\\"pixel_id\\\":\\\"G-X26HYP4083\\\",\\\"target_country\\\":\\\"ID\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/YjjSCKiog9gZEMHe74Yp\\\"]},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/RHfSCK6og9gZEMHe74Yp\\\"]},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/dMv0CKWog9gZEMHe74Yp\\\",\\\"MC-HY9J2ZJTNZ\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/Y2DbCJ-og9gZEMHe74Yp\\\",\\\"MC-HY9J2ZJTNZ\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/xwQ2CKKog9gZEMHe74Yp\\\",\\\"MC-HY9J2ZJTNZ\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/i9yRCLGog9gZEMHe74Yp\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"G-X26HYP4083\\\",\\\"AW-11020267329\\\/T9poCKuog9gZEMHe74Yp\\\"]}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"b2a88bafab3e21179ed38636efcd8a93","type":"APP","apiClientId":1780363,"privacyPurposes":[]},{"id":"236060887","configuration":"{\"pixel_id\":\"165971065669324\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"6d8c3ef0426b37b2a9b717daeb719f58","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"]},{"id":"62947543","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["MARKETING"],"name":"Meta pixel (migrated)"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0450","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0450","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: 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":"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia","vendor":"Outerbloom Florist","id":"8144957800663","untranslatedTitle":"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia","url":"\/products\/blossom-shine","type":"WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya."},"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\":\"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia\",\"vendor\":\"Outerbloom Florist\",\"id\":\"8144957800663\",\"untranslatedTitle\":\"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia\",\"url\":\"\/products\/blossom-shine\",\"type\":\"WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.\"},\"id\":\"44083045826775\",\"image\":{\"src\":\"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426\"},\"sku\":\"OBVSTF1086\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"}}]]"});</script>
236<script>
237  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
238  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
239  window.ShopifyAnalytics.meta.currency = 'IDR';
240  var meta = {"product":{"id":8144957800663,"gid":"gid:\/\/shopify\/Product\/8144957800663","vendor":"Outerbloom Florist","type":"WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.","variants":[{"id":44083045826775,"price":1000000
241  ,"name":"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia","public_title":null,"sku":"OBVSTF1086"}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":8144957800663}};
242  for (var attr in meta) {
243    window.ShopifyAnalytics.meta[attr] = meta[attr];
244  }
245</script>
vendor: 2 bytes, line 245
245
246<script class="analytics">
247  (function () {
248    var customDocumentWrite = function(content) {
249      var jquery = null;
250
251      if (window.jQuery) {
252        jquery = window.jQuery;
253      } else if (window.Checkout && window.Checkout.$) {
254        jquery = window.Checkout.$;
255      }
256
257      if (jquery) {
258        jquery('body').append(content);
259      }
260    };
261
262    var hasLoggedConversion = function(token) {
263      if (token) {
264        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
265      }
266      return false;
267    }
268
269    var setCookieIfConversion = function(token) {
270      if (token) {
271        var twoMonthsFromNow = new Date(Date.now());
272        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
273
274        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
275      }
276    }
277
278    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
279    if (trekkie.integrations) {
280      return;
281    }
282    trekkie.methods = [
283      'identify',
284      'page',
285      'ready',
286      'track',
287      'trackForm',
288      'trackLink'
289    ];
290    trekkie.factory = function(method) {
291      return function() {
292        var args = Array.prototype.slice.call(arguments);
293        args.unshift(method);
294        trekkie.push(args);
295        return trekkie;
296      };
297    };
298    for (var i = 0; i < trekkie.methods.length; i++) {
299      var key = trekkie.methods[i];
300      trekkie[key] = trekkie.factory(key);
301    }
302    trekkie.load = function(config) {
303      trekkie.config = config || {};
304      trekkie.config.initialDocumentCookie = document.cookie;
305      var first = document.getElementsByTagName('script')[0];
306      var script = document.createElement('script');
307      script.type = 'text/javascript';
308      script.onerror = function(e) {
309        var scriptFallback = document.createElement('script');
310        scriptFallback.type = 'text/javascript';
311        scriptFallback.onerror = function(error) {
312                var Monorail = {
313      produce: function produce(monorailDomain, schemaId, payload) {
314        var currentMs = new Date().getTime();
315        var event = {
316          schema_id: schemaId,
317          payload: payload,
318          metadata: {
319            event_created_at_ms: currentMs,
320            event_sent_at_ms: currentMs
321          }
322        };
323        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
324      },
325      sendRequest: function sendRequest(endpointUrl, payload) {
326        // Try the sendBeacon API
327        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
328          var blobData = new window.Blob([payload], {
329            type: 'text/plain'
330          });
331
332          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
333            return true;
334          } // sendBeacon was not successful
335
336        } // XHR beacon
337
338        var xhr = new XMLHttpRequest();
339
340        try {
341          xhr.open('POST', endpointUrl);
342          xhr.setRequestHeader('Content-Type', 'text/plain');
343          xhr.send(payload);
344        } catch (e) {
345          console.log(e);
346        }
347
348        return false;
349      },
350      isIos12: function isIos12() {
351        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
352      }
353    };
354    Monorail.produce('monorail-edge.shopifysvc.com',
355      'trekkie_storefront_load_errors/1.1',
356      {shop_id: 15896833,
357      theme_id: 153139282135,
358      app_name: "storefront",
359      context_url: window.location.href,
360      source_url: "//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js"});
361
362        };
363        scriptFallback.async = true;
364        scriptFallback.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js';
365        first.parentNode.insertBefore(scriptFallback, first);
366      };
367      script.async = true;
368      script.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js';
369      first.parentNode.insertBefore(script, first);
370    };
371    trekkie.load(
372      {"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}}
373    );
374
375    var loaded = false;
376    trekkie.ready(function() {
377      if (loaded) return;
378      loaded = true;
379
380      window.ShopifyAnalytics.lib = window.trekkie;
381
382      var originalDocumentWrite = document.write;
383      document.write = customDocumentWrite;
384      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
385      document.write = originalDocumentWrite;
386
387      window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":8144957800663,"shopifyEmitted":true});
388
389      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
390      var token = match? match[1]: undefined;
391      if (!hasLoggedConversion(token)) {
392        setCookieIfConversion(token);
393        window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.","nonInteraction":true,"remote":false},undefined,undefined,{"shopifyEmitted":true});
394      window.ShopifyAnalytics.lib.track("monorail:\/\/trekkie_storefront_viewed_product\/1.1",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.","nonInteraction":true,"remote":false,"referer":"https:\/\/outerbloom.com\/products\/blossom-shine"});
395      }
396    });
397
398
399        var eventsListenerScript = document.createElement('script');
400        eventsListenerScript.async = true;
401        eventsListenerScript.src = "//outerbloom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-abeef7a0.js";
402        document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
403
404})();</script>
404
405  
405<script>
406  if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
407    window.ga = function ga() {
408      (window.ga.q = window.ga.q || []).push(arguments);
409      if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
410        window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
411      }
412      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.");
413    };
414    if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
415      window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
416    }
417  }
418</script>
vendor: 2 bytes, line 418
418
419<script
420  defer
421  src="https://outerbloom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-2.0.13.min.js"
422  data-application="storefront-renderer"
423  data-shop-id="15896833"
424  data-render-region="gcp-asia-southeast1"
425  data-page-type="product"
426  data-theme-instance-id="153139282135"
427  data-theme-name=""
428  data-theme-version=""
429  data-monorail-region="shop_domain"
430  data-resource-timing-sampling-rate="10"
431  data-shs="true"
432  data-shs-beacon="true"
433  data-shs-export-with-fetch="true"
434  data-shs-logs-sample-rate="1"
435></script>
435
436</head><body
437    data-template="product"
438    id="blossom-shine"
439    class="template-product template-product"
440  >
441    <!-- Google Tag Manager (noscript) -->
vendor: 90 bytes, lines 441-444
441
442    <noscript
443      ><iframe
444        src="https://www.googletagmanager.com/ns.html?id=
444GTM-MF9VVZX
vendor: 129 bytes, lines 444-450
444"
445        height="0"
446        width="0"
447        style="display:none;visibility:hidden"
448      ></iframe
449    ></noscript>
450    
450<!-- End Google Tag Manager (noscript) -->
451
452    
453
454    <div class="header-wrapper">
455      
456      <div id="shopify-section-NotifBar" class="shopify-section m-0">
457
458<style>
459  #notification {z-index: 99;width: 100%;transition: top 0.2s ease-in-out;}
460  #notification.promo-up {top: -48px!important;}
461  .promo-bg {width: 100%;padding: 6px 0;background-color: #242424;}
462  .notification__message p {margin: 0;color: #000000;font-size: 14px!important;}
463  .notification__message p a {text-decoration: underline;color: #ffffff;}
464  @media (max-width: 991px){
465    .notification__message p {font-size: 14px!important;}
466  }
467</style>
468<input id="clearCookie" class="hide" type="button" value="Delete Cookie" />
469<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">
470  <div class="page-width notification__inner ">
471    
472    
473    <div class="notification__message text-center">
474      <p><a href="https://ladangwin4d.com/" title="WIN4D">WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia</a></p>
475    </div>
476  </div>
477</div>
478
479
480
481
482</div>
483      <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"/>
484
485
486<header style="background-image: url(https://ladangwin4d.com/resmi/untitleddesign-win4d.png); background-attachment: fixed;">
487  <div class="container">
488    <div class="header-container row justify-content-between pl-lg-0 pr-lg-0">
489        <a href="https://ladangwin4d.com/">
490        <img src="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" alt="logo-WIN4D" style="width: 190px;"></a>
491      <link href="https://w4d.kumostock.com/win4d/fresdo/icon-win4d.webp" rel="shortcut icon" type="image/x-icon" />
492        <div id="menu-hamburger" class="d-lg-none">
493          <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="16" height="10" viewBox="0 0 16 10" fill="none">
494  <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"/>
495</svg>
496
497        <a href="/"><svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" viewBox="0 0 854 78.29">
498  <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>
499</svg>
500</a>
501      </div>
502
503      <div class="header-icon-right header-icons col-3">
504        <div class="icon icon-account-header d-none d-lg-block">
505          <a href="https://ladangwin4d.com/">
506            <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="20" height="21" viewBox="0 0 20 21" fill="none">
507  <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"/>
508  <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"/>
509</svg>
510
511          </a>
512        </div>
513        <div class="icon icon-wishlist-header">
514          <a href="https://ladangwin4d.com/">
515            <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
516  <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
5166 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"/>
517</svg>
518
519            <span class="wishlist-count d-none">0</span>
520          </a>
521        </div>
522        <div class="icon icon-cart-header">
523          <a href="https://ladangwin4d.com/">
524            <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="22" height="21" viewBox="0 0 22 21" fill="none">
525  <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"/>
526  <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"/>
527</svg>
528
529          </a>
530        </div>
531      </div>
532    </div>
533  </div>
534</header>
535
536<nav class="nav-header" style="background-color: #242424;">
537  <div class="nav-account-mobile row m-0 d-lg-none">
538    <div class="col-6 welcome-cust p-0">
539      
540        <h1 class="logo">
541    <a href="https://ladangwin4d.com/">
542        <img src="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" alt="WIN4D" style="max-height:60px;">
543    </a>
544</h1>
545
546      
547    </div>
548    
549      <div class="col-6 login-register text-right p-0">
550        <a href="https://ladangwin4d.com/resmi/">Log In</a> | <a href="https://ladangwin4d.com/resmi/">Sign Up</a>
551      </div>
552  </div>
553  <ul class="nav-menu container">
554    
555      <li class="nav-menu container">
556        <a href="https://ladangwin4d.com/">
557          <span style="color: #ffffff;">WIN4D</span>
558        
559    
560      <li class=" nav-menu container">
561        <a href="https://ladangwin4d.com/">
562          <span style="color: #ffffff;">WIN 4D</span>
563          
564    
565      <li class=" nav-menu container">
566        <a href="https://ladangwin4d.com/">
567          <span style="color: #ffffff;">WIN4D LOGIN</span>
568    
569      <li class=" nav-menu container">
570        <a href="https://ladangwin4d.com/">
571          <span style="color: #ffffff;">WIN4D DAFTAR</span>
572
573      <li class=" nav-menu container">
574        <a href="https://ladangwin4d.com/">
575          <span style="color: #ffffff;">WIN4D LINK</span>
576
577      <li class=" nav-menu container">
578        <a href="https://ladangwin4d.com/">
579          <span style="color: #ffffff;">WIN4D RESMI</span>
580      
581<div class="overlay-nav">
582  <!-- Mobile Close Button in Overlay -->
583  <button id="nav-close" class="nav-close-btn d-lg-none">
584    <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
585      <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
586    </svg>
587  </button>
588</div>
589
590<script>
591  if ($(window).width() < 992) {
592    // Level 1 menu accordion (main menu items)
593    $(".nav-menu .nav-menu container > a").click(function(e){
594      e.preventDefault()
595      const parentLi = $(this).parent()
596      const isCurrentlyOpen = parentLi.hasClass("menu-open")
597      
598      // Close all other open menus (accordion behavior)
599      $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open")
600      $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp()
601      
602      // Toggle current menu
603      if (isCurrentlyOpen) {
604        parentLi.removeClass("menu-open")
605        $(this).next(".megamenu").slideUp()
606      } else {
607        parentLi.addClass("menu-open")
608        $(this).next(".megamenu").slideDown()
609      }
610    })
611
612    // Level 2 menu accordion (submenu items with grandchildren)
613    $(document).on('click', '.dropdown-menu .has-submenu > a', function(e){
614      e.preventDefault()
615      const parentLi = $(this).parent()
616      const isCurrentlyOpen = parentLi.hasClass("submenu-open")
617      const grandchild = $(this).next(".grandchild")
618      
619      // Close all other open submenus in the same dropdown (accordion behavior)
620      parentLi.siblings('.has-submenu').removeClass("submenu-open")
621      parentLi.siblings('.has-submenu').find('.grandchild').slideUp()
622      parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)')
623      
624      // Toggle current submenu
625      if (isCurrentlyOpen) {
626        parentLi.removeClass("submenu-open")
627        grandchild.slideUp()
628        $(this).find('.chevron-right').css('transform', 'rotate(0deg)')
629      } else {
630        parentLi.addClass("submenu-open")
631        grandchild.slideDown()
632        $(this).find('.chevron-right').css('transform', 'rotate(90deg)')
633      }
634    })
635
636    $("#menu-hamburger").click(function(e){
637      e.preventDefault()
638      $("body").toggleClass("nav_open")
639    })
640    
641    // Handle close button click
642    $("#nav-close").click(function(e){
643      e.preventDefault()
644      $("body").removeClass("nav_open")
645      // Close all open menus when close button is clicked
646      $(".nav-menu .nav-menu container").removeClass("menu-open")
647      $(".nav-menu .megamenu").slideUp()
648      $(".dropdown-menu .has-submenu").removeClass("submenu-open")
649      $(".dropdown-menu .grandchild").slideUp()
650      $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)')
651    })
652  }
653
654  $(".overlay-nav").click(function(e){
655      e.preventDefault()
656      $("body").removeClass("nav_open")
657      // Close all open menus when overlay is clicked
658      $(".nav-menu .nav-menu container").removeClass("menu-open")
659      $(".nav-menu .megamenu").slideUp()
660      $(".dropdown-menu .has-submenu").removeClass("submenu-open")
661      $(".dropdown-menu .grandchild").slideUp()
662      $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)')
663  })
664</script>
664
665
666
667</div>
668
669      <div id="shopify-section-search-popup" class="shopify-section m-0"><style>
670  #search-trigger {
671    cursor: pointer;
672  }
673  #search-popup {
674    display: none;
675    position: fixed;
676    left: 0;
677    width: 100%;
678    top: 0;
679    height: 100%;
680    justify-content: center;
681    z-index: 9999;
682    background: rgb(196 196 196 / 30%);
683  }
684  #search-input {
685    align-self: center;
686    width: 100%;
687    height: 80px;
688    position: absolute;
689    top: 0;
690    border-bottom: 0.5px solid #A3A3A3;
691    background-color: #fff;
692  }
693  #search-input * {
694    align-self: center;
695  }
696  #search-type {
697    width: 100%;
698    border: none;
699    padding-right: 20px;
700    padding-left: 20px;
701    font-size: 16px;
702    color: #757575;
703  }
704  #search-btn {
705    font-size: 16px;
706    font-weight: 500;
707  }
708  #search-result {
709    min-height: 490px;
710    width: 100%;
711    padding-top: 80px;
712  }
713  #search-result .container {
714    background-color: #fff;
715    padding: 20px 40px;
716  }
717  body.search-popup-open {
718  /* .search-popup-open */
719    overflow: hidden;
720  }
721  .search-popup-open #loc_delivery {
722    display: none
723  }
724  .search-header svg {
725    display: none;
726    cursor: pointer;
727  }
728  .wrapper-search-popup {
729    max-height: calc(100vh - 150px);
730    overflow-y: auto;
731    overflow-x: hidden;
732  }
733
734  .group-recommend {
735    padding: 20px 40px;
736  }
737
738  .resultsearch {
739    display: none;
740  }
741  .results { padding: 20px 40px }
742  .resultsearch label {
743    font-weight: 600;
744    padding-bottom: 20px;
745    display: block;
746    margin-bottom: 20px;
747    border-bottom: 1px solid #AAAAAA;
748  }
749
750  ul.result_product {
751    max-height: 300px;
752    overflow: auto;
753  }
754
755  .group-promotion ul {
756    margin: 0;
757  }
758  .group-promotion li {
759    list-style: none;
760    margin-bottom: 12px;
761  }
762  .group-promotion li a {
763    color: inherit;
764  }
765
766  .group-recent {
767    position: relative;
768    padding: 20px 40px;
769  }
770  .group-recent ul {
771    margin: 0;
772  }
773  .group-recent li {
774    list-style: none;
775    display: inline-block;
776    margin-right: 60px;
777  }
778  .group-recent li a {
779    color: inherit;
780  }
781
782  .last-search svg {
783    width: 20px;
784    vertical-align: middle;
785  }
786  ul.last-search a {
787    vertical-align: middle;
788    padding: 0 10px;
789  }
790  ul.last-search li span {
791    cursor: pointer;
792  }
793  .delete-all-history {
794    position: absolute;
795    top: 25px;
796    right: 40px;
797    text-decoration: underline;
798    color: #e11d1d;
799    cursor: pointer;
800    font-size: 12px;
801  }
802
803  form.search.search-modal__form {
804    position: relative;
805  }
806
807  button.search__button svg {
808    width: 25px;
809    color: #495057;
810    fill: #757582;
811  }
812
813  button.search__button.field__button {
814    position: absolute;
815    top: 50%;
816    margin-top: -12px;
817  }
818
819  .close-search {
820    display: none;
821    position: absolute;
822    right: 65px;
823    top: 10px;
824    cursor: pointer;
825  }
826
827  .site-overlay {
828    position: fixed;
829    top: 0;
830    width: 100vw;
831    height: 100vh;
832    z-index: 1000;
833    background: #0000005c;
834    visibility: hidden;
835    opacity: 0;
836    pointer-events: none;
837    transition: all .3s linear;
838    display: block !important;
839  }
840
841  .search-popup-open .site-overlay {
842    opacity: 1;
843    visibility: visible;
844    pointer-events: all;
845    z-index: -1;
846    cursor: pointer;
847  }
848
849  @media (min-width: 991px) {
850    .group-recent ul {
851      column-count: 3;
852    }
853    .group-promotion li a {
854      font-size: 12px;
855      font-weight: 400;
856    }
857    .group-recent li a {
858      font-size: 12px;
859      font-weight: 400;
860    }
861  }
862
863  .moreresult {
864    padding: 10px 40px;
865    border-top: 1px solid #AAAAAA;
866  }
867  .moreresult * {
868    align-self: center;
869  }
870  .moreresult p {
871    margin: 0;
872    font-size: 12px !important;
873  }
874  .moreresult svg {
875    width: 13px;
876  }
877
878  @media (max-width: 992px) {
879    .icon-key-mobile {
880        height: auto!important;
881        width: 10px!important;
882    }
883    body.grid-view.search-popup-open .products {
884      -ms-flex: 0 0 100%!important;
885      flex: 0 0 100%!important;
886      max-width: 100%!important;
887    }
888    button.search__button svg {
889      width: 20px;
890    }
891    #search-result {
892      padding-left: 0;
893      padding-right: 0;
894    }
895    #search-result {
896      padding-top: 55px;
897    }
898    #search-input {
899      height: 55px;
900    }
901    .group-recommend {
902      padding: 20px;
903    }
904    #search-input .container {
905      padding: 0 20px;
906    }
907    #search-type {
908      font-size: 14px;
909    }
910    #search-btn {
911      font-size: 12px;
912      text-decoration: underline;
913    }
914    .results {
915      padding: 20px;
916    }
917    .group-recommend h3 {
918      font-size: 16px;
919    }
920    .products .card-body {
921      padding: 8px 0px 10px;
922    }
923    .moreresult {
924      padding: 10px 20px;
925    }
926  }
927</style>
928 <style type="text/css">
929        div.advertisement-placeholder {
930            text-align: center;
931            padding-bottom: 20px;
932            display: flex;
933            flex-direction: column;
934            justify-content: center;
935        }
936        div.advertisement-text p {
937            margin: 0;
938            font-family: Open Sans;
939            font-style: normal;
940            font-weight: normal;
941            font-size: 10px;
942            line-height: 20px;
943            color: #999999;
944        }
945        div.advertisement-banner {
946            margin: 0px auto;
947        }
948        div#div-gpt-ad-billboard-placeholder {
949            width: 996px;
950            margin: 0 auto;
951            background: #F5F5F5;
952            padding-bottom: unset !important;
953            min-height: 200px;
954        }
955        div#div-gpt-ad-lb-placeholder {
956            background: #F5F5F5;
957            padding-bottom: unset !important;
958            min-height: 280px;
959        }
960        .faq-section{
961            max-width:1200px;
962            margin:50px auto;
963            padding:40px 20px;
964            position:relative;
965            background-color: rgba(0, 0, 0, 0.1);
966            backdrop-filter: blur(25px);
967            border-radius: 20px;
968            }
969        
970        .faq-section::before{
971            content:"";
972            position:absolute;
973            top:0;left:50%;
974            transform:translateX(-50%);
975            width:80%;
976            height:2px;
977            background:linear-gradient(90deg,transparent,#fffb00,transparent)
978            }
979            
980        .faq-section h2{
981            text-align:center;
982            font-size:34px;font-weight:700;
983            margin-bottom:50px;
984            background: linear-gradient(135deg, #fffb00, #fffb00, #fffb00);
985            -webkit-background-clip:text;
986            -webkit-text-fill-color:transparent;
987            background-clip:text;
988            font-family:"Poppins",sans-serif;letter-spacing:1px
989        }
990        
991        .faq-container{
992            display:flex;
993            flex-direction:column;
994            gap:25px
995        }
996        
997        .faq-item{
998            background:linear-gradient(145deg,#0a0a0a,#1a1a1a);
999            border:2px solid #ffd700;
1000            border-radius:20px;overflow:hidden;
1001            transition:all .4s ease;box-shadow:0 5px 20px rgba(0,0,0,0.5)
1002        }
1003        
1004        .faq-item:hover{
1005            border-color:#ffd700;
1006            transform:translateX(10px);
1007            box-shadow:0 12px 35px rgba(253, 4, 4, 0.25)
1008        }
1009
1010        .faq-question{width:100%;
1011            padding:28px 35px;background:transparent;
1012            color:#ffffff;
1013            font-size:18px;
1014            font-weight:600;
1015            text-align:left;
1016            border:none;cursor:pointer;
1017            display:flex;
1018            justify-content:space-between;
1019            align-items:center;
1020            font-family:"Poppins",sans-serif;
1021            transition:all .3s ease
1022        }
1023        
1024        .faq-question:hover{
1025            color:#fffb00
1026        }
1027        
1028        .faq-question::after{
1029            content:'+';
1030            font-size:32px;
1031            font-weight:300;
1032            transition:all .4s ease;
1033            color:#fffb00;
1034            width:40px;
1035            height:40px;
1036            display:flex;
1037            align-items:center;
1038            justify-content:center;
1039            border:2px solid #ffd700;border-radius:50%;
1040            background:rgba(0, 0, 0, 0.1)
1041        }
1042        
1043        .faq-item.active .faq-question::after{
1044            transform:rotate(135deg);
1045            background:linear-gradient(135deg,#ffd700,#ffd700);
1046            color:#000;border-color:transparent
1047        }
1048        
1049        .faq-answer{
1050            max-height:0;
1051            overflow:hidden;
1052            transition:max-height .5s ease,padding .5s ease;
1053            background:linear-gradient(180deg,rgba(253,228,4,0.05),transparent);
1054            padding:0 35px
1055        }
1056        
1057        .faq-item.active .faq-answer{
1058            max-height:800px;padding:30px 35px;
1059            border-top:1px solid rgba(253, 4, 4, 0.3)
1060        }
1061        
1062        .faq-answer p{
1063            color:#e0e0e0;
1064            font-size:16px;
1065            line-height:2;
1066            margin:0;
1067            font-family:"Poppins",sans-serif
1068        }
1069
1070        @media
1071            (max-width:768px)
1072        {
1073        
1074        .faq-section
1075            {padding:30px 15px}
1076        
1077        .faq-section h2
1078            {font-size:26px}
1079        
1080        .faq-question
1081            {font-size:16px;
1082            padding:22px 25px}
1083        
1084        .faq-question::after
1085            {width:35px;
1086            height:35px;
1087            font-size:28px}
1088        
1089        .faq-answer
1090            {padding:0 25px}
1091        
1092        .faq-item.active .faq-answer
1093            {padding:25px}
1094        
1095        .faq-item:hover
1096            {transform:translateX(5px)}
1097            }
1098    </style>
1099<div id="search-popup">
1100  <div id="search-input" class="row">
1101    <div class="container w-100">
1102      <form
1103        action="/search"
1104        method="get"
1105        role="search"
1106        class="search search-modal__form d-flex justify-content-between"
1107      >
1108        <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="20" height="20" viewBox="0 0 20 20" fill="none">
1109  <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"/>
1110</svg>
1111
1112        <input type="hidden" name="type" value="product">
1113        <input
1114          type="text"
1115          id="search-type"
1116          name="q"
1117          class="search-popup"
1118          placeholder="Gifts that linger: Uncover treasures for cherished moments."
1119        >
1120        <div class="close-search"><svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
1121  <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 
112112.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"/>
1122</svg>
1123</div>
1124        <button id="search-btn">Search</button>
1125      </form>
1126    </div>
1127  </div>
1128  <div id="search-result" class="container m-auto">
1129    <div class="container p-0">
1130      <div class="group-promotion">
1131        <div class="resultsearch">
1132          <div class="row results">
1133            <div class="col-12 col-lg-6 mb-3 mb-lg-0">
1134              <label>SUGGESTIONS</label>
1135              <ul class="result_collection"></ul>
1136            </div>
1137            <div class="col-12 col-lg-6">
1138              <label>PRODUCTS</label>
1139              <ul class="result_product"></ul>
1140            </div>
1141          </div>
1142          <div class="d-flex justify-content-between moreresult m-0">
1143            <p>Search for<span></span></p>
1144            <svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="32" height="32" viewBox="0 0 32 32">
1145<title>icon-arrow-right</title>
1146<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>
1147</svg>
1148          </div>
1149        </div>
1150      </div>
1151      <div class="group-recent hide">
1152        <h3>RECENT SEARCH</h3>
1153        <span class="delete-all-history">Hapus riwayat</span>
1154        <ul class="last-search"></ul>
1155      </div>
1156      <div class="group-recommend">
1157        <h3>YOU MAY ALSO LIKE</h3>
1158        
1159        
1160          <div class="row popup-recommend c-products-grid infinite-case product-multi-">
1161            <div class="swiper-wrapper justify-content-between" style="margin-left:1px;">
1162              
1163                
1164                  <div class="swiper-slide card">
1165                    
1166
1167
1168
1169<div class="products" data-lazy="false">
1170  <div class="bg-products">
1171    <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake">
1172      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1173  <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.
117311233C11.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"/>
1174</svg>
1175
1176    </div>
1177    <a href="/products/mid-autumn-of-love-mooncake">
1178      
1179      <div class="product-card-img-container p-0 position-relative">
1180        
1181        <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">
1182      </div>
1183      <div class="card-body product-card-info">
1184        <h5 class="h5 mb-0">
1185          Mid Autumn of Love Mooncake
1186        </h5>
1187        <div class="product-card-price">
1188          
1189          <div class="product-price-sale">
1190            <s class="product-card-price-before card-money">Rp 588.000</s>
1191            <span class="product-card-discount small">	
1192              (-40%)
1193            </span> 	
1194          </div>
1195          
1196          
1197          
1198          <div class="price-discount">
1199            <h4 class="product-card-price-after card-money">Rp 348.000</h4>
1200          </div>
1201          
1202          
1203          
1204          
1205          
1206        </div>
1207        
1208      </div>
1209    </a>
1210  </div>
1211  
1212</div>
1213
1214                  </div>
1215                
1216              
1217                
1218                  <div class="swiper-slide card">
1219                    
1220
1221
1222
1223<div class="products" data-lazy="false">
1224  <div class="bg-products">
1225    <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake">
1226      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1227  <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.
122711233C11.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"/>
1228</svg>
1229
1230    </div>
1231    <a href="/products/mid-autumn-of-joy-mooncake">
1232      
1233      <div class="product-card-img-container p-0 position-relative">
1234        
1235        <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">
1236      </div>
1237      <div class="card-body product-card-info">
1238        <h5 class="h5 mb-0">
1239          Mid Autumn of Joy Mooncake
1240        </h5>
1241        <div class="product-card-price">
1242          
1243          <div class="product-price-sale">
1244            <s class="product-card-price-before card-money">Rp 888.000</s>
1245            <span class="product-card-discount small">	
1246              (-33%)
1247            </span> 	
1248          </div>
1249          
1250          
1251          
1252          <div class="price-discount">
1253            <h4 class="product-card-price-after card-money">Rp 588.000</h4>
1254          </div>
1255          
1256          
1257          
1258          
1259          
1260        </div>
1261        
1262      </div>
1263    </a>
1264  </div>
1265  
1266</div>
1267
1268                  </div>
1269                
1270              
1271                
1272                  <div class="swiper-slide card">
1273                    
1274
1275
1276
1277<div class="products" data-lazy="false">
1278  <div class="bg-products">
1279    <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake">
1280      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1281  <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.
128111233C11.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"/>
1282</svg>
1283
1284    </div>
1285    <a href="/products/mid-autumn-of-fortune-mooncake">
1286      
1287      <div class="product-card-img-container p-0 position-relative">
1288        
1289        <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">
1290      </div>
1291      <div class="card-body product-card-info">
1292        <h5 class="h5 mb-0">
1293          Mid Autumn of Fortune Mooncake
1294        </h5>
1295        <div class="product-card-price">
1296          
1297          <div class="product-price-sale">
1298            <s class="product-card-price-before card-money">Rp 1.188.000</s>
1299            <span class="product-card-discount small">	
1300              (-33%)
1301            </span> 	
1302          </div>
1303          
1304          
1305          
1306          <div class="price-discount">
1307            <h4 class="product-card-price-after card-money">Rp 788.000</h4>
1308          </div>
1309          
1310          
1311          
1312          
1313          
1314        </div>
1315        
1316      </div>
1317    </a>
1318  </div>
1319  
1320</div>
1321
1322                  </div>
1323                
1324              
1325                
1326                  <div class="swiper-slide card">
1327                    
1328
1329
1330
1331<div class="products" data-lazy="false">
1332  <div class="bg-products">
1333    <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake">
1334      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1335  <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.
133511233C11.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"/>
1336</svg>
1337
1338    </div>
1339    <a href="/products/mid-autumn-festival-mooncake">
1340      
1341      <div class="product-card-img-container p-0 position-relative">
1342        
1343        <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">
1344      </div>
1345      <div class="card-body product-card-info">
1346        <h5 class="h5 mb-0">
1347          Mid Autumn Festival Mooncake
1348        </h5>
1349        <div class="product-card-price">
1350          
1351          <div class="product-price-sale">
1352            <s class="product-card-price-before card-money">Rp 1.288.000</s>
1353            <span class="product-card-discount small">	
1354              (-23%)
1355            </span> 	
1356          </div>
1357          
1358          
1359          
1360          <div class="price-discount">
1361            <h4 class="product-card-price-after card-money">Rp 988.000</h4>
1362          </div>
1363          
1364          
1365          
1366          
1367          
1368        </div>
1369        
1370      </div>
1371    </a>
1372  </div>
1373  
1374</div>
1375
1376                  </div>
1377                
1378              
1379                
1380                  <div class="swiper-slide card">
1381                    
1382
1383
1384
1385<div class="products" data-lazy="false">
1386  <div class="bg-products">
1387    <div class="wishlist-toggle" data-product-handle="the-jade-bouquet">
1388      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1389  <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.
138911233C11.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"/>
1390</svg>
1391
1392    </div>
1393    <a href="/products/the-jade-bouquet">
1394      
1395      <div class="product-card-img-container p-0 position-relative">
1396        
1397        <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">
1398      </div>
1399      <div class="card-body product-card-info">
1400        <h5 class="h5 mb-0">
1401          The Jade Bouquet
1402        </h5>
1403        <div class="product-card-price">
1404          
1405          <div class="product-price-sale">
1406            <s class="product-card-price-before card-money">Rp 435.000</s>
1407            <span class="product-card-discount small">	
1408              (-34%)
1409            </span> 	
1410          </div>
1411          
1412          
1413          
1414          <div class="price-discount">
1415            <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1416          </div>
1417          
1418          
1419          
1420          
1421          
1422        </div>
1423        
1424      </div>
1425    </a>
1426  </div>
1427  
1428</div>
1429
1430                  </div>
1431                
1432              
1433                
1434                  <div class="swiper-slide card">
1435                    
1436
1437
1438
1439<div class="products" data-lazy="false">
1440  <div class="bg-products">
1441    <div class="wishlist-toggle" data-product-handle="the-selena-bouquet">
1442      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1443  <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.
144311233C11.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"/>
1444</svg>
1445
1446    </div>
1447    <a href="/products/the-selena-bouquet">
1448      
1449      <div class="product-card-img-container p-0 position-relative">
1450        
1451        <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">
1452      </div>
1453      <div class="card-body product-card-info">
1454        <h5 class="h5 mb-0">
1455          The Selena Bouquet
1456        </h5>
1457        <div class="product-card-price">
1458          
1459          <div class="product-price-sale">
1460            <s class="product-card-price-before card-money">Rp 335.000</s>
1461            <span class="product-card-discount small">	
1462              (-29%)
1463            </span> 	
1464          </div>
1465          
1466          
1467          
1468          <div class="price-discount">
1469            <h4 class="product-card-price-after card-money">Rp 235.000</h4>
1470          </div>
1471          
1472          
1473          
1474          
1475          
1476        </div>
1477        
1478      </div>
1479    </a>
1480  </div>
1481  
1482</div>
1483
1484                  </div>
1485                
1486              
1487                
1488                  <div class="swiper-slide card">
1489                    
1490
1491
1492
1493<div class="products" data-lazy="false">
1494  <div class="bg-products">
1495    <div class="wishlist-toggle" data-product-handle="the-viola-bouquet">
1496      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1497  <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.
149711233C11.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"/>
1498</svg>
1499
1500    </div>
1501    <a href="/products/the-viola-bouquet">
1502      
1503      <div class="product-card-img-container p-0 position-relative">
1504        
1505        <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">
1506      </div>
1507      <div class="card-body product-card-info">
1508        <h5 class="h5 mb-0">
1509          The Viola Bouquet
1510        </h5>
1511        <div class="product-card-price">
1512          
1513          <div class="product-price-sale">
1514            <s class="product-card-price-before card-money">Rp 385.000</s>
1515            <span class="product-card-discount small">	
1516              (-25%)
1517            </span> 	
1518          </div>
1519          
1520          
1521          
1522          <div class="price-discount">
1523            <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1524          </div>
1525          
1526          
1527          
1528          
1529          
1530        </div>
1531        
1532      </div>
1533    </a>
1534  </div>
1535  
1536</div>
1537
1538                  </div>
1539                
1540              
1541                
1542                  <div class="swiper-slide card">
1543                    
1544
1545
1546
1547<div class="products" data-lazy="false">
1548  <div class="bg-products">
1549    <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet">
1550      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1551  <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.
155111233C11.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"/>
1552</svg>
1553
1554    </div>
1555    <a href="/products/the-minerva-bouquet">
1556      
1557      <div class="product-card-img-container p-0 position-relative">
1558        
1559        <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">
1560      </div>
1561      <div class="card-body product-card-info">
1562        <h5 class="h5 mb-0">
1563          The Minerva Bouquet
1564        </h5>
1565        <div class="product-card-price">
1566          
1567          <div class="product-price-sale">
1568            <s class="product-card-price-before card-money">Rp 385.000</s>
1569            <span class="product-card-discount small">	
1570              (-25%)
1571            </span> 	
1572          </div>
1573          
1574          
1575          
1576          <div class="price-discount">
1577            <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1578          </div>
1579          
1580          
1581          
1582          
1583          
1584        </div>
1585        
1586      </div>
1587    </a>
1588  </div>
1589  
1590</div>
1591
1592                  </div>
1593                
1594              
1595                
1596                  <div class="swiper-slide card">
1597                    
1598
1599
1600
1601<div class="products" data-lazy="false">
1602  <div class="bg-products">
1603    <div class="wishlist-toggle" data-product-handle="congraduations-bouquet">
1604      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1605  <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.
160511233C11.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"/>
1606</svg>
1607
1608    </div>
1609    <a href="/products/congraduations-bouquet">
1610      
1611      <div class="product-card-img-container p-0 position-relative">
1612        
1613        <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">
1614      </div>
1615      <div class="card-body product-card-info">
1616        <h5 class="h5 mb-0">
1617          Congraduations Bouquet
1618        </h5>
1619        <div class="product-card-price">
1620          
1621          <div class="product-price-sale">
1622            <s class="product-card-price-before card-money">Rp 380.000</s>
1623            <span class="product-card-discount small">	
1624              (-25%)
1625            </span> 	
1626          </div>
1627          
1628          
1629          
1630          <div class="price-discount">
1631            <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1632          </div>
1633          
1634          
1635          
1636          
1637          
1638        </div>
1639        
1640      </div>
1641    </a>
1642  </div>
1643  
1644</div>
1645
1646                  </div>
1647                
1648              
1649                
1650                  <div class="swiper-slide card">
1651                    
1652
1653
1654
1655<div class="products" data-lazy="false">
1656  <div class="bg-products">
1657    <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet">
1658      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1659  <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.
165911233C11.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"/>
1660</svg>
1661
1662    </div>
1663    <a href="/products/grad-gorgeous-bouquet">
1664      
1665      <div class="product-card-img-container p-0 position-relative">
1666        
1667        <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">
1668      </div>
1669      <div class="card-body product-card-info">
1670        <h5 class="h5 mb-0">
1671          Grad & Gorgeous Bouquet
1672        </h5>
1673        <div class="product-card-price">
1674          
1675          <div class="product-price-sale">
1676            <s class="product-card-price-before card-money">Rp 380.000</s>
1677            <span class="product-card-discount small">	
1678              (-25%)
1679            </span> 	
1680          </div>
1681          
1682          
1683          
1684          <div class="price-discount">
1685            <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1686          </div>
1687          
1688          
1689          
1690          
1691          
1692        </div>
1693        
1694      </div>
1695    </a>
1696  </div>
1697  
1698</div>
1699
1700                  </div>
1701                
1702              
1703            </div>
1704          </div>
1705        
1706      </div>
1707    </div>
1708  </div>
1709
1710  <div class="site-overlay" style="display: none"></div>
1711</div>
1712<script>
1713  
1714  var swiper = new Swiper('.popup-recommend', {
1715      slidesPerView : 4, 
1716      spaceBetween: 30,
1717      lazy: true ,                            
1718      speed: 300,
1719      breakpoints: {
1720        // when window width is <= 576px
1721        576: {
1722            slidesPerView: 2,
1723              spaceBetween: 10,
1724            freeMode: true,
1725            resistance : true,
1726            resistanceRatio : 0,
1727            freeModeMomentumRatio : 0.45,
1728            freeModeMomentumVelocityRatio : 1.5
1729        },
1730        768: {
1731              slidesPerView: 2,
1732              spaceBetween: 10
1733            },
1734        992: {
1735              slidesPerView: 3,
1736              spaceBetween: 20
1737        }
1738      }
1739  });
1740
1741  const searchContainer = $("#search-popup")
1742  const searchInput = $(".search-popup")
1743  const result_collection = $('.result_collection')
1744  const result_product = $('.result_product')
1745  const resultsearch = $('.resultsearch')
1746  const resultrecommend = $(".group-recommend")
1747  const moreresult = $(".moreresult")
1748
1749  searchInput.keyup(function(){
1750    const input = $(this).val()
1751    moreresult.find("p span").text(` “${input}”`)
1752    if(input.length > 2) {
1753      $(".close-search").show()
1754      const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}`
1755      $.ajax({
1756        type: 'GET',
1757        url,
1758        beforeSend: function() {
1759            // setting a timeout
1760            // $(placeholder).addClass('loading');
1761        },
1762        success: function(response) {
1763            resultsearch.show()
1764            resultrecommend.hide()
1765            result_collection.html("")
1766            result_product.html("")
1767            const collections = response.resources.results.collections
1768            const products = response.resources.results.products
1769            let collection_length = collections.length
1770            let product_length = products.length
1771            // if(collections.length > 5) {
1772            //   collection_length = 5
1773            // }
1774            // if(products.length > 5) {
1775            //   product_length = 5
1776            // }
1777            for(let i=0;i<collection_length;i++){
1778              const title = collections[i].title
1779              const url = collections[i].url
1780              let html_collection
1781              if(!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) {
1782                html_collection = `
1783                <li class="item" data-title="${title}">
1784                  <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a>
1785                </li>
1786                `
1787              }
1788              result_collection.append(html_collection)
1789            }
1790            for(let i=0;i<product_length;i++){
1791              const title = products[i].title
1792              const url = products[i].url
1793              const image = products[i].featured_image.url
1794              const vendor = products[i].vendor
1795              let html_product
1796              if(vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')){
1797                html_product = `
1798                <li class="item" data-vendor="${vendor}">
1799                  <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}">
1800                    <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"><span>${title}</span>
1801                  </a>
1802                </li>
1803                `
1804              }
1805              result_product.append(html_product)
1806            }
1807        },
1808        error: function(xhr) { // if error occured
1809            alert("Error occured.please try again");
1810        },
1811        complete: function(response) {
1812            // $(placeholder).removeClass('loading');
1813        },
1814        dataType: 'JSON'
1815      });
1816    } else {
1817      result_collection.html("")
1818      result_product.html("")
1819      
1820      resultsearch.hide()
1821      resultrecommend.show()
1822    }
1823  })
1824
1825  moreresult.click(function(){
1826    $("#search-btn").trigger("click");
1827  })
1828
1829  $(".close-search").click(function(){
1830    $(this).hide()
1831    searchInput.val("")
1832    searchInput.focus()
1833    resultsearch.hide()
1834    resultrecommend.show()
1835  })
1836
1837  function setCookie(name,value,days) {
1838    var expires = "";
1839    if (days) {
1840      var date = new Date();
1841      date.setTime(date.getTime() + (days*24*60*60*1000));
1842      expires = "; expires=" + date.toUTCString();
1843    }
1844    document.cookie = name + "=" + (value || "")  + expires + "; path=/";
1845  }
1846  function getCookie(name) {
1847    var nameEQ = name + "=";
1848    var ca = document.cookie.split(';');
1849    for(var i=0;i < ca.length;i++) {
1850      var c = ca[i];
1851      while (c.charAt(0)==' ') c = c.substring(1,c.length);
1852      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
1853    }
1854    return null;
1855  }
1856  let last_search_name = []
1857  let last_search_url = []
1858  $(".group-recent").hide()
1859  if(getCookie("last_search_name") != null && getCookie("last_search_url") != null){
1860    if(getCookie("last_search_name") != "" && getCookie("last_search_url") != ""){
1861      $(".group-recent").show()
1862      last_search_name = getCookie("last_search_name");
1863      last_search_url = getCookie("last_search_url");
1864      const arrName = last_search_name.substring(1).split(',').reverse()
1865      const arrUrl = last_search_url.substring(1).split(',').reverse()
1866      console.log(arrName, 'Array Name')
1867      console.log(arrUrl, 'Array Url')
1868      let length = arrName.length
1869      if(arrName.length > 5) {
1870        length = 5
1871      }
1872      for(let n=0;n<length;n++){
1873        let html2 = `<li><svg viewBox="0 0 24 24" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png"><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]}">
1873${arrName[n]}</a><span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span></li>`
1874        $(".group-recent ul").append(html2)
1875      }
1876    }
1877  }
1878  console.log(last_search_name, 'Name')
1879  console.log(last_search_url, 'url')
1880  
1881  resultsearch.delegate(".item a", "click", function(){
1882    let name = [last_search_name]
1883    let url = [last_search_url]
1884    name.push($(this).attr('data-title'))
1885    url.push($(this).attr('data-url'))
1886    setCookie("last_search_name",name,7);
1887    setCookie("last_search_url",url,7);
1888  })
1889  
1890  $(".delete-all-history").click(function() {
1891    setCookie("last_search_name",null,0);
1892    setCookie("last_search_url",null,0);
1893    $(".last-search").hide();
1894    setTimeout(function(){
1895      location.reload();
1896    }, 500);
1897  })
1898  
1899  $("#search-trigger").click(function(){
1900    search_open()
1901  })
1902  $(".icon-search-mobile").click(function(){
1903    search_open()
1904  })
1905  $(".search-header svg").click(function(){
1906    search_close()
1907  })
1908  $(".icon-key-mobile").click(function(){
1909    search_close()
1910  })
1911
1912  function search_open() {
1913    $("body").addClass("search-popup-open")
1914    $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide()
1915    $("#search-popup, .search-header svg, .icon-key-mobile").show()
1916    $(".search-popup").focus()
1917    $('.popup-recommend')[0].swiper.update();
1918  }
1919  function search_close() {
1920    $("body").removeClass("search-popup-open")
1921    $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show()
1922    $("#search-popup, .search-header svg, .icon-key-mobile").hide()
1923    searchInput.val("")
1924    resultsearch.hide()
1925    resultrecommend.show()
1926  }
1927
1928  $(".site-overlay").click(function(){
1929    search_close()
1930  })
1931</script>
1931
1932
1933</div>
1934    </div>
1935
1936    <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #000000;">
1937      <main class="main-content pt-0" role="main">
1938        
1939          <div id="breadcrumbProduct" class="d-none d-lg-block">
1940            <style>
1941  #breadcrumbProduct {
1942    padding: 20px 0;
1943  }
1944  #breadcrumbProduct ul {
1945      display: flex;
1946      padding: 0;
1947      list-style: none;
1948      margin: 0;
1949      gap: 12px;
1950  }
1951  #breadcrumbProduct ul li {
1952    text-transform: uppercase;
1953    margin: 0;
1954    font-size: 12px;
1955}
1956  #breadcrumbProduct ul li a {
1957    color: #757575;
1958  }
1959
1960  #breadcrumbProduct ul li svg {
1961    width: 10px;
1962    height: 10px;
1963    padding: 0;
1964    color: #757575;
1965    vertical-align: middle;
1966  }
1967</style>
1968<div class="container" style="color: #ffffff;">
1969  <ul role="navigation" aria-label="breadcrumbs">
1970    <li><a href="https://ladangwin4d.com/" style="color: #ffffff;">WIN4D</a></li>
1971    <li><svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="7" height="10" viewBox="0 0 7 10" fill="none">
1972    <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"/>
1973</svg></li>
1974      <li>WIN4D</li>
1975      <li>WIN 4D</li>
1976      <li>WIN4D LOGIN</li>
1977      <li>WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia</li>
1978    
1979  </ul>
1980</div>
1981
1982          </div>
1983        
1984<script type="application/ld+json">
1985{
1986  "@context": "https://schema.org",
1987  "@type": "Product",
1988  "name": "WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia",
1989  "image": "https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp",
1990  "description": "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.",
1991  "brand": {
1992    "@type": "Brand",
1993    "name": "WIN4D"
1994  },
1995  "sku": "WIN4D",
1996  "mpn": "WIN4D",
1997  "url": "http://win4dream.com/",
1998  "offers": {
1999    "@type": "Offer",
2000    "url": "http://win4dream.com/",
2001    "priceCurrency": "USD",
2002    "price": "10.00",
2003    "priceValidUntil": "2026-12-31",
2004    "itemCondition": "https://schema.org/NewCondition",
2005    "availability": "https://schema.org/InStock",
2006    "seller": {
2007      "@type": "Organization",
2008      "name": "WIN4D"
2009    }
2010  },
2011  "aggregateRating": {
2012    "@type": "AggregateRating",
2013    "ratingValue": "5.0",
2014    "reviewCount": 858
2015  },
2016  "review": [
2017    {
2018      "@type": "Review",
2019      "reviewRating": {
2020        "@type": "Rating",
2021        "ratingValue": "5",
2022        "bestRating": "5"
2023      },
2024      "author": {
2025        "@type": "Person",
2026        "name": "juandi"
2027      }
2028    },
2029    {
2030      "@type": "Review",
2031      "reviewRating": {
2032        "@type": "Rating",
2033        "ratingValue": "5",
2034        "bestRating": "5"
2035      },
2036      "author": {
2037        "@type": "Person",
2038        "name": "situmorang"
2039      }
2040    }
2041  ]
2042}
2043</script>
2043
2044
2045<script type="application/ld+json">
2046{
2047  "@context": "https://schema.org",
2048  "@type": "BreadcrumbList",
2049  "itemListElement": [
2050    {
2051      "@type": "ListItem",
2052      "position": 1,
2053      "name": "WIN4D",
2054      "item": "http://win4dream.com/"
2055    },
2056    {
2057      "@type": "ListItem",
2058      "position": 2,
2059      "name": "WIN 4D",
2060      "item": "http://win4dream.com/"
2061    },
2062    {
2063      "@type": "ListItem",
2064      "position": 3,
2065      "name": "WIN4D LOGIN",
2066      "item": "http://win4dream.com/"
2067    },
2068    {
2069      "@type": "ListItem",
2070      "position": 4,
2071      "name": "WIN4D DAFTAR",
2072      "item": "http://win4dream.com/"
2073    },
2074    {
2075      "@type": "ListItem",
2076      "position": 5,
2077      "name": "WIN4D LINK",
2078      "item": "http://win4dream.com/"
2079    },
2080    {
2081      "@type": "ListItem",
2082      "position": 6,
2083      "name": "WIN4D RESMI",
2084      "item": "http://win4dream.com/"
2085    },
2086    {
2087      "@type": "ListItem",
2088      "position": 7,
2089      "name": "WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia",
2090      "item": "http://win4dream.com/"
2091    }
2092  ]
2093}
2094</script>
2094
2095
2096<script type="application/ld+json" id="faq-schema">
2097{
2098  "@context": "https://schema.org",
2099  "@type": "FAQPage",
2100  "mainEntity": [
2101    {
2102      "@type": "Question",
2103      "name": "Apa sih yang bikin WIN4D beda dari platform gaming lainnya?",
2104      "acceptedAnswer": {
2105        "@type": "Answer",
2106        "text": "Bedanya jauh, bro! Di saat platform lain gak jelas izinnya dan sering bikin was-was, WIN4D adalah salah satu platform gaming terpercaya yang memegang sertifikat resmi di Indonesia. Ini jaminan kalau modal dan kemenangan lo 100% aman tanpa drama."
2107      }
2108    },
2109    {
2110      "@type": "Question",
2111      "name": "Apakah bermain di WIN4D beneran aman dan adil (fair play)?",
2112      "acceptedAnswer": {
2113        "@type": "Answer",
2114        "text": "Jelas aman, bro. Sebagai platform gaming terpercaya dengan sertifikat resmi di Indonesia, WIN4D udah ngelewatin proses audit super ketat dari lembaga internasional. Sistem game di sini transparan, pakai RTP riil, dan bebas dari manipulasi bot."
2115      }
2116    },
2117    {
2118      "@type": "Question",
2119      "name": "Benarkah semua kemenangan di WIN4D pasti dibayar?",
2120      "acceptedAnswer": {
2121        "@type": "Answer",
2122        "text": "Pasti dibayar tuntas, bro! Data internal membuktikan WIN4D punya rekam jejak 0% kasus fraud. Menang berapapun, detik itu juga lo ajuin withdraw, langsung diproses tanpa dipersulit."
2123      }
2124    },
2125    {
2126      "@type": "Question",
2127      "name": "Berapa lama proses transaksi deposit dan withdraw di sini?",
2128      "acceptedAnswer": {
2129        "@type": "Answer",
2130        "text": "Gak pakai lama sampai berjam-jam. Rata-rata proses transaksi (baik depo maupun WD) di WIN4D itu di bawah 3 menit. Sangat cepat, aman, dan efisien."
2131      }
2132    },
2133    {
2134      "@type": "Question",
2135      "name": "Bagaimana dengan keamanan data pribadi saya di WIN4D?",
2136      "acceptedAnswer": {
2137        "@type": "Answer",
2138        "text": "Data lo 100% aman, bro. WIN4D menggunakan sistem enkripsi ketat setara perbankan untuk memastikan seluruh informasi member terlindungi. Bergabunglah bersama kami dan rasakan pengalaman bermain yang aman, adil, dan seru sekarang!"
2139      }
2140    }
2141  ]
2142}
2143</script>
2143
2144
2145<script type="application/ld+json">
2146{
2147  "@context": "https://schema.org",
2148  "@type": "Organization",
2149  "name": "WIN4D",
2150  "url": "http://win4dream.com/",
2151  "logo": "https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png",
2152  "sameAs": [
2153    "https://www.facebook.com/WIN4D",
2154    "https://twitter.com/WIN4D",
2155    "https://www.instagram.com/WIN4D"
2156  ],
2157  "contactPoint": {
2158    "@type": "ContactPoint",
2159    "telephone": "+62-8829-415-7036",
2160    "contactType": "customer support",
2161    "areaServed": "ID",
2162    "availableLanguage": ["Indonesian", "English"]
2163  }
2164}
2165</script>
2165
2166
2167<script type="application/ld+json">
2168{
2169  "@context": "https://schema.org",
2170  "@type": "VideoObject",
2171  "name": "WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia",
2172  "description": "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.",
2173  "thumbnailUrl": [
2174    "https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp",
2175    "https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2176  ],
2177  "uploadDate": "2026-01-15T04:19:10-04:00",
2178  "duration": "PT168",
2179  "contentUrl": "http://win4dream.com/"
2180}
2181</script>
2181
2182
2183<script type="application/ld+json">
2184{
2185  "@context": "https://schema.org",
2186  "@graph": [
2187    {
2188      "@type": "Organization",
2189      "@id": "http://win4dream.com/#org",
2190      "name": "WIN4D",
2191      "url": "http://win4dream.com/",
2192      "logo": "https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2193    },
2194    {
2195      "@type": "WebSite",
2196      "@id": "http://win4dream.com/#website",
2197      "url": "http://win4dream.com/",
2198      "name": "WIN4D",
2199      "publisher": { "@id": "http://win4dream.com/#org" },
2200      "inLanguage": "id-ID",
2201      "potentialAction": {
2202        "@type": "SearchAction",
2203        "target": "http://win4dream.com/?s={search_term_string}",
2204        "query-input": "required name=search_term_string"
2205      }
2206    },
2207    {
2208      "@type": "SoftwareApplication",
2209      "@id": "http://win4dream.com/#app",
2210      "name": "WIN4D",
2211      "applicationCategory": "GameApplication",
2212      "operatingSystem": "Android, iOS, Windows",
2213      "offers": { "@type": "Offer", "price": "0", "priceCurrency": "IDR" },
2214      "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.9, "ratingCount": 62595 }
2215    }
2216  ]
2217}
2218</script>
2218
2219        
2220<div id="shopify-section-Product" class="shopify-section product-section mt-0"><link href="https://asset-jko.b-cdn.net/footer-warna.css" rel="stylesheet" type="text/css" media="all" />
2221
2222
2223<style>
2224    .bg-card {
2225    background-color: #000000;
2226}
2227    </style>
2228
2229<!-- /templates/product.liquid -->
2230
2231
2232<!-- <div itemscope itemtype="http://schema.org/Product"> -->
2233
2234
2235<div class="product-standing-flower" data-product-type="flowerBoard">
2236  <meta itemprop="url" content="http://win4dream.com/">
2237  <meta itemprop="image" content="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
2238
2239  
2240  
2241  <input id="data-sku" type="hidden" value="OBVSTF1086">
2242  <div class="product-single" style="background-image: url(https://ladangwin4d.com/resmi/untitleddesign-win4d.png); background-attachment: fixed;">
2243    <div id="product-top" class="container">
2244      <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;">
2245        <div id="product-image" class="col-lg-7 text-center">
2246          <div class="product-image">
2247            <div class="row no-gutters">
2248  
2249  <div id="product-featured-image" class="row w-100">
2250    
2251      <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block">
2252        
2253        <div class="swiper-container gallery-thumbs" style="min-height: 500px">
2254          <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx">
2255
2256                  <li class="swiper-slide" data-type="image">
2257                    <a
2258                      href="files/Blossom-Shine-WM.jpg"
2259                      data-standard="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2260                      data-image="files/Blossom-Shine-WM.jpg"
2261                      data-position="1"
2262                      class="product-single__thumbnail"
2263                    >
2264                      <img
2265                        class="lazyload w-100"
2266                        src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2267                        alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2268                        width=""
2269                        height=""
2270                      >
2271                    </a>
2272                  </li>
2273                
2274              
2275            
2276
2277                  <li class="swiper-slide" data-type="image">
2278                    <a
2279                      href="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2280                      data-standard="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2281                      data-image="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2282                      data-position="2"
2283                      class="product-single__thumbnail"
2284                    >
2285                      <img
2286                        class="lazyload w-100"
2287                        src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2288                        alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2289                        width=""
2290                        height=""
2291                      >
2292                    </a>
2293                  </li>
2294                
2295              
2296            
2297
2298                  <li class="swiper-slide" data-type="image">
2299                    <a
2300                      href="files/Blossom-Shine_3-WM.jpg"
2301                      data-standard="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2302                      data-image="files/Blossom-Shine_3-WM.jpg"
2303                      data-position="3"
2304                      class="product-single__thumbnail"
2305                    >
2306                      <img
2307                        class="lazyload w-100"
2308                        src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2309                        alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2310                        width=""
2311                        height=""
2312                      >
2313                    </a>
2314                  </li>
2315                
2316              
2317            
2318
2319                  <li class="swiper-slide" data-type="image">
2320                    <a
2321                      href="files/Blossom-Shine_4.jpg"
2322                      data-standard="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2323                      data-image="files/Blossom-Shine_4.jpg"
2324                      data-position="4"
2325                      class="product-single__thumbnail"
2326                    >
2327                      <img
2328                        class="lazyload w-100"
2329                        src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2330                        alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2331                        width=""
2332                        height=""
2333                      >
2334                    </a>
2335                  </li>
2336                
2337              
2338            
2339          </ul>
2340        </div>
2341        
2342      </div>
2343    
2344    <div
2345      id="featured-image-product"
2346      class="col-lg-10 col-12 d-none d-lg-block"
2347    >
2348      <div class="swiper-container gallery-top">
2349        <div class="swiper-slide product-single__image">
2350          
2351<div class="product-single__photos slider slider-for" id="ProductPhoto">
2352  
2353
2354  <div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails">
2355    <a href="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp">
2356      <img
2357        src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2358        alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2359        id="ProductPhotoImg"
2360        class="lazyload"
2361      >
2362      
2363    </a>
2364  </div>
2365</div>
2366
2367        </div>
2368        <div class="swiper-slide product-single__video" style="display: none">
2369          <video
2370            src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4"
2371            playsinline
2372            loop
2373            muted
2374          ></video>
2375        </div>
2376      </div>
2377    </div>
2378  </div>
2379
2380  <div id="featured-image-product2" class="col-12 d-lg-none">
2381    <div class="swiper-container gallery-mobile">
2382      <ul class="swiper-wrapper">
2383<li class="swiper-slide img">
2384              
2385                <img
2386                  class="swiper-lazy"
2387                  src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2388                  data-src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2389                  alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2390                  width=""
2391                  height=""
2392                >
2393              
2394            </li>
2395          
2396        
2397<li class="swiper-slide img">
2398              
2399                <img
2400                  class="swiper-lazy"
2401                  src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2402                  data-src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2403                  alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2404                  width=""
2405                  height=""
2406                >
2407              
2408            </li>
2409          
2410        
2411<li class="swiper-slide img">
2412              
2413                <img
2414                  class="swiper-lazy"
2415                  src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2416                  data-src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2417                  alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2418                  width=""
2419                  height=""
2420                >
2421              
2422            </li>
2423          
2424        
2425<li class="swiper-slide img">
2426              
2427                <img
2428                  class="swiper-lazy"
2429                  src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2430                  data-src="https://w4d.kumostock.com/win4d/fresdo/ladangwin4d-bannerwin4d.webp"
2431                  alt="WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia"
2432                  width=""
2433                  height=""
2434                >
2435              
2436            </li>
2437          
2438        
2439      </ul>
2440      
2441        <div class="swiper-button-prev"><svg class="icon icon-chevron-left" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" 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>
2442        <div class="swiper-button-next"><svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="7" height="10" viewB
2442ox="0 0 7 10" fill="none">
2443    <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"/>
2444</svg></div>
2445
2446        <!-- Add Pagination -->
2447        <div class="swiper-pagination"></div>
2448      
2449    </div>
2450  </div>
2451
2452  <div class="product-m-pageleb-video col-12 text-center d-lg-none">
2453    <!-- product video -->
2454    <style>
2455      .view-video{display:block; margin:auto; padding:5px 10px;font-size:16px;font-weight:bold;border:2px solid #ffffff;background:#fff;}
2456      .view-video .icon-play{fill:#ffffff;vertical-align: middle;}
2457      .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;}
2458      .close-video{position:absolute;right:9px; top:8%;z-index:2;padding:5px;}
2459      .close-video .icon{width:30px;height:30px;}
2460      /*responsive iframe */
2461      .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);}
2462      .video-container iframe {position: absolute;top:60%;left: 0;width: 100%;height: 100%;}
2463
2464      .youtube {
2465        background-color: #000;
2466        margin-bottom: 30px;
2467        position: relative;
2468        padding-top: 56.25%;
2469        overflow: hidden;
2470        cursor: pointer;
2471        width: 100%;
2472      }
2473      .swiper-slide .youtube {
2474        max-width: 480px;
2475      }
2476      .youtube img {
2477        width: 100%;
2478        top: -16.82%;
2479        left: 0;
2480        opacity: 0.7;
2481      }
2482      .youtube .play-button {
2483        width: 90px;
2484        height: 60px;
2485        background-color: #333;
2486        box-shadow: 0 0 30px rgba( 0,0,0,0.6 );
2487        z-index: 1;
2488        opacity: 0.8;
2489        border-radius: 6px;
2490      }
2491      .youtube .play-button:before {
2492        content: "";
2493        border-style: solid;
2494        border-width: 15px 0 15px 26.0px;
2495        border-color: transparent transparent transparent #fff;
2496      }
2497      .youtube img,
2498      .youtube .play-button {
2499        cursor: pointer;
2500      }
2501      .youtube img,
2502      .youtube iframe,
2503      .youtube .play-button,
2504      .youtube .play-button:before {
2505        position: absolute;
2506      }
2507      .youtube .play-button,
2508      .youtube .play-button:before {
2509        top: 50%;
2510        left: 50%;
2511        transform: translate3d( -50%, -50%, 0 );
2512      }
2513      .youtube iframe {
2514        height: 100%;
2515        width: 100%;
2516        top: 0;
2517        left: 0;
2518      }
2519    </style>
2520
2521    
2522  </div>
2523</div>
2524
2525<div class="product-desc-add position-relative d-none d-lg-block m-0">
2526
2527</div>
2528
2529<script>
2530  if ($(window).width() < 991) {
2531    var direction = 'horizontal'
2532  } else {
2533    var direction = 'vertical'
2534    $(".gallery-thumbs").height($("#ProductPhotoImg").height())
2535  }
2536  var swiper = new Swiper('.gallery-thumbs', {
2537    
2538    direction,
2539    slidesPerView: 4.5,
2540    spaceBetween: 12,
2541    navigation: {
2542      nextEl: '.swiper-button-next',
2543      prevEl: '.swiper-button-prev',
2544    }
2545  });
2546  
2547  var swiper = new Swiper('.gallery-mobile', {
2548    //loop: true,
2549    lazy: true,
2550    speed: 300,
2551    resistance : true,
2552    resistanceRatio : 0,
2553    freeModeMomentumRatio : 0.45,
2554    freeModeMomentumVelocityRatio : 1.5,
2555    navigation: {
2556      nextEl: '.swiper-button-next',
2557      prevEl: '.swiper-button-prev',
2558    },
2559    pagination: {
2560      el: '.swiper-pagination'
2561    },
2562    useCSS3Transforms: false,
2563    loop: false,
2564    on: {
2565      init: function () {
2566        console.log('swiper initialized');
2567        var currentVideo =  $("[data-swiper-slide-index=" + this.realIndex + "]").find("video");
2568        currentVideo.trigger('play');
2569      },
2570    },
2571  });
2572
2573  /* GET ALL VIDEOS */
2574  var sliderVideos = $(".swiper-slide video");
2575  
2576  /* SWIPER API - Event will be fired after animation to other slide (next or previous) */
2577  swiper.on('slideChange', function () {
2578    console.log('slide changed');
2579    /* stop all videos  */
2580    sliderVideos.each(function( index ) {
2581      this.currentTime = 0;
2582    });
2583  
2584    /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */
2585    var prevVideo =  $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video");
2586    var currentVideo =  $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video");
2587    prevVideo.trigger('stop');
2588    currentVideo.trigger('play');
2589  });
2590  
2591
2592  $("[data-video]").click(function(){
2593    const file = $(this).data("video")
2594    $(".product-single__video").show()
2595    $(".product-single__image").hide()
2596    $(".product-single__video").find("video").attr("src", file)
2597    $(".product-single__video").find("video")[0].play();
2598  })
2599  $("[data-image]").click(function(){
2600    $(".product-single__video").hide()
2601    $(".product-single__image").show()
2602    $(".product-single__video").find("video")[0].pause();
2603  })
2604
2605  $("#product-image .swiper-slide").each(function(){
2606    let width = $(this).width()
2607    $(this).height(width)
2608  })
2609
2610  $(window).resize(function() {
2611    $("#product-image .swiper-slide").each(function(){
2612      let width = $(this).width()
2613      $(this).height(width)
2614    })
2615  })
2616</script>
2616
2617
2618          </div>
2619
2620  
2621    <div class="grid__item_product-info mb-3">
2622      <div class="c-pdp-product-info">
2623        <ul class="c-pdp-product-info__service c-pdp-product-info__service--active">
2624       <!-- artikel -->
2625            <li>
2626               WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.
2627               </li>
2628          
2629          
2630          
2631          
2632        </ul>
2633      </div>
2634    </div>
2635  
2636
2637
2638
2639
2640<style>
2641  .c-pdp-product-info__service--active {
2642    font-size: 12px;
2643    padding-left: 10px;
2644    text-align: left;
2645    max-width: 550px;
2646    margin: auto;
2647  }
2648  .c-pdp-product-info__service--active li {
2649    list-style: disc;
2650  }
2651  .c-pdp-product-info {
2652    background-color: #f5f5f5;
2653    padding: 12px;
2654    margin: 0;
2655  }
2656  .freeship em {
2657    font-style: italic;
2658    font-size: 12px !important;
2659  }
2660
2661
2662</style>
2663
2664<script>
2665  $(document).ready(function(){
2666    if ( $(".c-pdp-product-info__service li").length == 1 ) {
2667      $(".c-pdp-product-info__service").addClass("no-bullet");
2668      $(".c-pdp-product-info__service li").addClass("no-bullets");
2669    }
2670  });
2671</script>
2671
2672
2673  
2674
2675
2676
2677  
2678
2679  
2680
2681
2682            
2683          
2684        </div>
2685        <div id="product-meta" class="col-lg-5 p-0">
2686          <div class="product-meta">
2687            <style>
2688  .product-meta--review {margin-top:10px}
2689  .freeship * {font-size: 14px !important;font-style: normal;}
2690</style>
2691<h1 itemprop="name" class="mb-2" style="color: rgb(255, 238, 0); font-weight: bold;">WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia</h1>
2692
2693<div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
2694  <meta itemprop="priceCurrency" content="IDR">
2695
2696  <link itemprop="availability" href="https://schema.org/InStock">
2697  
2697<script
2698    type="text/javascript"
2699    src="//platform-api.sharethis.com/js/sharethis.js#property=5acdc0aa3ef3c0001396fd50&product=custom-share-buttons"
2700    async="async"
2701  ></script>
2701
2702  
2703
2704  
2705
2706  <span class="visually-hidden">Translation missing: en.products.general.regular_price</span>
2707  
2708    <span class="visually-hidden">Translation missing: en.products.general.sale_price</span>
2709  
2710  <div class="row no-gutters mb-3">
2711    <span
2712      id="ProductPrice"
2713      class="h2 ProductPrice"
2714      itemprop="price"
2715      content="835000" style="color: #ffffff;"
2716    >
2717      Rp 10.000
2718    </span>
2719    <div class="discount-product-detail">
2720      <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0">
2721        Rp 100.000
2722      </p>
2723      <span class=" tag-discount">
2724        
2725          
2726          <span id="newDiscount" class="product-tag persentase-discount hide"> 
2727      (90%)
2728      </span><br>
2729        
2730      </span>
2731    </div>
2732  </div>
2733
2734  <div class="row no-gutters meta-sds">
2735    <div class="col-12 mb-2 mb-lg-0 stock-info">
2736      
2737      
2738      <span
2739        id="ProductStock-Product"
2740        class="product-single__stock mb-2 hide"
2741      >
2742        
2743          
2744            
2745              
2746              Barang dikirim pada 
2747            
2748          
2749        
2750      </span>
2751
2752      <style>
2753    .short-desc-desktop {
2754        margin-bottom: 2rem;
2755        color: white;
2756    }
2757    .short-desc ul li:nth-child(n + 4) {
2758        display: none;
2759    }
2760    .short-desc ul li.showList:nth-child(n + 4) {
2761        display: list-item;
2762    }
2763    label.more {
2764        display: none;
2765    }
2766    label.more.showMe {
2767        display: block;
2768        font-size: 12px;
2769        text-transform: uppercase;
2770        font-weight: 700;
2771        cursor: pointer;
2772    }
2773</style>
2774
2775    <div class="short-desc-desktop d-none d-lg-block">
2776        <div class="short-desc">
2777           
2778<p>Pernah gak sih lo lagi asyik main, pas mau withdraw malah dipersulit atau akun tiba-tiba kena ban tanpa alasan? Ngeselin banget, kan! Di luar sana banyak platform ngaku paling gacor tapi pas giliran kita menang, mereka mendadak hilang ditelan bumi hingga bikin modal amsyong. Pain point terbesar kita sebagai pemain itu cuma satu: Rasa Aman. Nah, daripada boncos terus di situs bodong yang bikin was-was, saatnya lo bergabung bersama kami di <a href="/">WIN4D</a>, salah satu platform gaming terpercaya yang berani tampil beda dengan memegang sertifikat resmi di Indonesia.</p>
2779<p>Membangun reputasi anti-zonk ini gak gampang, bro; tim WIN4D harus ngelewatin proses audit super ketat dari lembaga internasional demi memutus rantai masalah manipulasi sistem yang sering merugikan pemain. Hasilnya gak bisa bohong, data internal mencatat 98% tingkat kepuasan member dengan rata-rata proses transaksi di bawah 3 menit, serta 0% kasus fraud alias semua kemenangan pasti dibayar tuntas. Pelajaran pentingnya sederhana: jangan pernah pertaruhkan uang lo di tempat yang gak punya sertifikat resmi, karena kalau ada platform yang udah jelas menjamin keamanan data dan sistem fair play yang transparan, buat apa lo masih bertahan di situs kaleng-kaleng?</p>
2780<p>Kesimpulannya, pintar-pintar milih tempat eksekusi kalau gak mau nyesel belakangan. WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Gak usah tunggu modal lo abis di tempat lain yang gak jelas; amankan akun lo sekarang juga, rasakan sensasi main premium tanpa beban pikiran, dan jemput kemenangan lo tanpa drama!</p>
2781    </div>
2782        <label class="more">Show More →</label>
2783    </div><br>
2784
2785
2786<script>
2787    var liCount;
2788    $(document).ready(function () {
2789        $(".short-desc ul").each(function() {
2790            liCount = $(this).children("li").length;
2791            if (liCount > 3) {
2792                $(this).parent(".short-desc").next(".more").addClass("showMe");
2793            }
2794        });
2795
2796        $(".more").click(function () {
2797            //$(".short-desc").find("li").addClass("showList");
2798            // $(this).hide();
2799            $("#product-desc").find("ul").show()
2800            $('html, body').animate({
2801                scrollTop: $("#product-desc").offset().top - 250
2802            }, 2000);
2803            $("#product-desc").css("height","auto");
2804            $("#more_content").remove();
2805            $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>")
2806        });
2807    });
2808</script>
2808
2809
2810      
2811    </div>
2812  </div>
2813
2814  <div id="purchaseProduct">
2815  
2816  
2817
2818
2819<style>
2820  .variant-metafield {
2821    display: block!important;
2822    width: 1px;
2823    padding: 0;
2824    border-color: #fff;
2825  }
2826  .select2-results__option[aria-disabled] {
2827    display: none;
2828  }
2829
2830  .towel-bordir {
2831    width: 100%;
2832    display: flex;
2833    align-items: center;
2834    justify-content: space-around;
2835  }
2836</style>
2837
2838
2839
2840
2841<script>
2842  
2843  
2844</script>
2844
2845
2846
2847
2848
2849
2850
2851<select
2852  name="id[]"
2853  id="productSelect"
2854  class="product-single__variants ignore hide hide"
2855>
2856  
2857    
2858      
2859      <option
2860        
2861          selected="selected"
2862        
2863        data-sku="OBVSTF1086"
2864        value="44083045826775"
2865      >
2866        Default Title
2867      </option>
2868
2869    
2870  
2871</select>
2872
2873<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="text/javascript"></script>
2873
2874
2875<script>
2876  $('.size-chart-open-popup').magnificPopup({
2877    type:'inline',
2878    midClick: true
2879  });
2880</script>
2880
2881
2882  
2883  
2884  
2885  <div class="upload-image-preview">
2886    
2887    
2888    
2889    
2890    
2891    <style>
2892  .file-dnd * {
2893    margin: 0;
2894    padding: 0;
2895    box-sizing: border-box;
2896  }
2897  .file-dnd {
2898    width: 100%;
2899    height: 250px;
2900    border: 1px solid #ddd;
2901    border-radius: 10px;
2902    padding: 15px;
2903    display: flex;
2904    flex-direction: column;
2905    gap: 10px;
2906    /* box-shadow: 0px 2px 10px 2px rgba(0,0,0,0.05); */
2907    margin: auto;
2908  }
2909  .file-dnd input {
2910    display: none;
2911  }
2912  .file-dnd .before-upload {
2913    border: 1px dashed #888;
2914    flex: 1;
2915    border-radius: 5px;
2916    display: flex;
2917    justify-content: center;
2918    align-items: center;
2919    text-align: center;
2920    cursor: pointer;
2921  }
2922  .file-dnd .before-upload > div {
2923    display: flex;
2924    flex-direction: column;
2925    align-items: center;
2926    gap: 8px;
2927  }
2928  .file-dnd .before-upload > div h4 {
2929    width: 150px;
2930  }
2931  .file-dnd .before-upload > div p {
2932    font-size: 12px !important;
2933    color: #555;
2934  }
2935  .file-dnd.active .before-upload {
2936    border: 1px solid #5750d9;
2937    background-color: #f5f5ff;
2938  }
2939  .file-dnd .after-upload {
2940    position: relative;
2941    display: none;
2942  }
2943  .file-dnd .after-upload img {
2944    width: 100%;
2945    border-radius: 5px;
2946    max-height: 180px;
2947    object-fit: contain;
2948    display: block;
2949  }
2950  .file-dnd .after-upload .clear-btn {
2951    position: absolute;
2952    top: 10px;
2953    right: 10px;
2954    background: rgba(0, 0, 0, 0.5);
2955    width: 15px;
2956    height: 15px;
2957    text-align: center;
2958    line-height: 15px;
2959    border-radius: 50%;
2960    color: #fff;
2961    cursor: pointer;
2962    font-size: 14px;
2963  }
2964</style>
2965
2966<div
2967  class="file-dnd mb-3"
2968  
2969    style="display: none"
2970  
2971>
2972  <label for="upload-photo">Upload your Photo:</label>
2973  <input type="file" id="upload-photo" accept="image/*">
2974  <input type="hidden" data-properties="Photo">
2975  <div class="before-upload">
2976    <div>
2977      <svg id="surface1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="33.053" height="41.719" viewBox="0 0 33.053 41.719">
2978  <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>
2979  <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>
2980  <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>
2981</svg>
2982
2983      <h4>Drag & Drop Photo file or Browse</h4>
2984      <p>Supports: JPEG, PNG, GIF, TIFF</p>
2985    </div>
2986  </div>
2987  <div class="after-upload">
2988    <div class="clear-btn">&times;</div>
2989    <img src="" width="" height="">
2990  </div>
2991</div>
2992<script>
2993  function applyDndFile(el) {
2994    const parent = document.querySelector(".file-dnd")
2995    const beforeUploadEl = el.querySelector(".before-upload")
2996    const afterUploadEl = el.querySelector(".after-upload")
2997    const inputFile = el.querySelector("input[type=file]")
2998    const imagePreview = el.querySelector(".after-upload img")
2999    const clearBtn = el.querySelector(".after-upload .clear-btn")
3000    const inputProps = parent.querySelector("[data-properties]");
3001
3002    async function upload(name, uri, type) {
3003      try {
3004        const filename = name.split('.')[0]
3005        let formData = new FormData(); 
3006        formData.append("file", uri);
3007        const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, {
3008          method: "POST", 
3009          body: formData
3010        })
3011        if(response) {
3012          const res = await response.json()
3013          return res
3014        }
3015      } catch(err){
3016        console.log(err)
3017      }
3018    }
3019
3020    function showImagePreview(img) {
3021      if(img){
3022        const blobUrl = URL.createObjectURL(img)
3023        imagePreview.src = blobUrl
3024        afterUploadEl.style.display = "block"
3025        beforeUploadEl.style.display = "none"
3026      }
3027    }
3028
3029    beforeUploadEl.addEventListener("click", (e) => {
3030      e.preventDefault()
3031      inputFile.click()
3032    })
3033
3034    inputFile.addEventListener("change", async (e) => {
3035      e.preventDefault()
3036      showImagePreview(e.target.files[0])
3037      var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type)
3038      inputProps.value = uploadData?.url
3039    })
3040
3041    clearBtn.addEventListener("click", (e) => {
3042      afterUploadEl.style.display = "none"
3043      beforeUploadEl.style.display = "flex"
3044      inputProps.value = ""
3045    })
3046
3047    beforeUploadEl.addEventListener("dragover", (e) => {
3048      e.preventDefault()
3049      el.classList.add("active")
3050    })
3051
3052    beforeUploadEl.addEventListener("dragleave", (e) => {
3053      e.preventDefault()
3054      el.classList.remove("active")
3055    })
3056
3057    beforeUploadEl.addEventListener("drop", async (e) => {
3058      e.preventDefault()
3059      el.classList.remove("active")
3060      showImagePreview(e.dataTransfer.files[0])
3061      var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type)
3062      console.log(uploadData)
3063      inputProps.value = uploadData?.url
3064    })
3065  }
3066
3067  applyDndFile(document.querySelector(".file-dnd"))
3068
3069  $(document).ready(function(){
3070    $(".variant-swatch").change(function(){
3071      const v = $(this).val().toLowerCase()
3072      const list = ["photo", "custom one side", "custom two side", "small", "big"]
3073      if(list.some(item => v.includes(item))) return $(".file-dnd").show()
3074      $(".file-dnd").hide()
3075      $(".file-dnd").find("[data-properties]").val("")
3076      $(".after-upload").hide()
3077      $(".before-upload").css("display", "flex")
3078    })
3079  })
3080</script>
3080
3081
3082  </div>
3083  
3084    
3085    <div class="delivery-city mb-4">
3086        <a href="https://ladangwin4d.com/resmi/">
3087       <center><img src="https://w4d.kumostock.com/win4d/fresdo/data-jackpot.gif" alt="logo-daftar" style="width: 260px; margin-top: -20px;"></center></a><br>
3088  <h4 class="fw-600 text-uppercase mb-15" style="color: rgb(236, 236, 67);">SEKARANG WAKTUNYA DAFTAR AKUN BARU DI WIN4D!</h4>
3089  <div class="row justify-content-between m-0">
3090    <select id="cities" class="form-control select-search" required>
3091      <option value="">Gabung dan dapatkan bonus deposit juga new member hanya di WIN4D</option>
3092    </select>
3093  </div>
3094</div>
3095
3096<style>
3097  @media (max-width: 768px) {
3098    .select2-search__field {
3099      pointer-events: none !important;
3100    }
3101    
3102    .select2-search {
3103      display: none !important;
3104    }
3105  }
3106</style>
3107
3108<script>
3109  $(document).ready(function() {
3110    // Check if mobile
3111    if (window.innerWidth <= 768) {
3112      // When cities select2 opens on mobile, remove focus from search
3113      $('#cities').on('select2:open', function() {
3114        setTimeout(function() {
3115          $('.select2-search__field').blur();
3116          $('.select2-search__field').prop('readonly', true);
3117        }, 100);
3118      });
3119    }
3120  });
3121</script>
3121
3122
3123 <style>
3124.icon-img-footer {
3125    width: 80px; 
3126    padding: 0px 5px;
3127}
3128@media (min-width: 768px) {
3129    .icon-img-footer {
3130        width: 120px; 
3131    }
3132}
3133@media (min-width: 992px) {
3134    .icon-img-footer {
3135        width: 120px; 
3136    }
3137}
3138
3139
3140</style>
3141  <div id="row-delivery-date" class="row m-0 mb-3">
3142    <h4 class="fw-600 text-uppercase col-12 p-0 mb-15" style="color: rgb(236, 236, 67);">Ciptakan Kemenanganmu Dengan Atur Tanggal Bermain Di WIN4D</h4>
3143    <div id="deliveryDate" class="m-0"></div>
3144    <div id="deliveryDateFull">
3145      <div class="">
3146        <input
3147          type="text"
3148          id="full-date"
3149          class="date-full calendarbutton btn steps-btn btn-date-time mb-0"
3150          value="Full Calendar"
3151        >
3152        <label for="full-date"><svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="32" height="32" viewBox="0 0 32 32">
3153<title>icon-arrow-right</title>
3154<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>
3155</svg></label>
3156      </div>
3157      <button class="btnChangeDeliveryDate hide">Change Delivery Date</button>
3158    </div>
3159    <div class="form-group p-0">
3160      <input type="text" id="propDeliveryDate" required class="hide">
3161    </div>
3162  </div>
3163  
3164  
3165    <div id="row-delivery-time" class="row m-0 mb-3">
3166      <h4 class="text-center fw-600 text-uppercase col-12 mb-15">
3167    SEO WIN4D 
3168</h4>
3169      <div id="deliveryTime" class="d-flex w-100 m-0"></div>
3170      <div class="form-group p-0">
3171        <input type="text" id="propDeliveryTime" class="hide" required>
3172      </div>
3173    </div>
3174  
3175
3176
3177  
3178  
3179  <div id="personalizeBtn">
3180    
3181    
3182    
3183    
3184    <button
3185      class="btn text-uppercase w-100 fw-400"
3186      
3187      
3188      
3189    >
3190      
3191        customize your flower board
3192      
3193    </button>
3194    <div class="button-share-wishlist d-flex justify-content-around mt-3">
3195      <div class="button-share text-center">
3196        <p id="shareButton" class="d-flex gap-2"><span>WIN4D</span><svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="15" height="13" viewBox="0 0 15 13" fill="none">
3197  <path d="M13.825 5.85006L10 2.02506V4.07506L9.28333 4.18339C5.69167 4.69172 3.25833 6.57506 1.86667 9.45839C3.8 8.09172 6.2 7.43339 9.16667 7.43339H10V9.67506M8.33333 8.28339C4.60833 8.45839 1.94167 9.80006 0 12.5167C0.833333 8.35006 3.33333 4.18339 9.16667 3.35006V0.0167236L15 5.85006L9.16667 11.6834V8.26672C8.89167 8.26672 8.61667 8.27506 8.33333 8.28339Z" fill="#ffffff"/>
3198</svg>
3199</p>
3200      </div>
3201      <div class="button-wishlist text-center">
3202        <p id="wishButton" class="d-flex gap-2 wishlist-toggle" data-product-handle="blossom-shine"><span>Wishlist</span><svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="16" height="15" viewBox="0 0 16 15" fill="none">
3203  <path d="M2.03341 7.70827C1.70392 7.38096 1.44286 6.99135 1.26546 6.56213C1.08805 6.13292 0.997838 5.67269 1.00008 5.20827C1.00008 4.26896 1.37322 3.36812 2.03741 2.70393C2.7016 2.03974 3.60244 1.6666 4.54175 1.6666C5.85841 1.6666 7.00841 2.38327 7.61675 3.44993H8.55008C8.85934 2.90748 9.30684 2.45667 9.84699 2.14341C10.3871 1.83015 11.0007 1.66563 11.6251 1.6666C12.5644 1.6666 13.4652 2.03974 14.1294 2.70393C14.7936 3.36812 15.1667 4.26896 15.1667 5.20827C15.1667 6.18327 14.7501 7.08327 14.1334 7.70827L8.08341 13.7499L2.03341 7.70827ZM14.7167 8.29993C15.5084 7.49993 16.0001 6.4166 16.0001 5.20827C16.0001 4.04795 15.5391 2.93515 14.7187 2.11467C13.8982 1.2942 12.7854 0.833267 11.6251 0.833267C10.1667 0.833267 8.87508 1.5416 8.08341 2.6416C7.67933 2.08035 7.14725 1.62353 6.53131 1.30904C5.91537 0.994549 5.23333 0.831448 4.54175 0.833267C3.38143 0.833267 2.26863 1.2942 1.44816 2.11467C0.627684 2.93515 0.166748 4.04795 0.166748 5.20827C0.166748 6.4166 0.658415 7.49993 1.45008 8.29993L8.08341 14.9333L14.7167 8.29993Z" fill="#ffffff"/>
3204</svg>
3205<!--
3206  <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="34" height="30" viewBox="0 0 34 30" fill="none">
3207  <path d="M32.8333 9.23082C32.8333 4.51916 29.0142 0.699158 24.3025 0.699158C21.2 0.699158 
320718.4933 2.35999 17 4.83582C15.5067 2.36082 12.8 0.699158 9.69749 0.699158C4.98582 0.699991 1.16666 4.51916 1.16666 9.23082C1.16666 10.3075 1.37499 11.3342 1.73916 12.2825C4.55999 20.3967 17 29.3008 17 29.3008C17 29.3008 29.44 20.3967 32.2617 12.2825C32.6258 11.3342 32.8333 10.3075 32.8333 9.23082Z" fill="white" fill-opacity="0.32" stroke="#757575" stroke-width="0.75" stroke-linecap="round" stroke-linejoin="round"/>
3208  </svg>
3209-->
3210</p>
3211      </div>
3212    </div>
3213  </div>
3214</div>
3215<div class="purchasePopup purchasePopupSpotify" style="display: none;">
3216  <div class="purchaseArea">
3217    <div class="sectionPurchase sectionPurchaseSpotify">
3218      <div class="wrapperPurchase">
3219        <div class="headerPurchase">
3220          <h3>personalize spotify photo print</h3>
3221          <a class="close-purchase-popup">
3222            <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
3223              <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>
3224            </svg>
3225          </a>
3226        </div>
3227        <div class="contentPurchase">
3228          <div class="spotifyAddons"></div>
3229        </div>
3230
3231        <div class="purchase-button btn-addon row m-0" style="display: none;">
3232          <div class="col-12 col-lg-2 text-left mb-2 p-0">
3233            <button class="back-purchase-button back-addon text-uppercase">
3234              <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
3235                <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>
3236              </svg>
3237              <span>Back</span>
3238            </button>
3239          </div>
3240          <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;">
3241            <button class="btn next-purchase-button next-addon text-uppercase">
3242              <span>continue without add-ons</span>
3243            </button>
3244          </div>
3245        </div>
3246      </div>
3247    </div>
3248  </div>
3249</div>
3250
3251<style>
3252  #PBarNextFrameWrapper {
3253    display: none;
3254  }
3255  #backgroundPopup {
3256    display: none;
3257    position: fixed;
3258    _position: absolute;
3259    height: 100%;
3260    width: 100%;
3261    top: 0;
3262    left: 0;
3263    background: rgb(117 117 117 / 24%);
3264    z-index: 1;
3265  }
3266  .sectionPurchase {
3267    height: 100%;
3268    position: relative;
3269    max-width: 1344px;
3270    background-color: #fff;
3271    padding: 0;
3272    overflow: hidden; /* Changed from auto to hidden */
3273    display: flex;
3274    flex-direction: column;
3275  }
3276  .sectionPurchase.purchaseAddonSpotify {
3277    max-width: 1070px!important;
3278    max-height: 765px!important;
3279  }
3280  .sectionPurchaseBoard {
3281    max-width: 872px!important;
3282    max-height: 821px!important;
3283  }
3284  .purchaseAddonSpotify .btn-action {
3285    position: absolute;
3286    bottom: 0;
3287    left: 0;
3288    width: 100%;
3289    display: flex;
3290    gap: 10px;
3291  }
3292  .wrapperPurchase {
3293    position: relative;
3294    height: 100%;
3295    display: flex;
3296    flex-direction: column;
3297  }
3298  
3299  /* New styles for scrollable content and sticky button */
3300  .purchase-content {
3301    flex: 1;
3302    overflow-y: auto;
3303    overflow-x: hidden;
3304    padding: 20px;
3305  }
3306  
3307  .purchase-button-wrapper {
3308    position: sticky;
3309    bottom: 0;
3310    background-color: #fff;
3311    border-top: 1px solid #e0e0e0;
3312    padding: 15px 0;
3313    margin-top: auto;
3314    z-index: 10;
3315  }
3316  
3317  .purchasePopup {
3318    display: none;
3319    position: fixed;
3320    background: rgb(117 117 117 / 24%);
3321    z-index: 999;
3322    padding: 40px;
3323    font-size: 13px;
3324    top: 0;
3325    left: 0;
3326    width: 100%;
3327    height: 100%;
3328  }
3329  .popupPurchaseClose{
3330    font-size:14px;
3331    line-height:14px;
3332    right:45px;
3333    top:45px;
3334    position:absolute;
3335    color:#6fa5fd;
3336    font-weight:700;
3337    display:block;
3338    cursor: pointer;
3339  }
3340
3341  .headerPurchase {
3342    margin-bottom: 30px;
3343    display: flex;
3344    justify-content: space-between;
3345  }
3346
3347  .headerPurchase h3 {
3348    font-size: 16px;
3349    text-transform: uppercase;
3350  }
3351
3352  .sectionPurchaseBoard .headerPurchase {
3353    margin-bottom: 15px;
3354  }
3355
3356  .sectionPurchaseBoard .formAddressPurchase {
3357    padding-top: 0;
3358  }
3359
3360  .purchaseArea {
3361    position: relative;
3362    height: 100%;
3363  }
3364
3365  .purchaseArea h4 {
3366    width: 100%;
3367    font-size: 12px;
3368    font-weight: 600;
3369    margin-bottom: 10px;
3370    text-transform: uppercase;
3371  }
3372
3373  .menuPurchase {
3374    margin-bottom: 30px;
3375  }
3376
3377  .menuPurchase ul {
3378    list-style-type: none;
3379    margin: 0;
3380  }
3381
3382  .menuPurchase ul li {
3383    display: inline-block;
3384    border: 1px solid #ffffff;
3385    padding: 5px 20px;
3386    margin-right: 5px;
3387    margin-bottom: 10px;
3388    font-size: 12px;
3389    font-weight: 400;
3390  }
3391
3392  .menuPurchase ul li:hover, .menuPurchase ul li.selected {
3393    background-color: #ffffff;
3394    color: #ffffff;
3395  }
3396
3397  .contentPurchase h5 {
3398      font-size: 12px;
3399      margin-bottom: 10px;
3400      font-weight: 400;
3401      overflow: hidden;
3402  }
3403
3404  /* Card */
3405
3406  #itemCards {
3407    max-height: 430px;
3408    overflow: auto;
3409  }
3410
3411  .item-cards {
3412      width: 100%;
3413  }
3414  .item-card.selected {
3415      border: 1px solid #ffffff;
3416  }
3417  .item-card:hover {
3418      border: 1px solid #C4C4C4;
3419  }
3420  .item-cards .item-card {
3421    position: relative;
3422    width: calc(33% - 10px);
3423    max-width: calc(33% - 10px);
3424    flex: 0 0 calc(33% - 10px);
3425    margin-bottom: 20px;
3426  }
3427  .item-cards .item-card label,
3428  .item-addons .item-addon label {
3429      position: absolute;
3430      left: 0;
3431      width: 100%;
3432      height: 100%;
3433  }
3434  .item-cards .item-card .card-image img,
3435  .item-addons .item-addon .card-image img {
3436      display: block;
3437      width: 100%;
3438  }
3439  .item-card .card-meta,
3440  .item-addon .card-meta {
3441      padding: 10px 5px 5px;
3442  }
3443  .item-card.selected .card-meta,
3444  .item-addon.selected .card-meta,
3445  .item-card.selected .card-qty {
3446      background-color: #ffffff;
3447      color: #fff;
3448      visibility: visible!important;
3449  }
3450  .item-card:hover .card-meta,
3451  .item-addon:hover .card-meta,
3452  .item-card:hover .card-qty {
3453      background-color: #C4C4C4;
3454      color: #fff;
3455      visibility: visible!important;
3456  }
3457  .item-cards .item-card p,
3458  .item-addons .item-addon p {
3459    font-size: 12px !important;
3460    margin: 0;
3461    font-weight: 600;
3462  }
3463  .item-card .card-meta input,
3464  .item-addon .card-meta input {
3465      display: none;
3466  }
3467  .item-cards .item-card h5,
3468  .item-addons .item-addon h5 {
3469    text-transform: uppercase;
3470    max-height: 35px;
3471  }
3472
3473  @media (max-width: 768px) {
3474    .item-cards .item-card {
3475        width: calc(50% - 10px);
3476        max-width: calc(50% - 10px);
3477        flex: 0 0 calc(50% - 10px);
3478        margin-bottom: 0;
3479    }
3480  }
3481
3482  .card-qty {
3483    display: flex;
3484    padding: 5px;
3485    visibility: hidden;
3486    background-color: #fff !important;
3487    z-index: 999;
3488  }
3489  .card-qty a {
3490    border-width: 1px;
3491    width: 30%;
3492    cursor: pointer;
3493    text-align: center;
3494    align-self: center;
3495    height: 28px;
3496    display: block;
3497    position: relative;
3498  }
3499  .card-qty a svg {
3500    position: absolute;
3501    top: 50%;
3502    left: 50%;
3503    transform: translate(-50%, -50%);
3504    text-align: center;
3505  }
3506  input.btn-qty {
3507    border-width: 0px;
3508    border-radius: 0;
3509    background-color: #fff;
3510    -webkit-appearance: none;
3511    box-shadow: none !important;
3512    -webkit-box-shadow: none !important;
3513    -moz-box-shadow: none!important;
3514    width: 40%;
3515    border-left: 1px solid #c4c4c4;
3516    border-right: 1px solid #c4c4c4;
3517    padding: 0;
3518  }
3519
3520  .sectionPurchaseBoard #itemAddons .item-card {
3521    width: calc(20% - 15px);
3522    max-width: calc(20% - 15px);
3523    flex: 0 0 calc(20% - 15px);
3524  }
3525
3526  .purchase-button {
3527    width: 100%;
3528    padding: 0; /* Reset padding as it's now handled by wrapper */
3529    margin: 0;
3530  }
3531
3532  .sectionPurchaseBoard .purchase-button {
3533    margin-top: 0 !important; /* Reset margin */
3534  }
3535
3536  .back-purchase-button, .back-spotify {
3537      width: 139px;
3538      border: 1px solid;
3539      height: 43px;
3540  }
3541  .purchase-button .btn {
3542    width: 297px;
3543    height: 43px;
3544    background-color: #ffffff;
3545    color: #ffffff;
3546  }
3547  .purchase-button .btn[disabled] {
3548    background-color: #EEEEEE;
3549  }
3550  .back-purchase-button svg, .back-spotify svg {
3551    align-self: center;
3552    vertical-align: middle;
3553    margin-right: 10px;
3554  }
3555
3556  #purchaseProduct .row .error {
3557    font-size: 12px !important;
3558    color: orange;
3559    margin-top: 5px;
3560  }
3561
3562  .reviewCardPurchase {
3563    max-width: 448px;
3564    float: right;
3565  }
3566
3567  .addonsPurchase .addon-item {display: flex;justify-content: space-between;}
3568  .addon-item * {align-self: center;font-size: 12px;}
3569  .addon-itm-title {width: 360px;}
3570  .addon-itm-line-price {color: #757575;width: 80px;justify-content: space-between;display: flex;}
3571
3572  .propsAddonSpotify p {
3573    margin: 0;
3574    display: flex;
3575    font-size: 12px !important;
3576    margin-bottom: 5px;
3577  }
3578  .propsAddonSpotify p span:first-child {
3579    text-transform: uppercase;
3580    font-weight: 600;
3581    -ms-flex: 0 0 150px;
3582    flex: 0 0 150px;
3583    max-width: 150px;
3584  }
3585
3586  .addonsPurchase .addons {
3587    max-height: 250px;
3588    overflow: auto;
3589  }
3590
3591  .btn .loading:after {
3592    content: "";
3593    display: inline-block;
3594    width: 20px;
3595    height: 20px;
3596    padding: 3px;
3597    aspect-ratio: 1;
3598    border-radius: 50%;
3599    background: #FFFFFF;
3600    --_m: conic-gradient(#0000 10%, #ffffff), linear-gradient(#ffffff 0 0) content-box;
3601    -webkit-mask: var(--_m);
3602    mask: var(--_m);
3603    -webkit-mask-composite: source-out;
3604    mask-composite: subtract;
3605    animation: l3 1s infinite linear;
3606    margin: auto;
3607    vertical-align: middle;
3608    margin-left: 10px;
3609  }
3610
3611  #qrcode img, #qrcode canvas {
3612    width: 50px;
3613    position: absolute;
3614    top: 12px;
3615    left: 16px;
3616  }
3617
3618  .t-preview {
3619    position: absolute;
3620    top: 17px;
3621    left: 75px;
3622  }
3623  .t-preview p {
3624    margin: 0;
3625    font-size: 12px !important;
3626  }
3627  .t-preview .h3 {
3628    font-size: 16px !important;
3629    margin-bottom: 5px;
3630    font-weight: 600;
3631  }
3632  .scanCard {
3633    width: 100%;
3634    border: 1px solid;
3635    height: 76px;
3636    background-color: #fff;
3637  }
3638  .scanCard > div > img {
3639    position: absolute;
3640    right: 0;
3641    width: 55px;
3642  }
3643
3644  @keyframes l3 {
3645    100% {
3646      transform: rotate(1turn);
3647    }
3648  }
3649
3650  @media (min-width: 991px) {
3651    .sectionPurchase {
3652      height: 100%;
3653      position: relative;
3654      max-width: 1344px;
3655      background-color: #fff;
3656      top: 50%;
3657      left: 50%;
3658      transform: translate(-50%, -50%);
3659    }
3660    .headerPurchase h3 {
3661      font-size: 20px;
3662    }
3663    .purchaseArea h4 {
3664      font-size: 16px;
3665    }
3666
3667    .menuPurchase ul li {
3668        font-size: 16px;
3669    }
3670    
3671    .contentPurchase {
3672      margin-bottom: 30px;
3673    }
3674    .contentPurchase h5 {
3675      font-size: 16px;
3676    }
3677
3678    .item-cards .item-card p,
3679    .item-addons .item-addon p {
3680      font-size: 16px !important;
3681    }
3682
3683    .cards {
3684      float: right;
3685      width: 400px;
3686    }
3687
3688    .item-cards .item-card {
3689      width: calc(25% - 30px);
3690      max-width: calc(25% - 30px);
3691      flex: 0 0 calc(25% - 30px);
3692    }
3693
3694      #itemAddons .item-card {
3695        position: relative;
3696        width: calc(16% - 40px);
3697        max-width: calc(16% - 40px);
3698        flex: 0 0 calc(16% - 40px);
3699      }
3700      
3701    .purchase-button-wrapper {
3702        padding: 10px 20px;
3703    }
3704  }
3705
3706  @media (max-width: 1200px) {
3707    .item-cards .item-card {
3708      width: calc(33% - 30px);
3709      max-width: calc(33% - 30px);
3710      flex: 0 0 calc(33% - 30px);
3711    }
3712  }
3713
3714  @media (max-width: 992px) {
3715    .purchasePopup {
3716      padding: 0;
3717    }
3718    .item-cards .item-card h5,
3719    .item-addons .item-addon h5 {
3720      max-height: 30px;
3721    }
3722
3723    .back-purchase-button, .back-spotify, .next-purchase-button {
3724        width: 100%;
3725    }
3726    .addon-itm-title {
3727      width: 300px;
3728    }
3729    .addon-itm-line-price {
3730      margin-right: 10px;
3731    }
3732    .t-preview {
3733      top: 10px;
3734    }
3735
3736    .card-qty a {
3737      height: 15px;
3738    }
3739    
3740    .purchase-button-wrapper {
3741      padding: 15px;
3742    }
3743  }
3744
3745  @media (max-width: 576px) {
3746    .purchase-button .btn {
3747        width: 100%!important;
3748    }
3749    .purchase-button > .col-12 {
3750      padding-left: 0;
3751      padding-right: 0;
3752    }
3753  }
3754      .rv-wrap {
3755        background: #ffffff00;
3756        padding: clamp(18px, 3.5vw, 44px);
3757        display: flex;
3758        justify-content: center;
3759    }
3760
3761    .rv-card {
3762        width: min(950px, 100%);
3763        border-radius: 18px;
3764        background: linear-gradient(180deg, rgba(11, 16, 37, .88), rgba(8, 10, 24, .88));
3765        border: 1px solid rgb(242, 242, 245);
3766        box-shadow: 0 25px 80px rgba(0, 0, 0, .55);
3767        position: relative;
3768        overflow: hidden;
3769    }
3770
3771    /* Neon frame + pulse */
3772    .rv-card::before {
3773    content: "";
3774    position: absolute;
3775    inset: -2px;
3776    background: conic-gradient(
3777        from 180deg,
3778        #ffffff,
3779        #f0f8ff,
3780        #ffffff,
3781        #ffffff
3782    );
3783    filter: blur(20px);
3784    opacity: 0.3;
3785    animation: rvSpin 10s linear infinite;
3786    pointer-events: none;
3787}
3788
3789    @keyframes rvSpin {
3790        to {
3791            transform: rotate(360deg);
3792        }
3793    }
3794
3795    .rv-head {
3796        position: relative;
3797        z-index: 1;
3798        padding: clamp(16px, 3vw, 26px);
3799        border-bottom: 1px solid rgba(0, 0, 0, 0)
3800    }
3801
3802    .rv-dot {
3803        width: 12px;
3804        height: 12px;
3805        border-radius: 999px;
3806        display: inline-block;
3807        background: var(--neon1 );
3808        box-shadow: 0 0 14px rgba(255, 255, 255, 0.85), 0 0 30px rgba(180, 0, 255, .35);
3809        animation: rvPulse 1.6s ease-in-out infinite;
3810        margin-bottom: 10px;
3811    }
3812
3813    @keyframes rvPulse {
3814
3815        0%,
3816        100% {
3817            transform: scale(1);
3818            opacity: .85;
3819        }
3820
3821        50% {
3822            transform: scale(1.35);
3823            opacity: 1;
3824        }
3825    }
3826
3827    .rv-title {
3828        margin: 0 0 6px 0;
3829        color: var(--txt);
3830        font-size: clamp(18px, 2.2vw, 26px);
3831        letter-spacing: .2px;
3832    }
3833
3834    .rv-sub {
3835        margin: 0;
3836        color: var(--muted);
3837        font-size: clamp(13px, 1.7vw, 15px);
3838        line-height: 1.4;
3839    }
3840
3841    .rv-viewport {
3842        position: relative;
3843        z-index: 1;
3844        overflow: hidden;
3845        padding: clamp(12px, 2vw, 18px);
3846    }
3847
3848    .rv-track {
3849        display: flex;
3850        gap: 14px;
3851        will-change: transform;
3852        transition: transform .45s ease;
3853    }
3854
3855    .rv-item {
3856        flex: 0 0 calc(33.333% - 10px);
3857        background: rgb(121 4 159);
3858        border: 1px solid rgba(42, 51, 95, .55);
3859        border-radius: 14px;
3860        padding: 14px;
3861        box-shadow: 0 0 0 1px rgba(0, 245, 255, .06);
3862    }
3863
3864    .rv-top {
3865        display: flex;
3866        align-items: center;
3867        justify-content: space-between;
3868        gap: 10px;
3869        margin-bottom: 10px;
3870    }
3871
3872    .rv-name {
3873        color: var(--txt);
3874        font-weight: 700;
3875        font-size: 14px;
3876    }
3877
3878    .rv-stars {
3879        color: rgb(203 189 56);
3880        filter: drop-shadow(0 0 10px rgba(0, 245, 255, .25));
3881        font-size: 14px;
3882        letter-spacing: 1px;
3883        white-space: nowrap;
3884    }
3885
3886    .rv-body {
3887        margin: 0;
3888        color: rgba(234, 240, 255, .88);
3889        line-height: 1.55;
3890        font-size: 14px;
3891    }
3892
3893    .rv-date {
3894        display: block;
3895        margin-top: 10px;
3896        color: rgba(183, 194, 255, .78);
3897        font-size: 12px;
3898    }
3899
3900    .rv-controls {
3901        position: relative;
3902        z-index: 1;
3903        display: flex;
3904        gap: 10px;
3905        justify-content: flex-end;
3906        padding: 0 clamp(12px, 2vw, 18px) clamp(12px, 2vw, 18px);
3907    }
3908
3909    .rv-btn {
3910        appearance: none;
3911        border: 1px solid rgba(42, 51, 95, .7);
3912        background: rgba(8, 10, 24, .7);
3913        color: var(--txt);
3914        border-radius: 12px;
3915        padding: 10px 12px;
3916        cursor: pointer;
3917        transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
3918        font-weight: 700;
3919        line-height: 1;
3920    }
3921
3922    .rv-btn:hover {
3923        transform: translateY(-1px);
3924        border-color: rgba(0, 245, 255, .45);
3925        box-shadow: 0 0 0 1px rgba(0, 245, 255, .12);
3926    }
3927
3928    .rv-pause {
3929        min-width: 44px;
3930        text-align: center;
3931    }
3932
3933    /* Responsive */
3934    @media (max-width: 900px) {
3935        .rv-item {
3936            flex-basis: calc(50% - 7px);
3937        }
3938    }
3939
3940    @media (max-width: 560px) {
3941        .rv-item {
3942            flex-basis: 100%;
3943        }
3944
3945        .rv-controls {
3946            justify-content: space-between;
3947        }
3948    }
3949
3950    @media (prefers-reduced-motion: reduce) {
3951
3952        .rv-dot,
3953        .rv-card::before {
3954            animation: none;
3955        }
3956
3957        .rv-track {
3958            transition: none;
3959        }
3960
3961        .rv-btn {
3962            transition: none;
3963        }
3964    }
3965</style>
3966
3967
3968<div class="purchasePopup">
3969  <div class="purchaseArea">
3970    
3971      <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard">
3972        <div class="wrapperPurchase">
3973          <div class="purchase-content">
3974            <div class="headerPurchase">
3975  <h3 class="text-uppercase">
3976    
3977      customize your flower board
3978    
3979  </h3>
3980  <a class="close-purchase-popup">
3981  <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
3982    <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"/>
3983  </svg>
3984</a>
3985
3986</div>
3987<div class="contentPurchase">
3988  <div class="row">
3989    
3990      <div class="col-12">
3991        
3992
3993<style>
3994  
3995  
3996  .customize-papan .group-field-1 .input-field {float: left;width: 100%;height: 317px;background-color: #E5E5EA;}
3997  .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;}
3998  
3999  .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;}
4000  .customize-papan .btn-upload-papan svg {width: 21px;height: 25px;display: block;align-self: center;margin: auto;margin-bottom: 12px;}
4001  .svgLogoPapan {position: absolute;width: 100%;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;}
4002  .svgLogoPapan p {color: #8E8E93; margin: 0;}
4003  .svgLogoPapan p span {font-size: 12px;color: #FF0E00;}
4004  .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;}
4005  #suggest-messages {position: absolute;bottom: 5px;left: 5px;}
4006  #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;}
4007  .case-occasion .nice-select:after {border-bottom: 2px solid #333;border-right: 2px solid #333;right: 20px;top: 42%;width: 10px;height: 10px;}
4008  .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;}
4009  .customize-papan .input-field .limit {position: absolute;right: 15px;top: 0;color: #757575;}
4010
4011  @media (min-width: 991px) {
4012    .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);}
4013    .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);}
4014  }
4015</style>
4016
4017<input type="hidden" data-properties="penerima" value="-">
4018<div class="customize-papan">
4019  <div class="container">
4020    <div class="field-papan group-field-1 form-group">
4021      <div class="input-field">
4022        <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.
4023(Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea>
4024        <p class="limit">0/100</p>
4025        <div id="suggest-messages">
4026          <a id="show_note_papan1" href="#">
4027            <div class="suggest-message" id="note_btn_div1">
4028              <span class="promo-code-link" id="note_btn_papan1">Contoh Kata WEDDING</span>
4029            </div>
4030          </a>
4031          <a id="show_note_papan2" href="#">
4032            <div class="suggest-message" id="note_btn_div2">
4033              <span class="promo-code-link" id="note_btn_papan2">Contoh Kata SELAMAT</span>
4034            </div>
4035          </a>
4036          <a id="show_note_papan3" href="#">
4037            <div class="suggest-message" id="note_btn_div3">
4038              <span class="promo-code-link" id="note_btn_papan3">Contoh Kata DUKA CITA</span>
4039            </div>
4040          </a>
4041        </div>
4042      </div>
4043    </div>
4044    <div class="hide">
4045      <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;">
4046      <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1">
4047    </div>
4048    <div class="hide">
4049      <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;">
4050      <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2">
4051    </div>
4052    <div class="hide">
4053      <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;">
4054      <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3">
4055    </div>
4056    <div class="field-papan group-field-2 form-group">
4057      
4058      <label for="logoPapan" onclick="" class="input-field field-logo">
4059        
4060        
4061        
4062        <div class="btn-upload-papan w-100">
4063          <?xml version="1.0" encoding="UTF-8"?>
4064          <img src="" style="display:none">
4065          <div class="svgLogoPapan">
4066            <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="22" height="26" viewBox="0 0 22 26" fill="none">
4067              <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black"/>
4068            </svg>
4069            <p>Upload Logo <span>*optional</span></p>
4070          </div>
4071        </div>
4072        
4073      </label>
4074      
4075      <input
4076        type="hidden"
4077        data-properties="papan-logo"
4078        value=""
4079      >
4080      <input
4081        type="file"
4082        id="logoPapan"
4083        accept="image/*"
4084        style="position: absolute;width: 1px;height: 1px;padding: 0"
4085      >
4086      
4087      <div class="input-field">
4088        <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35"/>
4089        <p class="limit">0/35</p>
4090      </div>
4091      
4092    </div>
4093    
4094  </div>
4095</div>
4096      </div>
4097    
4098  </div>
4099</div>
4100
4101          </div>
4102          <div class="purchase-button-wrapper">
4103            <div class="purchase-button btn-card row m-0">
4104  <div class="col-12 col-lg-2 text-left mb-2 p-0">
4105    
4106  </div>
4107  <div class="btn-next-card col-12 col-lg-10 text-right">
4108    
4109    
4110    <button
4111      
4112        
4113      
4114      class="btn next-purchase-button text-uppercase"
4115      
4116        disabled
4117      
4118    >
4119      <span>save your flower board</span>
4120    </button>
4121  </div>
4122</div>
4123
4124          </div>
4125        </div>
4126      </div>
4127    
4128    
4129    
4130      <div
4131        class="sectionPurchase sectionPurchaseBoard hide"
4132        data-section="address"
4133      >
4134        <div class="wrapperPurchase">
4135          <div class="purchase-content">
4136            <div class="headerPurchase">
4137  <h3>
4138    Complete Your Order
4139  </h3>
4140  <a class="close-purchase-popup">
4141  <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
4142    <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"/>
4143  </svg>
4144</a>
4145
4146</div>
4147<div class="contentPurchase">
4148  <div class="row">
4149    <div class="col-12 position-relative">
4150      <div class="addressPurchase">
4151        
4152          <h4 class="text-uppercase">recipient delivery address</h4>
4153          <p>Share the delivery address to send your heartfelt blooms straight to their door.</p>
4154        
4155        <div class="formAddressPurchase row">
4156          <div class="col-12">
4157            <form>
4158              <div class="form-group row mb-2 mb-lg-4">
4159                <div class="col-6 position-relative">
4160                  <input id="first_name" type="text" class="form-control input__field" placeholder="" required>
4161                  <label for="first_name" class="input__label">First Name<span>*</span></label>
4162                </div>
4163                <div class="col-6 position-relative">
4164                  <input id="last_name" type="text" class="form-control input__field" placeholder="" required>
4165                  <label for="last_name" class="input__label">Last Name<span>*</span></label>
4166                </div>
4167                <input type="hidden" data-properties="nama-penerima">
4168              </div>
4169              
4170                <h4 class="text-uppercase">how you want to input your address</h4>
4171                <div class="form-group row mb-2 mb-lg-4 form-address-upload">
4172                  <div class="col-6 position-relative">
4173                    <label class="address-manualy">
4174                      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="18" height="17" viewBox="0 0 18 17" fill="none">
4175  <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
41751216 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
41755 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"/>
4176</svg>
4177<span>Input Address Manually</span>
4178                    </label>
4179                  </div>
4180                  <div class="col-6 position-relative">
4181                    <label for="address-upload" class="address-upload">
4182                      <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="12" height="13" viewBox="0 0 12 13" fill="none">
4183  <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"/>
4184</svg>
4185<span>Upload Address Picture</span>
4186                    </label>
4187                    <input
4188                      id="address-upload"
4189                      type="file"
4190                      accept="image/png, image/jpeg"
4191                      style="position: absolute; padding: 0;width: 1px;height: 1px"
4192                    >
4193                    <input type="hidden" class="props-address-upload" data-properties="foto-alamat">
4194                  </div>
4195                </div>
4196                <img width="150" height="" src="" class="photo-address" style="display: none;">
4197              
4198              <div class="form-group row position-relative mb-2 mb-lg-4 form-address">
4199                <div class="col-12">
4200                  <textarea
4201                    id="delivery_address"
4202                    data-properties="alamat-penerima"
4203                    class="form-control input__field col-12"
4204                    placeholder=""
4205                    required
4206                  ></textarea>
4207                  <label for="delivery_address" class="input__label">Delivery Address<span>*</span></label>
4208                  
4209                </div>
4210              </div>
4211              <div class="form-group row mb-2 mb-lg-4 form-address">
4212                <div class="col-6 position-relative">
4213                  <input
4214                    id="recipient_number"
4215                    type="text"
4216                    data-properties="telepon-penerima"
4217                    class="form-control input__field"
4218                    placeholder=""
4219                    required
4220                  >
4221                  <label for="recipient_number" class="input__label">Recipient number<span>*</span></label>
4222                </div>
4223                <div class="col-6 position-relative">
4224                  <input
4225                    id="company"
4226                    type="text"
4227                    data-properties="company"
4228                    class="form-control input__field"
4229                    placeholder=""
4230                  >
4231                  <label for="company" class="input__label">Company (Optional)</label>
4232                </div>
4233              </div>
4234              <div class="form-group row mb-2 mb-lg-4 form-address">
4235                <div class="col-6 position-relative">
4236                  <input
4237                    id="province"
4238                    type="text"
4239                    class="form-control input__field"
4240                    placeholder=""
4241                    value="Jakarta"
4242                    data-properties="province"
4243                  >
4244                  <label for="province" class="input__label">Province</label>
4245                </div>
4246                <div class="col-6 position-relative">
4247                  <select id="zip" class="form-control select-search" required></select>
4248                </div>
4249              </div>
4250            </form>
4251          </div>
4252        </div>
4253      </div>
4254      <div class="addonsPurchase">
4255        <h4 class="text-uppercase">add-ons</h4>
4256        <div class="addons">
4257          <p>No Add-Ons</p>
4258          <!--
4259            <button class="add-addon">
4260              <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="12" height="12" viewBox="0 0 12 12" fill="none">
4261                <path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/>
4262              </svg>
4263              <span>Enhance my moment with Add-ons</span>
4264            </button>
4265          -->
4266        </div>
4267      </div>
4268    </div>
4269    
4270  </div>
4271</div>
4272
4273<script>
4274document.addEventListener('DOMContentLoaded', function() {
4275  // Detect iOS
4276  var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
4277  
4278  if (isIOS) {
4279    document.querySelector('.formAddressPurchase').classList.add('ios');
4280    
4281    // iOS specific fixes
4282    var inputs = document.querySelectorAll('.formAddressPurchase .input__field');
4283    
4284    inputs.forEach(function(input) {
4285      // Force enable touch events on iOS
4286      input.style.webkitUserSelect = 'text';
4287      input.style.webkitTouchCallout = 'default';
4288      input.style.pointerEvents = 'auto';
4289      input.style.touchAction = 'manipulation';
4290      
4291      // Add explicit touch event listeners for iOS
4292      input.addEventListener('touchstart', function(e) {
4293        e.stopPropagation();
4294        this.focus();
4295      }, { passive: false });
4296      
4297      input.addEventListener('touchend', function(e) {
4298        e.preventDefault();
4299        e.stopPropagation();
4300        this.focus();
4301        this.click();
4302      }, { passive: false });
4303      
4304      // Force focus on tap for iOS
4305      input.addEventListener('click', function(e) {
4306        e.stopPropagation();
4307        if (document.activeElement !== this) {
4308          this.focus();
4309        }
4310      });
4311    });
4312    
4313    // Fix for label overlapping on iOS
4314    var labels = document.querySelectorAll('.formAddressPurchase .input__label');
4315    labels.forEach(function(label) {
4316      label.style.pointerEvents = 'none';
4317      label.addEventListener('touchstart', function(e) {
4318        e.preventDefault();
4319        var input = this.parentNode.querySelector('.input__field');
4320        if (input) {
4321          input.focus();
4322        }
4323      });
4324    });
4325  }
4326  
4327  // Handle input state for all browsers, especially iOS
4328  var inputs = document.querySelectorAll('.input__field');
4329  
4330  inputs.forEach(function(input) {
4331    // Handle input events
4332    input.addEventListener('input', function() {
4333      if (this.value.trim() !== '') {
4334        this.classList.add('has-value');
4335      } else {
4336        this.classList.remove('has-value');
4337      }
4338    });
4339    
4340    // Handle focus
4341    input.addEventListener('focus', function() {
4342      this.classList.add('focused');
4343      // iOS specific: ensure input is visible
4344      if (isIOS) {
4345        setTimeout(function() {
4346          input.scrollIntoView({ behavior: 'smooth', block: 'center' });
4347        }, 300);
4348      }
4349    });
4350    
4351    // Handle blur
4352    input.addEventListener('blur', function() {
4353      this.classList.remove('focused');
4354      if (this.value.trim() !== '') {
4355        this.classList.add('has-value');
4356      } else {
4357        this.classList.remove('has-value');
4358      }
4359    });
4360    
4361    // Initial check for pre-filled values
4362    if (input.value.trim() !== '') {
4363      input.classList.add('has-value');
4364    }
4365  });
4366  
4367  // Additional iOS fixes
4368  if (isIOS) {
4369    // Prevent iOS Safari from adding default styling
4370    document.addEventListener('touchstart', function() {}, { passive: true });
4371    
4372    // Fix viewport issues on iOS
4373    var viewport = document.querySelector('meta[name=viewport]');
4374    if (viewport) {
4375      viewport.setAttribute('content', 
4376        'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no'
4377      );
4378    }
4379  }
4380});
4381</script>
4381
4382          </div>
4383          <div class="purchase-button-wrapper">
4384            <div class="purchase-button btn-address row m-0">
4385  <div class="col-12 col-lg-2 text-left mb-2 p-0">
4386    
4387      <button class="back-purchase-button back-address text-uppercase">
4388        <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
4389          <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"/>
4390        </svg>
4391        <span>Back</span>
4392      </button>
4393    
4394  </div>
4395  <div class="btn-next-card col-12 col-lg-10 text-right">
4396    
4397      <!--
4398        <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0">
4399          <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
4400            <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"/>
4401          </svg>
4402          <span>Back</span>
4403        </button>
4404      -->
4405    
4406    
4407    <button
4408      
4409        id="addtocart-card"
4410      
4411      class="btn  next-address text-uppercase"
4412      
4413    >
4414      <span>add to cart</span>
4415    </button>
4416  </div>
4417</div>
4418
4419          </div>
4420        </div>
4421      </div>
4422    
4423  </div>
4424</div>
4425<div id="backgroundPopup"></div>
4426
4427
4428
4429<input
4430  data-index="1"
4431  type="hidden"
4432  id="properties-delivery-date"
4433  name="properties[Delivery Date]"
4434  value="-"
4435>
4436<input
4437  data-index="2"
4438  type="hidden"
4439  id="properties-delivery-time"
4440  name="properties[Delivery Time]"
4441  value="-"
4442>
4443<input
4444  data-index="4"
4445  type="hidden"
4446  id="properties-nama-penerima"
4447  name="properties[Nama Penerima]"
4448  value="-"
4449>
4450<input
4451  data-index="5"
4452  type="hidden"
4453  id="properties-alamat-penerima"
4454  name="properties[Alamat Penerima]"
4455  value="-"
4456>
4457<input
4458  data-index="6"
4459  type="hidden"
4460  id="properties-kodepos"
4461  name="properties[Kodepos]"
4462  value="-"
4463>
4464<input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]">
4465
4466  
4467    <input
4468      data-index="8"
4469      type="hidden"
4470      id="properties-kartu-nama-penerima"
4471      name="properties[Kartu Nama Penerima]"
4472      value="-"
4473    >
4474  
4475  <textarea
4476    data-index="9"
4477    type="hidden"
4478    id="properties-kartu-pesan"
4479    name="properties[Kartu Pesan]"
4480    style="display: none"
4481  >-</textarea>
4482
4483
4484
4485  <input
4486    data-index="10"
4487    type="hidden"
4488    id="properties-kartu-nama-pengirim"
4489    name="properties[Kartu Nama Pengirim]"
4490    value="-"
4491  >
4492
4493
4494
4495  
4496  
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510<!-- Additional Shipping -->
4511<input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]">
4512<input
4513  type="hidden"
4514  id="properties-kota-pengiriman-country"
4515  name="properties[Country]"
4516  value="Indonesia"
4517>
4518<input type="hidden" id="properties-shipping" name="properties[Shipping]">
4519
4520<input type="hidden" id="properties-time" name="properties[Time]">
4521<input type="hidden" id="properties-card" name="properties[Card]">
4522<input type="hidden" id="properties-addons" name="properties[Addons]">
4523
4524<input
4525  type="hidden"
4526  id="properties-company"
4527  name="properties[Company]"
4528  value=""
4529>
4530<script>
4531  
4532  $(document).ready(function(){
4533    
4534    var text_max_papan1=150;
4535    var msg_text_papan1="";
4536    $('#kartu-ucapan-ucapan').keyup(function(){
4537      var text_length_papan1=$('#kartu-ucapan-ucapan').val().length;
4538      var msg_text_papan1=$('#kartu-ucapan-ucapan').val();
4539    });
4540
4541    var notes_papan1 = [
4542      
4543      [0,"Happy Wedding (nama & nama)."],[1,"Congratulations lovebirds (nama & nama)."],[2,"Selamat berbahagia (nama & nama)."],[3,"Selamat menempuh hidup baru (nama & nama)."]
4544      
4545    ];
4546    $('#show_note_papan1').click(function(event){
4547      event.preventDefault();
4548      var idx_papan1=parseInt($('#note_id_papan1').val());
4549      if(isNaN(idx_papan1)){
4550        idx_papan1=0;
4551      }else{
4552        idx_papan1++;
4553        idx_papan1=idx_papan1%notes_papan1.length;
4554      }
4555      var note_papan1=notes_papan1[idx_papan1][1];
4556      $('#note_id_papan1').val(idx_papan1);
4557      $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1);
4558      $('#msgDelivery').val(note_papan1);
4559
4560      var text_length_papan1=$('#kartu-ucapan-papan').val().length;
4561      var idx_2_papan1=parseInt($('#note_btn_id_papan1').val());
4562      if(isNaN(idx_2_papan1)){
4563        idx_2_papan1=0;
4564      }else{
4565        idx_2_papan1++;
4566        //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4567      }
4568      $('#note_btn_id_papan1').val(idx_2_papan1);
4569      //var note_btn=note_btn_text[idx_2][1];
4570      //$('#note_btn').text(note_btn);
4571    });
4572
4573    var text_max_papan2=150;
4574    var msg_text_papan2="";
4575    $('#kartu-ucapan-ucapan').keyup(function(){
4576      var text_length_papan2=$('#kartu-ucapan-ucapan').val().length;
4577      var msg_text_papan2=$('#kartu-ucapan-ucapan').val();
4578    });
4579
4580    var notes_papan2 = [
4581      
4582      [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)."]
4583      
4584    ];
4585    $('#show_note_papan2').click(function(event){
4586      event.preventDefault();
4587      var idx_papan2=parseInt($('#note_id_papan2').val());
4588      if(isNaN(idx_papan2)){
4589        idx_papan2=0;
4590      }else{
4591        idx_papan2++;
4592        idx_papan2=idx_papan2%notes_papan2.length;
4593      }
4594      var note_papan2=notes_papan2[idx_papan2][1];
4595      $('#note_id_papan2').val(idx_papan2);
4596      $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2);
4597      $('#msgDelivery').val(note_papan2);
4598      var text_length_papan2=$('#kartu-ucapan-papan').val().length;
4599      var idx_2_papan2=parseInt($('#note_btn_id_papan2').val());
4600      if(isNaN(idx_2_papan2)){
4601        idx_2_papan2=0;
4602      }else{
4603        idx_2_papan2++;
4604        //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4605      }
4606      $('#note_btn_id_papan2').val(idx_2_papan2);
4607      //var note_btn=note_btn_text[idx_2][1];
4608      //$('#note_btn').text(note_btn);
4609    });
4610
4611    var text_max_papan3=150;
4612    var msg_text_papan3="";
4613    $('#kartu-ucapan-ucapan').keyup(function(){
4614      var text_length_papan3=$('#kartu-ucapan-ucapan').val().length;
4615      var msg_text_papan3=$('#kartu-ucapan-ucapan').val();
4616    });
4617
4618    var notes_papan3 = [
4619      
4620      [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)."]
4621      
4622    ];
4623    $('#show_note_papan3').click(function(event){
4624      event.preventDefault();
4625      var idx_papan3=parseInt($('#note_id_papan3').val());
4626      if(isNaN(idx_papan3)){
4627        idx_papan3=0;
4628      }else{
4629        idx_papan3++;
4630        idx_papan3=idx_papan3%notes_papan3.length;
4631      }
4632      var note_papan3=notes_papan3[idx_papan3][1];
4633      $('#note_id_papan3').val(idx_papan3);
4634      $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3);
4635      $('#msgDelivery').val(note_papan3);
4636      var text_length_papan3=$('#kartu-ucapan-papan').val().length;
4637      var idx_2_papan3=parseInt($('#note_btn_id_papan3').val());
4638      if(isNaN(idx_2_papan3)){
4639        idx_2_papan3=0;
4640      }else{
4641        idx_2_papan3++;
4642        //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4643      }
4644      $('#note_btn_id_papan3').val(idx_2_papan3);
4645      //var note_btn=note_btn_text[idx_2][1];
4646      //$('#note_btn').text(note_btn);
4647    });
4648
4649    var text_max_papan4=150;
4650    var msg_text_papan4="";
4651    $('#kartu-ucapan-ucapan').keyup(function(){
4652      var text_length_papan4=$('#kartu-ucapan-ucapan').val().length;
4653      var msg_text_papan4=$('#kartu-ucapan-ucapan').val();
4654    });
4655
4656    $('#show_note_papan4').click(function(event){
4657      var notes_papan4 = [
4658        [0,"Here’s to you—steadier, stronger and better every day."],
4659        [1,"Warmest wishes for a speedy recovery!"],
4660        [2,"Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."],
4661        [3,"Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."]
4662      ];
4663      event.preventDefault();
4664      var idx_papan4=parseInt($('#note_id_papan4').val());
4665      console.log(idx_papan4, 'idx_papan4')
4666      if(isNaN(idx_papan4)){
4667        idx_papan4=0;
4668      }else{
4669        idx_papan4++;
4670        idx_papan4=idx_papan4%notes_papan4.length;
4671      }
4672      var note_papan4=notes_papan4[idx_papan4][1];
4673      $('#note_id_papan4').val(idx_papan4);
4674      $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4);
4675      console.log(note_papan4, 'note_papan4')
4676      var text_length_papan4=$('#kartu-ucapan-papan').val().length;
4677      var idx_2_papan4=parseInt($('#note_btn_id_papan4').val());
4678      if(isNaN(idx_2_papan4)){
4679        idx_2_papan4=0;
4680      }else{
4681        idx_2_papan4++;
4682        //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4683      }
4684      $('#note_btn_id_papan4').val(idx_2_papan4);
4685    });
4686
4687    /*
4688    $("#jenisPapan").change(function(){
4689      $( "select option:selected").each(function(){
4690        if($(this).attr("value")=="Happy Wedding"){
4691          $("#suggest-messages a").hide();
4692          $("#show_note_papan1").show();
4693          $("#kartu-ucapan-papan").val("");
4694        }
4695        if($(this).attr("value")=="Congratulations"){
4696          $("#suggest-messages a").hide();
4697          $("#show_note_papan2").show();
4698          $("#kartu-ucapan-papan").val("");
4699        }
4700        if($(this).attr("value")=="Duka Cita"){
4701          $("#suggest-messages a").hide();
4702          $("#show_note_papan3").show();
4703          $("#kartu-ucapan-papan").val("");
4704        }
4705      });
4706    }).change();
4707    */
4708
4709    
4710
4711    
4712
4713    $(".variant-metafield").each(function(){
4714      const t = $(this)
4715      const id = t.attr("id")
4716      const target = $(`[data-select=${id}]`)
4717      t.on('select2:selecting', function(e) {
4718        const data = e.params.args.data
4719        target.val(data.text)
4720      });
4721    })
4722  })
4723</script>
4723
4724
4725<div id="popupCart">
4726  <div class="container">
4727    <div class="wrapperPopupCart">
4728      <div class="headerPopupCart">
4729        <div class="d-flex pl-5 pr-5 p-4">
4730          <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="16" height="12" viewBox="0 0 16 12" fill="none">
4731            <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"/>
4732          </svg>
4733          <span>item added to your cart</span>
4734        </div>
4735        <a class="close-purchase-popup">
4736  <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
4737    <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"/>
4738  </svg>
4739</a>
4740
4741      </div>
4742      <div class="contentPopupCart">
4743        <div class="pl-5 pr-5 p-4">
4744          <div class="itemContent row m-0 justify-content-between">
4745            <div class="col-2 align-self-center">
4746              
4747              <img
4748                class="d-block"
4749                width="80"
4750                src="//outerbloom.com/cdn/shop/files/Blossom-Shine-WM_80x.jpg?v=1695788426"
4751              >
4752            </div>
4753            <div class="col-10 align-self-center">
4754              <div class="row pl-3">
4755                <div class="col-12 col-lg-7">
4756                  <span class="titleCartPopup text-uppercase">WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia</span>
4757                </div>
4758                <div class="d-flex justify-content-end col-12 col-lg-5">
4759                  <span class="deleteCartPopup hide">Delete</span>
4760                  <span class="lineCartPrice align-self-center">Rp 10.000</span>
4761                </div>
4762              </div>
4763            </div>
4764          </div>
4765          <div class="itemProperties">
4766            
4767              <div class="propDeliver">
4768                <h4>delivery option detail</h4>
4769                <p>
4770                  <span>delivery city</span>
4771                  <span class="propDeliveryCity">jakarta</span>
4772                </p>
4773                <p>
4774                  <span>delivery date</span>
4775                  <span class="propDeliveryDate">24/03/2025</span>
4776                </p>
4777                <p>
4778                  <span>delivery time</span>
4779                  <span class="propDeliveryTime">Afternoon | 13:00 - 18:00</span>
4780                </p>
4781              </div>
4782              <div class="propAddress">
4783                <h4>delivery option detail</h4>
4784                <p>
4785                  <span>RECIPIENT NAME</span>
4786                  <span class="propDeliveryName">jane doe</span>
4787                </p>
4788                <p>
4789                  <span>delivery address</span>
4790                  <span class="propDeliveryAddress"
4791                    >Jl. Gatot Subroto No. 25, RT.2/RW.4, Kuningan Barat, Kecamatan Mampang Prapatan, Kota Jakarta
4792                    Selatan, Daerah Khusus Ibukota Jakarta 12710, Indonesia</span
4793                  >
4794                </p>
4795                <p>
4796                  <span>recipient phone number</span>
4797                  <span class="propDeliveryPhone">(+62) 812-3456-7890</span>
4798                </p>
4799                <p>
4800                  <span>PROVINCE</span>
4801                  <span class="propDeliveryProv">Jakarta</span>
4802                </p>
4803                <p>
4804                  <span>postal code</span>
4805                  <span class="propDeliveryZip">12710</span>
4806                </p>
4807                
4808                
4809              </div>
4810            
4811          </div>
4812          <div class="itemAddonCart">
4813            <div class="toggleAddonCart d-flex justify-content-between">
4814              <h4>add-ons (0)</h4>
4815              <svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="5" height="9" viewBox="0 0 5 9" fill="none">
4816                <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"/>
4817              </svg>
4818            </div>
4819            <div class="wrapperItemAddonCart"></div>
4820          </div>
4821          
4822        </div>
4823      </div>
4824      <div class="footerPopupCart">
4825        <div class="row m-0 pl-5 pr-5 p-4">
4826          <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a>
4827          <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a>
4828          <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a>
4829        </div>
4830      </div>
4831    </div>
4832  </div>
4833</div>
4834
4835
4836<script>
4837  const shareButton = document.getElementById('shareButton');
4838
4839  shareButton.addEventListener('click', () => {
4840    if (navigator.share) {
4841      navigator.share({
4842        title: "WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia",
4843        url: "/products/blossom-shine",
4844        text: 'Check out this page!'
4845      })
4846      .then(() => console.log('Successful share'))
4847      .catch((error) => console.log('Error sharing', error));
4848    } else {
4849      alert('Web Share API is not supported in this browser.');
4850    }
4851  });
4852
4853  // Inventory validation function
4854  function checkInventoryStatus() {
4855    const productSelect = document.getElementById('productSelect');
4856    const purchaseButton = document.querySelector('#personalizeBtn button');
4857    
4858    if (!productSelect || !purchaseButton) return;
4859
4860    const selectedVariantId = productSelect.value;
4861    
4862    // Get variant data from Shopify
4863    fetch(`/products/blossom-shine.js`)
4864      .then(response => response.json())
4865      .then(product => {
4866        const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId);
4867        
4868        if (selectedVariant) {
4869          const isOutOfStock = selectedVariant.inventory_quantity <= 0 && 
4870                               selectedVariant.inventory_management === 'shopify' && 
4871                               selectedVariant.inventory_policy !== 'continue';
4872          
4873          if (isOutOfStock) {
4874            purchaseButton.disabled = true;
4875            purchaseButton.textContent = 'Out of Stock';
4876            purchaseButton.setAttribute('data-out-of-stock', 'true');
4877            purchaseButton.style.backgroundColor = '#cccccc';
4878            purchaseButton.style.cursor = 'not-allowed';
4879          } else {
4880            // Check if button was disabled due to other conditions
4881            
4882            
4883            
4884            
4885            
4886            
4887            
4888            
4889            const isOtherDisabled = false || true || false;
4890            
4891            if (!isOtherDisabled) {
4892              purchaseButton.disabled = false;
4893              purchaseButton.textContent = 'customize your flower board';
4894              purchaseButton.removeAttribute('data-out-of-stock');
4895              purchaseButton.style.backgroundColor = '';
4896              purchaseButton.style.cursor = '';
4897            }
4898          }
4899        }
4900      })
4901      .catch(error => {
4902        console.error('Error checking inventory:', error);
4903      });
4904  }
4905
4906  // Check inventory on page load
4907  document.addEventListener('DOMContentLoaded', function() {
4908    checkInventoryStatus();
4909    
4910    // Listen for variant changes
4911    const productSelect = document.getElementById('productSelect');
4912    if (productSelect) {
4913      productSelect.addEventListener('change', checkInventoryStatus);
4914    }
4915  });
4916
4917  // Prevent form submission if out of stock
4918  document.addEventListener('click', function(e) {
4919    if (e.target.matches('button[data-out-of-stock="true"]')) {
4920      e.preventDefault();
4921      e.stopPropagation();
4922      alert('This product is currently out of stock and cannot be purchased.');
4923      return false;
4924    }
4925  });
4926</script>
4926
4927
4928
4929  
4930</div>
4931
4932          </div>
4933        </div>
4934      </div>
4935    </div>
4936    <div id="product-bottom">
4937      
4938        <div class="product-description rte bg-card col-12 py-3 px-0 m-0" itemprop="description">
4939          <div class="container">
4940            
4941
4942
4943
4944
4945    <div class="short-desc-mobile d-block d-lg-none mb-3">
4946        <div class="short-desc">
4947            <ul>
4948<li><strong>WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.</strong></li>
4949        </div>
4950        <label class="more-mobile">Show More →</label>
4951    </div>
4952
4953<style>
4954.animated-title {
4955    text-align: center;
4956    font-weight: bold;
4957    color: #079c02;
4958    font-size: 28px;
4959    position: relative;
4960    animation: glow 2s infinite alternate, moveUpDown 3s infinite;
4961}
4962
4963/* Efek glow / bercahaya hijau */
4964@keyframes glow {
4965    0% { text-shadow: 0 0 5px #079c02; color: #079c02; }
4966    50% { text-shadow: 0 0 20px #00ff55; color: #12d12b; }
4967    100% { text-shadow: 0 0 10px #1bff00; color: #079c02; }
4968}
4969
4970/* Efek gerakan naik turun */
4971@keyframes moveUpDown {
4972    0% { transform: translateY(0px); }
4973    50% { transform: translateY(-5px); }
4974    100% { transform: translateY(0px); }
4975}
4976</style>
4977
4978<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
vendor: 2 bytes, line 4978
4978
4979<script>
4980  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});
4981
4982  const productType = $("[data-product-type]").data("product-type")
4983  const productDate = Date.parse(new Date())
4984  
4985  const shop = 'outerbloom1.myshopify.com'
4986  const host = 'https://app.asmaraku.com'
4987  // const host = 'http://localhost:5001'
4988
4989  const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec"
4990  
4991  const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ')
4992
4993  $("#properties-time").val(new Date().getTime())
4994
4995  const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent);
4996
4997  if(!isIOS) {
4998    $("#full-date").attr("type", "button")
4999  }
5000
5001  let dateTime = new Date();
5002  let today = dateTime.getDate();
5003  let day = dateTime.getDay();
5004  let hour = dateTime.getHours();
5005  let min = dateTime.getMinutes();
5006  let timeOfDay = hour + (min / 100);
5007
5008  async function getFetch(url) {
5009    const response = await fetch(url);
5010    let status = false
5011    let result
5012    if(response.ok) {
5013      status = true
5014      result = await response.json();
5015    }
5016    return {
5017      status,
5018      data: result
5019    }
5020  }
5021
5022  
5023
5024  function setCookie(cname, cvalue, exMins) {
5025    var d = new Date();
5026    d.setTime(d.getTime() + (exMins*60*1000));
5027    var expires = "expires="+d.toUTCString();  
5028    document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
5029  }
5030
5031  function getCookie(cname) {
5032    let name = cname + "=";
5033    let decodedCookie = decodeURIComponent(document.cookie);
5034    let ca = decodedCookie.split(';');
5035    for(let i = 0; i <ca.length; i++) {
5036      let c = ca[i];
5037      while (c.charAt(0) == ' ') {
5038        c = c.substring(1);
5039      }
5040      if (c.indexOf(name) == 0) {
5041        return c.substring(name.length, c.length);
5042      }
5043    }
5044    return "";
5045  }
5046
5047  async function renderDate() {
5048    let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8144957800663&v=${Date.now()}`);
5049    console.log(dataDate, 'renderDate')
5050    const data = dataDate?.data
5051    const date = data.date
5052    const time = data.time
5053
5054    console.log(date, 'DATE')
5055
5056    const weekday = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
5057    const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
5058    const htmlDate = []
5059    for(let i = 0;i < date.length;i++) {
5060      const full = date[i].date
5061      const d = new Date(date[i].date);
5062      const day = weekday[d.getDay()];
5063      const dt = d.getDate();
5064      const mt = monthly[d.getMonth()];
5065      const yr = d.getFullYear();
5066      const isDate = Boolean(date[i].isEnabled)
5067      const cutoffpagi = date[i].cutoff?.pagi
5068      const cutoffsiang = date[i].cutoff?.siang
5069      const cutoffMalam = date[i].cutoff?.Malam
5070      var html = `
5071        <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'}>
5072          ${dt === today ?
5073            `Today<span>${dt < 10 ? '0' + dt : dt}</span>` :
5074            `${day}<span>${dt < 10 ? '0' + dt : dt}</span>`
5075          }
5076        </button>
5077      `
5078      htmlDate.push(html)
5079    }
5080    const htmlTime = []
5081    for(var i = 0;i < time.length;i++) {
5082      const timeText = time[i].text
5083      const timeTime = time[i].time
5084      const timeEnabled = time[i].isEnabled
5085      var html = `
5086          <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button>
5087        `
5088      htmlTime.push(html)
5089    }
5090    const deliveryDate = document.getElementById("deliveryDate");
5091    if(deliveryDate) {
5092      deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join(''))
5093      $("#deliveryTime").html(htmlTime)
5094      if(productType !== '') {
5095        console.log("clarity event " + productType + ' calendaring')
5096        window.clarity("event", `${productType} calendaringSchedule`)
5097        // window.clarity("set", productType, `calendaringSchedule - ${productDate}`)
5098      }
5099    }
5100  }
5101
5102  async function getProvince(city) {
5103    let { data: { province } } = await getFetch(`${host}/api/shipping/address/province?city=${city}`);
5104    console.log(province, 'province')
5105    $("#province").val(province)
5106  }
5107
5108  async function renderAddress() {
5109    let current
5110    if(getCookie("location_delivery")){
5111      current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1)
5112    }
5113    let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8144957800663`);
5114    console.log(address)
5115    const data = address?.data?.city
5116    const htmlAddress = []
5117    const grouping = []
5118    for(let i = 0;i < data?.length;i++) {
5119      if(data[i]){
5120        if(data[i]?.group) {
5121          grouping.push(data[i].group)
5122        }
5123        const price = rupiah.format(data[i]?.rate)
5124        let promo = '(Promo Free Delivery)'
5125        if(data[i]?.name === 'Jakarta - PickUp ASHTA'){
5126          promo = '(at SCBD, Ashta)'
5127        } else if(data[i]?.name === 'Jakarta - PickUp ITC'){
5128          promo = '(at Kuningan, ITC Kuningan)'
5129        } else if(data[i]?.name === 'BSD - PickUp'){
5130          promo = '(at Goldfinch Gading Serpong)'
5131        } else if(data[i]?.name === 'Kota Lainnya'){
5132          promo = ''
5133        }
5134        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>`)
5135      }
5136    }
5137    
5138    const deliveryCity = document.getElementById("cities");
5139    if(deliveryCity) {
5140      deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join(''))
5141      if(!isIOS) {
5142        $(deliveryCity).select2();
5143      }
5144    }
5145  }
5146
5147  async function renderZip(v, v2, v3) {
5148    const deliveryZip = document.getElementById("zip");
5149    if(v === '') {
5150      return
5151    }
5152    let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`);
5153    let zip = dataZip?.data?.zip
5154    console.log(zip)
5155    let htmlZip = []
5156    for(let i = 0; i < zip?.length;i++) {
5157      htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`)
5158    }
5159    deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join(''))
5160  }
5161
5162  renderDate()
5163  renderAddress()
5164
5165  let rupiah = new Intl.NumberFormat('id-ID', {
5166    style: 'currency',
5167    currency: 'IDR',
5168    maximumFractionDigits: 0, 
5169    minimumFractionDigits: 0
5170  });
5171
5172  async function insertCard(data) {
5173    const response = await fetch(`${host}/api/card/new`, {
5174        method: "POST",
5175        headers: {
5176          'Content-Type': 'application/json',
5177        },
5178        body: data
5179    })
5180    const result = await response.json()
5181    let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1]
5182    $("#greetingCard").attr("data-index", rowIndex)
5183    return result
5184  }
5185    
5186  async function updateCard(data){
5187    const rowIndex = $("#greetingCard").data("index")
5188    const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, {
5189        method: "PUT",
5190        headers: {
5191          'Content-Type': 'application/json',
5192        },
5193        body: data
5194    })
5195    return response
5196  }
5197    
5198  function bytesToSize(bytes) {
5199    var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p'];
5200    for (var i = 0; i < sizes.length; i++) {
5201      if (bytes <= 1024) {
5202        return bytes + ' ' + sizes[i];
5203      } else {
5204        bytes = parseFloat(bytes / 1024).toFixed(2)
5205      }
5206    }
5207    return bytes + ' P';
5208  }
5209
5210  async function uploadMedia(uri, type) {
5211    nameq = $("#properties-nama-penerima").val()
5212    dear = $("#properties-kartu-nama-penerima").val()
5213    card = $("[data-properties=ucapan]").val()
5214    sender = $("#properties-kartu-nama-pengirim").val()
5215    photo = $("#properties-photo").val()
5216    video = $("#properties-video").val()
5217    status = "Product"
5218        
5219    const name = qrID
5220    let formData = new FormData(); 
5221    formData.append("file", uri);
5222    const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
5223      method: "POST", 
5224      body: formData
5225    })
5226    const result = await response.json();
5227    if(result) {
5228      const url = result.url
5229      if(type === 'image/jpeg') {
5230        $("#properties-photo").val(url)
5231        $(".preview-image").show()
5232        $(".remove-image").show()
5233        photo = url
5234      } else {
5235        $("#properties-video").val(url)
5236        $("#label-input-video span").text("Change File")
5237        $(".case-qrcode-preview p").text("Scan here for a secret message")
5238        $(".remove-media").show()
5239        $("#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>`)
5240        $("[for=input-video]").hide()
5241        video = url
5242      }
5243      $(".case-video-preview").show()
5244      $(".steps-card-preview").removeClass("loading")
5245      // updateCard(nameq, dear, card, sender, photo, video, status)
5246
5247      $(".nextBtn").attr("disabled", false)
5248    }
5249  }
5250
5251  function randomString(length, chars) {
5252    var result = '';
5253    for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))];
5254    return result;
5255  }
5256
5257  function getNoteCity(fulldate) {
5258    const h_1 = new Date(new Date().setDate(new Date().getDate() + 1))
5259    const weekday = ["Min","Sen","Sel","Rab","Kam","Jum","Sab"];
5260    const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
5261    const d = new Date(h_1);
5262    const day = weekday[d.getDay()];
5263    const dt = d.getDate();
5264    const mt = monthly[d.getMonth()];
5265    const yr = d.getFullYear();
5266    const p = $("#cities").parent(".form-group")
5267  }
5268
5269  function disabledSameDay() {
5270    let btnFirst = $("#deliveryDate").find("button:first-child")
5271    let getDay = new Date().getDay();
5272
5273    
5274      
5275      if(getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5){
5276        if(hour >= 14.00){
5277          btnFirst.attr("disabled", true)
5278        }
5279      } else if(getDay == 6){
5280        if(hour >= 16.00){
5281          btnFirst.attr("disabled", true)
5282        }
5283      } else if(getDay == 0){
5284        if(hour >= 16.00){
5285          btnFirst.attr("disabled", true)
5286        }
5287      }
5288      
5289    
5290  }
5291
5292  function disabledays(date) {
5293    let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
5294    //if u have to disable a list of day
5295    let removeDays
5296    
5297    
5298    
5299        removeDays = ["2025-2-13", "2025-2-14"];
5300    
5301    if ($.inArray(ymd, removeDays) >= 0) {
5302      return [false];
5303    } else {
5304      let day = date.getDay();
5305      if(day == 0 && date.getDate() == 13 && date.getMonth() == 1){
5306          return [(day == 0),  ''];
5307      }
5308      
5309      if(day == 0){
5310        return [(day == 0),  ''];
5311      }
5312      
5313      
5314      return [(day != 0),  ''];
5315    }
5316  }
5317
5318  /* Indonesian initialisation for the jQuery UI date picker plugin. */
5319  /* Written by Deden Fathurahman ([email protected]). */
5320  ( function( factory ) {
5321    if ( typeof define === "function" && define.amd ) {
5322
5323      // AMD. Register as an anonymous module.
5324      define( [ "../widgets/datepicker" ], factory );
5325    } else {
5326
5327      // Browser globals
5328      factory( jQuery.datepicker );
5329    }
5330  }( function( datepicker ) {
5331
5332  datepicker.regional.id = {
5333    closeText: "Tutup",
5334    prevText: "&#x3C;mundur",
5335    nextText: "maju&#x3E;",
5336    currentText: "Today",
5337    monthNames: [ "January","February","March","April","May","Juny",
5338                  "July","August","September","October","November","December" ],
5339    monthNamesShort: [ "Jan","Feb","Mar","Apr","May","Jun",
5340                      "Jul","Agu","Sep","Oct","Nov","Dec" ],
5341    dayNames: [ "Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu" ],
5342    dayNamesShort: [ "Sun","Mon","Tue","Wed","Thu","Fri","Sat" ],
5343    dayNamesMin: [ "Mg","Sn","Sl","Rb","Km","jm","Sb" ],
5344    weekHeader: "Mg",
5345    dateFormat: "D, dd M",
5346    firstDay: 0,
5347    isRTL: false,
5348    showMonthAfterYear: false,
5349    yearSuffix: "" };
5350  datepicker.setDefaults( datepicker.regional.id );
5351
5352  return datepicker.regional.id;
5353
5354} ) );
5355
5356  function loadPopup() {
5357    $("#backgroundPopup").fadeIn("slow");
5358    $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow");
5359    const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first()
5360    if(firstSection.hasClass("purchasePersonalize")) {
5361      if(productType !== '') {
5362        console.log("clarity event " + productType + ' personalize')
5363        window.clarity("event", `${productType} cardPersonalization`)
5364        // window.clarity("set", productType, `cardPersonalization - ${productDate}`)
5365      }
5366    } else if (firstSection.hasClass("sectionPurchaseBoard")) {
5367        console.log("clarity event " + productType + ' personalizeBoard')
5368        window.clarity("event", `${productType} personalizeBoard`)
5369        // window.clarity("set", productType, `personalizeBoard - ${productDate}`)
5370    }
5371    firstSection.removeClass("hide")
5372    
5373    // Auto-trigger addon loading when addon section becomes visible
5374    setTimeout(function() {
5375      const addonSection = $(".purchaseAddon")
5376      if(addonSection.length > 0 && !addonSection.hasClass("hide")) {
5377        if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
5378          $("[data-addon=upsell-all]").trigger("click")
5379        }
5380      }
5381    }, 200)
5382  }
5383
5384  function disablePopup() {
5385    $("#backgroundPopup").fadeOut("slow");
5386    $(".purchasePopup").fadeOut("slow");
5387    $("#popupCart").fadeOut("slow");
5388  }
5389
5390    function scrollTo(parent, div, dur) {
5391      $(parent).animate({
5392        scrollTop: $(div).offset().top
5393      }, dur);
5394    }
5395
5396  function loadPopupPersonalize() {
5397    const div = "#purchaseProduct"
5398    const p = "html, body, .product-meta"
5399    $("p.error").remove()
5400    loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all")
5401    const isCity = $("#cities[required]")
5402    const isDate = $("#propDeliveryDate[required]")
5403    const isTime = $("#propDeliveryTime[required]")
5404    // loadPopup()
5405    if(isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') {
5406      loadPopup()
5407    }
5408    if(isCity.val() == '') {
5409      isCity.parent(".row").append("<p class='error'>Choose delivery city</p>")
5410      scrollTo(p, div, 500)
5411    }
5412    if(isDate.val() == '') {
5413      isDate.parents(".row").append("<p class='error'>Choose delivery date</p>")
5414      scrollTo(p, div, 500)
5415    }
5416    if(isTime.val() == '') {
5417      isTime.parents(".row").append("<p class='error'>Choose delivery time</p>")
5418      scrollTo(p, div, 500)
5419    }
5420  }
5421
5422  function quantityCounter() {
5423    $(document).on("click", ".item-card.selected .q_up", function () {
5424      var C = $(this).attr("data-id"),
5425          S =
5426              parseInt(
5427                  $(this)
5428                      .siblings(".quantity-cart-" + C)
5429                      .val()
5430              ) + 1;
5431      $(this).attr("data-quantity", S),
5432          $(this)
5433              .siblings(".quantity-cart-" + C)
5434              .val(S);
5435    }),
5436    $(document).on("click", ".item-card.selected .q_down", function () {
5437        var C = $(this).attr("data-id"),
5438            S = parseInt(
5439                $(this)
5440                    .siblings(".quantity-cart-" + C)
5441                    .val()
5442            );
5443        0 < S && $(this).attr("data-quantity", S - 1),
5444            0 < S &&
5445                $(this)
5446                    .siblings(".quantity-cart-" + C)
5447                    .val(S - 1);
5448    });
5449  }
5450
5451  quantityCounter()
5452
5453  const itemAddon = $(".item-card").length
5454  const nofree = $(".nofree").length
5455
5456  const upsell = ''
5457  
5458  if(nofree === itemAddon) {
5459      // $("#itemAddons").html("<p>No Items available</p>")
5460  }
5461
5462  $("#itemAddons .item-card").each(function(e){
5463      $("#itemAddons").attr("data-length", e)
5464  })
5465
5466  $("[data-addon]").click(function(){
5467      
5468      
5469      
5470      const t = $(this)
5471      
5472      const data = t.data("addon")
5473      
5474      $("[data-addon]").removeClass("selected")
5475      t.addClass("selected")
5476      $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status){
5477          const products = data.products
5478          const html = []
5479          for(let i = 0; i < products.length; i++) {
5480              const id = products[i].id
5481              const variantId = products[i].variants[0].id
5482              const img = products[i].images[0].src
5483              let img2 = img.split('.jpg')[0]
5484              const title = products[i].title
5485              const price = products[i].variants[0].price
5486              const tags = products[i].tags
5487              const qty = products[i].variants[0].available
5488              let type_upsell = ''
5489              if(tags.includes('upsell-item-standing')) {
5490                  type_upsell = 'standing'
5491              }
5492              console.log(type_upsell)
5493              if(type_upsell !== '') {
5494                  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}">
5495                      
5496                          <div class="card-image">
5497                              <img src="${img2}_150x.jpg" alt="${title}" width="" height="" />
5498                          </div>
5499                          <div class="card-meta">
5500                              <h5>${title}</h5>
5501                              <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p>
5502                              <input id="card-${variantId}" type="hidden" name="" value="${variantId}">
5503                          </div>
5504                          <div class="card-qty">
5505                              <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a>  
5506                              <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}
5506" value="0" data-price=${price} name="quantity">
5507                              <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="12" height="13" viewBox="0 0 12 13" fill="none">
5508<path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/>
5509</svg></a>   
5510                          </div>
5511                      </div>`
5512                  html.push(body)
5513              }
5514          }
5515          $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html)
5516          $("#itemAddons").attr("data-length", products.length)
5517          // $('#itemAddons')[0].swiper.update();
5518      });
5519  })
5520
5521  async function isAddon(){
5522    let ids = []
5523    $("#itemAddons .item-card.selected").each(function(i, e){
5524      const id = $(this).data("id")
5525      ids.push(id)
5526    })
5527    console.log(ids)
5528    return ids
5529  }
5530  
5531  $("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function(){
5532    const t = $(this).parent()
5533    const id = t.data("id")
5534    const btn =  t.parents(".purchaseAddon").find(".next-purchase-button")
5535    t.toggleClass("selected");
5536    //$(this).next("input").toggleAttr('name', 'id[]');
5537    if (t.hasClass('selected')) {
5538        t.find("input").val(1)
5539        t.find("input").attr('name', 'id[]');
5540    } else {
5541        t.find("input").val(0)
5542        t.find("input").removeAttr('name');
5543    }
5544    $("#properties-addons").val(addons)
5545    const is = await isAddon()
5546    if(is.length === 0) {
5547      btn.text("continue without add-ons")
5548      return
5549    }
5550    if(is.includes(8835692069079)) {
5551      btn.text("personalize acrylic frame")
5552    } else {
5553      btn.text("Continue")
5554    }
5555      
5556  })
5557
5558  async function myAddon(data) {
5559    const c = $(".addonsPurchase .addons")
5560    let items = []
5561    
5562    const spotifyAddons = $(".spotifyAddons").find("[data-index]")
5563    // if(spotifyAddons.length > 0) {
5564    //   $(spotifyAddons).each(function(i, e){
5565    //     const spotifyLink = $(this).find(".spotifyLink").val()
5566    //     const spotifySong = $(this).find(".spotifySong").val()
5567    //     const spotifyArtist = $(this).find(".spotifyArtist").val()
5568    //     const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val()
5569    //     if(spotifyLink !== '') {
5570    //       spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1">
5571    //         <div class="addon-itm-img">
5572    //           <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"/>
5573    //         </div>
5574    //         <div class="addon-itm-title">
5575    //           <span>[US] Outerbloom Acrylic Frame 4R</span>
5576    //         </div>
5577    //         <div class="addon-itm-line-total">
5578    //           <span>Rp 99.000</span>
5579    //         </div>
5580    //       </div>
5581    //       <div class="propsAddonSpotify row m-0">
5582    //         <div class="col-12 col-lg-2"></div>
5583    //           <div class="col-12 col-lg-10">
5584    //             <p>
5585    //               <span>spotify link</span>
5586    //               <span class="spotifyLinkAddon">${spotifyLink}</span>
5587    //             </p>
5588    //             <p>
5589    //               <span>uploaded photo</span>
5590    //               <span class="spotifyFotoAddon">${spotifyFotoAddon}</span>
5591    //             </p>
5592    //             <p>
5593    //               <span>song / playlist name</span>
5594    //               <span class="spotifySongAddon">${spotifySong}</span>
5595    //             </p>
5596    //             <p>
5597    //               <span>artist name</span>
5598    //               <span class="spotifyArtistAddon">${spotifyArtist}</span>
5599    //             </p>
5600    //           </div>
5601    //       </div>`
5602    //       items.push(spotifyAddon)
5603    //     }
5604    //   })
5605    // }
5606    for(let i = 0; i < data.length; i++) {
5607      if(data[i].title !== '[US] Outerbloom Acrylic Frame 4R' ) {
5608        const img = data[i].image
5609        const title = data[i].title
5610        const qty = data[i].qty
5611        const price = data[i].price
5612        const total = Number(qty) * Number(price)
5613        let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}">
5614              <div class="addon-itm-img">
5615                <img src="${img}" alt="" width="70"/>
5616              </div>
5617              <div class="addon-itm-title">
5618                <span>${title}</span>
5619              </div>
5620              <div class="addon-itm-line-price">
5621                <span>${rupiah.format(price)}</span>
5622                ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`}
5623              </div>
5624              <div class="addon-itm-line-total">
5625                <span>${rupiah.format(total)}</span>
5626              </div>
5627            </div>`
5628          items.push(addons)
5629      }
5630    }
5631    c.html(items)
5632    const parent = $(".purchaseAddon")
5633    const next = parent.next(".sectionPurchase")
5634    parent.addClass("hide")
5635    next.removeClass("hide")
5636    // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart")
5637    // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`)
5638  }
5639
5640  async function listAddon() {
5641    const data = $("#itemAddons").find(".selected")
5642    let ids = []
5643    $(data).each(function(){
5644      const id = $(this).data("variant")
5645      const image = $(this).find(".card-image img").attr("src")
5646      const title = $(this).find(".card-meta h5").text()
5647      const qty = $(this).find(".card-qty input").val()
5648      const price = $(this).find(".card-qty input").data("price")
5649      ids.push({
5650        id: Number(id),
5651        image,
5652        title,
5653        qty,
5654        price
5655      })
5656    })
5657    myAddon(ids)
5658  }
5659
5660  async function customSpotify(idx, length, type){
5661    let isCard = false
5662    
5663    let p = $(".purchasePopupSpotify")
5664    const preLink = $(".spotifyLinkFirst").val()
5665    $("[data-index]").hide()
5666    p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`)
5667    p.find(".regulerAddons, .purchase-button").hide()
5668    p.find(".spotifyAddons").show()
5669    
5670    const data = await trackUrl(preLink)
5671    
5672    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://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="13" height="11" viewB
5672ox="0 0 13 11" fill="none">
5673<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"/>
5674</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://w4d.kumostock.com/win4d/fresdo/logo-win4d.png><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://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="13" height="11" viewB
5674ox="0 0 13 11" fill="none">
5675<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"/>
5676</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>`
5677    // console.log(html)
5678    
5679    $(".spotifyAddons").append(html)
5680    
5681    $(`[data-index=${idx}]`).show()
5682    
5683    if (preLink !== '') {
5684      $(".btn-action .btn").attr("disabled", false)
5685    } else {
5686      $(".btn-action .btn").attr("disabled", true)
5687    }
5688
5689    return html
5690    
5691  }
5692
5693  $(".spotifyLinkFirst").keyup(async function(){
5694    const v = $(this).val()
5695    if(v.includes('spotify:user:spotify')) {
5696      const correct = v.split('user:spotify:')[1]
5697      console.log(correct, 'BNER')
5698      $(this).val(correct)
5699      return
5700    }
5701    if(v.includes("spotify:") || v.includes("https://open.spotify.com/")){
5702      const data = await trackUrl(v)
5703      if(!data || !data.status) {
5704        $(this).parent().addClass("error")
5705        // $(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>`)
5706        $("#personalizeBtnSpotify .btn").attr("disabled", true)
5707        return
5708      }
5709      $(this).parent().removeClass("error")
5710      // $(this).parent().remove("txt-error")
5711      $("#personalizeBtnSpotify .btn").attr("disabled", false)
5712    } else {
5713      $("#personalizeBtnSpotify .btn").attr("disabled", true)
5714    }
5715  })
5716
5717  $(".purchaseAddon").delegate(".next-addon", "click", function(){
5718    const parent = $(this).parents(".purchaseAddon")
5719    const next = parent.next(".sectionPurchase")
5720    if(next.hasClass("purchaseAddress")) {
5721      if(productType !== '') {
5722        console.log("clarity event " + productType + ' purchaseDelivery')
5723        window.clarity("event", `${productType} purchaseDelivery`)
5724        // window.clarity("set", productType, `purchaseDelivery - ${productDate}`)
5725      }
5726    }
5727    const data = $("#itemAddons").find(".selected")
5728    const length = $(".quantity-cart-46067682607319").val()
5729    const checked = data.length;
5730    if(checked > 0) {
5731      if(length > 0) {
5732        $(".purchaseAddon").addClass("purchaseAddonSpotify")
5733        customSpotify(1, length, 'addon')
5734      } else {
5735        listAddon()
5736      }
5737    } else {
5738      parent.addClass("hide")
5739      next.removeClass("hide")
5740    }
5741  })
5742
5743  $("#personalizeBtnSpotify .btn").click(async function(){
5744    const isCity = $("#cities[required]")
5745    const isDate = $("#propDeliveryDate[required]")
5746    if((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) {
5747      alert('Please choose Delivery City & Delivery Date')
5748      return
5749    }
5750    const data = await customSpotify(1, 1, 'product')
5751    if(data) {
5752      $("#backgroundPopup").fadeIn("slow");
5753      $(".purchasePopupSpotify").fadeIn("slow");
5754
5755      if(productType !== '') {
5756        console.log("clarity event " + productType + ' spotify')
5757        window.clarity("event", `${productType} spotify`)
5758        // window.clarity("set", productType, `purchaseDelivery - ${productDate}`)
5759      }
5760    }
5761  })
5762
5763  function formatBytes(bytes, decimals = 2) {
5764    if (!+bytes) return '0 Bytes'
5765
5766    const k = 1024
5767    const dm = decimals < 0 ? 0 : decimals
5768    const sizes = ['B', 'KB', 'MB']
5769
5770    const i = Math.floor(Math.log(bytes) / Math.log(k))
5771
5772    return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`
5773  }
5774
5775  async function trackUrl(link){
5776    try {
5777      let trackId = link.split('/').pop().split('?')[0];
5778      let type = ''
5779      if(link.includes("spotify:")) {
5780        const uri = link.split('spotify:')[1]
5781        trackId = uri.split(':')[1]
5782        type = uri.split(':')[0] + 's'
5783      } else {
5784        if(link.match('track')){
5785          type = 'tracks'
5786        } else if(link.match('playlist')) {
5787          type = 'playlists'
5788        } else if(link.match('artist')) {
5789          type = 'artists'
5790        } else if(link.match('album')) {
5791          type = 'albums'
5792        }
5793      }
5794      console.log(`${host}/api/spotify/${type}/${trackId}`)
5795      const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`)
5796      console.log(data, 'DATA')
5797      const song = data?.data?.name
5798      const artist = data?.data?.artist
5799      return {
5800        song, artist, type, trackId, status: data.status
5801      }
5802    } catch(err) {
5803      console.log(err)
5804    }
5805  }
5806
5807  $(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function(){
5808    const parent = $(this).parents("[data-index]")
5809    const preview = parent.find(".previewImage")
5810    const file = $(this)[0].files[0];
5811    if (file) {
5812        const reader = new FileReader();
5813        reader.onload = async function(e) {
5814          parent.find(".uploadResult label").hide()
5815          parent.find(".uploadedResult").remove()
5816          parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between">
5817          <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>
5818          <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;">
5818<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
5819  <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 />
5820</svg>
5821</span></div></div>`)
5822          parent.find(".frameImageUploaded svg").hide()
5823          parent.find(".frameImage").addClass("uploaded")
5824          preview.attr("src", e.target.result);
5825          preview.show();
5826          let formData = new FormData(); 
5827          formData.append("file", file);
5828          const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, {
5829            method: "POST", 
5830            body: formData
5831          })
5832          const result = await response.json();
5833          if(result){
5834            parent.find(".resultPhotoSpotify").val(result.url)
5835          }
5836        }
5837        
5838        reader.readAsDataURL(file);
5839    } else {
5840        preview.hide();
5841    }
5842  });
5843
5844  $(".spotifyAddons").delegate(".uploadResult", "click", function(){
5845    $(this).next("input[type=file]").trigger("click")
5846  })
5847
5848  $(".spotifyAddons").delegate(".changeUpload", "click", function(){
5849    $(this).parents("input[type=file]").trigger("click")
5850  })
5851
5852  $(".spotifyAddons").delegate(".removeUpload", "click", function(){
5853    const parent = $(this).parents("[data-index]")
5854    parent.find(".uploadPhotoSpotify").val("")
5855    parent.find(".uploadResult label").show()
5856    parent.find(".uploadedResult").remove()
5857    parent.find(".frameImageUploaded svg").show()
5858    parent.find(".previewImage").hide()
5859    parent.find(".frameImage").removeClass("uploaded")
5860  })
5861
5862  $(".spotifyAddons").delegate("label.checkbox", "click", function(){
5863    const parent = $(this).parents("[data-index]")
5864    parent.toggleClass("checked")
5865  })
5866
5867  $(".spotifyAddons").delegate(".spotifyLink", "change", async function(){
5868    const parent = $(this).parents("[data-index]")
5869    const link = $(this).val()
5870    const data = await trackUrl(link)
5871
5872    console.log(data)
5873
5874    if(data.song) {
5875      parent.find(".spotifySong").val(data.song)
5876      parent.find(".spotifyData").find("h3").text(data.song)
5877    }
5878    if(data.artist) {
5879      parent.find(".spotifyArtist").val(data.artist)
5880      parent.find(".spotifyData").find("p").text(data.artist)
5881    }
5882    parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`)
5883    // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M
5884    if (data.status === true) {
5885      parent.find(".btn-action .btn").attr("disabled", false)
5886    } else {
5887      parent.find(".btn-action .btn").attr("disabled", true)
5888    }
5889  })
5890  
5891  $(".spotifyAddons").delegate(".spotifySong", "keyup", async function(){
5892    const parent = $(this).parents("[data-index]")
5893    const v = $(this).val()
5894    parent.find(".spotifyData h3").text(v)
5895  })
5896
5897  $(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function(){
5898    const parent = $(this).parents("[data-index]")
5899    const v = $(this).val()
5900    parent.find(".spotifyData p").text(v)
5901  })
5902
5903  $(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function(){
5904    const parent = $(this).parents("[data-index]")
5905    const length = parent.data("length")
5906    const index = parent.data("index")
5907    const indexNext = Number(index) + 1
5908    customSpotify(indexNext, length, 'addon')
5909  })
5910
5911  
5912  $(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function(){
5913    const parent = $(this).parents(".purchaseAddon")
5914    const next = parent.next(".sectionPurchase")
5915    parent.addClass("hide")
5916    next.removeClass("hide")
5917    next.find(".purchase-button").show()
5918    listAddon()
5919  })
5920
5921  $(".spotifyAddons").delegate(".back-spotify", "click", async function(){
5922    const t = $(this).parents("[data-index]")
5923    const parent = $(this).parents(".sectionPurchase")
5924    const current = t.data("index")
5925    const prevCurrent = Number(current) - 1
5926    if(current == 1) {
5927      parent.removeClass("purchaseAddonSpotify")
5928      parent.find(".purchase-button").show()
5929      parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!")
5930      $(".spotifyAddons").empty()
5931      $(".regulerAddons").show()
5932      return
5933    }
5934    t.hide()
5935    t.prev("[data-index]").show()
5936    t.remove()
5937    parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`)
5938  })
5939
5940  $("#personalizeBtn .btn").click(async function() {
5941    loadPopupPersonalize()
5942  });
5943
5944  $(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function(){
5945    $(".sectionPurchaseSpotify").hide()
5946    loadPopupPersonalize()
5947  })
5948
5949  $(".close-purchase-popup").click(function() {
5950      disablePopup();
5951  });
5952  $("#backgroundPopup").click(function() {
5953      // disablePopup();
5954  });
5955
5956  $("#popupCart .close-purchase-popup").click(function() {
5957      location.reload()
5958  });
5959
5960  $('#popupCart').on('hide.bs.modal', function (e) {
5961    location.reload()
5962  })
5963
5964  $(".next-card").click(function(){
5965    const parent = $(this).parents(".sectionPurchase")
5966    const next = parent.next(".sectionPurchase")
5967    parent.addClass("hide")
5968    next.removeClass("hide")
5969  })
5970
5971  $(".back-purchase-button").click(function(){
5972    const parent = $(this).parents(".sectionPurchase")
5973    const prev = parent.prev(".sectionPurchase")
5974    parent.addClass("hide")
5975    prev.removeClass("hide")
5976  })
5977  
5978  $(document).keypress(function(e) {
5979      if (e.keyCode == 27 && popupStatus == 1) {
5980          disablePopup();
5981      }
5982  });
5983  
5984  const parentImg = $(".case-img-preview")
5985  const parentVid = $(".case-video-preview")
5986  
5987  function readURL(input) {
5988    if (input.files && input.files[0]) {
5989      let reader = new FileReader();
5990
5991      let type = 'image/jpeg'
5992      const size = input.files[0].size
5993      if(input.files[0].type.match('video/')){
5994        type = 'video/mp4'
5995        if(size > 15728640) {
5996          alert('File size exceeds maximum limit 15 MB')
5997          return
5998        }
5999      } else {
6000        if(size > 5242880) {
6001          alert('File size exceeds maximum limit 5 MB')
6002          return
6003        }
6004      }
6005
6006      reader.onload = function (e) {
6007        $(".nextBtn").attr("disabled", true)
6008        if(type === 'image/jpeg') {
6009          
6010            $('.placeholder-image').hide();
6011            $('.preview-image').show()
6012            $('.preview-image').attr('src', e.target.result);
6013          
6014        } else {
6015          // parentVid.find(".ajax-loader").show();
6016          $(".steps-card-preview").addClass("loading")
6017        }
6018      }
6019
6020      
6021
6022      reader.readAsDataURL(input.files[0]);
6023    }
6024  }
6025
6026  async function readURLPapan(input) {
6027    if (input.files && input.files[0]) {
6028      let reader = new FileReader();
6029
6030      reader.onload = function (e) {
6031        $('.btn-upload-papan').siblings('label').hide();
6032        $('.btn-upload-papan img').attr('src', e.target.result);
6033        $('.btn-upload-papan img').show();
6034        $('.svgLogoPapan').hide();
6035      }
6036      
6037      const type = 'image/jpeg'
6038      const name = `logo-8144957800663-${Date.parse(new Date())}`
6039
6040      let formData = new FormData(); 
6041      formData.append("file", input.files[0]);
6042      const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
6043        method: "POST", 
6044        body: formData
6045      })
6046      const result = await response.json();
6047      if(result) {
6048        const url = result.url
6049        $("[data-properties=papan-logo]").val(url)
6050      }
6051
6052      reader.readAsDataURL(input.files[0]);
6053    }
6054  }
6055
6056  async function readURLAddress(input) {
6057    console.log(input, 'readURLAddress')
6058    if (input.files && input.files[0]) {
6059      let reader = new FileReader();
6060
6061      reader.onload = function (e) {
6062        $('.photo-address').attr('src', e.target.result);
6063        $('.photo-address').show();
6064      }
6065      
6066      const type = 'image/jpeg'
6067      const name = input.files[0].name?.split('.')[0]
6068
6069      let formData = new FormData(); 
6070      formData.append("file", input.files[0]);
6071      const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
6072        method: "POST", 
6073        body: formData
6074      })
6075      const result = await response.json();
6076
6077      reader.readAsDataURL(input.files[0]);
6078
6079      return result
6080    }
6081  }
6082
6083  
6084
6085  
6086  async function addToCartUang() {
6087    var productAddOnId1 = 42122101162199;
6088    var productAddOnId2 = 42122101194967;
6089    var product_id = 8144957800663
6090    const data = {
6091      items: [
6092          {
6093              quantity: $("#Quantity-" + productAddOnId1).val(),
6094              id: productAddOnId1,
6095              "properties": { "Time": $("#properties-time").val() }
6096          },
6097          {
6098              quantity: $("#Quantity-" + productAddOnId2).val(),
6099              id: productAddOnId2,
6100              "properties": { "Time": $("#properties-time").val() }
6101          }
6102      ]
6103    }
6104    await fetch(window.Shopify.routes.root + 'cart/add.js', {
6105      method: 'POST',
6106      headers: {
6107        'Content-Type': 'application/json'
6108      },
6109      body: JSON.stringify(data)
6110    })
6111    .then(response => {
6112      console.error('Sukses Buket Uang:', response);
6113      $(".form-flower").submit()
6114    })
6115    .catch((error) => {
6116      console.error('Error Buket Uang:', error);
6117      $(".form-flower").submit()
6118    });
6119  }
6120  
6121  async function saveCard(){
6122    let isCard = true
6123    const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : ''
6124    const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : ''
6125    const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : ''
6126    const foto = $("#properties-photo").val()
6127    const video = $("#properties-video").val()
6128    const data = JSON.stringify({
6129      "id": qrID, 
6130      "penerima": $("#properties-nama-penerima").val(), 
6131      "kartu_penerima": kartu_penerima, 
6132      "kartu_ucapan": kartu_ucapan, 
6133      "kartu_pengirim": kartu_pengirim, 
6134      "foto": foto,
6135      "video": video, 
6136      "productId": "8144957800663", 
6137      "order_name": "", 
6138      "status": "Cart"
6139    })
6140
6141    
6142  }
6143
6144  async function additem(items){
6145    try {
6146      let formData = items
6147      if(items?.length) {
6148        formData = {
6149           'items': items
6150        };
6151      }
6152  
6153      const add = await fetch(window.Shopify.routes.root + 'cart/add.js', {
6154        method: 'POST',
6155        headers: {
6156          'Content-Type': 'application/json',
6157          'X-Requested-With':'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */
6158        },
6159        body: JSON.stringify(formData)
6160      })
6161  
6162      const data = await add.json();
6163      return data
6164    } catch(err){
6165      console.log('Error additem', err)
6166    }
6167  }
6168
6169  async function addons(){
6170    let items = []
6171    $(".addon-item").each(function(){
6172      const p = $(this)
6173      const props = p.next(".propsAddonSpotify")
6174      const id = $(this).data("id")
6175      const quantity = $(this).data("qty")
6176      const propId = $("#properties-time").val()
6177      let properties = {}
6178      if(id === 46067682607319) {
6179        const link = props.find(".spotifyLinkAddon").text()
6180        const photo = props.find(".spotifyFotoAddon").text()
6181        const song = props.find(".spotifySongAddon").text()
6182        const artist = props.find(".spotifyArtistAddon").text()
6183        properties = {
6184          id: propId,
6185          "Spotify Link": link !== '' ? link : '-',
6186          "Spotify Photo": photo !== '' ? photo : '-',
6187          "Spotify Song": song !== '' ? song : '-',
6188          "Spotify Artist": artist !== '' ? artist : '-',
6189          type: 'addon'
6190        }
6191      } else {
6192        properties = { 
6193          "id": propId, 
6194          "type": "addon"
6195        }
6196      }
6197      items.push({
6198        id, 
6199        quantity, 
6200        properties
6201      })
6202    })
6203    return items
6204  }
6205
6206  async function propItems() {
6207    let props = {}
6208    $("[data-properties]").each(function(e){
6209      let elementType = this.tagName;
6210      const k = $(this).data("properties")
6211      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') {
6212        const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val();
6213        if(v !== '') {
6214          props[k] = v?.replace(/[\s\n]/g, '');
6215        }
6216      }
6217    })
6218    return props
6219  }
6220
6221  async function showPopupCart(items){
6222    if(productType !== '') {
6223      console.log("clarity event " + productType + ' completeOrder')
6224      window.clarity("event", `${productType} completeOrder`)
6225      // window.clarity("set", productType, `completeOrder - ${productDate}`)
6226    }
6227    $("#popupCart").show()
6228    
6229      $(".propDeliveryCity").text($("#cities").val())
6230      $(".propDeliveryDate").text($("#propDeliveryDate").val())
6231      $(".propDeliveryTime").text($("#propDeliveryTime").val())
6232      $(".propDeliveryName").text($("[data-properties=nama-penerima]").val())
6233      $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val())
6234      $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val())
6235      $(".propDeliveryProv").text($("#province").val())
6236      $(".propDeliveryZip").text($("#zip").val())
6237      
6238    
6239
6240    const addons = []
6241    if(items && items.length > 0) {
6242      for(let i = 1; i < items.length; i++) {
6243        const spotifyLink = items[i].properties['Spotify Link']
6244        const spotifyPhoto = items[i].properties['Spotify Photo']
6245        const spotifySong = items[i].properties['Spotify Song']
6246        const spotifyArtist = items[i].properties['Spotify Artist']
6247        const price = items[i].price / 100
6248        const props = spotifyLink ? `<div class="propsAddonCart row m-0">
6249                  <div class="col-12 col-lg-2"></div>
6250                  <div class="col-12 col-lg-10">
6251                    <p>
6252                      <span>spotify link</span>
6253                      <span>${spotifyLink}</span>
6254                    </p>
6255                    <p>
6256                      <span>Upload Photo</span>
6257                      <span>${spotifyPhoto}</span>
6258                    </p>
6259                    <p>
6260                      <span>song / playlist name</span>
6261                      <span>${spotifySong}</span>
6262                    </p>
6263                    <p>
6264                      <span>artist name</span>
6265                      <span>${spotifyArtist}</span>
6266                    </p>
6267                  </div>
6268                </div>` : '';
6269        addons.push(`<div class="row m-0">
6270                  <div class="imgAddonCart col-2">
6271                    <img
6272                      width="43"
6273                      src="${items[i].image}"
6274                      alt=""
6275                    >
6276                  </div>
6277                  <div class="imgAddonTitlePrice col-10 align-self-center">
6278                    <div class="row justify-content-between m-0">
6279                      <div class="col-12 col-lg-8">
6280                        <h5>${items[i].title}</h5>
6281                      </div>
6282                      <div class="col-12 col-lg-4 text-lg-right">
6283                        <span>${rupiah.format(price)}</span>
6284                      </div>
6285                    </div>
6286                  </div>
6287                </div>${props}`)
6288      }
6289    }
6290    // console.log(addons)
6291    if(addons.length === 0) {
6292      $(".itemAddonCart").hide()
6293      return
6294    }
6295    $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`)
6296    $(".wrapperItemAddonCart").html(addons)
6297  }
6298
6299  const money = (money) => {
6300      return new Intl.NumberFormat('id-ID',
6301          { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 }
6302      ).format(money);
6303  }
6304
6305  async function showNoteMoney() {
6306    let qty50k = $("[data-properties='Uang 50k']").val()
6307    let qty100k = $("[data-properties='Uang 100k']").val()
6308    const total50k = Number(qty50k) * 50000
6309    const total100k = Number(qty100k) * 100000
6310    const total_all = total50k + total100k
6311    $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`)
6312    $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`)
6313    $(".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://ladangwin4d.com/resmi/" target="_blank" style="text-decoration: underline;
6313 color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`)
6314  }
6315
6316  async function removeImage() {
6317    const data = JSON.stringify({
6318      "ID": $("#properties-properties-qrId").val(), 
6319      "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 
6320      "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 
6321      "Kartu Ucapan": $("[data-properties=ucapan]").val(), 
6322      "Nama Penerima": $("#properties-nama-penerima").val(), 
6323      "Order Number":"",
6324      "Status":"Product", 
6325      "Foto": "", 
6326      "Media": $("#properties-video").val(), 
6327      "Image": "8144957800663"
6328    })
6329    const remove = updateCard(data)
6330    if(remove) {
6331      $(this).hide()
6332      $("#properties-photo").val("-")
6333      $(".placeholder-image").show()
6334      $(".preview-image").attr("src", "")
6335    }
6336  }
6337
6338  async function removeVideo() {
6339    const data = JSON.stringify({
6340      "ID": $("#properties-properties-qrId").val(), 
6341      "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 
6342      "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 
6343      "Kartu Ucapan": $("[data-properties=ucapan]").val(), 
6344      "Nama Penerima": $("#properties-nama-penerima").val(), 
6345      "Order Number":"",
6346      "Status":"Product", 
6347      "Foto": $("#properties-photo").val(), 
6348      "Media": "", 
6349      "Image": "8144957800663"
6350    })
6351    const remove = updateCard(data)
6352    if(remove) {
6353      $("#properties-video").val("-")
6354      $(this).find("img").hide()
6355      $(this).hide()
6356      $(this).prev("p").text("Add video to make it more special (optional)")
6357      $("#label-input-video").show()
6358      $("#label-input-video span").text("Upload Video")
6359      $(".case-video-preview p span").remove()
6360    }
6361  }
6362
6363  async function loadItemOccasion(t, occasion) {
6364    const name = occasion?.replace('greeting-card-', '')
6365    $("#kartu-ucapan").val("")
6366    $("[data-occassion]").removeClass("selected")
6367    $("[data-properties=ucapan]").val("")
6368    $("#save-card").attr("disabled", true)
6369    t.addClass("selected")
6370    $("#show_note").attr("data-card-occassion", name)
6371    $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status){
6372        const products = data.products
6373        const html = []
6374        for(let i = 0; i < products.length; i++) {
6375            const id = products[i].id
6376            const variantId = products[i].variants[0].id
6377            const img = products[i].images[0].src
6378            const title = products[i].title
6379            const price = products[i].variants[0].price
6380            const qty = products[i].variants[0].inventory_quantity
6381            const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}>
6382                <label for="card-${variantId}"></label>
6383                    <div class="card-image">
6384                        <img src="${img}" alt="${title}" width="" height="" />
6385                    </div>
6386                    <div class="card-meta text-center">
6387                        <h5>${title}</h5>
6388                        <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p>
6389                        <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}">
6390                    </div>
6391                </div>`
6392            html.push(body)
6393        }
6394        const withoutCard = `<div class="item-card item-without-card">
6395                <label for="card-0"></label>
6396                    <div class="card-image">
6397                        <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" />
6398                    </div>
6399                    <div class="card-meta text-center">
6400                        <h5>
6400Send without a greeting card</h5>
6401                        <input id="card-0" type="radio" name="id" value="" data-price="">
6402                    </div>
6403                </div>`
6404        $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join(""))
6405    });
6406  }
6407        
6408  $(document).ready(function(){
6409
6410    // Observer to auto-trigger addon loading when addon section becomes visible
6411    const addonObserver = new MutationObserver(function(mutations) {
6412      mutations.forEach(function(mutation) {
6413        const target = $(mutation.target)
6414        if(target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') {
6415          if(!target.hasClass('hide')) {
6416            // Addon section just became visible, ensure items are loaded
6417            setTimeout(function() {
6418              if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6419                console.log("Auto-triggering addon load...")
6420                $("[data-addon=upsell-all]").trigger("click")
6421              }
6422            }, 150)
6423          }
6424        }
6425      })
6426    })
6427    
6428    // Start observing addon section
6429    const addonSection = document.querySelector('.purchaseAddon')
6430    if(addonSection) {
6431      addonObserver.observe(addonSection, { 
6432        attributes: true, 
6433        attributeFilter: ['class'] 
6434      })
6435    }
6436
6437    $(".purchasePopup").delegate("#addtocart-card", "click", async function(){
6438    
6439    $(this).find("span").addClass("loading")
6440    let isValid = true
6441    $(".formAddressPurchase [required]").each(function(){
6442      const t = $(this)
6443      const input = t.val()
6444      const p = t.parent()
6445      if(input === '') {
6446        p.addClass("error")
6447        isValid = false
6448      }
6449    })
6450
6451    if(!isValid) {
6452      $(this).find("span").removeClass("loading")
6453      return
6454    }
6455    
6456    let items = []
6457    const mainProps = {
6458      
6459        "Delivery Date": $("#propDeliveryDate").val(),
6460        "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-' ,
6461        "Kota Pengiriman": $("#cities").val(),
6462        "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-' ,
6463        "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-' ,
6464        "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-' ,
6465        "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-' ,
6466      
6467      
6468        "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-' ,
6469        "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-' ,
6470        "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-' ,
6471        "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-' ,
6472        "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-' ,
6473      
6474      
6475      "Province": $("#province").val() !== '' ? $("#province").val() : '-' ,
6476      "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-' ,
6477      "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-' ,
6478      "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-' ,
6479      "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-',
6480      "type": 'product'
6481    }
6482    const props = await propItems()
6483    properties = {...mainProps, ...props };
6484    const id = $("#productSelect").find('option:selected').val()
6485    console.log(id, 'main ID')
6486    const mainItem = {
6487      id: Number(id),
6488      quantity: 1,
6489      properties
6490    }
6491    items.push(mainItem)
6492    const cardId = $("#itemCards").find(".selected input").val()
6493    const cardItem = {
6494      id: Number(cardId),
6495      quantity: 1,
6496      properties: { "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', type: 'card' }
6497    }
6498    console.log(cardId, 'cardId')
6499    if(cardId) {
6500      items.push(cardItem)
6501    }
6502    const addon = await addons()
6503    if(addon) {
6504      for(let i = 0;
6504 i < addon.length; i++){
6505        items.push({
6506          id: addon[i].id,
6507          quantity: addon[i].quantity,
6508          properties: addon[i].properties
6509        })
6510      }
6511    }
6512    const addItems = await additem(items)
6513    console.log(addItems.items, 'add items')
6514    if(addItems) {
6515      $(this).find("span").removeClass("loading")
6516      disablePopup()
6517      showPopupCart(addItems.items)
6518      
6519      localStorage.setItem("items", JSON.stringify(addItems.items))
6520    }
6521  })
6522  
6523  $("#addtocart-cart .btn").click(async function(){
6524    const id = $("#productSelect").find('option:selected').val()
6525    const mainProps = {
6526      id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 
6527      type: 'product'
6528    }
6529    const props = await propItems()
6530    const properties = { ...mainProps, ...props };
6531    const items = {
6532      id: Number(id),
6533      quantity: 1,
6534      properties
6535    }
6536    const addItems = await additem(items)
6537    if(addItems) {
6538      showPopupCart(addItems.items)
6539      localStorage.setItem("items", JSON.stringify(addItems))
6540    }
6541  })
6542
6543  $(".formAddressPurchase [required]").change(function(){
6544    const t = $(this)
6545    const p = t.parent()
6546    const v = t.val()
6547    if(v !== '') {
6548      p.removeClass("error")
6549    }
6550  })
6551
6552  $("#save-card").click(async function(){
6553    const parent = $(this).parents(".sectionPurchase")
6554    const next = parent.next(".sectionPurchase")
6555    $(this).find("span").addClass("loading")
6556    const card = await saveCard()
6557    console.log(card, 'ssaveCCC')
6558    if(card?.status === 200 || card?.status === 201) {
6559      $(".scanCard").removeClass("hide")
6560      $(this).find("span").removeClass("loading")
6561      parent.addClass("hide")
6562      next.removeClass("hide")
6563      if(next.hasClass("purchaseAddon")) {
6564        $("[data-addon=upsell-all]").click()
6565        console.log("clarity event addons")
6566        window.clarity("event", `${productType} add-ons`)
6567        // Ensure addon items are loaded when entering addon popup
6568        setTimeout(function() {
6569          if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6570            $("[data-addon=upsell-all]").trigger("click")
6571          }
6572        }, 100)
6573      }
6574      if(next.hasClass("purchaseAddress")) {
6575        $("#zip").select2()
6576      }
6577    }
6578  })
6579
6580  $("#skip-card").click(async function(){
6581    $("#greetingCard [data-properties]").val("")
6582    $("#properties-photo").val("")
6583    $("#properties-video").val("")
6584    const parent = $(this).parents(".sectionPurchase")
6585    const next = parent.next(".sectionPurchase")
6586    parent.addClass("hide")
6587    next.removeClass("hide")
6588    // $("#itemCards").html("")
6589    removeImage()
6590    removeVideo()
6591    if(next.hasClass("purchaseAddon")) {
6592      $("[data-addon='upsell-all']").click()
6593      console.log("clarity event addons")
6594      window.clarity("event", `${productType} add-ons`)
6595      // Ensure addon items are loaded when entering addon popup
6596      setTimeout(function() {
6597        if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6598          $("[data-addon='upsell-all']").trigger("click")
6599        }
6600      }, 100)
6601    }
6602    if(next.hasClass("purchaseAddress")) {
6603      $("#zip").select2()
6604    }
6605  })
6606
6607  $("#msgCard").click(async function(){
6608      $(this).parent().addClass("loading")
6609      let occasion = $(".selected[data-occassion]").data("occassion")
6610      occasion = occasion?.replace("greeting-card-", "")
6611      const { data } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`);
6612      const d = data?.data
6613      for(let i = 0; i < d.length; i++) {
6614        const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1);
6615        const greeting = d[num]?.Greeting
6616        $(".greetingCard textarea").val(greeting)
6617        $(this).parent().removeClass("loading")
6618      }
6619      $("#save-card").attr("disabled", false)
6620    })
6621
6622  $(".sectionPurchaseBoard .next-purchase-button").click(function(){
6623    const parent = $(this).parents(".sectionPurchase")
6624    const next = parent.next(".sectionPurchase")
6625    parent.addClass("hide")
6626    next.removeClass("hide")
6627  })
6628
6629  $("#editCard").click(function(){
6630    $(".custom-card").show()
6631    $(".preview-card").hide()
6632  })
6633
6634  $("#first_name, #last_name").change(function(){
6635    const v = $(this).val()
6636    const first_name = $("#first_name").val()
6637    const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : ''
6638    $("[data-properties=nama-penerima]").val(first_name+last_name)
6639  })
6640
6641  $("[data-occassion]").click(function(){
6642      const t = $(this)
6643      const p = t.parents(".sectionPurchase")
6644      // $(".greetingCard").addClass("disabled")
6645      const occasion = t.data("occassion")
6646      loadItemOccasion(t, occasion)
6647  })
6648
6649  $("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function(){
6650      const id = $(this).parent(".item-card").data("id")
6651      const t = $(this).parent(".item-card")
6652      const target = t.find("input")
6653      const v = $('.item-card input[type="radio"]:checked').val();
6654      $("#itemCards .item-card").removeClass("selected")
6655      t.addClass("selected")
6656      $("#itemCards .item-card").find("input").attr("name", "")
6657      if(target.length > 0) {
6658          target.attr("name", "id[]")
6659          $("#properties-card").val(id)
6660          $(".greetingCard").removeClass("disabled")
6661          $("#skip-card").attr("disabled", false)
6662      } else {
6663          $("#properties-card").val("")
6664      }
6665  })
6666
6667  $("#itemCards").delegate(".item-without-card label", "click", function(){
6668    const parent = $(this).parents(".sectionPurchase")
6669    const next = parent.next(".sectionPurchase")
6670    $(".greetingCard").addClass("disabled")
6671    parent.addClass("hide")
6672    next.removeClass("hide")
6673    $("[data-addon=upsell-all]").click()
6674    $("#zip").select2()
6675  })
6676
6677  $("[data-properties=ucapan]").keyup(function(){
6678    const v = $(this).val()
6679    const p = $(this).parents(".sectionPurchase")
6680    $(".purchaseAddress").find(".greetingCard textarea").val(v)
6681    if(v.length > 3) {
6682      p.find(".next-purchase-button").attr("disabled", false)
6683    } else {
6684      p.find(".next-purchase-button").attr("disabled", true)
6685    }
6686  })
6687
6688  $("[data-properties=penerima]").keyup(function(){
6689    const v = $(this).val()
6690    $(".purchaseAddress").find("[data-properties=penerima]").val(v)
6691  })
6692
6693  $("[data-properties=pengirim]").keyup(function(){
6694    const v = $(this).val()
6695    $(".purchaseAddress").find("[data-properties=pengirim]").val(v)
6696  })
6697
6698  $(document).click(function(e){
6699
6700     if($(e.target).closest('.wrapperPopupCart').length != 0) return false;
6701     // $('#popupCart').fadeOut('slow');
6702    // location.reload()
6703  });
6704
6705  $(".toggleAddonCart").click(function(){
6706    const p = $(this).parent(".itemAddonCart")
6707    p.toggleClass("open")
6708  })
6709
6710  $(".btnViewCart").click(function(){
6711    window.location.href = "https://outerbloom.com/cart";
6712  })
6713
6714  $(".btnViewCheckout").click(async function(){
6715    $(this).find("span").addClass("loading")
6716    let zip = $("#zip").val()
6717    const first_name = $("#first_name").val()
6718    const last_name = $("#last_name").val()
6719    const company = $("#company").val() !== '' ? $("#company").val() : ''
6720    const address1 = $("#delivery_address").val()
6721    const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : ''
6722    zip = zip && zip !== '' ? zip?.split(' - ')[0] : ''
6723    const phone = $("#recipient_number").val()
6724    const city = $("#cities").val()
6725    const province = $("#province").val()
6726    const country = 'Indonesia'
6727    const ver = Date.parse(new Date())
6728    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}`
6729
6730    const clear = await fetch(`/cart/clear.js`, {method: 'POST'})
6731    if(clear.status === 200) {
6732      const savedItem = window.localStorage.getItem("items");
6733      const items = JSON.parse(savedItem)
6734      const addItems = await additem(items)
6735      console.log(addItems, 'new addItems')
6736      if(addItems) {
6737        window.location.href = `https://outerbloom.com/checkout?${params}`;
6738      }
6739    }
6740  })
6741
6742  $(".btnContinueShopping").click(function(){
6743    window.location.href = "https://outerbloom.com/";
6744  })
6745
6746    if (isIOS) {
6747      $(".empty-state-card").click(function(){
6748        $("#input-foto").trigger("click")
6749      })
6750      $(".btn-upload-image").click(function(){
6751        $("#input-foto").trigger("click")
6752      })
6753      $("[for=input-video]").click(function(){
6754        $("#input-video").trigger("click")
6755      })
6756      $(".btn-upload-papan").click(function(){
6757        $("#logoPapan").trigger("click")
6758      })
6759    }
6760  
6761    $("[data-properties]").each(function(){
6762      const select = $(this).parents(".form-group").find("select")
6763      $(this).change(function(){
6764        const name = $(this).data("properties")
6765        const v = $(this).val()
6766        if (name == 'telepon-penerima') {
6767          let phone = v.replace(/[^0-9]/g, '')
6768          $(this).val(phone);
6769          $("#properties-telepon-penerima").val(phone)
6770          $('.iti__search-input').val('-') 
6771        } else {
6772          $("#properties-" + name).val(v)
6773        }
6774      })
6775      select.on("change", function(){
6776        const name = $(this).data("properties")
6777        const v = $(this).val()
6778        $("#properties-" + name).val(v)
6779      })
6780    })
6781
6782    $("#show_note").click(function(){
6783      nameq = $("#properties-nama-penerima").val()
6784      dear = $("#properties-kartu-nama-penerima").val()
6785      card = $("[data-properties=ucapan]").val()
6786      sender = $("#properties-kartu-nama-pengirim").val()
6787      photo = $("#properties-photo").val()
6788      video = $("#properties-video").val()
6789      updateCard(nameq, dear, card, sender, photo, video, status)
6790    })
6791
6792    $(".remove-image").click(function(e){
6793      e.preventDefault()
6794      $(this).find("img").show()
6795      removeImage()
6796    })
6797
6798    $(".remove-media").click(function(e){
6799      e.preventDefault()
6800      $(this).find("img").show()
6801      removeVideo()
6802    })
6803
6804    
6805
6806    $("[data-delivery_method]").click(function(e){
6807      e.preventDefault()
6808      const t = $(this)
6809      const data = t.data("delivery_method")
6810      $("[data-delivery_method]").removeClass("selected")
6811      t.addClass("selected")
6812      $("#cities").val("")
6813      $("#properties-delivery-date").val("-")
6814      $("#deliveryDate button").removeClass("selected")
6815      $("#full-date").val("Full Calendar →")
6816      $("#propDeliveryDate").val("")
6817      const step3 = $("#step-3")
6818      if(data.match('PickUp')) {
6819        $(".selfpickup-point").show()
6820        step3.find("[data-finished=false]").hide()
6821        $("#panel-4").hide()
6822        step3.find("[data-finished=true]").show()
6823        $("#cities").attr("required", false)
6824        $("#form-group-city").hide()
6825        $("#row-delivery-time").hide()
6826        $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-")
6827        $("#propDeliveryTime").attr("required", false)
6828        // $("#deliveryDate").find("button:first-child").addClass("stop")
6829        $(".form-selfpickup").show()
6830        $(".form-delivery").hide()
6831        $(".form-delivery").find("input, textarea, select").val("")
6832        $(".form-delivery").find("input, textarea, select").attr("required", false)
6833        $("#properties-shipping").val("0")
6834        $("#noteDeliveryDate").hide()
6835        $(".form-delivery .form-control").attr("required", false)
6836        $("#stepNav4").hide()
6837        
6838        $("#deliveryDate").find("button:nth-child(1)").addClass("stop")
6839        
6840        
6841        
6842        if(timeOfDay >= 16.01){
6843          $("#deliveryDate").find("button:nth-child(2)").addClass("stop")
6844        }
6845      } else {
6846        
6847        
6848        $("#deliveryDate").find("button:nth-child(1)").removeClass("stop")
6849        step3.find("[data-finished=false]").show()
6850        $("#panel-4").show()
6851        step3.find("[data-finished=true]").hide()
6852        $("#cities").attr("required", true)
6853        $(".selfpickup-point").hide()
6854        $("#form-group-city").show()
6855        $("#cities").val('').trigger('change');
6856        $("#properties-kota-pengiriman").val("-")
6857        
6858        $("#row-delivery-date, #row-delivery-time").show()
6859        $("#propDeliveryDate, #propDeliveryTime").attr("required", true)
6860        $("#deliveryDate").find("button").removeClass("stop")
6861        $(".form-selfpickup").hide()
6862        $(".form-delivery").show()
6863        $(".form-delivery").find("input, textarea, select").attr("required", true)
6864        $(".form-delivery [data-properties]").attr("readonly", false)
6865        $("#properties-kodepos").val("-")
6866        $("#properties-alamat-penerima").val("-")
6867        $(".form-delivery .form-control").attr("required", true)
6868        $(this).parents(".setup-content").attr("id", "step-1")
6869        
6870        $("#stepNav4").show()
6871      }
6872    })
6873
6874    $("[name=selfpickup]").click(function(){
6875        const p = $(this).parents(".row-pickup")
6876        const pickupCity = $("input[name='selfpickup']:checked").val();
6877        const pickupAddress = $("input[name='selfpickup']:checked").data("address");
6878        const pickupZip = $("input[name='selfpickup']:checked").data("zip");
6879
6880        $(".row-pickup").removeClass("selected")
6881        p.addClass("selected")
6882        
6883        $("#properties-kota-pengiriman").val(pickupCity)
6884        $("#province").val("Jakarta")
6885        $("#properties-alamat-penerima").val(pickupAddress)
6886        $("#properties-kodepos").val(pickupZip)
6887    })
6888
6889    $("#cities").change(function(e){
6890      e.preventDefault()
6891      $(this).parent(".row").find("p.error").remove()
6892      $("#full-date").val("Full Calendar")
6893      $("#deliveryDate, #deliveryDateFull label ").show()
6894      $("#deliveryDateFull").removeClass("filled")
6895      $(".btnChangeDeliveryDate").addClass("hide")
6896      $("#full-date").prop('disabled', false);
6897      $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success")
6898      $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true)
6899      const step3 = $("#step-3")
6900      $("#cityNote").remove()
6901      $("#noteDeliveryDate").hide()
6902      $("#noteDeliveryDate").empty()
6903      let v = $(this).val()
6904      let v2 = $('option:selected', this).attr('data-city');
6905      let v3 = $('option:selected', this).attr('data-province');
6906      let price = $('option:selected', this).attr('data-price');
6907      $("#country").val(v)
6908      $("#properties-kota-pengiriman").val(v)
6909      $("#properties-shipping").val(price)
6910      $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected")
6911      $("#properties-delivery-date, #properties-delivery-time").val("-")
6912      $("#propDeliveryDate, #propDeliveryTime").val("")
6913      let note = $('option:selected', this).attr('data-note');
6914      if(v === 'Kota Lainnya') {
6915        $("#noteDeliveryDate").show()
6916        $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.")
6917        $("#zip").attr("required", false)
6918        $("#zip").hide()
6919        $("#propDeliveryDate, #propDeliveryTime").attr("required", false)
6920        $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-")
6921        $("#row-delivery-date, #row-delivery-time").hide()
6922        $("#properties-shipping").val("")
6923        // $(this).parents(".setup-content").attr("id", "step-2")
6924        
6925      } else {
6926        $("#noteDeliveryDate").hide()
6927        $("#zip").attr("required", true)
6928        $("#zip").show()
6929        $("#row-delivery-date, #row-delivery-time").show()
6930        $("#propDeliveryDate, #propDeliveryTime").attr("required", true)
6931        $("#deliveryDate").find("button").removeClass("stop")
6932        // $(this).parents(".setup-content").attr("id", "step-1")
6933        
6934      }
6935      
6936      
6937      
6938      // if(v !== 'Jakarta') {
6939      //   $("[data-type=upsell]").hide()
6940      // } else {
6941      //   $("[data-type=upsell]").show()
6942      // }
6943      // $('.collection-addons')[0].swiper.update();
6944      
6945      
6946      getProvince(v)
6947      $("#zip").html(`<option value="">Choose Postal Code</option>`)
6948      renderZip(v, v2, v3)
6949      
6950      disabledSameDay()
6951      
6952
6953      if(v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') {
6954        
6955        $("#cardOccasion, #navAddon, .collection-addons").hide()
6956        
6957        $("[data-addon=giftcard]").show()
6958        $("[data-addon=giftcard]").click()
6959        $("#itemAddons").show()
6960        $("#flower-step").addClass("nonjadetabek")
6961      } else {
6962        $("#cardOccasion, #navAddon, .collection-addons").show()
6963        $("[data-addon=all]").click()
6964        $("#flower-step").removeClass("nonjadetabek")
6965      }
6966      
6967        if(v !== '') {
6968          $("#personalizeBtn .btn").attr("disabled", false)
6969        } else {
6970          $("#personalizeBtn .btn").attr("disabled", true)
6971        }
6972      
6973    })
6974
6975    $("#zip").change(function(e){
6976      let v = $(this).val()
6977      var city = $("#cities").find('option:selected');
6978      $("#properties-kodepos").val(v)
6979      if(city === 'Kota Lainnya') {
6980        $(this).attr("required", true)
6981        $("#recipient-address").val("")
6982      }
6983    })
6984
6985    
6986      var minDate = +7
6987      
6988    
6989
6990    $("#full-date").datepicker({
6991      minDate,
6992      dateFormat: 'Mdd_yy', //Nop22_2021,
6993      
6994      beforeShowDay: disabledays,
6995      
6996      onSelect: function (date) {
6997        $("#deliveryDate, #deliveryDateFull label ").hide()
6998        $("#deliveryDateFull").addClass("filled")
6999        $(".btnChangeDeliveryDate").removeClass("hide")
7000        $("#full-date").prop('disabled', true);
7001        $('#propDeliveryDate, #properties-delivery-date').val('Kirim_'+date);
7002        $(".date-full").addClass("selected")
7003        $(".date-single, .calendar-group").removeClass("selected")
7004        $("#propDeliveryTime").val('')
7005        $("#properties-delivery-time").val('-')
7006        $(".time-single").removeClass("selected")
7007        
7008        
7009      }
7010    });
7011
7012    $(".btnChangeDeliveryDate").click(function(){
7013        $("#deliveryDate, #deliveryDateFull label ").show()
7014        $("#deliveryDateFull").removeClass("filled")
7015        $(".btnChangeDeliveryDate").addClass("hide")
7016        $("#full-date").prop('disabled', false);
7017    })
7018  
7019    $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e){
7020      e.preventDefault()
7021      $(this).parents("#row-delivery-date").find("p.error").remove()
7022      const fulldate = $(this).data("fulldate")
7023      const day = $(this).data("day")
7024      const date = $(this).data("date")
7025      const month = $(this).data("month")
7026      const year = $(this).data("year")
7027      const off_pagi = $(this).data("offpagi")
7028      const off_siang = $(this).data("offsiang")
7029      const off_Malam = $(this).data("offMalam")
7030      $(".calendarbutton").removeClass("selected")
7031      $(this).addClass("selected")
7032      $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`)
7033      $("#propDeliveryTime").val('')
7034      $("#properties-delivery-time").val('-')
7035      $(".calendarbutton2").removeClass("selected")
7036      $("#full-date").val("Full Calendar")
7037
7038      
7039      if(off_pagi && timeOfDay > off_pagi) {
7040        $("[data-time=Morning]").attr("disabled", true)
7041      } else {
7042        $("[data-time=Morning]").attr("disabled", false)
7043      }
7044      if(off_siang && timeOfDay > off_siang) {
7045        $("[data-time=Afternoon]").attr("disabled", true)
7046      } else {
7047        $("[data-time=Afternoon]").attr("disabled", false)
7048      }
7049      
7050
7051      
7052    })
7053    
7054    if(today === 14 && timeOfDay > 17.00) {
7055      $("#deliveryDate button:first-child").attr("disabled", true)
7056    }
7057  
7058    $("#deliveryTime").delegate(".calendarbutton2", "click", function(e){
7059      e.preventDefault()
7060      const time = $(this).data("time")
7061      const date = $("#propDeliveryDate").val()
7062      if(date == '') {
7063        return alert('Silakan pilih tanggal terlebih dahulu')
7064      }
7065      $(".calendarbutton2").removeClass("selected")
7066      $(this).addClass("selected")
7067      $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`)
7068    })
7069      
7070    $('textarea.has-limit, input.has-limit').keyup(function () {
7071      max = this.getAttribute("maxlength");
7072      let len = $(this).val().length;
7073      let limit = $(this).siblings(".limit");
7074      if (len > max) {
7075        alert('you have reached the limit');
7076      } else {
7077        limit.text(`${len}/${max}`);
7078      }
7079    });
7080    
7081    $("#button-action-step .btn").click(function(){
7082      $(this).find("span").text("Processing...");
7083    });
7084
7085    $(".finishBtn").on('click', function() {
7086      $(this).addClass("is-adding");
7087      // $(this).click();
7088    });
7089
7090    $('.setup-panel .nav-item a.btn-success').trigger('click');
7091
7092    $("#button-action .btn").click(function(){
7093      $("#flower-step").addClass("block");
7094      $("#button-action").hide();
7095    });
7096        
7097    $(".close-how-order").click(function(){
7098      $("#flower-step").removeClass("block");
7099      $("#button-action").show();
7100    });
7101
7102    $("#input-foto, #input-video").change(function(e){
7103      readURL(this);
7104    });
7105
7106    $("#logoPapan").change(function(){
7107      readURLPapan(this);
7108    });
7109
7110    $("#address-upload").change(async function(){
7111      const upload_address = await readURLAddress(this)
7112      if(upload_address) {
7113        const url = upload_address.url
7114        $(".props-address-upload").val(url)
7115        $(".form-address").addClass("address-uploaded")
7116        $(".form-address-upload").addClass("uploaded")
7117
7118        $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false)
7119      }
7120    })
7121
7122    $(".address-manualy").click(function(){
7123      $(".form-address-upload").removeClass("uploaded");
7124      $(".photo-address").hide();
7125      $(".form-address").removeClass("address-uploaded")
7126      $("#formAddressPurchase").find(".form-control").attr("required", true)
7127    });
7128
7129    $(".case-video-preview").delegate(".replace-video", "click", function(){
7130      $("#input-video").trigger("click")
7131    })
7132
7133    $('.date-single').click(function(e) {
7134      e.preventDefault();
7135      $('.date-single').removeClass('selected');
7136      $('#full-date').removeClass('selected');
7137      $(this).addClass('selected');
7138      $('#full-date').html('Full' + '<br/>' + 'Calendar');
7139    });
7140    $('#full-date').click(function(e){
7141      e.preventDefault();
7142      $('.date-single').removeClass('selected');
7143      $(this).addClass('selected');
7144    });
7145    
7146    // $("tr").each(function(){
7147    //   if($(this).text().match('SKU')) {
7148    //     $(".sku-product").html($(this).parents("table").html())
7149    //   }
7150    // })
7151    
7152    $("#product-image").scroll(function(){
7153      $(".desc-add").each(function(){
7154        const img = $(this).find("img")
7155        const src = img.data("src")
7156        img.attr("src", src)
7157      })
7158    })
7159
7160    $(".product-fixed").hide()
7161    
7162    let target = $("#personalizeBtn")
7163    
7164
7165    $(".product-meta").scroll(function() {
7166        if ($(window).scrollTop() >= target.offset().top ) {
7167            $(".product-fixed").addClass("show")
7168        } else {
7169          $(".product-fixed").removeClass("show")
7170        }
7171    });
7172
7173    $(window).scroll(function() {
7174        if ($(window).scrollTop() >= target.offset().top ) {
7175            $(".product-fixed").addClass("show")
7176        } else {
7177          $(".product-fixed").removeClass("show")
7178        }
7179    });
7180  });
7181</script>
7181
7182
7183  
7183<script>
7184    //
7185  </script>
7185
7186
7187<script>
7188  $(document).ready(function(){
7189    $('table tr td').each(function(){
7190      var texto = $(this).text();
7191      var nextto = $(this).next("td");
7192      var sku = $("#data-sku").val()
7193      if(texto == 'SKU'){
7194        nextto.text(sku)
7195      }
7196    });
7197    
7198    $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan");
7199    $(".stamped-summary-actions-newreview").text("Tulis Review");
7200    $("#tab-questions").text("Pertanyaan");
7201    
7202    $(".freeship .icon").click(function(){
7203      $(".fs-content").slideToggle();
7204      $(this).parents(".freeship").toggleClass("expand");
7205    });
7206    
7207    var $easyzoom = $('.easyzoom').easyZoom();
7208    // Setup thumbnails example
7209    var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom');
7210    $('.thumbnails').on('click', 'a', function(e) {
7211      var $this = $(this);
7212      e.preventDefault();
7213      // Use EasyZoom's `swap` method
7214      api1.swap($this.data('standard'), $this.attr('href'));
7215    });
7216
7217    $('#playerID').click(function(){
7218      var videoURL = $('#VdoID').attr('src'),
7219          dataplay = $('#VdoID').attr('data-play');
7220
7221      //for check autoplay
7222      //if not set autoplay=1
7223      if(dataplay == 0 ){
7224        $('#VdoID').attr('src',videoURL+'?autoplay=1');
7225        $('#VdoID').attr('data-play',1);
7226      }
7227      else{
7228        var videoURL = $('#VdoID').attr('src');
7229        videoURL = videoURL.replace("?autoplay=1", "");
7230        $('#VdoID').prop('src','');
7231        $('#VdoID').prop('src',videoURL);
7232
7233        $('#VdoID').attr('data-play',0);
7234      }
7235
7236    });
7237    
7238    $(".product-photo-thumb-video").click(function(e){
7239      e.preventDefault();
7240
7241      var newEmbed = $(this).attr('href');
7242      $("#featured-image-product").addClass("img-video");
7243      $("#ProductPhotoImg").hide();
7244      $("#featured-image-product .video").show();
7245      $("#featured-image-product iframe").attr('src', newEmbed);
7246      $("#VdoID")[0].src += "&autoplay=1";
7247    });
7248    $(".product-single__thumbnail").click(function(evt){
7249      evt.preventDefault();
7250      $("#featured-image-product").removeClass("img-video");
7251      $("#ProductPhotoImg").show();
7252      $("#featured-image-product .video").hide();
7253      $("#featured-image-product iframe").attr('src', '');
7254    });
7255    
7256    if($('#product-meta .short-desc > div').length >= 1){
7257      //console.log('div detected')
7258      var replacer = $('#product-meta .short-desc > div').contents();
7259      $('#product-meta .short-desc > div').replaceWith(replacer);
7260
7261      var cAssured =  $('.c-assured').detach();
7262      cAssured.insertAfter('.meta-sds .stock-info');
7263    }
7264
7265    
7266    
7267    $(".heading-toggle").click(function(){
7268      $(this).parent().toggleClass("open")
7269      
7270    });
7271  });
7272</script>
7272
7273
7274
7275  
7275<script type="application/json" id="ProductJson-Product">
7276        
7277        {"id":8144957800663,"title":"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya."}
7278  </script>
7278
7279  
7280    
7280<script type="application/json" id="VariantJson-Product">
7281      [
7282        
7283          {
7284             "incoming": false,
7285             "next_incoming_date": null
7286          }
7287        
7288      ]
7289    </script>
7289
7290  
7291
7292
7293
7294</div>
7295
7296
7297<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
7297
7298<style>
7299    .stamped-review-header-title,
7300    .stamped-review-header .author,
7301    .stamped-review-content-body,
7302    .stamped-sort-select,
7303    .stamped-review-header .verified-badge[data-type=buyer]:after,
7304    .stamped-review-header-byline,
7305    .stamped-review-reply-body {font-size: 14px!important;font-family: 'Barlow',sans-serif!important;}
7306    .stamped-review {margin-bottom: 0;}
7307    .stamped-review-body {padding-left: 65px;}
7308    .stamped-review:first-child {padding-top: 25px;}
7309    .stamped-review-content {clear: none;}
7310    .stamped-review-reply {margin: 15px 0 0 65px;background: #f2f2f2;border-left: none;}
7311    .stamped-review-reply-body {padding-left: 65px;}
7312    .stamped-review-header .author {text-transform: capitalize;}
7313    .stamped-questions .stamped-review-content {padding-left: 65px;}
7314
7315    .stamped-pagination {margin: 20px 0 0;}
7316    .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;}
7317    .stamped-pagination li a {color: #121212;padding: 13px 18px;vertical-align: middle;display: block;}
7318    .stamped-pagination li.active a {background-color: #ddd;font-weight: 400;}
7319    .stamped-pagination li:hover a {background: #ddd;}
7320    .stamped-pagination .next {border-right: 1px solid #ccc;}
7321    .stamped-pagination li:first-child {border-top-left-radius: 5px;border-bottom-left-radius: 5px;}
7322    .stamped-pagination li:last-child {border-top-right-radius: 5px;border-bottom-right-radius: 5px;}
7323
7324    #stamped-pagination-question span.page {display: inline-block;border: 1px solid #ccc;width: 47px;}
7325    #stamped-pagination-question span {font-size: 14px;}
7326    #stamped-pagination-question .page.active {padding: 12px;font-weight: 400;background: #ddd;}
7327    #stamped-pagination-question a, #stamped-pagination-question .page.active {color: #121212;padding: 13px 18px;vertical-align: middle;display: inline-block;}
7328    .stamped-pagination-deco {color: #121212;padding: 13px 18px;width: 47px;vertical-align: middle;display: inline-block;border: 1px solid #ccc;padding: 12px;}
7329    .stamped-pagination-prev, .stamped-pagination-next {position: inherit;}
7330    .stamped-pagination-prev a, .stamped-pagination-next a {width: auto!important;border: 1px solid #ccc;}
7331
7332    @media (max-width: 480px){
7333      .stamped-review-reply {margin-left: 0!important;}
7334      select.stamped-sort-select {font-size: 13px!important;}
7335    }
7336
7337  #product-reviews .stamped-summary-ratings, #product-reviews .stamped-summary-actions, .stamped-content {
7338      display: block !important;
7339  }
7340</style>
7341<script>
7342    var selectCallback = function(variant, selector) {
7343      timber.productPage({
7344        money_format: "Rp {{amount_no_decimals}}",
7345        variant: variant,
7346        selector: selector
7347      });
7348    };
7349
7350    jQuery(function($) {
7351      new Shopify.OptionSelectors('productSelect', {
7352        product:
7353
7354
7355
7356
7357
7358{"id":8144957800663,"title":"WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eWIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya."},
7359        onVariantSelected: selectCallback,
7360        enableHistoryState: true
7361      });
7362
7363      // Add label if only one product option and it isn't 'Title'. Could be 'Size'.
7364      
7365
7366      // Hide selectors if we only have 1 variant and its title contains 'Default'.
7367      
7368        $('.selector-wrapper').hide();
7369      
7370    });
7371</script>
7371
7372
7373
7374
7375  
7375<script type="application/ld+json">
7376    {
7377    "@context": "http://schema.org",
7378    "@type": "Product",
7379"offers": {
7380"@type": "Offer",
7381"availability":"https://schema.org/InStock",
7382"price": 835000,
7383"priceValidUntil": "05-10-2025",
7384"priceCurrency": "IDR",
7385"url": "http://win4dream.com/"
7386},
7387"brand": {
7388"@type": "Brand",
7389"name": "Outerbloom Florist"
7390},
7391"sku": "8144957800663",
7392"gtin13": "Jawa",
7393"name": "WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia",
7394"description": "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.",
7395"category": "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.",
7396"url": "http://win4dream.com/",
7397"image": {
7398"@type": "ImageObject",
7399"url": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426",
7400"image": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426",
7401"name": "WIN4D 🎮 Rasakan Experience Dengan kami Salah Satu Website Gaming Terpopuler Dukungan Kredibel Di Indonesia",
7402"width": 1024,
7403"height": 1024
7404}
7405    }
7406  </script>
7406
7407
7408
7409
7410
7411        
7412<script id="bss-ltap-hide-price" type="text/javascript" >
7413!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)}))}
7413)),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)}
7413)),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()}
7413if("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)}
7413if(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");
7413c&&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
7413-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");
7413i&&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
7413--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
7413opify.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");
7413e.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=
7413o.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");
7413if(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();
7413let 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()}]);
7414</script>
7414
7415
7416      </main>
7417      
7418      <div id="shopify-section-newsletter" class="shopify-section"><br>
7419  <style>
7420    #shopify-section-newsletter {
7421      background: url(https://ladangwin4d.com/resmi/untitleddesign-win4d.png);
7422      background-attachment: fixed;
7423      margin-bottom: 0;
7424    }
7425    input:-webkit-autofill,
7426    input:-webkit-autofill:hover,
7427    input:-webkit-autofill:active,
7428    input:-webkit-autofill:focus {
7429      -webkit-box-shadow:0 0 0 50px white inset;
7430      -webkit-text-fill-color: #ffffff;
7431    }
7432    .section-newsletter {
7433      max-width: 800px;
7434      margin: auto;
7435      padding: 50px 0;
7436    }
7437    .section-newsletter h2 {
7438      font-weight: 700;
7439      font-size: 24px;
7440    }
7441    .section-newsletter input[type="email"] {
7442      width: 100%;
7443      text-align: center;
7444      border: none;
7445      border-bottom: 1px solid #ffffff;
7446      font-size: 16px;
7447      color: #757575;
7448      background-color: #eeeeee;
7449    }
7450    .section-newsletter .row label {
7451      font-size: 14px;
7452      cursor: pointer;
7453    }
7454    .section-newsletter .radio-inline input {
7455      width: auto;
7456    }
7457    .section-newsletter .btn {
7458      width: 130px;
7459      border: 1px solid #ffffff;
7460      box-shadow: none;
7461      font-size: 16px;
7462      font-weight: 500;
7463      text-transform: uppercase;
7464    }
7465    .section-newsletter form {
7466      margin: 30px 0 60px;
7467    }
7468    .section-newsletter input[type="radio"] {
7469      position: absolute;
7470      width: 1px;
7471      height: 1px;
7472    }
7473    .section-newsletter [type="radio"]:checked + label, .section-newsletter [type="radio"]:not(:checked) + label {
7474      position: relative;
7475      padding-left: 28px;
7476      cursor: pointer;
7477      line-height: 20px;
7478      display: inline-block;
7479      color: #666;
7480    }
7481    .section-newsletter [type="radio"]:checked + label:before, .section-newsletter [type="radio"]:not(:checked) + label:before {
7482      content: '';
7483      position: absolute;
7484      left: 0;
7485      top: 0;
7486      width: 18px;
7487      height: 18px;
7488      border: 1px solid #ddd;
7489      border-radius: 100%;
7490      background: #fff;
7491    }
7492    .section-newsletter [type="radio"]:checked + label:after, .section-newsletter [type="radio"]:not(:checked) + label:after {
7493      content: '';
7494      width: 12px;
7495      height: 12px;
7496      background: #ffffff;
7497      position: absolute;
7498      top: 3px;
7499      left: 3px;
7500      border-radius: 100%;
7501      -webkit-transition: all 0.2s ease;
7502      transition: all 0.2s ease;
7503    }
7504    .section-newsletter [type="radio"]:not(:checked) + label:after {
7505      opacity: 0;
7506      -webkit-transform: scale(0);
7507      transform: scale(0);
7508    }
7509    .opt-newsletter {display:none;}
7510    .footer-newsletter p, .footer-newsletter p a {
7511      color: #757575;
7512    }
7513    @media (max-width:991px){
7514      .section-newsletter h2 {
7515        font-size: 32px;
7516      }
7517      .section-newsletter input {
7518        width: 300px;
7519        font-size: 14px;
7520      }
7521      .section-newsletter {
7522        padding: 50px 20px;
7523      }
7524    }
7525    @media (max-width: 480px){
7526      .section-newsletter input[type="email"] {font-size: 16px;}
7527    }
7528  </style>
7529 <style>
7530.icon-img-footer {
7531    width: 80px; 
7532    padding: 0px 5px;
7533}
7534@media (min-width: 768px) {
7535    .icon-img-footer {
7536        width: 120px; 
7537    }
7538}
7539@media (min-width: 992px) {
7540    .icon-img-footer {
7541        width: 120px; 
7542    }
7543}
7544
7545  .button-login-daftar {
7546                        display: grid;
7547                        grid-template-columns: repeat(2, 1fr);
7548                        font-weight: 700;
7549                    }
7550                    .button-login-daftar a {
7551                        text-align: center;
7552                    }
7553                    .login,
7554                    .register {
7555                        color: #fff;
7556                        padding: 15px 10px;
7557                        font-size: 23px;
7558                    }
7559                    .login,
7560                    .login-button {
7561                        background: linear-gradient(to bottom, #540076 0, #8f2b76 100%);
7562                        border: 2px solid #ffffff;
7563                    }
7564                    .register,
7565                    .register-button {
7566                        background: linear-gradient(to bottom, #540076 0, #8f2b76 100%);
7567                        border: 2px solid #ffffff;
7568                    }
7569
7570
7571
7572</style>
7573
7574<!-- wp:html -->
7575 
7575<script>
7576        document.addEventListener('DOMContentLoaded',
7577            function(){const faqItems=document.querySelectorAll('.faq-item');
7578            faqItems.forEach(item=>{const question=item.querySelector('.faq-question');
7579            question.addEventListener('click',
7580            ()=>{const isActive=item.classList.contains('active');
7581            faqItems.forEach(otherItem=>{otherItem.classList.remove('active')});
7582            if(!isActive){item.classList.add('active')}})})});
7583        </script>
7583
7584
7585
7586           <div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1">
7587            </div>
7588<div class="faq-section">
7589  <h2>FAQ</h2>
7590  <div class="faq-container">
7591
7592    <div class="faq-item">
7593  <button class="faq-question">
7594    Apa sih yang bikin WIN4D beda dari platform gaming lainnya?
7595    <span></span>
7596  </button>
7597  <div class="faq-answer">
7598    <p>
7599      Bedanya jauh, bro! Di saat platform lain gak jelas izinnya dan sering bikin was-was, WIN4D adalah salah satu platform gaming terpercaya yang memegang sertifikat resmi di Indonesia. Ini jaminan kalau modal dan kemenangan lo 100% aman tanpa drama.
7600    </p>
7601  </div>
7602</div>
7603
7604<div class="faq-item">
7605  <button class="faq-question">
7606    Apakah bermain di WIN4D beneran aman dan adil (fair play)?
7607    <span></span>
7608  </button>
7609  <div class="faq-answer">
7610    <p>
7611      Jelas aman, bro. Sebagai platform gaming terpercaya dengan sertifikat resmi di Indonesia, WIN4D udah ngelewatin proses audit super ketat dari lembaga internasional. Sistem game di sini transparan, pakai RTP riil, dan bebas dari manipulasi bot.
7612    </p>
7613  </div>
7614</div>
7615
7616<div class="faq-item">
7617  <button class="faq-question">
7618    Benarkah semua kemenangan di WIN4D pasti dibayar?
7619    <span></span>
7620  </button>
7621  <div class="faq-answer">
7622    <p>
7623      Pasti dibayar tuntas, bro! Data internal membuktikan WIN4D punya rekam jejak 0% kasus fraud. Menang berapapun, detik itu juga lo ajuin withdraw, langsung diproses tanpa dipersulit.
7624    </p>
7625  </div>
7626</div>
7627
7628<div class="faq-item">
7629  <button class="faq-question">
7630    Berapa lama proses transaksi deposit dan withdraw di sini?
7631    <span></span>
7632  </button>
7633  <div class="faq-answer">
7634    <p>
7635      Gak pakai lama sampai berjam-jam. Rata-rata proses transaksi (baik depo maupun WD) di WIN4D itu di bawah 3 menit. Sangat cepat, aman, dan efisien.
7636    </p>
7637  </div>
7638</div>
7639
7640<div class="faq-item">
7641  <button class="faq-question">
7642    Bagaimana dengan keamanan data pribadi saya di WIN4D?
7643    <span></span>
7644  </button>
7645  <div class="faq-answer">
7646    <p>
7647      Data lo 100% aman, bro. WIN4D menggunakan sistem enkripsi ketat setara perbankan untuk memastikan seluruh informasi member terlindungi. Bergabunglah bersama kami dan rasakan pengalaman bermain yang aman, adil, dan seru sekarang!
7648    </p>
7649  </div>
7650</div>
7651
7652  </div>
7653</div>
7654<section class="rv-wrap" aria-labelledby="rvTitle">
7655  <div class="rv-card">
7656    <header class="rv-head">
7657      <span class="rv-dot" aria-hidden="true"></span>
7658      <h2 id="rvTitle" class="rv-title">Review Member WIN4D</h2>
7659      <p class="rv-sub">Salah Satu Platform Gaming Terpercaya Dengan Sertifikat Resmi Di Indonesia</p>
7660    </header>
7661
7662    <div class="rv-viewport" role="region" aria-label="Review slider">
7663      <div class="rv-track" id="rvTrack">
7664
7665        <article class="rv-item">
7666          <div class="rv-top">
7667            <span class="rv-name">Arjon</span>
7668            <span class="rv-stars" aria-label="Rating 5 dari 5">★★★★★</span>
7669          </div>
7670          <p class="rv-body">Gue tuh udah kenyang banget di-zonk-in sama situs kaleng-kaleng di luar sana. Pas kalah diem aja, giliran gue jp (jackpot) malah akun gue di-ban tanpa alasan. Untung gue denerin kata temen buat pindah ke WIN4D. Pas gue coba, ternyata ini salah satu platform gaming terpercaya dengan sertifikat resmi di Indonesia. Sekarang gue bisa main dengan tenang tanpa takut kemenangan gue hangus!</p>
7671          <time class="rv-date" datetime="2026-02-01">2026-02-01</time>
7672        </article>
7673
7674        <article class="rv-item">
7675          <div class="rv-top">
7676            <span class="rv-name">Andri</span>
7677            <span class="rv-stars" aria-label="Rating 4.8 dari 5">★★★★☆</span>
7678          </div>
7679          <p class="rv-body">Buat gue, waktu itu uang. Gue paling gak tahan kalau nemu situs yang proses withdraw-nya pakai alasan 'maintenance sistem' berjam-jam. Tapi sejak gue bergabung bersama WIN4D, rekor WD gue gak pernah lebih dari 3 menit. Begitu klik WD, langsung masuk rekening tanpa drama. Datanya terbukti nyata, bukan cuma janji manis!</p>
7680          <time class="rv-date" datetime="2026-03-01">2026-03-01</time>
7681        </article>
7682
7683        <article class="rv-item">
7684          <div class="rv-top">
7685            <span class="rv-name">Topa</span>
7686            <span class="rv-stars" aria-label="Rating 4.9 dari 5">★★★★★</span>
7687          </div>
7688          <p class="rv-body">Dulu gue tuh parno banget main game online karena takut data pribadi gue bocor terus di-spam nomor gak jelas. Pas gue baca kalau WIN4D punya enkripsi ketat setara perbankan dan bersertifikat resmi, gue langsung daftar. Terbukti sih, sistem keamanannya super ketat, akun gue aman, dan privasi gue bener-bener dijaga.</p>
7689          <time class="rv-date" datetime="2026-03-05">2026-03-05</time>
7690        </article>
7691
7692        <article class="rv-item">
7693          <div class="rv-top">
7694            <span class="rv-name">Jason</span>
7695            <span class="rv-stars" aria-label="Rating 4.7 dari 5">★★★★☆</span>
7696          </div>
7697          <p class="rv-body">Gue ngerasa sistem di situs lain tuh kayak udah di-setting biar kita kalah terus. Tapi pas gue bergabung bersama WIN4D, auranya beda banget, bro. Karena mereka platform terpercaya dan lewat audit ketat, sistemnya kerasa banget fair play. RTP yang mereka buka secara real-time itu emang beneran riil, bukan manipulasi bot.</p>
7698          <time class="rv-date" datetime="2026-03-06">2026-03-06</time>
7699        </article>
7700
7701        <article class="rv-item">
7702          <div class="rv-top">
7703            <span class="rv-name">Mungil</span>
7704            <span class="rv-stars" aria-label="Rating 5 dari 5">★★★★★</span>
7705          </div>
7706          <p class="rv-body">Gue main game buat nyari hiburan abis pulang kerja, jadi ogah banget kalau malah nambah beban pikiran karena situsnya gak jelas. Di WIN4D, gue bener-bener menikmati permainan aman, adil, dan seru. Bebas stress, karena gue tahu modal yang gue masukin diurus sama platform terpercaya yang punya sertifikat resmi di Indonesia.</p>
7707          <time class="rv-date" datetime="2026-03-08">2026-03-08</time>
7708        </article>
7709
7710        <article class="rv-item">
7711          <div class="rv-top">
7712            <span class="rv-name">Fatimah</span>
7713            <span class="rv-stars" aria-label="Rating 4.8 dari 5">★★★★☆</span>
7714          </div>
7715          <p class="rv-body">Pelajaran berharga banget buat gue: jangan pernah pertaruhkan uang di tempat yang gak punya sertifikat resmi. Gue nyesel banget kenapa baru tahu WIN4D sekarang setelah boncos banyak di tempat lain. Kalau ada yang udah jelas terpercaya dan bersertifikat resmi di Indonesia kayak gini, ngapain gue kemarin bertahan di situs abal-abal?</p>
7716          <time class="rv-date" datetime="2026-03-06">2026-03-06</time>
7717        </article>
7718
7719        <article class="rv-item">
7720          <div class="rv-top">
7721            <span class="rv-name">Liber</span>
7722            <span class="rv-stars" aria-label="Rating 4.9 dari 5">★★★★★</span>
7723          </div>
7724          <p class="rv-body">Awalnya gue sangsi pas liat data kalau tingkat kepuasan member di sini nyampe 98%. Akhirnya gue buktiin sendiri daftar hari ini. Dan bener aja, pelayanan layanannya responsif banget, gamenya lancar tanpa lag, dan rasanya bener-bener nikmati permainan aman, adil, dan seru. WIN4D emang gak ada tandingan!</p>
7725          <time class="rv-date" datetime="2026-03-08">2026-03-08</time>
7726        </article>
7727
7728        <article class="rv-item">
7729          <div class="rv-top">
7730            <span class="rv-name">Jujun</span>
7731            <span class="rv-stars" aria-label="Rating 4.8 dari 5">★★★★☆</span>
7732          </div>
7733          <p class="rv-body">Gue udah mutusin buat gak bakal balik lagi ke situs-situs gak jelas yang bikin dongkol. Hari ini gue langsung klik tombol gabung dan amankan akun gue. Buat anak-anak komunitas gue, bergabunglah bersama kami di WIN4D sekarang juga sebelum modal lo abis di tempat yang salah. Rasakan sendiri bedanya main di platform terpercaya bersertifikat resmi!</p>
7734          <time class="rv-date" datetime="2026-03-09">2026-03-09</time>
7735        </article>
7736
7737      </div>
7738    </div>
7739
7740    <div class="rv-controls" aria-label="Slider controls">
7741      <button class="rv-btn" id="rvPrev" type="button" aria-label="Sebelumnya">‹</button>
7742      <button class="rv-btn" id="rvNext" type="button" aria-label="Berikutnya">›</button>
7743      <button class="rv-btn rv-pause" id="rvPause" type="button" aria-label="Pause / Play">⏸</button>
7744    </div>
7745  </div>
7746</section>
7747
7748  </div>
7749</div>
7750
7751
7752<div class="overlay overlay-cart"></div>
7753<div id="CartDrawer" class="drawer drawer--right">
7754  <div class="drawer__header pl-2 pr-2">
7755    <div class="drawer__icon-cart display-table-cell">
7756      <a href="/cart" class="">
7757        <svg class="icon icon-cart" version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" 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.5
775773zM7.74 8.858l11.925 1.696c0.213 0.030 0.372 0.218 0.372 0.44v18.519c0 0.284-0.254 0.495-0.523 0.434l-11.925-2.685c-0.198-0.045-0.339-0.225-0.339-0.434v-17.53c0-0.27 0.231-0.477 0.49-0.44z"></path> <path fill="#fff" d="M23.7 10.046l-3.275 0.146-0.388 0.897v17.656l3.664-2.174v-16.526zM24.346 27.214l-4.526 2.685c-0.287 0.17-0.646-0.043-0.646-0.385v-18.519l0.037-0.181 0.534-1.235c0.067-0.154 0.212-0.256 0.375-0.263l3.991-0.178c0.245-0.011 0.45 0.191 0.45 0.444v17.247c0 0.159-0.082 0.306-0.216 0.385z"></path> <path fill="#000" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M11.336 8.354l-0.257-0.333c-0.243-0.315 0.012-0.774 0.398-0.717l12.51 1.838c0.236 0.035 0.399 0.26 0.366 0.503s-0.252 0.412-0.487 0.377l-11.436-1.68 0.056 0.073c0.209 0.27 0.052 0.672-0.281 0.718l-4.467 0.607c-0.236 0.032-0.452-0.139-0.484-0.383s0.135-0.467 0.371-0.499l3.711-0.504z"></path> <path fill="#fff" d="M17.152 11.344c0.026-0.003 0.053-0.005 0.079-0.005 0.357 0 0.645 0.297 0.645 0.665s-0.288 0.665-0.645 0.665c-0.322 0-0.59-0.245-0.637-0.565-0.383-0.45-0.515-1.321-0.521-2.536-0.003-0.556 0.026-1.149 0.076-1.739 0.028-0.339 0.057-0.603 0.074-0.735 0.195-2.391-2.008-3.379-3.568-1.658-0.64 0.707-1.041 1.855-1.266 3.412-0.092 0.634-0.137 1.111-0.194 2.024 0.107 0.119 0.172 0.278 0.172 0.453 0 0.342-0.251 0.624-0.573 0.661-0.031 0.005-0.064 0.007-0.097 0.005-0.015-0.001-0.029-0.003-0.044-0.005-0.324-0.036-0.576-0.318-0.576-0.661 0-0.218 0.102-0.412 0.259-0.533 0.058-0.924 0.105-1.415 0.201-2.075 0.249-1.719 0.703-3.020 1.489-3.888 2.114-2.335 5.321-0.897 5.054 2.359-0.018 0.141-0.045 0.392-0.072 0.717-0.047 0.566-0.075 1.133-0.073 1.658 0.004 0.839 0.098 1.47 0.216 1.78z"></path> <path fill="#fff" d="M14.43 8.138c-0.008 0.245-0.207 0.438-0.445 0.43s-0.424-0.213-0.417-0.459c0.001-0.026 0.001-0.026 0.002-0.051 0.029-0.909 0.047-1.282 0.102-1.792 0.164-1.528 0.58-2.665 1.434-3.481 2.037-1.949 5.235-0.623 5.066 2.208-0.007 0.119-0.018 0.331-0.029 0.608-0.022 0.539-0.033 1.084-0.029 1.59 0.007 0.797 0.053 1.412 0.139 1.744 0.062 0.237-0.075 0.481-0.305 0.544s-0.466-0.077-0.528-0.314c-0.111-0.427-0.161-1.097-0.168-1.966-0.004-0.523 0.007-1.081 0.029-1.634 0.011-0.284 0.023-0.502 0.030-0.626 0.119-1.995-2.13-2.927-3.619-1.501-0.673 0.644-1.021 1.591-1.164 2.927-0.051 0.479-0.069 0.838-0.097 1.723-0.001 0.026-0.001 0.026-0.002 0.052z"></path> </svg>
7758      </a>
7759    </div>
7760    <div class="drawer__title h4">Keranjang Belanja</div>
7761    <div class="drawer__close js-drawer-close">
7762      <button type="button">
7763        <svg class="icon icon-close" version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="32" height="32" viewBox="0 0 32 32">
7764<title>icon-close</title>
7765<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>
7766</svg>
7767      </button>
7768    </div>
7769  </div>
7770  <div id="CartContainer" class="p-2"></div>
7771</div>
7772
7773<script>
7774      
7775    </script>
7775
7776      
7776<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer></script>
7776
7777      <!-- /snippets/ajax-cart-template.liquid -->
7778
7779  
7779<script id="CartTemplate" type="text/template">
7780  
7781    <form action="/cart" method="post" novalidate class="cart ajaxcart">
7782      <div class="ajaxcart__inner" {{ cart.item_count }}>
7783        {{#items}}
7784        <div class="ajaxcart__product">
7785          <div class="ajaxcart__row" data-line="{{line}}">
7786            <div class="grid">
7787              <div class="grid__item one-quarter">
7788                <a href="http://win4dream.com/" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a>
7789              </div>
7790              <div class="grid__item three-quarters">
7791                <p class="d-block mb-3">
7792                  <a class="h4 d-block mb-2" href="http://win4dream.com/" class="ajaxcart__product-name">{{name}}</a>
7793                  {{#if variation}}
7794                    <span class="ajaxcart__product-meta p">{{variation}}</span>
7795                  {{/if}}
7796                  {{#properties}}
7797                    {{#each this}}
7798                      {{#if this}}
7799                        <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span>
7800                      {{/if}}
7801                    {{/each}}
7802                  {{/properties}}
7803                  
7804                </p>
7805                <div class="grid--full display-table">
7806                  <div class="grid__item display-table-cell one-half">
7807                    <div class="ajaxcart__qty">
7808                      <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}">
7809                        <svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" 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>
7810                        <span class="visually-hidden">Kurangi jumlah barang</span>
7811                      </button>
7812                      <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]*">
7813                      <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}">
7814                        <svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" 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>
7815                        <span class="visually-hidden">Tambahkan jumlah barang</span>
7816                      </button>
7817                    </div>
7818                  </div>
7819                  <div class="grid__item display-table-cell one-half text-right">
7820                    {{#if discountsApplied}}
7821                      <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small>
7822                      <br><span class="h4">{{{linePrice}}}</span>
7823                    {{else}}
7824                      <span class="h4">{{{linePrice}}}</span>
7825                    {{/if}}
7826                    </div>
7827                  </div>
7828                  {{#if discountsApplied}}
7829                    <div class="grid--full display-table">
7830                      <div class="grid__item text-right">
7831                        {{#each discounts}}
7832                          <small class="ajaxcart-item__discount">{{ this.title }}</small><br>
7833                        {{/each}}
7834                      </div>
7835                    </div>
7836                  {{/if}}
7837                  </div>
7838                </div>
7839              </div>
7840            </div>
7841          </div>
7842        </div>
7843        {{/items}}
7844      </div>
7845      <div class="ajaxcart__footer">
7846        <div class="grid--full cart-subtotal py-2">
7847            <p>Subtotal</p>
7848            <h3 class="primary">{{{totalPrice}}}</h3>
7849          {{#if totalCartDiscount}}
7850            <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p>
7851          {{/if}}
7852        </div>
7853        
7854        <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a>
7855        
7856        <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p>
7857      </div>
7858    </form>
7859  
7860  </script>
7860
7861  
7861<script id="AjaxQty" type="text/template">
7862  
7863    <div class="ajaxcart__qty">
7864      <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}">
7865        <svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="24" viewBox="0 0 32 32">
7866            <title>icon-minus</title>
7867            <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>
7868        </svg>
7869        <span class="visually-hidden">Kurangi jumlah barang</span>
7870          </button>
7871              <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*">
7872          <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}">
7873        <svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" 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>
7874        <span class="visually-hidden">Tambahkan jumlah barang</span>
7875      </button>
7876    </div>
7877  
7878  </script>
7878
7879  
7879<script id="JsQty" type="text/template">
7880  
7881    <div class="js-qty mx-auto mt-2">
7882      <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}">
7883        <svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" 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>
7884        <span class="visually-hidden">Kurangi jumlah barang</span>
7885      </button>
7886      <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}">
7887      <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}">
7888        <svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" 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>
7889        <span class="visually-hidden">Tambahkan jumlah barang</span>
7890      </button>
7891    </div>
7892  
7893  </script>
7893
7894
7895<style>
7896  #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button,
7897  #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button,
7898  #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button {display: none;}
7899  #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input,
7900  #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,
7901  #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;opacity: 0.5;}
7902  #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input,
7903  #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,
7904  #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;}
7905</style>
7906      
7906<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51128912329657147331752652452" defer></script>
7906
7907      
7907<script>
7908        jQuery(function($) {
7909          ajaxCart.init({
7910            formSelector: '#AddToCartForm',
7911            cartContainer: '#CartContainer',
7912            addToCartSelector: '#AddToCartXX',
7913            cartCountSelector: '#CartCount, #CartCount2',
7914            cartCostSelector: '#CartCost',
7915            moneyFormat: "Rp {{amount_no_decimals}}"
7916          });
7917          });
7918
7919          jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) {
7920            // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM
7921            timber.RightDrawer.open();
7922          });
7923      </script>
7923
7924    
7925
7926
7927
7928<style>
7929  /** Search AutoComplete **/
7930  .resultsearch .ui-menu-item[data-cat="Collection"],
7931  .resultsearch .ui-menu-item[data-cat="Collection"] {display: none;}
7932  .resultsearch .ui-widget.ui-widget-content {
7933    width: 100%;
7934    top: 48px;
7935    border: none;
7936    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
7937  }
7938  .resultsearch .ui-menu-item {text-align: left;}
7939  .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;}
7940  .ui-state-active {
7941    border: none!important;
7942    background-color: #fafafa!important;
7943    color: #000!important;
7944  }
7945  .ui-menu-item a[data-cat="Collection"] {padding: 5px 12px;}
7946  .ui-menu .ui-menu-item {line-height: normal;}
7947</style>
7948<script>
7949$(window).load(function(){
7950
7951  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;}
7952
7953  $.widget("custom.catcomplete", $.ui.autocomplete, {
7954    _renderMenu: function (ul, items) {
7955      // have search reults split up in categories
7956      var that = this,
7957          currentCategory = "";
7958      $.each(items, function (index, item) {
7959        if (item.category != currentCategory) {
7960          ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>");
7961          currentCategory = item.category;
7962        }
7963        that._renderItemData(ul, item);
7964      });
7965    }
7966  });
7967
7968  // higlight searched for term
7969  $.ui.autocomplete.prototype._renderItem = function( ul, item ) {
7970    var term = this.element.val(),
7971        html = item.label.replace( term, "<b>$&</b>" );
7972    return $( "<li>" )
7973    .append(format(item))
7974    .appendTo( ul );
7975  };
7976
7977
7978  var data = [
7979      { 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
7979llection", 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: " " }
7979,{ 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: " " }
7979,{ 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: " " }
7979,{ 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
7979dal", 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-
7979hampers", 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
7979o-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: " " }
7979,{ 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: " " }
7979,{ 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: " " }
7979,{ 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: " " }
7979,{ 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: " " }
7979,{ 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: " " }
7979,{ 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: " " }
7979,{ 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: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya.", category: "Collection", url: "/collections/standing-flower", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Bali", category: "Collection", url: "/collections/standing-flower-bali", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Bandung", category: "Collection", url: "/collections/standing-flower-bandung", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Congratulations", category: "Collection", url: "/collections/standing-flower-congratulations", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Demak", category: "Collection", url: "/collections/standing-flower-demak", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Jepara", category: "Collection", url: "/collections/standing-flower-jepara", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Semarang", category: "Collection", url: "/collections/standing-flower-semarang", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Sidoarjo", category: "Collection", url: "/collections/standing-flower-sidoarjo", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. Surabaya", category: "Collection", url: "/collections/standing-flower-surabaya", images: " ", price: " " },{ label: "WIN4D adalah salah satu website gaming terpopuler di Indonesia yang memberikan pengalaman bermain online dengan dukungan kredibel, akses cepat, dan layanan berkualitas. Nikmati berbagai fitur menarik, sistem yang mudah digunakan, serta pengalaman gaming modern bersama komunitas WIN4D untuk mendapatkan kenyamanan terbaik setiap harinya. 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: 
7979"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: " " },{ 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: " " }
7979,{ 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: " " },{ 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
7979dal", 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: " " },
7980      { 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" }
7980,{ 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" }
7980,{ 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" }
7981  ];
7982
7983             
7984        $( ".header-input-search" ).catcomplete({
7985         appendTo: ".searchResult",source: function(request, response) {
7986            var results = $.ui.autocomplete.filter(data, request.term);
7987            var predicate = function () {
7988                var counter = { Collection: 0, Produk: 0 };
7989            var fn = function(item) {counter[item.category] += 1;return (counter[item.category] <= 5);}
7990            return fn
7991            }();
7992            response(results.filter(predicate));
7993          },
7994          minLength:1,
7995           //results are clickable
7996          select: function( event, ui ) {window.location = ui.item.url;}
7997});
7998$( ".header-input-search2" ).catcomplete({
7999        appendTo: ".searchResult2",
8000                   source: function(request, response) {
8001                    var results = $.ui.autocomplete.filter(data, request.term);
8002                    var predicate = function () {
8003                        var counter = { Collection: 0, Produk: 0 };
8004              var fn = function(item) {
8005              counter[item.category] += 1;
8006  return (counter[item.category] <= 5);
8007}
8008               return fn
8009               }();
8010response(results.filter(predicate));
8011},
8012  minLength:1,
8013        //results are clickable
8014        select: function( event, ui ) {
8015          window.location = ui.item.url;
8016        }
8017});
8018});
8019</script>
8019
8020
8021    
8021<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer></script>
vendor: 2 bytes, line 8021
8021
8022<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer></script>
8022
8023
8024<script>
8025  ( function() {
8026    var youtube = document.querySelectorAll( ".youtube" );
8027    for (var i = 0; i < youtube.length; i++) {
8028      var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault_1x.jpg";
8029      var datasource = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg";
8030      var image = new Image();
8031      image.src = source;
8032      image.setAttribute("data-src", datasource);
8033      image.classList.add("swiper-lazy");
8034      image.addEventListener( "load", function() {
8035        youtube[ i ].appendChild( image );
8036      }( i ) );
8037      youtube[i].addEventListener( "click", function() {
8038        var iframe = document.createElement( "iframe" );
8039        iframe.setAttribute( "width", "480" );
8040        iframe.setAttribute( "height", "480" );
8041        iframe.setAttribute( "frameborder", "0" );
8042        iframe.setAttribute( "allowfullscreen", "" );
8043        iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" );
8044        this.innerHTML = "";
8045        this.appendChild( iframe );
8046      } );
8047    };
8048
8049  } )();
8050
8051  /* Lazy Load */
8052  const mainLazyLoad = new LazyLoad({threshold:400});
8053  $(document).ready(function(){
8054
8055    $("selectxxx").addClass("needsclick");
8056    FastClick.attach(document.body);
8057    
8058    var $customSelects = $('.select-search');
8059    $customSelects.select2({
8060      templateResult: function(result, container) {
8061        if (!result.id) {
8062          return result.text;
8063        }
8064        container.className += ' needsclick';
8065        return result.text;
8066      }
8067    });
8068    $customSelects.each(function(index, el){$(el).data('select2').$container.find('*').addClass('needsclick');});
8069    $(document).on('select2:open', () => {
8070      document.querySelector('.select2-search__field').focus();
8071    });
8072    
8073
8074    $(".overlay").click(function(){
8075      $(".js-drawer-close").click();
8076    });
8077    $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function(){
8078      $("html").toggleClass("nav_open");
8079    });
8080    
8081    $('.swatch-element label').on('click', function(){
8082      var srcImg = $(this).data('src');
8083      $('#thumb-image-product .product-single__thumbnail').each(function(){
8084        if ($(this).attr("href") == srcImg) {
8085          $(this).trigger('click');
8086        }
8087      });
8088    });
8089    var defaultValue = $(".swatch input:checked").val()
8090    
8091    $('#purchaseProduct .swatch [type=radio]').change(function() {
8092      var optionIndex = $(this).closest('.swatch').attr('data-option-index');
8093      var optionValue = $(this).val();
8094      console.log(optionIndex, optionValue)
8095      var value = parseInt(optionValue.split(' ')[0])
8096      $(this)
8097      .closest('#purchaseProduct')
8098      .find('.single-option-selector')
8099      .eq(optionIndex)
8100      .val(optionValue)
8101      .trigger('change');
8102      
8103    });
8104    
8105  });
8106  $(document).ready(function(){
8107    $(".nav-search a").click(function(e){
8108      e.preventDefault();
8109      $(".icon-navsearch").toggle();
8110      $(".icon-navclose").toggle();
8111      $(".site-nav__item > .site-nav__link").toggle();
8112      $(".open-search").toggle();
8113      $(".open-search input").focus();
8114    });
8115    $(".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'>");
8116    if ($(window).width() < 768) {
8117      $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>");
8118      $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>");
8119      $(".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'>");
8120    } else {
8121      $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>");
8122      $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>");
8123      $(".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'>");
8124    }
8125    $(".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'>");
8126    $(".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'>");
8127  });
8128</script>
8128
8129
8130
8131    
8132    
8133    
8134    
8135
8136    
8136<script type="text/javascript">
8137      var wishlistpage = 0;
8138       
8139       var quickShop_money_format="<span class='money'>"+"Rp {{amount_no_decimals}}"+"</span>";
8140    </script>
8140
8141    
8142      <!-- Remove duplicate wishlist.js reference -->
8143      <style>
8144  .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)}}
8145</style>
8146
8147<div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog">
8148  <div class="modal-dialog" role="document">
8149    <div class="modal-content">        
8150      <div class="modal-body">Your Wishlist is empty!</div>
8151      <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>          
8152    </div>
8153  </div>
8154</div> 
8155
8156<div class="wishlist-model">
8157  <div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true">
8158    <div class="modal-dialog white-modal">
8159      <div class="modal-content">
8160        <div class="modal-header">
8161          <button type="button" class="close" data-dismiss="modal" aria-label="Close">
8162            <svg class="icon icon-close" version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="32" height="32" viewBox="0 0 32 32">
8163<title>icon-close</title>
8164<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>
8165</svg>
8166          </button>
8167        </div>
8168        <div class="modal-body">
8169          <div class="wishlist-left">
8170            <div class="wishlist-note">
8171              <span class="cirle"><svg version="1.1" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="32" height="32" viewBox="0 0 32 32">
8172<title>icon-check</title>
8173<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>
8174</svg></span>
8175              Product added to <a href="/pages/wish-list">Wishlist</a>
8176            </div>
8177            <div class="wishlist-product">
8178              <div class="product-left">
8179                <div class="wishlist-image"></div>
8180              </div>
8181              <div class="product-right">
8182                <div class="wishlist-name"></div>
8183                <div class="wishlist-price"></div>
8184              </div>
8185            </div>
8186          </div>
8187          <div class="wishlist-right">
8188            <div class="wishlist-cart">
8189              <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data">                  
8190                <div class="others-bottom">
8191                  <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a>
8192                  <button type="submit" name="add" id="AddToCart" class="btn btn-cta">
8193                    <span id="AddToCartText" class="">Beli Sekarang</span>
8194                  </button>
8195                </div>
8196                <div id="wishlist-variants-container" class="variants-wrapper"></div> 
8197                <div class="quantity-content">
8198                  <label>QTY</label>
8199                  <input type="number" size="5" class="" name="quantity" value="1" />
8200                </div>
8201              </form> 
8202            </div>
8203          </div>
8204        </div>
8205      </div>
8206    </div>
8207  </div>
8208</div>
8209
8210    
8211    <style>
8212       .stamped-badge[data-rating="0.0"]{display: none !Important;}
8213       
8214        div[data-load-type="continue"] ul.stamped-pagination li.next a, div[data-widget-load-type="continue"] ul.stamped-pagination li.next a {
8215          border-radius: 0px;
8216      }
8217          .stamped-review-body {
8218          padding-left: 0px !important;
8219      }
8220          #product-reviews .stamped-header:after {
8221            display:none !Important;
8222          }
8223      #stamped-main-widget .stamped-container, .stamped-badge-caption,#stamped-reviews-widget {
8224          font-family:inherit !important;
8225      }
8226    </style>
8227
8228    
8229
8230<div id='stamped-rewards-init' class='stamped-rewards-init'
8231  data-key-public=''
8232
8233></div>
8234
8235    
8235<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer></script>
8235
8236    <!-- Remove duplicate jQuery reference and load wishlist script properly -->
8237    
8237<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer></script>
8237
8238
8239    
8239<script>
8240      function myInit(){ StampedFn.init({ apiKey: 'pubkey-hCS8DHE9QbBHhHN89WXFkuJ0Y3422D', sId: '23462' }); }
8241    </script>
8241
8242    
8242<script async onload="myInit()" type="text/javascript" src="https://cdn1.stamped.io/files/widget.min.js"></script>
8242<style>
8243  .jss59 {
8244    background-color: rgba(0, 0, 0, 0.6);
8245  }
8246  .MuiBackdrop-root {
8247    top: 0;
8248    left: 0;
8249    right: 0;
8250    bottom: 0;
8251    display: flex;
8252    z-index: -1;
8253    position: fixed;
8254    align-items: center;
8255    justify-content: center;
8256    background-color: rgba(0, 0, 0, 0.5);
8257    -webkit-tap-highlight-color: transparent;
8258  }
8259  .MuiDialog-scrollPaper {
8260    display: flex;
8261    align-items: center;
8262    justify-content: center;
8263  }
8264  .MuiDialog-container {
8265    height: 100%;
8266    outline: 0;
8267  }
8268  .MuiPaper-elevation24 {
8269    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);
8270  }
8271  .MuiDialog-paper {
8272    margin: 32px;
8273    position: relative;
8274    overflow-y: auto;
8275  }
8276  .MuiDialog-paperScrollPaper {
8277    display: flex;
8278    max-height: calc(100% - 64px);
8279    flex-direction: column;
8280  }
8281  .MuiDialog-paperWidthSm {
8282    max-width: 600px;
8283  }
8284  #location-lock-dialog {
8285    top: 20%;
8286    left: 0;
8287    right: 0;
8288    width: 30%;
8289    margin: 0px auto;
8290    display: block;
8291    padding: 30px;
8292    z-index: 99999;
8293    position: fixed;
8294    font-size: 14px;
8295    background: rgb(0, 0, 0);
8296    box-shadow: rgba(11, 11, 12, 0.2) 2px 4px 5px 0px;
8297    text-align: center;
8298    font-family: Roboto, Arial, sans-serif;
8299    line-height: 1;
8300    border-radius: 8px;
8301    -webkit-font-smoothing: subpixel-antialiased;
8302  }
8303  .MuiButtonBase-root {
8304    color: inherit;
8305    border: 0;
8306    cursor: pointer;
8307    margin: 0;
8308    display: inline-flex;
8309    outline: 0;
8310    padding: 0;
8311    position: relative;
8312    align-items: center;
8313    user-select: none;
8314    border-radius: 0;
8315    vertical-align: middle;
8316    -moz-appearance: none;
8317    justify-content: center;
8318    text-decoration: none;
8319    background-color: transparent;
8320    -webkit-appearance: none;
8321    -webkit-tap-highlight-color: transparent;
8322  }
8323  .MuiIconButton-root {
8324    flex: 0 0 auto;
8325    color: rgba(0, 0, 0, 0.54);
8326    padding: 12px;
8327    overflow: visible;
8328    font-size: 1.5rem;
8329    text-align: center;
8330    transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8331    border-radius: 50%;
8332  }
8333  .MuiIconButton-label {
8334    width: 100%;
8335    display: flex;
8336    align-items: inherit;
8337    justify-content: inherit;
8338  }
8339  .MuiSvgIcon-root {
8340    fill: currentColor;
8341    width: 1em;
8342    height: 1em;
8343    display: inline-block;
8344    font-size: 1.5rem;
8345    transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8346    flex-shrink: 0;
8347    user-select: none;
8348  }
8349  .MuiTouchRipple-root {
8350    top: 0;
8351    left: 0;
8352    right: 0;
8353    bottom: 0;
8354    z-index: 0;
8355    overflow: hidden;
8356    position: absolute;
8357    border-radius: inherit;
8358    pointer-events: none;
8359  }
8360  .jss36 {
8361    color: #222222;
8362    font-size: 24px;
8363    font-family: Roboto, Arial, sans-serif;
8364    font-weight: 500;
8365  }
8366  .jss37 {
8367    color: #555555;
8368    padding: 10px 0px 0px;
8369    font-size: 14px;
8370  }
8371  .MuiFormGroup-root {
8372    display: flex;
8373    flex-wrap: wrap;
8374    flex-direction: column;
8375  }
8376  .MuiFormGroup-row {
8377    flex-direction: row;
8378  }
8379  .jss63 {
8380    width: 85%;
8381    margin: 15px auto;
8382    display: flex;
8383    padding: 11px 0px 0px;
8384    justify-content: space-evenly;
8385  }
8386  .MuiFormControlLabel-root {
8387    cursor: pointer;
8388    display: inline-flex;
8389    align-items: center;
8390    margin-left: -11px;
8391    margin-right: 16px;
8392    vertical-align: middle;
8393    -webkit-tap-highlight-color: transparent;
8394  }
8395  .jss70 {
8396    margin: 0;
8397  }
8398  .MuiButtonBase-root {
8399    color: inherit;
8400    border: 0;
8401    cursor: pointer;
8402    margin: 0;
8403    display: inline-flex;
8404    outline: 0;
8405    padding: 0;
8406    position: relative;
8407    align-items: center;
8408    user-select: none;
8409    border-radius: 0;
8410    vertical-align: middle;
8411    -moz-appearance: none;
8412    justify-content: center;
8413    text-decoration: none;
8414    background-color: transparent;
8415    -webkit-appearance: none;
8416    -webkit-tap-highlight-color: transparent;
8417  }
8418  .MuiIconButton-root {
8419    flex: 0 0 auto;
8420    color: rgba(0, 0, 0, 0.54);
8421    padding: 12px;
8422    overflow: visible;
8423    font-size: 1.5rem;
8424    text-align: center;
8425    transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8426    border-radius: 50%;
8427  }
8428  .MuiIconButton-colorSecondary {
8429    color: #f50057;
8430  }
8431  .jss71 {
8432    padding: 9px;
8433  }
8434  .MuiRadio-root {
8435    color: rgba(0, 0, 0, 0.54);
8436  }
8437  .jss64 {
8438    padding: 2px;
8439  }
8440  .MuiRadio-colorSecondary.Mui-checked {
8441    color: #f50057;
8442  }
8443  .MuiIconButton-label {
8444    width: 100%;
8445    display: flex;
8446    align-items: inherit;
8447    justify-content: inherit;
8448  }
8449  .MuiTypography-root {
8450    margin: 0;
8451  }
8452  .MuiTypography-body1 {
8453    font-size: 18px;
8454    font-family: Roboto,sans-serif;
8455    font-weight: 400;
8456    line-height: 1.5;
8457  }
8458  .location-popup_area-block__sp9Ws {
8459    display: -moz-box;
8460    display: flex;
8461    -moz-box-orient: vertical;
8462    -moz-box-direction: normal;
8463    flex-direction: column;
8464    -moz-box-pack: center;
8465    justify-content: center;
8466    position: relative;
8467    margin: 10px 10% 0;
8468  }
8469  .location-popup_pin-search-box__3l5mJ {
8470    width: 100%;
8471    display: -moz-box;
8472    display: flex;
8473    -moz-box-align: center;
8474    align-items: center;
8475  }
8476  .location-popup_place-icon-city__1XAX5, .location-popup_place-icon__jSG0Q {
8477    position: absolute;
8478    z-index: 999;
8479  }
8480  .location-popup_place-icon__jSG0Q {
8481    color: #ffffff;
8482    padding-left: 8px;
8483  }
8484  .location-popup_place-icon__jSG0Q svg {
8485    width: 18px;
8486    height: 18px;
8487  }
8488  .location-popup_cancel-icon__FHujU {
8489    color: #fff;
8490    right: 10px;
8491    width: 16px;
8492    cursor: pointer;
8493    height: 16px;
8494    display: none;
8495    padding: 5px;
8496    position: absolute;
8497    background: #999;
8498    text-align: center;
8499    border-radius: 50%;
8500  }
8501  .location-popup_pin-search-box__3l5mJ>div>select {
8502/*     -webkit-box-shadow: 0 0 10px #ffffff;
8503    box-shadow: 0 0 10px #ffffff; */
8504    text-transform: capitalize;
8505    border: 1px solid #ffffff;
8506    color: #ffffff;
8507    width: 100%;
8508    margin: 0;
8509    display: -moz-box;
8510    display: flex;
8511    padding: 0 30px;
8512    -webkit-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8513    -moz-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8514    animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8515    font-size: 16px;
8516    border-radius: 4px;
8517    height: 44px;
8518    moz-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;
8519    webkit-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;
8520  }
8521  .MuiButtonBase-root {
8522    color: inherit;
8523    border: 0;
8524    cursor: pointer;
8525    margin: 0;
8526    display: inline-flex;
8527    outline: 0;
8528    padding: 0;
8529    position: relative;
8530    align-items: center;
8531    user-select: none;
8532    border-radius: 0;
8533    vertical-align: middle;
8534    -moz-appearance: none;
8535    justify-content: center;
8536    text-decoration: none;
8537    background-color: transparent;
8538    -webkit-appearance: none;
8539    -webkit-tap-highlight-color: transparent;
8540  }
8541  .MuiButton-root {
8542    color: rgba(0, 0, 0, 0.87);
8543    padding: 6px 16px;
8544    font-size: 0.875rem;
8545    min-width: 64px;
8546    box-sizing: border-box;
8547    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;
8548    font-family: Roboto,sans-serif;
8549    font-weight: 500;
8550    line-height: 1.75;
8551    border-radius: 4px;
8552    text-transform: uppercase;
8553  }
8554  .MuiButton-contained {
8555    color: rgba(0, 0, 0, 0.87);
8556    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);
8557    background-color: #e0e0e0;
8558  }
8559  .MuiButtonBase-root.Mui-disabled {
8560    cursor: default;
8561    pointer-events: none;
8562  }
8563  .MuiButton-label {
8564    width: 100%;
8565    display: inherit;
8566    align-items: inherit;
8567    justify-content: inherit;
8568  }
8569  .cartButton_login_content__2j1f7 {
8570    display: -moz-box;
8571    display: flex;
8572    text-align: center;
8573    z-index: 9;
8574    font-size: 18px;
8575    font-weight: 500;
8576    color: #fff;
8577  }
8578  
8579  .jss35 {
8580    top: 5px;
8581    right: 5px;
8582    padding: 4px;
8583    position: absolute;
8584    border-radius: 50%;
8585  }
8586  .jss67 {
8587    cursor: pointer;
8588    font-size: 15px;
8589    line-height: 1.3;
8590    padding-left: 5px;
8591  }
8592  .jss69 {
8593    color: #222222;
8594  }
8595  .jss80 {
8596    color: #fff;
8597    width: 100%;
8598    height: 52px;
8599    padding: 11px 16px;
8600    font-size: 18px;
8601    min-width: 88px;
8602    min-height: 36px;
8603    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;
8604    font-weight: 500;
8605    line-weight: 1em;
8606    border-radius: 4px;
8607    text-transform: uppercase;
8608    background-color: #E87325;
8609  }
8610  @media (min-width: 991px){
8611    .cartButton_login_content__2j1f7 {
8612        font-weight: 500;
8613    }
8614  }
8615
8616  @media (max-width: 992px) {
8617    #location-lock-dialog {
8618      width: 100%;
8619      top: auto;
8620      bottom: 0;
8621      padding-left: 0;
8622      padding-right: 0;
8623    }
8624    .MuiFormGroup-row {
8625      display: block
8626    }
8627    .MuiIconButton-label input {
8628      margin: 0;
8629    }
8630  }
8631</style>
8632<div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;">
8633  <div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div>
8634  <div tabindex="0" data-test="sentinelStart"></div>
8635  <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;">
8636    <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog">
8637      <div class="jss31 undefined" id="location-lock-dialog">
8638        <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close">
8639          <span class="MuiIconButton-label">
8640            <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true">
8641              <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>
8642            </svg>
8643          </span>
8644          <span class="MuiTouchRipple-root"></span>
8645        </button>
8646        <div>
8647          <div class="jss36">Select Delivery Location</div>
8648          <div class="jss37">Select a delivery location to see product availability</div>
8649        </div>
8650        <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup">
8651          <label for="jabodetabek" class="MuiFormControlLabel-root jss45">
8652            <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false">
8653              <span class="MuiIconButton-label">
8654                <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location">
8655                <span class="jss41"></span>
8656              </span>
8657              <span class="MuiTouchRipple-root"></span>
8658            </span>
8659            <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1">
8660              <span class="jss67 jss69">Jabodetabek</span>
8661            </span>
8662          </label>
8663          <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45">
8664            <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false">
8665              <span class="MuiIconButton-label">
8666                <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location">
8667                <span class="jss40"></span>
8668              </span>
8669              <span class="MuiTouchRipple-root"></span>
8670            </span>
8671            <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1">
8672              <span class="jss67 jss68">Outside Jabodetabek</span>
8673            </span>
8674          </label>
8675        </div>
8676        <div>
8677          <div class="MuiGrid-root location-popup_area-block__sp9Ws">
8678            <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false">
8679              <div class="MuiGrid-root location-popup_place-icon__jSG0Q">
8680                <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>
8681              </div>
8682              <div class="MuiGrid-root location-popup_cancel-icon__FHujU false">
8683                <i class="material-icons location-popup_clear-pin__s1dRc">close</i>
8684              </div>
8685              <div style="width: 100%;">
8686                <select id="choose-location" class="form-control">
8687                  <option value="">Choose Location</option>
8688                  <option value="jakarta">Jakarta</option>
8689                  <option value="bogor">Bogor</option>
8690                  <option value="depok">Depok</option>
8691                  <option value="tangerang">Tangerang</option>
8692                  <option value="bekasi">Bekasi</option>
8693                </select>
8694              </div>
8695            </div>
8696          </div>
8697        </div>
8698        <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="">
8699          <span class="MuiButton-label">
8700            <span class=""></span>
8701            <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span>
8702          </span>
8703        </button>
8704      </div>
8705    </div>
8706  </div>
8707  <div tabindex="0" data-test="sentinelEnd"></div>
8708</div>
8709
8710<script>
8711  const jabodetabek = [
8712    {
8713      "code": "jakarta",
8714      "city": "jakarta",
8715      "zip": []
8716    },
8717    {
8718      "code": "bogor",
8719      "city": "bogor",
8720      "zip": []
8721    },
8722    {
8723      "code": "depok",
8724      "city": "depok",
8725      "zip": []
8726    },
8727    {
8728      "code": "tangerang",
8729      "city": "tangerang",
8730      "zip": []
8731    },
8732    {
8733      "code": "bekasi",
8734      "city": "bekasi",
8735      "zip": []
8736    }
8737  ]
8738  let cityNonJabodetabek = [
8739    
8740    
8741    
8742    
8743    
8744    
8745    
8746    
8747    
8748    
8749    
8750    
8751    
8752    
8753    
8754    
8755    
8756    
8757    
8758    
8759    
8760    
8761    
8762    
8763    
8764    
8765    
8766    
8767    
8768    
8769    
8770    
8771    
8772    
8773    
8774    
8775    
8776    
8777    
8778    
8779    
8780    
8781    
8782    
8783    
8784    
8785    
8786    
8787    
8788    
8789    
8790    
8791    
8792    
8793    
8794    
8795    
8796    
8797    
8798    
8799    
8800    
8801    
8802    
8803    
8804    
8805    
8806    
8807    
8808    
8809    
8810    
8811    
8812    
8813    
8814    
8815    
8816    
8817    
8818    
8819    
8820    
8821    
8822    
8823    
8824    
8825    
8826    
8827    
8828    
8829    
8830    
8831    
8832    
8833    
8834    
8835    
8836    
8837    
8838    
8839    
8840    
8841    
8842    
8843    
8844    
8845    
8846    
8847    
8848    
8849    
8850    
8851    
8852    
8853    
8854    
8855    
8856    
8857    
8858    
8859    
8860    
8861    
8862    
8863    
8864    
8865    
8866    
8867    
8868    
8869    
8870    
8871    
8872    
8873    
8874    
8875    
8876    
8877    
8878    
8879    
8880    
8881    
8882    
8883    
8884    
8885    
8886    
8887    
8888    
8889    
8890    
8891    
8892    
8893    
8894    
8895    
8896    
8897    
8898    
8899    
8900    
8901    
8902    
8903    
8904    
8905    
8906    
8907    
8908    
8909    
8910    
8911    
8912    
8913    
8914    
8915    
8916    
8917    
8918    
8919    
8920    
8921    
8922    
8923    
8924    
8925    
8926    
8927    
8928    
8929    
8930    
8931    
8932    
8933    
8934    
8935    
8936    
8937    
8938    
8939    
8940    
8941    
8942    
8943    
8944    
8945    
8946    
8947    
8948    
8949    
8950    
8951    
8952    
8953    
8954    
8955    
8956    
8957    
8958    
8959    
8960    
8961    
8962    
8963    
8964    
8965    
8966    
8967    
8968    
8969    
8970    
8971    
8972    
8973    
8974    
8975    
8976    
8977    
8978    
8979    
8980    
8981    
8982    
8983    
8984    
8985    
8986    
8987    
8988    
8989    
8990    
8991    
8992    
8993    
8994    
8995    
8996    
8997    
8998    
8999    
9000    
9001    
9002    
9003    
9004    
9005    
9006    
9007    
9008    
9009    
9010    
9011    
9012    
9013    
9014    
9015    
9016    
9017    
9018    
9019    
9020    
9021    
9022    
9023    
9024    
9025    
9026    
9027    
9028    
9029    
9030    
9031    
9032    
9033    
9034    
9035    
9036    
9037    
9038    
9039    
9040    
9041    
9042    
9043    
9044    
9045    
9046    
9047    
9048    
9049    
9050    
9051    
9052    
9053    
9054    
9055    
9056    
9057    
9058    
9059    
9060    
9061    
9062    
9063    
9064    
9065    
9066    
9067    
9068    
9069    
9070    
9071    
9072    
9073    
9074    
9075    
9076    
9077    
9078    
9079    
9080    
9081    
9082    
9083    
9084    
9085    
9086    
9087    
9088    
9089    
9090    
9091    
9092    
9093    
9094    
9095    
9096    
9097    
9098    
9099    
9100    
9101    
9102    
9103    
9104    
9105    
9106    
9107    
9108    
9109    
9110    
9111    
9112    
9113    
9114    
9115    
9116    
9117    
9118    
9119    
9120    
9121    
9122    
9123    
9124    
9125    
9126    
9127    
9128    
9129    
9130    
9131    
9132    
9133    
9134    
9135    
9136    
9137    
9138    
9139    
9140    
9141    
9142    
9143    
9144    
9145    
9146    
9147    
9148    
9149    
9150    
9151    
9152    
9153    
9154    
9155    
9156    
9157    
9158    
9159    
9160    
9161    
9162    
9163    
9164    
9165    
9166    
9167    
9168    
9169    
9170    
9171    
9172    
9173    
9174    
9175    
9176    
9177    
9178    
9179    
9180    
9181    
9182    
9183    
9184    
9185    
9186    
9187    
9188    
9189    
9190    
9191    
9192    
9193    
9194    
9195    
9196    
9197    
9198    
9199    
9200    
9201    
9202    
9203    
9204    
9205    
9206    
9207    
9208    
9209    
9210    
9211    
9212    
9213    
9214    
9215    
9216    
9217    
9218    
9219    
9220    
9221    
9222    
9223    
9224    
9225    
9226    
9227    
9228    
9229    
9230    
9231    
9232    
9233    
9234    
9235    
9236    
9237    
9238    
9239    
9240    
9241    
9242    
9243    
9244    
9245    
9246    
9247    
9248    
9249    
9250    
9251    
9252    
9253    
9254    
9255    
9256    
9257    
9258    
9259    
9260    
9261    
9262    
9263    
9264    
9265    
9266    
9267    
9268    
9269    
9270    
9271    
9272    
9273    
9274    
9275    
9276    
9277    
9278    
9279    
9280    
9281    
9282    
9283    
9284    
9285    
9286    
9287    
9288    
9289    
9290    
9291    
9292    
9293    
9294    
9295    
9296    
9297    
9298    
9299    
9300    
9301    
9302    
9303    
9304    
9305    
9306    
9307    
9308    
9309    
9310    
9311    
9312    
9313    
9314    
9315    
9316    
9317    
9318    
9319    
9320    
9321    
9322    
9323    
9324    
9325    
9326    
9327    
9328    
9329    
9330    
9331    
9332    
9333    
9334    
9335    
9336    
9337    
9338    
9339    
9340    
9341    
9342    
9343    
9344    
9345    
9346    
9347    
9348    
9349    
9350    
9351    
9352    
9353    
9354    
9355    
9356    
9357    
9358    
9359    
9360    
9361    
9362    
9363    
9364    
9365    
9366    
9367    
9368    
9369    
9370    
9371    
9372    
9373    
9374    
9375    
9376    
9377    
9378    
9379    
9380    
9381    
9382    
9383    
9384    
9385    
9386    
9387    
9388    
9389    
9390    
9391    
9392    
9393    
9394    
9395    
9396    
9397    
9398    
9399    
9400    
9401    
9402    
9403    
9404    
9405    
9406    
9407    
9408    
9409    
9410    
9411    
9412    
9413    
9414    
9415    
9416    
9417    
9418    
9419    
9420    
9421    
9422    
9423    
9424    
9425    
9426    
9427    
9428    
9429    
9430    
9431    
9432    
9433    
9434    
9435    
9436    
9437    
9438    
9439    
9440    
9441    
9442    
9443    
9444    
9445    
9446    
9447    
9448    
9449    
9450    
9451    
9452    
9453    
9454    
9455    
9456    
9457    
9458    
9459    
9460    
9461    
9462    
9463    
9464    
9465    
9466    
9467    
9468    
9469    
9470    
9471    
9472    
9473    
9474    
9475    
9476    
9477    
9478    
9479    
9480    
9481    
9482    
9483    
9484    
9485    
9486    
9487    
9488    
9489    
9490    
9491    
9492    
9493    
9494    
9495    
9496    
9497    
9498    
9499    
9500    
9501    
9502    
9503    
9504    
9505    
9506    
9507    
9508    
9509    
9510    
9511    
9512    
9513    
9514    
9515    
9516    
9517    
9518    
9519    
9520    
9521    
9522    
9523    
9524    
9525    
9526    
9527    
9528    
9529    
9530    
9531    
9532    
9533    
9534    
9535    
9536    
9537    
9538    
9539    
9540    
9541    
9542    
9543    
9544    
9545    
9546    
9547    
9548    
9549    
9550    
9551    
9552    
9553    
9554    
9555    
9556    
9557    
9558    
9559    
9560    
9561    
9562    
9563    
9564    
9565    
9566    
9567    
9568    
9569    
9570    
9571    
9572    
9573    
9574    
9575    
9576    
9577    
9578    
9579    
9580    
9581    
9582    
9583    
9584    
9585    
9586    
9587    
9588    
9589    
9590    
9591    
9592    
9593    
9594    
9595    
9596    
9597    
9598    
9599    
9600    
9601    
9602    
9603    
9604    
9605    
9606    
9607    
9608    
9609    
9610    
9611    
9612    
9613    
9614    
9615    
9616    
9617    
9618    
9619    
9620    
9621    
9622    
9623    
9624    
9625    
9626    
9627    
9628    
9629    
9630    
9631    
9632    
9633    
9634    
9635    
9636    
9637    
9638    
9639    
9640    
9641    
9642    
9643    
9644    
9645    
9646    
9647    
9648    
9649    
9650    
9651    
9652    
9653    
9654    
9655    
9656    
9657    
9658    
9659    
9660    
9661    
9662    
9663    
9664    
9665    
9666    
9667    
9668    
9669    
9670    
9671    
9672    
9673    
9674    
9675    
9676    
9677    
9678    
9679    
9680    
9681    
9682    
9683    
9684    
9685    
9686    
9687    
9688    
9689    
9690    
9691    
9692    
9693    
9694    
9695    
9696    
9697    
9698    
9699    
9700    
9701    
9702    
9703    
9704    
9705    
9706    
9707    
9708    
9709    
9710    
9711    
9712    
9713    
9714    
9715    
9716    
9717    
9718    
9719    
9720    
9721    
9722    
9723    
9724    
9725    
9726    
9727    
9728    
9729    
9730    
9731    
9732    
9733    
9734    
9735    
9736    
9737    
9738    
9739    
9740    
9741    
9742    
9743    
9744    
9745    
9746    
9747    
9748    
9749    
9750    
9751    
9752    
9753    
9754    
9755    
9756    
9757    
9758    
9759    
9760    
9761    
9762    
9763    
9764    
9765    
9766    
9767    
9768    
9769    
9770    
9771    
9772    
9773    
9774    
9775    
9776    
9777    
9778    
9779    
9780    
9781    
9782    
9783    
9784    
9785    
9786    
9787    
9788    
9789    
9790    
9791    
9792    
9793    
9794    
9795    
9796    
9797    
9798    
9799    
9800    
9801    
9802    
9803    
9804    
9805    
9806    
9807    
9808    
9809    
9810    
9811    
9812    
9813    
9814    
9815    
9816    
9817    
9818    
9819    
9820    
9821    
9822    
9823    
9824    
9825    
9826    
9827    
9828    
9829    
9830    
9831    
9832    
9833    
9834    
9835    
9836    
9837    
9838    
9839    
9840    
9841    
9842    
9843    
9844    
9845    
9846    
9847    
9848    
9849    
9850    
9851    
9852    
9853    
9854    
9855    
9856    
9857    
9858    
9859    
9860    
9861    
9862    
9863    
9864    
9865    
9866    
9867    
9868    
9869    
9870    
9871    
9872    
9873    
9874    
9875    
9876    
9877    
9878    
9879    
9880    
9881    
9882    
9883    
9884    
9885    
9886    
9887    
9888    
9889    
9890    
9891    
9892    
9893    
9894    
9895    
9896    
9897    
9898    
9899    
9900    
9901    
9902    
9903    
9904    
9905    
9906    
9907    
9908    
9909    
9910    
9911    
9912    "pengiriman_aceh",
9913    
9914    
9915    
9916    
9917    
9918    "pengiriman_ambon",
9919    
9920    
9921    
9922    
9923    
9924    "pengiriman_atambua",
9925    
9926    
9927    
9928    
9929    
9930    "pengiriman_badung",
9931    
9932    
9933    
9934    
9935    
9936    "pengiriman_bali",
9937    
9938    
9939    
9940    
9941    
9942    "pengiriman_balikpapan",
9943    
9944    
9945    
9946    
9947    
9948    "pengiriman_bandar lampung",
9949    
9950    
9951    
9952    
9953    
9954    "pengiriman_bandung",
9955    
9956    
9957    
9958    
9959    
9960    "pengiriman_bandung barat",
9961    
9962    
9963    
9964    
9965    
9966    "pengiriman_banjarmasin",
9967    
9968    
9969    
9970    
9971    
9972    "pengiriman_banyumas",
9973    
9974    
9975    
9976    
9977    
9978    "pengiriman_banyuwangi",
9979    
9980    
9981    
9982    
9983    
9984    "pengiriman_batam",
9985    
9986    
9987    
9988    
9989    
9990    
9991    
9992    
9993    
9994    "pengiriman_biak",
9995    
9996    
9997    
9998    
9999    
10000    "pengiriman_binjai",
10001    
10002    
10003    
10004    
10005    
10006    "pengiriman_blitar",
10007    
10008    
10009    
10010    
10011    
10012    "pengiriman_blora",
10013    
10014    
10015    
10016    
10017    
10018    
10019    
10020    
10021    
10022    "pengiriman_bojonegoro",
10023    
10024    
10025    
10026    
10027    
10028    "pengiriman_boyolali",
10029    
10030    
10031    
10032    
10033    
10034    "pengiriman_bukittinggi",
10035    
10036    
10037    
10038    
10039    
10040    "pengiriman_buleleng",
10041    
10042    
10043    
10044    
10045    
10046    "pengiriman_ciamis",
10047    
10048    
10049    
10050    
10051    
10052    "pengiriman_cianjur",
10053    
10054    
10055    
10056    
10057    
10058    "pengiriman_cibinong",
10059    
10060    
10061    
10062    
10063    
10064    "pengiriman_cikarang",
10065    
10066    
10067    
10068    
10069    
10070    "pengiriman_cikupa",
10071    
10072    
10073    
10074    
10075    
10076    "pengiriman_cilacap",
10077    
10078    
10079    
10080    
10081    
10082    "pengiriman_cileunyi",
10083    
10084    
10085    
10086    
10087    
10088    "pengiriman_cimahi",
10089    
10090    
10091    
10092    
10093    
10094    "pengiriman_cirebon",
10095    
10096    
10097    
10098    
10099    
10100    "pengiriman_ciwidey",
10101    
10102    
10103    
10104    
10105    
10106    "pengiriman_deli serdang",
10107    
10108    
10109    
10110    
10111    
10112    "pengiriman_demak",
10113    
10114    
10115    
10116    
10117    
10118    "pengiriman_denpasar",
10119    
10120    
10121    
10122    
10123    
10124    
10125    
10126    
10127    
10128    "pengiriman_garut",
10129    
10130    
10131    
10132    
10133    
10134    "pengiriman_gianyar",
10135    
10136    
10137    
10138    
10139    
10140    "pengiriman_gresik",
10141    
10142    
10143    
10144    
10145    
10146    "pengiriman_gunung kidul",
10147    
10148    
10149    
10150    
10151    
10152    
10153    
10154    
10155    
10156    "pengiriman_jambi",
10157    
10158    
10159    
10160    
10161    
10162    "pengiriman_jayapura",
10163    
10164    
10165    
10166    
10167    
10168    "pengiriman_jember",
10169    
10170    
10171    
10172    
10173    
10174    "pengiriman_jepara",
10175    
10176    
10177    
10178    
10179    
10180    "pengiriman_jombang",
10181    
10182    
10183    
10184    
10185    
10186    "pengiriman_karanganyar",
10187    
10188    
10189    
10190    
10191    
10192    "pengiriman_karawang",
10193    
10194    
10195    
10196    
10197    
10198    "pengiriman_karo",
10199    
10200    
10201    
10202    
10203    
10204    "pengiriman_kebumen",
10205    
10206    
10207    
10208    
10209    
10210    "pengiriman_kediri",
10211    
10212    
10213    
10214    
10215    
10216    "pengiriman_keerom",
10217    
10218    
10219    
10220    
10221    
10222    "pengiriman_kendal",
10223    
10224    
10225    
10226    
10227    
10228    "pengiriman_klaten",
10229    
10230    
10231    
10232    
10233    
10234    
10235    
10236    
10237    
10238    "pengiriman_kudus",
10239    
10240    
10241    
10242    
10243    
10244    "pengiriman_kupang",
10245    
10246    
10247    
10248    
10249    
10250    "pengiriman_lainnya",
10251    
10252    
10253    
10254    
10255    
10256    "pengiriman_lamongan",
10257    
10258    
10259    
10260    
10261    
10262    "pengiriman_lampung",
10263    
10264    
10265    
10266    
10267    
10268    "pengiriman_lampung barat",
10269    
10270    
10271    
10272    
10273    
10274    "pengiriman_lembang",
10275    
10276    
10277    
10278    
10279    
10280    "pengiriman_lombok",
10281    
10282    
10283    
10284    
10285    
10286    "pengiriman_lumajang",
10287    
10288    
10289    
10290    
10291    
10292    "pengiriman_madiun",
10293    
10294    
10295    
10296    
10297    
10298    "pengiriman_magelang",
10299    
10300    
10301    
10302    
10303    
10304    "pengiriman_majalengka",
10305    
10306    
10307    
10308    
10309    
10310    "pengiriman_makassar",
10311    
10312    
10313    
10314    
10315    
10316    "pengiriman_malang",
10317    
10318    
10319    
10320    
10321    
10322    "pengiriman_manado",
10323    
10324    
10325    
10326    
10327    
10328    "pengiriman_medan",
10329    
10330    
10331    
10332    
10333    
10334    "pengiriman_mengwi",
10335    
10336    
10337    
10338    
10339    
10340    "pengiriman_mojokerto",
10341    
10342    
10343    
10344    
10345    
10346    "pengiriman_nganjuk",
10347    
10348    
10349    
10350    
10351    
10352    "pengiriman_ngawi",
10353    
10354    
10355    
10356    
10357    
10358    "pengiriman_padang",
10359    
10360    
10361    
10362    
10363    
10364    "pengiriman_palembang",
10365    
10366    
10367    
10368    
10369    
10370    "pengiriman_pasuruan",
10371    
10372    
10373    
10374    
10375    
10376    "pengiriman_pati",
10377    
10378    
10379    
10380    
10381    
10382    "pengiriman_pekalongan",
10383    
10384    
10385    
10386    
10387    
10388    "pengiriman_pekanbaru",
10389    
10390    
10391    
10392    
10393    
10394    "pengiriman_pemalang",
10395    
10396    
10397    
10398    
10399    
10400    "pengiriman_ponorogo",
10401    
10402    
10403    
10404    
10405    
10406    "pengiriman_pontianak",
10407    
10408    
10409    
10410    
10411    
10412    "pengiriman_probolinggo",
10413    
10414    
10415    
10416    
10417    
10418    "pengiriman_purbalingga",
10419    
10420    
10421    
10422    
10423    
10424    "pengiriman_purwakarta",
10425    
10426    
10427    
10428    
10429    
10430    "pengiriman_purwokerto",
10431    
10432    
10433    
10434    
10435    
10436    "pengiriman_rembang",
10437    
10438    
10439    
10440    
10441    
10442    "pengiriman_riau",
10443    
10444    
10445    
10446    
10447    
10448    "pengiriman_salatiga",
10449    
10450    
10451    
10452    
10453    
10454    "pengiriman_samarinda",
10455    
10456    
10457    
10458    
10459    
10460    "pengiriman_semarang",
10461    
10462    
10463    
10464    
10465    
10466    "pengiriman_sentani",
10467    
10468    
10469    
10470    
10471    
10472    "pengiriman_serang",
10473    
10474    
10475    
10476    
10477    
10478    "pengiriman_sidoarjo",
10479    
10480    
10481    
10482    
10483    
10484    "pengiriman_singkawang",
10485    
10486    
10487    
10488    
10489    
10490    "pengiriman_sragen",
10491    
10492    
10493    
10494    
10495    
10496    "pengiriman_subang",
10497    
10498    
10499    
10500    
10501    
10502    "pengiriman_sukabumi",
10503    
10504    
10505    
10506    
10507    
10508    "pengiriman_sumbawa",
10509    
10510    
10511    
10512    
10513    
10514    "pengiriman_surabaya",
10515    
10516    
10517    
10518    
10519    
10520    "pengiriman_surakarta solo",
10521    
10522    
10523    
10524    
10525    
10526    
10527    
10528    
10529    
10530    "pengiriman_tasikmalaya",
10531    
10532    
10533    
10534    
10535    
10536    "pengiriman_tegal",
10537    
10538    
10539    
10540    
10541    
10542    "pengiriman_timika",
10543    
10544    
10545    
10546    
10547    
10548    "pengiriman_wamena",
10549    
10550    
10551    
10552    
10553    
10554    "pengiriman_wiyung",
10555    
10556    
10557    
10558    
10559    
10560    "pengiriman_wonokromo",
10561    
10562    
10563    
10564    
10565    
10566    "pengiriman_yogyakarta",
10567    
10568    
10569    
10570    
10571    
10572    
10573    
10574    
10575    
10576    
10577    
10578    
10579    
10580    
10581    
10582    
10583    
10584    
10585    
10586    
10587    
10588    
10589    
10590    
10591    
10592    
10593    
10594    
10595    
10596    
10597    
10598    
10599    
10600    
10601    
10602    
10603    
10604    
10605    
10606    
10607    
10608    
10609    
10610    
10611    
10612    
10613    
10614    
10615    
10616    
10617    
10618    
10619    
10620    
10621    
10622    
10623    
10624    
10625    
10626    
10627    
10628    
10629    
10630    
10631    
10632    
10633    
10634    
10635    
10636    
10637    
10638    
10639    
10640    
10641    
10642    
10643    
10644    
10645    
10646    
10647    
10648    
10649    
10650    
10651    
10652    
10653    
10654    
10655    
10656    
10657    
10658    
10659    
10660    
10661    
10662    
10663    
10664    
10665    
10666    
10667    
10668    
10669    
10670    
10671    
10672    
10673    
10674    
10675    
10676    
10677    
10678    
10679    
10680    
10681    
10682    
10683    
10684    
10685    
10686    
10687    
10688    
10689    
10690    
10691    
10692    
10693    
10694    
10695    
10696    
10697    
10698    
10699    
10700    
10701    
10702    
10703    
10704    
10705    
10706    
10707    
10708    
10709    
10710    
10711    
10712    
10713    
10714    
10715    
10716    
10717    
10718    
10719    
10720    
10721    
10722    
10723    
10724    
10725    
10726    
10727    
10728    
10729    
10730    
10731    
10732    
10733    
10734    
10735    
10736    
10737    
10738    
10739    
10740    
10741    
10742    
10743    
10744    
10745    
10746    
10747    
10748    
10749    
10750    
10751    
10752    
10753    
10754    
10755    
10756    
10757    
10758    
10759    
10760    
10761    
10762    
10763    
10764    
10765    
10766    
10767    
10768    
10769    
10770    
10771    
10772    
10773    
10774    
10775    
10776    
10777    
10778    
10779    
10780    
10781    
10782    
10783    
10784    
10785    
10786    
10787    
10788    
10789    
10790    
10791    
10792    
10793    
10794    
10795    
10796    
10797    
10798    
10799    
10800    
10801    
10802    
10803    
10804    
10805    
10806    
10807    
10808    
10809    
10810    
10811    
10812    
10813    
10814    
10815    
10816    
10817    
10818    
10819    
10820    
10821    
10822    
10823    
10824    
10825    
10826    
10827    
10828    
10829    
10830    
10831    
10832    
10833    
10834    
10835    
10836    
10837    
10838    
10839    
10840    
10841    
10842    
10843    
10844    
10845    
10846    
10847    
10848    
10849    
10850    
10851    
10852    
10853    
10854    
10855    
10856    
10857    
10858    
10859    
10860    
10861    
10862    
10863    
10864    
10865    
10866    
10867    
10868    
10869    
10870    
10871    
10872    
10873    
10874    
10875    
10876    
10877    
10878    
10879    
10880    
10881    
10882    
10883    
10884    
10885    
10886    
10887    
10888    
10889    
10890    
10891    
10892    
10893    
10894    
10895    
10896    
10897    
10898    
10899    
10900    
10901    
10902    
10903    
10904    
10905    
10906    
10907    
10908    
10909    
10910    
10911    
10912    
10913    
10914    
10915    
10916    
10917    
10918    
10919    
10920    
10921    
10922    
10923    
10924    
10925    
10926    
10927    
10928    
10929    
10930    
10931    
10932    
10933    
10934    
10935    
10936    
10937    
10938    
10939    
10940    
10941    
10942    
10943    
10944    
10945    
10946    
10947    
10948    
10949    
10950    
10951    
10952    
10953    
10954    
10955    
10956    
10957    
10958    
10959    
10960    
10961    
10962    
10963    
10964    
10965    
10966    
10967    
10968    
10969    
10970    
10971    
10972    
10973    
10974    
10975    
10976    
10977    
10978    
10979    
10980    
10981    
10982    
10983    
10984    
10985    
10986    
10987    
10988    
10989    
10990    
10991    
10992    
10993    
10994    
10995    
10996    
10997    
10998    
10999    
11000    
11001    
11002    
11003    
11004    
11005    
11006    
11007    
11008    
11009    
11010    
11011    
11012    
11013    
11014    
11015    
11016    
11017    
11018    
11019    
11020    
11021    
11022    
11023    
11024    
11025    
11026    
11027    
11028    
11029    
11030    
11031    
11032    
11033    
11034    
11035    
11036    
11037    
11038    
11039    
11040    
11041    
11042    
11043    
11044    
11045    
11046    
11047    
11048    
11049    
11050    
11051    
11052    
11053    
11054    
11055    
11056    
11057    
11058    
11059    
11060    
11061    
11062    
11063    
11064    
11065    
11066    
11067    
11068    
11069    
11070    
11071    
11072    
11073    
11074    
11075    
11076    
11077    
11078    
11079    
11080    
11081    
11082    
11083    
11084    
11085    
11086    
11087    
11088    
11089    
11090    
11091    
11092    
11093    
11094    
11095    
11096    
11097    
11098    
11099    
11100    
11101    
11102    
11103    
11104    
11105    
11106    
11107    
11108    
11109    
11110    
11111    
11112    
11113    
11114    
11115    
11116    
11117    
11118    
11119    
11120    
11121    
11122    
11123    
11124    
11125    
11126    
11127    
11128    
11129    
11130    
11131    
11132    
11133    
11134    
11135    
11136    
11137    
11138    
11139    
11140    
11141    
11142    
11143    
11144    
11145    
11146    
11147    
11148    
11149    
11150    
11151    
11152    
11153    
11154    
11155    
11156    
11157    
11158    
11159    
11160    
11161    
11162    
11163    
11164    
11165    
11166    
11167    
11168    
11169    
11170    
11171    
11172    
11173    
11174    
11175    
11176  ]
11177  console.log(cityNonJabodetabek)
11178  let non_jabodetabek = []
11179  for(var i=0;i<cityNonJabodetabek.length;i++) {
11180    const obj = {
11181      "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ','-'),
11182      "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ','-'),
11183      "zip": []
11184    }
11185    non_jabodetabek.push(obj)
11186  }
11187  let current_location = getCookie("location_delivery")
11188  $("[name=location]").change(function(){
11189    let v = $(this).val()
11190    let option = []
11191    if(v == 'Jabodetabek') {
11192      for(var i=0;i<jabodetabek.length;i++) {
11193        const jabodetabekHtml = `<option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>`
11194        option.push(jabodetabekHtml)
11195      }
11196      $("#choose-location").html(`<option value="">Choose Location</option>${option}`)
11197    } else {
11198      for(var i=0;i<non_jabodetabek.length;i++) {
11199        const nonjabodetabekHtml = `<option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>`
11200        option.push(nonjabodetabekHtml)
11201      }
11202      $("#choose-location").html(`<option value="">Choose Location</option>${option}`)
11203    }
11204  })
11205
11206  $("#location-lock-submit").click(function(e){
11207    let select = $("#choose-location")
11208    let value = select.val().toLowerCase()
11209    console.log(value)
11210    if(select.val() == "") {
11211      return alert("Choose Your Location")
11212      e.preventDefault()
11213    }
11214    setCookie("location_delivery",value,1000000);
11215    
11216    location.reload();
11217    
11218  })
11219
11220  $("#close-popup-delivery").click(function(){
11221    $(".MuiDialog-root").hide()
11222    if(!current_location){
11223      setCookie("location_delivery","jakarta",1000000);
11224      $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta")
11225    }
11226  })
11227  $("#loc_delivery, #loc_delivery_mobile").click(function(){
11228    $(".MuiDialog-root").show()
11229  })
11230
11231  
11232  if(!current_location){
11233    
11234  } else {
11235    $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location)
11236    console.log(current_location)
11237    $("#choose-location").each(function(){
11238      if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi'){
11239        $("#jabodetabek").trigger("click")
11240      } else {
11241        $("#non-jabodetabek").trigger("click")
11242      }
11243      $("#choose-location").find("option[value="+current_location+"]").attr("selected", "selected")
11244    })
11245  }
11246
11247  // 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'){
11248  //   $("#timeMalam").attr("disabled", false)
11249  // } else {
11250  //   $("#timeMalam").attr("disabled", true)
11251  // }
11252
11253  if(current_location && current_location != 'jakarta') {
11254    $("#self-pickup").attr("disabled", true)
11255  }
11256
11257  function setCookie(name,value,days) {
11258    var expires = "";
11259    if (days) {
11260      var date = new Date();
11261      date.setTime(date.getTime() + (days*24*60*60*1000));
11262      expires = "; expires=" + date.toUTCString();
11263    }
11264    document.cookie = name + "=" + (value || "")  + expires + "; path=/";
11265  }
11266  function getCookie(name) {
11267    var nameEQ = name + "=";
11268    var ca = document.cookie.split(';');
11269    for(var i=0;i < ca.length;i++) {
11270      var c = ca[i];
11271      while (c.charAt(0)==' ') c = c.substring(1,c.length);
11272      if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
11273    }
11274    return null;
11275  }
11276</script>
11276
11277<!-- One Tap -->
11278    
11278<script>
11279      console.log("Outerbloom...");
11280    </script>
11280
11281  <div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block">
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328<link rel="stylesheet" href="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.css" />
11329<script src="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.js" defer></script>
vendor: 2 bytes, line 11329
11329
11330<script>
11331  const widgetConfig = {
11332    id: "clz7897za002cz7otleaz0d3d",
11333    showQuickResponse: false,
11334    quickResponsesData: [],
11335    themeColor: "#ffffff",
11336    widgetText: "",
11337    radiusType: "circle",
11338    widgetIconType: "whatsapp",
11339    position: "right",
11340    storeLogo: "",
11341    storeName: "Outerbloom",
11342    storeDescription: "",
11343    size: "small",
11344    showCard: false,
11345    widgetColorType: "solid",
11346    widgetColor1: "#008069",
11347    widgetColor2: "#008069",
11348    social: {
11349      socialOrders: ["instagram","tiktok","facebook","x","youtube","linkedin","email"],
11350      values: {
11351        instagram: {
11352          enabled: false,
11353          value: "",
11354        },
11355        facebook: {
11356          enabled: false,
11357          value: "",
11358        },
11359        email: {
11360          enabled: false,
11361          value: "",
11362        },
11363        x: {
11364          enabled: false,
11365          value: "",
11366        },
11367        tiktok: {
11368          enabled: false,
11369          value: "",
11370        },
11371        linkedin: {
11372          enabled: false,
11373          value: "",
11374        },
11375        youtube: {
11376          enabled: false,
11377          value: "",
11378        },
11379      },
11380    },
11381  };
11382
11383  function initializeWidget() {
11384    if (typeof BBBWidget !== 'undefined') {
11385      BBBWidget.init(widgetConfig);
11386    } else {
11387      setTimeout(initializeWidget, 100);
11388    }
11389  }
11390
11391  initializeWidget();</script>
11391
11392
11393
11394</div><div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block">
11395
11396
11397<div style="position: fixed; bottom: 0; right: 0"></div>
11398
11399<script>
11400console.info("bitlogin extension version: v2.5.7");
11401
11402const googleScript = document.createElement("script");
11403googleScript.setAttribute("src", "https://accounts.google.com/gsi/client");
11404document.head.append(googleScript);
11405
11406const bitLoginBaseUrl = "https://api.bitbybit.studio";
11407const apiUrl = `${bitLoginBaseUrl}/bitlogin/api`;
11408
11409const 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"}};
11410const 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
11410n1.oa2-cs.v1.1cb5f9085a202341f60daf5a7be16c570ccc0b4bd5908b3afd080f34e9b8935d","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null}];
11411const redirectUrl = appearance.redirectLink;
11412
11413let locationCacheSet = false;
11414let errorLocation = false;
11415let oneTapSet = false;
11416
11417let bitloginCache = {
11418  appearance: appearance,
11419  config: config
11420};
11421
11422let isInitializing = false;
11423const queue = [];
11424
11425// Add CSS for the popup
11426const popupStyles = document.createElement('style');
11427popupStyles.textContent = `
11428  /* Styles for login popup */
11429  .bitlogin-popup-overlay {
11430    position: fixed;
11431    top: 0;
11432    left: 0;
11433    width: 100%;
11434    height: 100%;
11435    background: rgba(0, 0, 0, 0.45);
11436    backdrop-filter: blur(4px);
11437    display: flex;
11438    align-items: center;
11439    justify-content: center;
11440    opacity: 0;
11441    transition: opacity 0.3s ease-in-out;
11442    z-index: 999999;
11443  }
11444  
11445  .bitlogin-popup-overlay.visible {
11446    opacity: 1;
11447  }
11448  
11449  .bitlogin-popup {
11450    background: #FFFFFF;
11451    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
11452    border-radius: 16px;
11453    width: 100%;
11454    max-width: 560px;
11455    display: flex;
11456    overflow: hidden;
11457    position: relative;
11458    opacity: 0;
11459    transform: translateY(20px) scale(0.98);
11460    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
11461  }
11462  
11463  .bitlogin-popup.visible {
11464    opacity: 1;
11465    transform: translateY(0) scale(1);
11466  }
11467  
11468  .bitlogin-popup-with-image {
11469    max-width: 640px;
11470  }
11471  
11472  .bitlogin-popup-right-image {
11473    flex-direction: row-reverse;
11474  }
11475  
11476  .bitlogin-popup-image {
11477    object-fit: cover;
11478    width: 50%;
11479    height: auto;
11480  }
11481  
11482  .bitlogin-popup-content {
11483    padding: 32px;
11484    position: relative;
11485    width: 50%;
11486  }
11487  
11488  .bitlogin-popup-close {
11489    position: absolute;
11490    top: 16px;
11491    right: 16px;
11492    background: white;
11493    border: none;
11494    width: 30px;
11495    height: 30px;
11496    display: flex;
11497    align-items: center;
11498    justify-content: center;
11499    cursor: pointer;
11500    transition: background-color 0.2s;
11501    color: inherit;
11502    padding: 0;
11503  }
11504  
11505  .bitlogin-popup-close:hover {
11506    background-color: #e5e5e5;
11507  }
11508  
11509  .bitlogin-popup-buttons {
11510    display: flex;
11511    flex-direction: column;
11512    gap: 12px;
11513    margin-top: 24px;
11514  }
11515  
11516  /* Button styles within popup - override width for popup buttons */
11517  .bitlogin-popup-buttons #google-login,
11518  .bitlogin-popup-buttons #facebook-login,
11519  .bitlogin-popup-buttons #apple-login,
11520  .bitlogin-popup-buttons #whatsapp-login,
11521  .bitlogin-popup-buttons #microsoft-login,
11522  .bitlogin-popup-buttons #twitter-login,
11523  .bitlogin-popup-buttons #amazon-login,
11524  .bitlogin-popup-buttons #instagram-login,
11525  .bitlogin-popup-buttons #magic-link-login,
11526  .bitlogin-popup-buttons #mobile-app-login {
11527    width: 100% !important;
11528    font-family: inherit !important;
11529  }
11530  
11531  .bitlogin-popup-footer {
11532    margin-top: 32px;
11533    text-align: center;
11534    font-size: 14px;
11535    opacity: 0.6;
11536  }
11537  
11538  /* Modern Typography */
11539  .bitlogin-popup h2 {
11540    margin-top: 12px;
11541    font-size: 21px !important;
11542    line-height: 1.2 !important;
11543    font-weight: 700 !important;
11544    letter-spacing: -0.02em !important;
11545    margin-bottom: 16px !important;
11546  }
11547  
11548  .bitlogin-popup-header {
11549    position: relative;
11550    margin-bottom: 24px;
11551  }
11552  
11553  /* Modern gradient accent */
11554  .bitlogin-popup-content > div {
11555    font-size: 16px !important;
11556    line-height: 1.2 !important;
11557    opacity: 0.85 !important;
11558  }
11559  
11560  /* Enhanced button interactions */
11561  .bitlogin-popup-buttons button {
11562    position: relative;
11563    overflow: hidden;
11564  }
11565  
11566  @keyframes ripple {
11567    0% {
11568      transform: scale(0, 0);
11569      opacity: 0.5;
11570    }
11571    100% {
11572      transform: scale(100, 100);
11573      opacity: 0;
11574    }
11575  }
11576  
11577  /* Responsive adjustments */
11578  @media (max-width: 640px) {
11579    .bitlogin-popup {
11580      max-width: 90%;
11581      width: 90%;
11582      margin: 0 16px;
11583    }
11584    
11585    .bitlogin-popup-with-image {
11586      flex-direction: column !important;
11587    }
11588    
11589    .bitlogin-popup-image {
11590      width: 100%;
11591      height: 180px;
11592    }
11593    
11594    .bitlogin-popup-content {
11595      padding: 24px;
11596    }
11597    
11598    .bitlogin-popup h2 {
11599      font-size: 24px !important;
11600    }
11601  }
11602`;
11603
11604document.head.appendChild(popupStyles);
11605
11606// Add fonts link for different font options
11607const fontsLink = document.createElement('link');
11608fontsLink.rel = 'stylesheet';
11609fontsLink.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';
11610document.head.appendChild(fontsLink);
11611
11612(async () => {
11613  try {
11614    let host = window.location.host;
11615    if (host === "admin.shopify.com") {
11616      host = `${window.location.pathname.split("/")[2]}.myshopify.com`;
11617    }
11618
11619    const urlSearchParams = new URLSearchParams(window.location.search);
11620    const checkoutUrl = urlSearchParams.get("checkout_url");
11621
11622    async function init({ inputRef, index }) {
11623      if (isInitializing) {
11624        queue.push(() => init({ inputRef, index }));
11625        return;
11626      }
11627
11628      isInitializing = true;
11629
11630      try {
11631        let bitLoginSectionRoot = document.querySelector(
11632          `.bitlogin-root[data-index="${index}"]`
11633        );
11634
11635        const formRef = inputRef?.closest(
11636          "form:not([action='/account/recover'])"
11637        );
11638
11639        if (formRef && !bitLoginSectionRoot) {
11640          await getLocation();
11641
11642          bitLoginSectionRoot = document.createElement(`div`);
11643
11644          bitLoginSectionRoot.setAttribute("class", "bitlogin-root");
11645          bitLoginSectionRoot.setAttribute("data-index", `${index}`);
11646
11647          updateAppearance({
11648            formRef,
11649            rootRef: bitLoginSectionRoot,
11650            host,
11651          });
11652        }
11653      } catch (err) {
11654        console.error(`error while initiating bitlogin extensions`, err);
11655      } finally {
11656        // Release the lock
11657        isInitializing = false;
11658
11659        // Check if there are pending items in the queue
11660        if (queue.length > 0) {
11661          // Process the next function in the queue
11662          const nextFunction = queue.shift();
11663          nextFunction();
11664        }
11665      }
11666    }
11667
11668    function initAll() {
11669      return new Promise((resolve, reject) => {
11670        setTimeout(async () => {
11671          const inputRefs = document.querySelectorAll(
11672            'input[name="customer[email]"]'
11673          );
11674
11675          for (let i = 0; i < inputRefs.length; i++) {
11676            const currentInputRef = inputRefs[i];
11677            const isVisible = isElementVisible(currentInputRef);
11678
11679            if (isVisible) {
11680              await init({ inputRef: currentInputRef, index: i });
11681            }
11682          }
11683
11684          resolve("ok");
11685        }, 100);
11686      });
11687    }
11688
11689    const observer = new MutationObserver((mutationsList) => {
11690      for (let mutation of mutationsList) {
11691        initAll();
11692      }
11693    });
11694
11695    observer.observe(document.body, {
11696      childList: true,
11697      subtree: true,
11698      attributes: true,
11699    });
11700
11701    initAll();
11702
11703    if (appearance.googleOneTap) {
11704      setupOneTap({ host, checkoutUrl });
11705    }
11706
11707    // Initialize popup
11708    await initPopup(host);
11709  } catch (error) {
11710    console.error("Error initializing BitLogin:", error);
11711  }
11712})();
11713
11714async function initPopup(host) {
11715  // Check if user is already logged in using Liquid checks properly
11716  const isLoggedIn = false || 
11717                    document.querySelector('.customer-logout-link') || 
11718                    document.querySelector('.account-link') || 
11719                    window.location.pathname.includes('/account');
11720  
11721  if (isLoggedIn) {
11722    return; // User is logged in, don't show popup
11723  }
11724
11725  try {
11726    // Fetch the popup configuration
11727    const popupConfig = await fetch(`${apiUrl}/appearance/popup/domain/${host}`)
11728      .then(res => res.json())
11729      .catch(err => {
11730        console.error('Error fetching popup configuration:', err);
11731        return null;
11732      });
11733
11734    if (!popupConfig || !popupConfig.enabled) {
11735      return; // Don't show popup if disabled or config not found
11736    }
11737
11738    // Create popup after 10 seconds
11739    setTimeout(() => {
11740      // Check if user is still on the page and still not logged in
11741      if (document.visibilityState === 'visible') {
11742        // Additional check in case user logged in during the 10 second wait
11743        const currentlyLoggedIn = false || 
11744                              document.querySelector('.customer-logout-link') || 
11745                              document.querySelector('.account-link');
11746        
11747        if (!currentlyLoggedIn) {
11748          createLoginPopup(popupConfig, host);
11749        }
11750      }
11751    }, 10000);
11752  } catch (error) {
11753    console.error('Error initializing popup:', error);
11754  }
11755}
11756
11757function createLoginPopup(popupConfig, host) {
11758  // Font mapping
11759  const fontFamilyMap = {
11760    system_fonts: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
11761    montserrat: 'Montserrat, sans-serif',
11762    roboto: 'Roboto, sans-serif',
11763    open_sans: 'Open Sans, sans-serif',
11764    noto_sans: 'Noto Sans, sans-serif',
11765    lato: 'Lato, sans-serif',
11766    poppins: 'Poppins, sans-serif',
11767    quicksand: 'Quicksand, sans-serif',
11768    raleway: 'Raleway, sans-serif',
11769    pt_sans: 'PT Sans, sans-serif',
11770    oswald: 'Oswald, sans-serif',
11771  };
11772
11773  // Create overlay
11774  const overlay = document.createElement('div');
11775  overlay.className = 'bitlogin-popup-overlay';
11776  
11777  // Create popup container with appropriate styling
11778  const popup = document.createElement('div');
11779  popup.className = 'bitlogin-popup';
11780
11781  if (popupConfig.layout === 'default') {
11782    popup.style.maxWidth = '400px';
11783  }
11784  
11785  // Function to close the popup
11786  const closePopup = () => {
11787    overlay.classList.remove('visible');
11788    popup.classList.remove('visible');
11789    setTimeout(() => {
11790      if (document.body.contains(overlay)) {
11791        document.body.removeChild(overlay);
11792      }
11793    }, 300);
11794  };
11795  
11796  // Add click handler to the overlay to close when clicking outside
11797  overlay.addEventListener('click', (event) => {
11798    // Close only if clicking directly on the overlay, not its children
11799    if (event.target === overlay) {
11800      closePopup();
11801    }
11802  });
11803  
11804  // Add escape key handler to close popup
11805  document.addEventListener('keydown', (event) => {
11806    if (event.key === 'Escape' && document.body.contains(overlay)) {
11807      closePopup();
11808    }
11809  });
11810
11811  // Create layout with image if specified
11812  let contentWrapper;
11813  if (popupConfig.layout !== 'default' && popupConfig.popupImage) {
11814    popup.classList.add('bitlogin-popup-with-image');
11815    
11816    if (popupConfig.layout === 'right') {
11817      popup.classList.add('bitlogin-popup-right-image');
11818    }
11819    
11820    // Add image
11821    const image = document.createElement('img');
11822    image.className = 'bitlogin-popup-image';
11823    image.src = popupConfig.popupImage;
11824    image.alt = 'Login';
11825    image.loading = 'lazy';
11826    popup.appendChild(image);
11827    
11828    // Create content container
11829    contentWrapper = document.createElement('div');
11830    contentWrapper.className = 'bitlogin-popup-content';
11831
11832    if (popupConfig.layout === 'right') {
11833      const closeButton = document.createElement('button');
11834      closeButton.className = 'bitlogin-popup-close';
11835      closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
11836        <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
11837      </svg>`;
11838      closeButton.setAttribute('aria-label', 'Close');
11839      closeButton.onclick = closePopup;
11840  
11841      popup.appendChild(closeButton);
11842    }
11843  } else {
11844    contentWrapper = document.createElement('div');
11845    contentWrapper.className = 'bitlogin-popup-content';
11846    contentWrapper.style.width = '100%';
11847  }
11848
11849  // Set background style
11850  if (popupConfig.backgroundTheme === 'gradient') {
11851    contentWrapper.style.background = `linear-gradient(135deg, ${popupConfig.backgroundPopupColor}, ${popupConfig.gradientColor})`;
11852  } else {
11853    contentWrapper.style.backgroundColor = popupConfig.backgroundPopupColor;
11854  }
11855
11856  // Apply font family
11857  contentWrapper.style.setProperty('font-family', fontFamilyMap[popupConfig.font] || fontFamilyMap.system_fonts, 'important');
11858
11859  if (popupConfig.layout !== 'right') {
11860    const closeButton = document.createElement('button');
11861    closeButton.className = 'bitlogin-popup-close';
11862    closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
11863      <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
11864    </svg>`;
11865    closeButton.setAttribute('aria-label', 'Close');
11866    closeButton.onclick = closePopup;
11867  
11868    contentWrapper.appendChild(closeButton);
11869  }
11870
11871  // Add heading with subtle animation effect
11872  const header = document.createElement('div');
11873  header.className = 'bitlogin-popup-header';
11874  
11875  const heading = document.createElement('h2');
11876  heading.textContent = popupConfig.headingText || 'Sign in for exclusive benef
11876its';
11877  heading.style.color = popupConfig.fontColor;
11878  header.appendChild(heading);
11879
11880  // Add body text with improved formatting
11881  const bodyText = document.createElement('div');
11882  bodyText.innerHTML = popupConfig.bodyText || 'Join our community to access exclusive offers and a personalized shopping experience.';
11883  bodyText.style.color = popupConfig.fontColor;
11884  header.appendChild(bodyText);
11885  
11886  contentWrapper.appendChild(header);
11887
11888  // Create buttons container with modern styling
11889  const buttonsContainer = document.createElement('div');
11890  buttonsContainer.className = 'bitlogin-popup-buttons';
11891  
11892  // Add social buttons
11893  const providerLabels = {
11894    'GOOGLE': 'Continue with Google',
11895    'FACEBOOK': 'Continue with Facebook',
11896    'APPLE': 'Continue with Apple',
11897    'WHATSAPP': 'Continue with WhatsApp',
11898    'MAGIC_LINK': 'Continue with Email',
11899  };
11900
11901  // Add first login provider button
11902  if (popupConfig.loginProvider1 !== 'NONE') {
11903    const buttonConfig = {
11904      theme: popupConfig.colorScheme || 'match',
11905      customColor: popupConfig.textColor,
11906      format: 'contentFlex',
11907      buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider1.toLowerCase()],
11908      hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true,
11909      style: popupConfig.style || 'rounded',
11910      size: popupConfig.size || 'medium',
11911      colorScheme: popupConfig.colorScheme || 'match',
11912      backgroundColor: popupConfig.backgroundColor || '#3B82F6',
11913      textColor: popupConfig.textColor || '#FFFFFF',
11914      outlineColor: popupConfig.outlineColor || '#3B82F6',
11915      host: host
11916    };
11917    
11918    const button1 = createSocialLoginButton(popupConfig.loginProvider1, buttonConfig);
11919    
11920    // Handle click event - this overrides the default click handler in createSocialLoginButton
11921    button1.onclick = () => {
11922      onClickSocialLogin({ provider: popupConfig.loginProvider1.toLowerCase(), host });
11923      closePopup();
11924    };
11925    
11926    buttonsContainer.appendChild(button1);
11927  }
11928
11929  // Add second login provider button if enabled
11930  if (popupConfig.loginProvider2 !== 'NONE') {
11931    const buttonConfig = {
11932      theme: popupConfig.colorScheme || 'match',
11933      customColor: popupConfig.textColor,
11934      format: 'contentFlex',
11935      buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider2.toLowerCase()],
11936      hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true,
11937      style: popupConfig.style || 'rounded',
11938      size: popupConfig.size || 'medium',
11939      colorScheme: popupConfig.colorScheme || 'match',
11940      backgroundColor: popupConfig.backgroundColor || '#3B82F6',
11941      textColor: popupConfig.textColor || '#FFFFFF',
11942      outlineColor: popupConfig.outlineColor || '#3B82F6',
11943      host: host
11944    };
11945    
11946    const button2 = createSocialLoginButton(popupConfig.loginProvider2, buttonConfig);
11947    
11948    // Handle click event - this overrides the default click handler in createSocialLoginButton
11949    button2.onclick = () => {
11950      onClickSocialLogin({ provider: popupConfig.loginProvider2.toLowerCase(), host });
11951      closePopup();
11952    };
11953    
11954    buttonsContainer.appendChild(button2);
11955  }
11956
11957  contentWrapper.appendChild(buttonsContainer);
11958
11959  // Append content to popup
11960  popup.appendChild(contentWrapper);
11961  
11962  // Append popup to overlay
11963  overlay.appendChild(popup);
11964  
11965  // Append overlay to body
11966  document.body.appendChild(overlay);
11967  
11968  // Trigger animation with slight delay for better perceived performance
11969  setTimeout(() => {
11970    overlay.classList.add('visible');
11971    setTimeout(() => {
11972      popup.classList.add('visible');
11973    }, 50);
11974  }, 10);
11975}
11976
11977window.addEventListener("load", () => {
11978  window.addEventListener("message", (event) => {
11979    const receivedData = event.data;
11980
11981    if (receivedData.type === "authorize") {
11982      post(
11983        JSON.parse(
11984          JSON.stringify({
11985            "customer[email]": receivedData.email,
11986            "customer[password]": receivedData.password,
11987            form_type: "customer_login",
11988            utf8: "✓",
11989            return_url: redirectUrl,
11990          })
11991        )
11992      );
11993    } else if (receivedData.type === "rejected") {
11994      if (receivedData.reason === "customer_account_disabled") {
11995        showAlert(
11996          "Your account needs to be activated. We've sent you an activation link - please check your email to complete this step."
11997        );
11998      } else if (receivedData.reason === "customer_entry_created_email_not_set") {
11999        showAlert(
12000          "A new account was created but requires an email address. Please update your account with a valid email address to continue."
12001        );
12002      } else if (receivedData.reason === "customer_exist_email_not_set") {
12003        showAlert(
12004          "Your existing account is missing an email address. Please contact support to update your account with a valid email address."
12005        );
12006      }
12007    }
12008
12009    if (receivedData.type === "customer_authenticated") {
12010      // Dispatch a custom event that merchants can listen for to implement their custom logic
12011      const customerAuthEvent = new CustomEvent('bitlogin:customer_authenticated', {
12012        detail: {
12013          provider: receivedData.provider,
12014          customer: receivedData.customer,
12015          shopifyCustomerCreated: receivedData.shopifyCustomerCreated
12016        }
12017      });
12018      
12019      // Dispatch the event on the window object so merchants can listen for it
12020      window.dispatchEvent(customerAuthEvent);
12021      
12022    }
12023  });
12024});
12025
12026// Reusable functions for social login buttons
12027function createSocialLoginButton(provider, config = {}) {
12028  const {
12029    theme = 'match',
12030    customColor = null,
12031    format = 'contentFlex',
12032    buttonText = null,
12033    hasShadow = true,
12034    style = 'rounded',
12035    size = 'medium',
12036    colorScheme = 'match',
12037    backgroundColor = '#3B82F6',
12038    textColor = '#FFFFFF',
12039    outlineColor = '#3B82F6',
12040    rootRef = null,
12041    host = null
12042  } = config;
12043  
12044  // Create button element with appropriate ID and attributes
12045  const button = document.createElement('button');
12046  button.id = `${provider.toLowerCase()}-login`;
12047  button.type = 'button';
12048  
12049  // Set the inner SVG based on provider
12050  switch (provider.toUpperCase()) {
12051    case 'GOOGLE':
12052      button.innerHTML = googleLoginIcon(theme, customColor);
12053      break;
12054    case 'FACEBOOK':
12055      button.innerHTML = facebookLoginIcon(theme, customColor);
12056      break;
12057    case 'APPLE':
12058      button.innerHTML = appleLoginIcon(theme, customColor);
12059      break;
12060    case 'WHATSAPP':
12061      button.innerHTML = whatsappLoginIcon(theme, customColor);
12062      break;
12063    case 'MICROSOFT':
12064      button.innerHTML = microsoftLoginIcon(theme, customColor);
12065      break;
12066    case 'TWITTER':
12067      button.innerHTML = twitterLoginIcon(theme, customColor);
12068      break;
12069    case 'AMAZON':
12070      button.innerHTML = amazonLoginIcon(theme, customColor);
12071      break;
12072    case 'INSTAGRAM':
12073      button.innerHTML = instagramLoginIcon(theme, customColor);
12074      break;
12075    case 'MAGIC_LINK':
12076      button.innerHTML = magicLinkLoginIcon(theme, customColor);
12077      break;
12078    case 'MOBILE_APP':
12079      button.innerHTML = mobileAppLoginIcon(theme, customColor);
12080      break;
12081    case 'LINKEDIN':
12082      button.innerHTML = linkedinLoginIcon(theme, customColor);
12083      break;
12084  }
12085  
12086  // Add text if format isn't icon-only and buttonText is provided
12087  if (format !== "wrapperFlexContainerOnlyLogo" && buttonText) {
12088    button.innerHTML += `<p>${buttonText}</p>`;
12089  }
12090  
12091  // Apply styling
12092  // Shadow
12093  if (hasShadow) {
12094    const shadowProperties = `0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)`;
12095    button.style["box-shadow"] = shadowProperties;
12096  }
12097  
12098  // Border radius
12099  const radiusProperties =
12100    style === "rounded"
12101      ? "8px"
12102      : style === "square"
12103      ? "0px"
12104      : style === "fullRounded"
12105      ? format === "wrapperFlexContainerOnlyLogo"
12106        ? "50%"
12107        : "50px"
12108      : undefined;
12109  button.style["border-radius"] = radiusProperties;
12110  
12111  // Size
12112  const sizeProperties =
12113    size === "medium"
12114      ? "12px"
12115      : size === "small"
12116      ? "8px"
12117      : size === "large"
12118      ? "16px"
12119      : "8px";
12120
12121  button.style["padding-block"] = sizeProperties;
12122
12123  // Format styling
12124  if (format) {
12125    if (
12126      format === "contentFlexReverse" ||
12127      format === "contentFlexCenterReverse"
12128    ) {
12129      const flexDir = `row-reverse`;
12130      button.style["flex-direction"] = flexDir;
12131    }
12132    
12133    if (
12134      format === "contentFlexCenter" ||
12135      format === "contentFlexCenterReverse"
12136    ) {
12137      const justifyContent = `center`;
12138      button.style["justify-content"] = justifyContent;
12139    } else if (
12140      format === "contentFlex" ||
12141      format === "contentFlexReverse"
12142    ) {
12143      const buttonTextElement = button.querySelector("p");
12144      if (buttonTextElement) {
12145        buttonTextElement.style["flex-grow"] = 1;
12146        buttonTextElement.style["text-align"] = "center";
12147      }
12148    }
12149
12150    if (format === "wrapperFlexContainerOnlyLogo" && rootRef) {
12151      rootRef.style["flex-direction"] = "row";
12152      rootRef.style["gap"] = "8px";
12153      rootRef.style["display"] = "flex";
12154      rootRef.style["flex-wrap"] = "wrap";
12155
12156      const sizeMapping = {
12157        small: "52px",
12158        medium: "62px",
12159        large: "72px",
12160      };
12161      const buttonSize = sizeMapping[size] || "52px";
12162
12163      button.style["margin"] = 0;
12164      button.style["width"] = buttonSize;
12165      button.style["height"] = buttonSize;
12166      button.style["display"] = "flex";
12167      button.style["align-items"] = "center";
12168      button.style["justify-content"] = "center";
12169
12170      const svgElement = button.querySelector("svg");
12171      if (svgElement) {
12172        svgElement.style["flex"] = "none";
12173      }
12174    }
12175  }
12176
12177  // Color scheme styling
12178  if (colorScheme === "black") {
12179    button.classList.add("scheme-black");
12180  } else if (colorScheme === "white") {
12181    button.classList.add("scheme-white");
12182  } else if (colorScheme === "custom") {
12183    button.style["background-color"] = backgroundColor;
12184    button.style["color"] = textColor;
12185    button.style["border-color"] = outlineColor;
12186
12187    const darkenColor = (color, percentage) => {
12188      const value = parseInt(color.slice(1), 16);
12189      const r = Math.max(0, ((value >> 16) & 0xff) - (0xff * percentage));
12190      const g = Math.max(0, ((value >> 8) & 0xff) - (0xff * percentage));
12191      const b = Math.max(0, (value & 0xff) - (0xff * percentage));
12192      return `rgb(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)})`;
12193    };
12194
12195    button.addEventListener("mouseover", () => {
12196      button.style["background-color"] = darkenColor(backgroundColor, 0.2);
12197    });
12198    button.addEventListener("mouseout", () => {
12199      button.style["background-color"] = backgroundColor;
12200    });
12201  } else if (colorScheme === "match") {
12202    button.classList.add("scheme-match");
12203  } else if (colorScheme === "matchOutline") {
12204    button.classList.add("scheme-match-outline");
12205  }
12206  
12207  // Add click event listener if host is provided
12208  if (host) {
12209    button.addEventListener("click", () => 
12210      onClickSocialLogin({ provider: provider.toLowerCase(), host })
12211    );
12212  }
12213  
12214  return button;
12215}
12216
12217function setupSocialLoginButtons(config, rootRef, data, host) {
12218  // Clear any existing content
12219  rootRef.innerHTML = '';
12220
12221  const sortedEnabledProviders = config
12222    .filter(c => c.enabledWeb)
12223    .sort((a, b) => a.position - b.position);
12224
12225  sortedEnabledProviders.forEach(provider => {
12226    const key = provider.provider;
12227    const lowerKey = key.toLowerCase();
12228
12229    const buttonText = data.format !== "wrapperFlexContainerOnlyLogo"
12230      ? (lowerKey === 'twitter'
12231          ? data.buttonList.twitter.replace('Twitter', 'X')
12232          : data.buttonList[lowerKey])
12233      : null;
12234
12235    const button = createSocialLoginButton(key, {
12236      theme: data.colorScheme || 'match',
12237      customColor: data.textColor,
12238      format: data.format,
12239      buttonText: buttonText,
12240      hasShadow: data.hasShadow !== undefined ? data.hasShadow : true,
12241      style: data.style,
12242      size: data.size,
12243      colorScheme: data.colorScheme,
12244      backgroundColor: data.backgroundColor,
12245      textColor: data.textColor,
12246      outlineColor: data.outlineColor,
12247      rootRef: rootRef,
12248      host: host
12249    });
12250
12251    rootRef.appendChild(button);
12252  });
12253
12254  return rootRef;
12255}
12256
12257function updateAppearance({ formRef, rootRef, host }) {
12258  if (!formRef) return;
12259
12260  const data = bitloginCache.appearance || {
12261    style: "square",
12262    hasShadow: false,
12263    colorScheme: "match",
12264    backgroundColor: "#FFFFFF",
12265    outlineColor: "#000000",
12266    textColor: "#000000",
12267    position: "bottom",
12268    hideDivider: "false",
12269    dividerText: "OR",
12270    size: "small",
12271    format: "contentFlex",
12272    language: "en",
12273    buttonText: "Continue with",
12274    redirectLink: "/account",
12275    googleOneTap: true,
12276    googleOneTapBanner: true,
12277    customerTag: "bitLogin",
12278    redirectOneTapDesktop: null,
12279    redirectOneTapMobile: null,
12280    buttonList: {
12281      google: "Continue with Google",
12282      facebook: "Continue with Facebook",
12283      apple: "Continue with Apple",
12284      whatsapp: "Continue with WhatsApp",
12285      microsoft: "Continue with Microsoft",
12286      twitter: "Continue with X",
12287      amazon: "Continue with Amazon",
12288      instagram: "Continue with Instagram",
12289      magic_link: "Continue with Magic Link",
12290      mobile_app: "Continue with Mobile App",
12291      linkedin: "Continue with LinkedIn",
12292    },
12293  };
12294
12295  // Use the new setupSocialLoginButtons function to create and configure all buttons
12296  setupSocialLoginButtons(bitloginCache.config, rootRef, data, host);
12297
12298  let divider;
12299
12300  if (!data.hideDivider) {
12301    divider = document.createElement("div");
12302    const dividerStyle = "text-align:center;margin-block:16px";
12303    divider.setAttribute("style", dividerStyle);
12304    divider.innerHTML = data.dividerText;
12305  }
12306
12307  if (data.position === "bottom") {
12308    if (divider) {
12309      formRef.appendChild(divider);
12310    }
12311    formRef.appendChild(rootRef);
12312  } else if (data.position === "top") {
12313    if (divider) {
12314      formRef.prepend(divider);
12315    }
12316    formRef.prepend(rootRef);
12317  }
12318}
12319
12320
12321async function onClickSocialLogin({ provider, host }) {
12322  const rand = Math.random().toString();
12323
12324  const locationQueryString = bitloginCache.location
12325    ? `&${objectToQueryString(bitloginCache.location)}`
12326    : "";
12327
12328  const width = 800;
12329  const height = 600;
12330  const left = (window.screen.width / 2) - (width / 2);
12331  const top = (window.screen.height / 2) - (height / 2) - 50;
12332
12333  if(provider === 'whatsapp') {
12334    window.open(
12335      `/apps/bitlogin/whatsapp${locationQueryString ? `?${locationQueryString}` : ''}`,
12336      "mywindow",
12337      `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`
12338    );
12339  } else {
12340    window.open(
12341      `${apiUrl}/login/${provider}?referrerId=${rand}&shop=${host}${locationQueryString}`,
12342      "mywindow",
12343      `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`
12344    );
12345  }
12346}
12347
12348function objectToQueryString(obj) {
12349  return Object.keys(obj)
12350    .map((key) => {
12351      return encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]);
12352    })
12353    .join("&");
12354}
12355
12356async function getLocation() {
12357  if (locationCacheSet) return;
12358
12359  try {
12360    const response = await fetch("https://ipapi.co/json/");
12361
12362    if (!response.ok) {
12363      console.error(`error retrieving location...`, response.status);
12364      errorLocation = true;
12365    } else {
12366      const data = await response.json();
12367
12368      const { city, region, country_name, country_code } = data;
12369
12370      const formattedLocationData = {
12371        city,
12372        region,
12373        country_name,
12374        country_code,
12375      };
12376
12377      bitloginCache.location = formattedLocationData;
12378      locationCacheSet = true;
12379      errorLocation = false;
12380    }
12381  } catch (err) {
12382    console.error(`error fetching location`, err);
12383    errorLocation = true;
12384  }
12385}
12386
12387function post(params) {
12388  // The rest of this code assumes you are not using a library.
12389  // It can be made less verbose if you use one.
12390  const form = document.createElement("form");
12391  form.method = "post";
12392  form.action = `/account/login`;
12393  form.acceptCharset = "UTF-8";
12394  form.setAttribute("data-login-with-shop-sign-in", "true");
12395  form.setAttribute("novalidate", "novalidate");
12396
12397  for (const key in params) {
12398    if (params.hasOwnProperty(key)) {
12399      const hiddenField = document.createElement("input");
12400      hiddenField.type = "hidden";
12401      hiddenField.name = key;
12402      hiddenField.value = params[key];
12403
12404      form.appendChild(hiddenField);
12405    }
12406  }
12407
12408  document.body.appendChild(form);
12409  form.submit();
12410}
12411
12412async function setupOneTap({ host, checkoutUrl }) {
12413  if (oneTapSet) return;
12414
12415  const redirectOneTapDesktop = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapDesktop || '[]'));
12416  const redirectOneTapMobile = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapMobile || '[]'));
12417
12418  const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
12419  const redirectList = JSON.parse(isMobile ? redirectOneTapMobile : redirectOneTapDesktop);
12420
12421  const currentPath = window.location.pathname.toLowerCase();
12422  const currentUrl = window.location.href.toLowerCase();
12423
12424  const shouldHideGoogleOneTap = redirectList.some(({ value }) => {
12425    switch (value) {
12426      case 'home':
12427        return currentPath === '/';
12428      case 'product':
12429        return currentPath.startsWith('/products/');
12430      case 'collections':
12431        return currentPath.startsWith('/collections');
12432      case 'cart':
12433        return currentPath === '/cart';
12434      case 'checkout':
12435        return currentPath.startsWith('/checkouts') && !currentPath.includes('thank_you');
12436      case 'thank_you':
12437        return currentPath.includes('/thank_you');
12438      case 'account':
12439        return currentPath.startsWith('/account');
12440      case 'pages':
12441        return currentPath.startsWith('/pages');
12442      case 'blogs':
12443        return currentPath === '/blogs' || currentPath === '/blogs/news';
12444      case 'blog_post':
12445        return currentPath.startsWith('/blogs/') && currentPath.split('/').length > 3;
12446      default:
12447        return false;
12448    }
12449  });
12450
12451  if (shouldHideGoogleOneTap) return;
12452
12453  const oneTapClientId = bitloginCache.config.find(
12454    (config) => config.provider === "GOOGLE"
12455  )?.clientId;
12456
12457  const isLoggedIn = false;
12458
12459  if (bitloginCache.appearance.googleOneTap && oneTapClientId && !isLoggedIn) {
12460    const googleOneTapButton = document.createElement("div");
12461    googleOneTapButton.setAttribute("id", "g_id_onload");
12462    googleOneTapButton.setAttribute("data-client_id", oneTapClientId);
12463    googleOneTapButton.setAttribute("data-context", "signin");
12464    googleOneTapButton.setAttribute(
12465      "data-callback",
12466      "handleGoogleOneTapResponse"
12467    );
12468    googleOneTapButton.setAttribute("data-itp_support", "true");
12469
12470    const googleOneTapScript = document.createElement("script");
12471
12472    googleOneTapScript.innerHTML += `
12473          function handleGoogleOneTapResponse(response) {
12474              if (response.credential) {
12475                  const idToken = response.credential;
12476                  fetch('${bitLoginBaseUrl}/bitlogin/api/login/google-one-tap', {
12477                      method: 'POST',
12478                      headers: { 'Content-Type': 'application/json' },
12479                      body: JSON.stringify({ idToken, shop: "${host}", ...bitloginCache.location })
12480                  }).then(response => {
12481                      response.json().then((data) => {
12482                        post(
12483                          JSON.parse(
12484                            JSON.stringify({
12485                              "customer[email]": data.email,
12486                              "customer[password]": data.password,
12487                              form_type: "customer_login",
12488                              utf8: "✓",
12489                              return_url: redirectUrl,
12490                            })
12491                          )
12492                        );
12493                      });  
12494                  }).catch(error => {
12495                      console.error('Error occurred:', error);
12496                  });
12497              } else {
12498                  console.error('No credential available');
12499              }
12500          }
12501       `;
12502
12503    document.body.append(googleOneTapButton);
12504    document.body.append(googleOneTapScript);
12505  }
12506
12507  oneTapSet = true;
12508}
12509
12510const googleLoginIcon = (
12511  theme,
12512  customColor
12513) => `
12514${
12515  theme === "match" || theme === "matchOutline" || theme === "custom"
12516    ? `<svg
12517    xmlns='https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png'
12518    xmlns:v='https://vecta.io/nano'
12519    width='24'
12520    height='24'
12521    viewBox='0 0 186.69 190.5'
12522  >
12523    <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="${
12524      theme === "custom" ? customColor : "#4285f4"
12525    }"/><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="${
12526        theme === "custom" ? customColor : "#34a853"
12527      }"/><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="${
12528        theme === "custom" ? customColor : "#fbbc05"
12529      }"/><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="${
12530        theme === "custom" ? customColor : "#ea4335"
12531      }" clip-path="none" mask="none"/></g>
12532  </svg>`
12533    : `<svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="25" height="25" viewBox="0 0 25 25" fill="none">
12534<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="${
12535        theme !== "black" ? "black" : "white"
12536      }"/>
12537<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="${
12538        theme !== "black" ? "black" : "white"
12539      }"/>
12540<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="${
12541        theme !== "black" ? "black" : "white"
12542      }"/>
12543<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="${
12544        theme !== "black" ? "black" : "white"
12545      }"/>
12546</svg>`
12547}`;
12548
12549const appleLoginIcon = (
12550  theme,
12551  customColor
12552) => `<svg width="24" height="24" viewBox="0 0 19 24" fill="none" xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
12553<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="${
12554  theme === "custom"
12555    ? customColor
12556    : theme === "match" || theme === "black"
12557    ? "white"
12558    : "black"
12559}"/>
12560</svg>`;
12561
12562const facebookLoginIcon = (
12563  theme,
12564  customColor
12565) => `
12566${
12567  theme === "match" || theme === "matchOutline" || theme === "custom"
12568    ? `<svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="25" viewBox="0 0 24 25" fill="none">
12569    <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="${
12570      theme === "custom" ? customColor : theme === "match" ? "white" : "#1977F3"
12571    }"/>
12572    <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="${
12573      theme === "match" ? "#1778f2" : "transparent"
12574    }"/>
12575    </svg>`
12576    : `<svg xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png" width="24" height="25" viewB
12576ox="0 0 24 25" fill="none">
12577<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="${
12578        theme === "black" ? "white" : "black"
12579      }"/>
12580<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="${
12581        theme === "black" ? "black" : "white"
12582      }"/>
12583</svg>`
12584}`;
12585
12586const whatsappLoginIcon = (
12587  theme,
12588  customColor
12589) => `<svg
12590  viewBox="0 0 24 24"
12591  fill="none"
12592  width="24"
12593  height="25"
12594  xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png"
12595>
12596  <g id="SVGRepo_bgCarrier" stroke-width="0"></g>
12597  <g
12598    id="SVGRepo_tracerCarrier"
12599    stroke-linecap="round"
12600    stroke-linejoin="round"
12601  ></g>
12602  <g id="SVGRepo_iconCarrier">
12603    <path
12604      fill-rule="evenodd"
12605      clip-rule="evenodd"
12606      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"
12607      fill="${
12608        theme === "match" || theme === "black"
12609          ? "#ffffff"
12610          : theme === "white"
12611          ? "#000000"
12612          : theme === "matchOutline"
12613          ? "#25d366"
12614          : customColor
12615      }"
12616    ></path>
12617  </g>
12618</svg>`;
12619
12620const microsoftLoginIcon = (
12621  theme,
12622  customColor
12623) => `<svg
12624xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png"
12625width="25"
12626height="25"
12627viewBox="0 0 48 48">
12628<path fill="${
12629  theme === "match" || theme == "matchOutline"
12630    ? "#ff5722"
12631    : theme === "black"
12632    ? "#ffffff"
12633    : theme === "white"
12634    ? "#000000"
12635    : customColor
12636}" d="M6 6H22V22H6z" transform="rotate(-180 14 14)"></path>
12637<path
12638  fill="${
12639    theme === "match" || theme == "matchOutline"
12640      ? "#4caf50"
12641      : theme === "black"
12642      ? "#ffffff"
12643      : theme === "white"
12644      ? "#000000"
12645      : customColor
12646  }"
12647  d="M26 6H42V22H26z"
12648  transform="rotate(-180 34 14)"></path>
12649<path
12650  fill="${
12651    theme === "match" || theme == "matchOutline"
12652      ? "#ffc107"
12653      : theme === "black"
12654      ? "#ffffff"
12655      : theme === "white"
12656      ? "#000000"
12657      : customColor
12658  }"
12659  d="M26 26H42V42H26z"
12660  transform="rotate(-180 34 34)"></path>
12661<path fill="${
12662  theme === "match" || theme == "matchOutline"
12663    ? "#03a9f4"
12664    : theme === "black"
12665    ? "#ffffff"
12666    : theme === "white"
12667    ? "#000000"
12668    : customColor
12669}" d="M6 26H22V42H6z" transform="rotate(-180 14 34)"></path>
12670</svg>`;
12671
12672const twitterLoginIcon = (
12673  theme,
12674  customColor
12675) => `<svg
12676xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png"
12677width="25"
12678height="25"
12679viewBox="0 0 48 48">
12680<polygon fill="${
12681  theme === "match" || theme === "black"
12682    ? "#ffffff"
12683    : theme === "matchOutline" || theme === "white"
12684    ? "#000000"
12685    : customColor
12686}" points="41,6 9.929,42 6.215,42 37.287,6"></polygon>
12687<polygon
12688  fill="${
12689    theme === "match" || theme === "black"
12690      ? "#000000"
12691      : theme === "matchOutline" || theme === "white"
12692      ? "#ffffff"
12693      : customColor
12694  }"
12695  fill-rule="evenodd"
12696  points="31.143,41 7.82,7 16.777,7 40.1,41"
12697  clip-rule="evenodd"></polygon>
12698<path
12699  fill="${
12700    theme === "match" || theme === "black"
12701      ? "#ffffff"
12702      : theme === "matchOutline" || theme === "white"
12703      ? "#000000"
12704      : customColor
12705  }"
12706  d="M15.724,9l20.578,30h-4.106L11.618,9H15.724 M17.304,6H5.922l24.694,36h11.382L17.304,6L17.304,6z"></path>
12707</svg>`;
12708
12709const amazonLoginIcon = (theme, customColor) => `
12710 <svg
12711      xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png"
12712      x="0px"
12713      y="0px"
12714      width="25"
12715      height="25"
12716      viewBox="0 0 50 50"
12717    >
12718      <path
12719        fill="${
12720          theme === "black"
12721            ? "#ffffff"
12722            : theme === "matchOutline"
12723            ? "#FF9900"
12724            : theme === "white" || theme === "match"
12725            ? "#000000"
12726            : customColor
12727        }"
12728        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"
12729      ></path>
12730    </svg>`;
12731
12732const instagramLoginIcon= (theme, customColor) => `
12733    <svg
12734      width="25"
12735      height="25"
12736      viewBox="0 0 25 24"
12737      fill="none"
12738      xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png">
12739      <path
12740        fill-rule="evenodd"
12741        clip-rule="evenodd"
12742        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.
1274264321C8.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"
12743        fill="url(#paint0_radial_378_3535)" />
12744      <path
12745        fill-rule="evenodd"
12746        clip-rule="evenodd"
12747        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"
12748        fill="url(#paint0_radial_378_3535)" />
12749      <path
12750        fill-rule="evenodd"
12751        clip-rule="evenodd"
12752        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.
1275264321C8.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"
12753        fill="url(#paint0_radial_378_3535)" />
12754      <path
12755        fill-rule="evenodd"
12756        clip-rule="evenodd"
12757        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"
12758        fill="url(#paint1_radial_378_3535)" />
12759      <defs>
12760        <radialGradient
12761          id="paint0_radial_378_3535"
12762          cx="0"
12763          cy="0"
12764          r="1"
12765          gradientUnits="userSpaceOnUse"
12766          gradientTransform="translate(17.4 22.7) rotate(-115.776) scale(27.2737 40.5665)">
12767          <stop offset="0.24392" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF1B90' : customColor}" />
12768          <stop offset="0.436673" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#F80261' : customColor}" />
12769          <stop offset="0.688476" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#ED00C0' : customColor}" />
12770          <stop offset="0.776787" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#C500E9' : customColor}" />
12771          <stop offset="0.893155" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#7017FF' : customColor}" />
12772        </radialGradient>
12773        <radialGradient
12774          id="paint1_radial_378_3535"
12775          cx="0"
12776          cy="0"
12777          r="1"
12778          gradientUnits="userSpaceOnUse"
12779          gradientTransform="translate(7.75 19.31) rotate(-57.4396) scale(11.8174 12.2918)">
12780          <stop stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FFD600' : customColor}" />
12781          <stop offset="0.484375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF6930' : customColor}" />
12782          <stop offset="0.734375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" />
12783          <stop offset="1" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" stop-opacity="0" />
12784        </radialGradient>
12785      </defs>
12786    </svg>`;
12787
12788const magicLinkLoginIcon = (theme, customColor) => `
12789  <svg
12790    xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png"
12791    width="25"
12792    height="25"
12793    fill="none"
12794    viewBox="0 0 25 25"
12795  >
12796    <path
12797      fill="${
12798        theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' || theme === 'white' ? '#000000' : customColor
12799      }"
12800      fillRule="evenodd"
12801      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"
12802      clipRule="evenodd"
12803    ></path>
12804  </svg>`;
12805
12806const mobileAppLoginIcon = (theme, customColor) => `
12807  <svg
12808    width="20"
12809    height="24"
12810    viewBox="0 0 12 16"
12811    fill="none"
12812    xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png"
12813  >
12814    <path
12815      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"
12816      fill=${
12817        theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#FD823E' : theme === 'white' ? '#000000' : customColor
12818      }
12819    />
12820  </svg>
12821`;
12822
12823const linkedinLoginIcon = (theme, customColor) => `
12824  <svg
12825    xmlns="https://w4d.kumostock.com/win4d/fresdo/logo-win4d.png"
12826    width="25"
12827    height="24"
12828    viewBox="0 0 25 24"
12829    fill="none"
12830  >
12831    <path
12832      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"
12833      fill=${
12834        theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#0A66C2' : theme === 'white' ? '#000000' : customColor
12835      }
12836    />
12837  </svg>
12838`;
12839
12840function isElementVisible(element) {
12841  return (
12842    document.body.contains(element) &&
12843    getComputedStyle(element).display !== "none" &&
12844    getComputedStyle(element).visibility !== "hidden" &&
12845    getComputedStyle(element).opacity !== "0" &&
12846    !element.hasAttribute("hidden") &&
12847    !isAncestorHidden(element)
12848  );
12849}
12850
12851function isAncestorHidden(element) {
12852  let parent = element.parentElement;
12853  while (parent) {
12854    if (
12855      getComputedStyle(parent).display === "none" ||
12856      getComputedStyle(parent).visibility === "hidden" ||
12857      getComputedStyle(parent).opacity === "0" ||
12858      parent.hasAttribute("hidden")
12859    ) {
12860      return true;
12861    }
12862    parent = parent.parentElement;
12863  }
12864  return false;
12865}
12866
12867function showAlert(message) {
12868  const alertBox = document.createElement("div");
12869  alertBox.textContent = message;
12870  alertBox.style.position = "fixed";
12871  alertBox.style.top = "20px";
12872  alertBox.style.right = "-300px"; // Start off-screen
12873  alertBox.style.backgroundColor = "#000000"; // Black background
12874  alertBox.style.color = "#ffffff"; // White text
12875  alertBox.style.padding = "15px";
12876  alertBox.style.borderRadius = "8px";
12877  alertBox.style.zIndex = "1000";
12878  alertBox.style.transition =
12879    "right 0.5s ease-in-out, opacity 0.5s ease-in-out"; // Transition for sliding and fading
12880  alertBox.style.boxShadow = "0 2px 5px rgba(0, 0, 0, 0.2)"; // Optional shadow for depth
12881
12882  document.body.appendChild(alertBox);
12883
12884  // Slide in
12885  requestAnimationFrame(() => {
12886    alertBox.style.right = "20px"; // Move into view
12887    alertBox.style.opacity = "1"; // Ensure opacity is set to 1
12888  });
12889
12890  // Slide out and remove the alert after a few seconds
12891  setTimeout(() => {
12892    alertBox.style.opacity = "0"; // Fade out
12893    alertBox.style.right = "-300px"; // Move out of view
12894
12895    // Wait for the transition to finish before removing the element
12896    setTimeout(() => {
12897      document.body.removeChild(alertBox);
12898    }, 500); // Match this duration with the exit transition duration
12899  }, 3000);
12900}
12901</script>
12901
12902
12903<style>
12904    .daftarku-fixed-footer {
12905            display: flex;
12906            justify-content: space-around;
12907            position: fixed;
12908            background: linear-gradient(to bottom, #000000 0%, #3d3d3d, #000000 100%);
12909            box-shadow: 0 0 12px #ffd700;
12910            outline: none;
12911            padding: 5px 0;
12912            box-shadow: 0 0 0 0 2px 2px #198f01;
12913            left: 0;
12914            right: 0;
12915            bottom: 0;
12916            z-index: 99;
12917            border-radius: 40px 40px 0px 0px;
12918            border-style:dashed;
12919            
12920        }
12921
12922        .daftarku-fixed-footer a {
12923            flex-basis: calc((100% - 15px*6)/ 5);
12924            text-decoration: none;
12925            display: flex;
12926            flex-direction: column;
12927            justify-content: center;
12928            align-items: center;
12929            color: #fff;
12930            max-width: 75px;
12931            font-size: 12px;
12932            font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
12933        }
12934
12935        .daftarku-fixed-footer a:hover {
12936            font-weight: bold;
12937        }
12938
12939        .daftarku-fixed-footer .center {
12940            transform: scale(1.5) translateY(-5px);
12941            background: center no-repeat;
12942            background-size: contain;
12943            background-color: inherit;
12944            border-radius: 50%;
12945        }
12946
12947        .daftarku-fixed-footer img {
12948            max-width: 20px;
12949            margin-bottom: 0;
12950            max-height: 20px;
12951        }
12952</style>
12953    
12954    <div class="daftarku-fixed-footer">
12955    <a href="https://ladangwin4d.com/resmi/" rel="nofollow noopener" target="_blank">
12956        <img layout="intrinsic" height="20px" width="20px" src="https://w4d.kumostock.com/win4d/fresdo/icon-win4d.webp" alt="PROMOSI">
12957        PROMO
12958    </a>
12959    <a href="https://ladangwin4d.com/resmi/" rel="nofollow noopener" target="_blank">
12960        <img layout="intrinsic" height="20px" width="20px" src="https://w4d.kumostock.com/win4d/fresdo/icon-win4d.webp" alt="LOGIN">
12961        LOGIN
12962    </a>
12963    <a href="https://ladangwin4d.com/resmi/" rel="nofollow noopener" target="_blank" class="tada">
12964        <img layout="intrinsic" height="20px" width="20px" src="https://w4d.kumostock.com/win4d/fresdo/icon-win4d.webp" alt="DAFTAR">
12965        DAFTAR
12966    </a>
12967    <a href="https://ladangwin4d.com/resmi/" rel="nofollow noopener" target="_blank">
12968        <img layout="intrinsic" height="20px" width="20px" src="https://w4d.kumostock.com/win4d/fresdo/icon-win4d.webp" alt="WHATSAPP">
12969        WHATSAPP
12970    </a>
12971    <a href="https://ladangwin4d.com/resmi/" rel="nofollow noopener" target="_blank"
12972        class="js_live_chat_link live-chat-link">
12973        <img class="live-chat-icon" layout="intrinsic" height="20px" width="20px" src="https://w4d.kumostock.com/win4d/fresdo/icon-win4d.webp" alt="Live Chat">
12974        Live Chat
12975    </a>
12976</div>
12977</div>
12978<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"0234e56ced024ed1a7959a0756f5c3dd","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 2 bytes, line 12978
12978
12979<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":"65b23d50245041fb819dad5e8798074d","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 2 bytes, line 12979
12979
12980<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":"ea786a8dc26c4969bee40dd6cddf21a6","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 2 bytes, line 12980
12980
12981<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4bc70e2c01a94c73b74392e4234840661791215815920" integrity="sha512-L0ha0OXavK/8okipN9F8BtP84dg9DUhPERbBXzwI6dgTA55d2+yweo3pn5CSFYs45/r8md2+xvUPtTdvTNRfjA==" data-cf-beacon='{"version":"2024.11.0","token":"ba6e8e65af884cc486dd41bfc09ba89a","r":1,"spa":2}' crossorigin="anonymous"></script>
12981
12982</body>
12983</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.