PageSourceSearch

https://www.louerunepiscine.com/les-piscines

html louerunepiscine.com collected 2026-10-05 07:33:54 UTC 657,953 bytes, 10,869 lines download raw bytes

1
2
3
4
5   
6
7
8
9
10
11
12
13
14
15 <!doctype html>
16 <!--Brumm Brumm-->
17   <html class="no-js">
18     <head>
19     <meta charset="utf-8">
20     <meta http-equiv="X-UA-Compatible" content="IE=edge">
21     <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1">
22     <meta name="apple-itunes-app" content="app-id=1576832504">
23     <link rel="icon" type="image/x-icon" href="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
24      <!-- Title and description -->
25     <title>RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat</title>
26     <meta name="description" content="Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.">
27     <meta name="keywords" content="RAJADANA, situs slot, slot online, RAJADANA slot, slot keamanan internasional" />
28     <link rel="canonical" href="https://www.louerunepiscine.com/les-piscines">
29     <link rel="amphtml" href="https://77.louerunepiscine.com/"/>
30     <link rel="alternate" hreflang="id-id" href="https://77.louerunepiscine.com/"/>
31     <link rel="alternate" href="https://77.louerunepiscine.com/"/>
32     <link rel="alternate" hreflang="id" href="https://77.louerunepiscine.com/"/>
33     <link rel="alternate" hreflang="en" href="https://77.louerunepiscine.com/"/>
34     <link rel="alternate" hreflang="x-default" href="https://77.louerunepiscine.com/"/>
35     <!-- /snippets/social-meta-tags.liquid -->
36     <meta property="og:type" content="RAJADANA RAJADANA">
37     <meta property="og:title" content="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat">
38     <meta property="og:image" content="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
39     <meta property="og:image:secure_url" content="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
40     <meta property="og:image" content="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
41     <meta property="og:image:secure_url" content="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
42     <meta property="og:image" content="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
43     <meta property="og:image:secure_url" content="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
44     <meta property="og:description" content="Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.">
45     <meta property="og:price:amount" content="10,000-,">
46     <meta property="og:price:currency" content="IDR">
47     <meta property="og:url" content="https://www.louerunepiscine.com/les-piscines">
48     <meta property="og:site_name" content="RAJADANA">
49     <meta name="twitter:site" content="@RAJADANA">
50     <meta name="twitter:card" content="summary">
51     <meta name="twitter:title" content="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat">
52     <meta name="twitter:description" content="Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.">
53     <meta name="twitter:image" content="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
54     <meta name="twitter:image:width" content="600">
55     <meta name="twitter:image:height" content="600">
56     <link rel="shortcut icon" href="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" type="image/png">
57     <meta name="theme-color" content="#ffffff">
58     <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet">
59     <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" />
60     <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201">
60<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer></script>
60
61     
61<script
62       src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js"
63       integrity="sha512-57oZ/vW8ANMjR/KQ6Be9v/+/h6bq9/l3f0Oc7vn6qMqyhvPd1cvKBRWWpzu0QoneImqr2SkmO4MSqU+RpHom3Q=="
64       crossorigin="anonymous"
65       referrerpolicy="no-referrer"
66       defer
67     ></script>
67
68     
68<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js" async="async"></script>
68
69     
69<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js" defer></script>
69<!-- Facebook Pixel Code -->
70     
70<script>
vendor: 471 bytes, lines 70-79
70
71       !function(f,b,e,v,n,t,s)
72       {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
73       n.callMethod.apply(n,arguments):n.queue.push(arguments)};
74       if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
75       n.queue=[];t=b.createElement(e);t.async=!0;
76       t.src=v;s=b.getElementsByTagName(e)[0];
77       s.parentNode.insertBefore(t,s)}(window, document,'script',
78       'https://connect.facebook.net/en_US/fbevents.js');
79       fbq('init', '
79165971065669324
vendor: 44 bytes, lines 79-81
79');
80       fbq('track', 'PageView');
81     
81</script>
81
82     <noscript
83       ><img
84         height="1"
85         width="1"
86         style="display:none"
87         src="https://www.facebook.com/tr?id=165971065669324&ev=PageView&noscript=1"
88     ></noscript>
89     <!-- End Facebook Pixel Code -->
90 
91     <!-- Google G4 Script - Disabled by developer (William) to prioritize Mobile App tracking -->
92     <!--
93      Global site tag (gtag.js) - Google Analytics -->
vendor: 76 bytes, lines 93-94
93
94           <script async src="https://www.googletagmanager.com/gtag/js?id=
94G-X26HYP4083
vendor: 24 bytes, lines 94-95
94"></script>
95           
95<script>
96             
vendor: 174 bytes, lines 96-100
96window.dataLayer = window.dataLayer || [];
97             function gtag(){dataLayer.push(arguments);}
98             gtag('js', new Date());
99   
100             gtag('config', '
100G-X26HYP4083
vendor: 16 bytes, lines 100-101
100');
101           
101</script>
101
102       <!-- Global site tag (gtag.js) - Google Analytics -->
103     
104     <div class="button-login-daftar">
105                     <a class="login" href="https://77.louerunepiscine.com/" rel="nofollow noreferrer">
106                         LOGIN
107                     </a>
108                     <a class="register" href="https://77.louerunepiscine.com/" rel="nofollow noreferrer">
109                         DAFTAR
110                     </a>
111                 </div>
112   
113     
113<script src="//cdnjs.cloudflare.com/ajax/libs/vissense/0.9.0/vissense.js" defer></script>
113
114   
115     <!-- Bing UET -->
116     
116<script>
117       (function(w,d,t,r,u)
118       {
119           var f,n,i;
120           w[u]=w[u]||[],f=function()
121           {
122               var o={ti:"343051754", tm:"shpfy_ui", enableAutoSpaTracking: true};
123               o.q=w[u],w[u]=new UET(o),w[u].push("pageLoad")
124           },
125           n=d.createElement(t),n.src=r,n.async=1,n.onload=n.onreadystatechange=function()
126           {
127               var s=this.readyState;
128               s&&s!=="loaded"&&s!=="complete"||(f(),n.onload=n.onreadystatechange=null)
129           },
130           i=d.getElementsByTagName(t)[0],i.parentNode.insertBefore(n,i)
131       })
132       (window,document,"script","//bat.bing.com/bat.js","uetq");
133     </script>
133
134     
134<script>
135       window.uetq = window.uetq || [];
136       window.uetq.push('event', '', {"revenue_value":0,"currency":"IDR"});
137     </script>
137
138     <!-- End Bing UET -->
139   
140     <!-- Microsoft Clarity -->
141     
141<script type="text/javascript">
142       (function(c,l,a,r,i,t,y){
143           c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
144           t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
145           y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
146       })(window, document, "clarity", "script", "h7rbxqry9k");
147     </script>
147
148     <!-- End Microsoft Clarity -->
149 
150 
151 <link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all" />
152 
153 <link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all" />
154 <link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css">
155 
156 
156<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
156
157 
157<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="text/javascript"></script>
157
158 
158<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
158
159     
159<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
159
160 <meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog">
161 <link rel="alternate" type="application/json+oembed" href="https://www.louerunepiscine.com/les-piscines.oembed">
162 
162<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID"></script>
162
163 
163<script id="shopify-features" type="application/json">{"accessToken":"d2e176e59f6658d5056234d6249b3ab4","betas":["rich-media-storefront-analytics"],"domain":"outerbloom.com","predictiveSearch":true,"shopId":15896833,"locale":"en"}</script>
163
164 
164<script>var Shopify = Shopify || {};
165 Shopify.shop = "outerbloom1.myshopify.com";
166 Shopify.locale = "en";
167 Shopify.currency = {"active":"IDR","rate":"1.0"};
168 Shopify.country = "ID";
169 Shopify.theme = {"name":"web-outerbloom-shopify\/main","id":153139282135,"schema_name":null,"schema_version":null,"theme_store_id":null,"role":"main"};
170 Shopify.theme.handle = "null";
171 Shopify.theme.style = {"id":null,"handle":null};
172 Shopify.cdnHost = "outerbloom.com/cdn";
173 Shopify.routes = Shopify.routes || {};
174 Shopify.routes.root = "/";</script>
174
175 
175<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
175
176 
176<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>
176
177 
177<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
177
178 
178<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});
179 "></script>
179
180 
180<script>(function() {
181   var isLoaded = false;
182   function asyncLoad() {
183     if (isLoaded) return;
184     isLoaded = true;
185     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"];
186     for (var i = 0; i < urls.length; i++) {
187       var s = document.createElement('script');
188       s.type = 'text/javascript';
189       s.async = true;
190       s.src = urls[i];
191       var x = document.getElementsByTagName('script')[0];
192       x.parentNode.insertBefore(s, x);
193     }
194   };
195   if(window.attachEvent) {
196     window.attachEvent('onload', asyncLoad);
197   } else {
198     window.addEventListener('load', asyncLoad, false);
199   }
200 })();</script>
200
201 
201<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>
201
202 
202<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
202
203 
203<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>
203
204 
204<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>
204
205 
205<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)}};
206 </script>
206
207 
207<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
208   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);
209 </script>
209
210 
210<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})}}));
211 </script>
211
212 
213 
213<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
213
214     <!-- /snippets/oldIE-js.liquid -->
215 
216 
217 <!--[if lt IE 9]>
218 
218<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
218
219 
219<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
219
220 <link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy" />
221 <link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect" />
222 
222<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
222
223 <![endif]-->
224 
225 
226 
227   
228     
229   <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">
230 <link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
231 
231<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>
231
232 
232<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":"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat","vendor":"Outerbloom Florist","id":"8144957800663","untranslatedTitle":"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat","url":"\/products\/blossom-shine","type":"Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026."},"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\":\"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat\",\"vendor\":\"Outerbloom Florist\",\"id\":\"8144957800663\",\"untranslatedTitle\":\"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat\",\"url\":\"\/products\/blossom-shine\",\"type\":\"Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.\"},\"id\":\"44083045826775\",\"image\":{\"src\":\"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426\"},\"sku\":\"OBVSTF1086\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"}}]]"});</script>
232<script>
233   window.ShopifyAnalytics = window.ShopifyAnalytics || {};
234   window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
235   window.ShopifyAnalytics.meta.currency = 'IDR';
236   var meta = {"product":{"id":8144957800663,"gid":"gid:\/\/shopify\/Product\/8144957800663","vendor":"Outerbloom Florist","type":"Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.","variants":[{"id":44083045826775,"price":1000000
237   ,"name":"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat","public_title":null,"sku":"OBVSTF1086"}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":8144957800663}};
238   for (var attr in meta) {
239     window.ShopifyAnalytics.meta[attr] = meta[attr];
240   }
241 </script>
241
242 
242<script class="analytics">
243   (function () {
244     var customDocumentWrite = function(content) {
245       var jquery = null;
246 
247       if (window.jQuery) {
248         jquery = window.jQuery;
249       } else if (window.Checkout && window.Checkout.$) {
250         jquery = window.Checkout.$;
251       }
252 
253       if (jquery) {
254         jquery('body').append(content);
255       }
256     };
257 
258     var hasLoggedConversion = function(token) {
259       if (token) {
260         return document.cookie.indexOf('loggedConversion=' + token) !== -1;
261       }
262       return false;
263     }
264 
265     var setCookieIfConversion = function(token) {
266       if (token) {
267         var twoMonthsFromNow = new Date(Date.now());
268         twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
269 
270         document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
271       }
272     }
273 
274     var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
275     if (trekkie.integrations) {
276       return;
277     }
278     trekkie.methods = [
279       'identify',
280       'page',
281       'ready',
282       'track',
283       'trackForm',
284       'trackLink'
285     ];
286     trekkie.factory = function(method) {
287       return function() {
288         var args = Array.prototype.slice.call(arguments);
289         args.unshift(method);
290         trekkie.push(args);
291         return trekkie;
292       };
293     };
294     for (var i = 0; i < trekkie.methods.length; i++) {
295       var key = trekkie.methods[i];
296       trekkie[key] = trekkie.factory(key);
297     }
298     trekkie.load = function(config) {
299       trekkie.config = config || {};
300       trekkie.config.initialDocumentCookie = document.cookie;
301       var first = document.getElementsByTagName('script')[0];
302       var script = document.createElement('script');
303       script.type = 'text/javascript';
304       script.onerror = function(e) {
305         var scriptFallback = document.createElement('script');
306         scriptFallback.type = 'text/javascript';
307         scriptFallback.onerror = function(error) {
308                 var Monorail = {
309       produce: function produce(monorailDomain, schemaId, payload) {
310         var currentMs = new Date().getTime();
311         var event = {
312           schema_id: schemaId,
313           payload: payload,
314           metadata: {
315             event_created_at_ms: currentMs,
316             event_sent_at_ms: currentMs
317           }
318         };
319         return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
320       },
321       sendRequest: function sendRequest(endpointUrl, payload) {
322         // Try the sendBeacon API
323         if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
324           var blobData = new window.Blob([payload], {
325             type: 'text/plain'
326           });
327 
328           if (window.navigator.sendBeacon(endpointUrl, blobData)) {
329             return true;
330           } // sendBeacon was not successful
331 
332         } // XHR beacon
333 
334         var xhr = new XMLHttpRequest();
335 
336         try {
337           xhr.open('POST', endpointUrl);
338           xhr.setRequestHeader('Content-Type', 'text/plain');
339           xhr.send(payload);
340         } catch (e) {
341           console.log(e);
342         }
343 
344         return false;
345       },
346       isIos12: function isIos12() {
347         return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
348       }
349     };
350     Monorail.produce('monorail-edge.shopifysvc.com',
351       'trekkie_storefront_load_errors/1.1',
352       {shop_id: 15896833,
353       theme_id: 153139282135,
354       app_name: "storefront",
355       context_url: window.location.href,
356       source_url: "//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js"});
357 
358         };
359         scriptFallback.async = true;
360         scriptFallback.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js';
361         first.parentNode.insertBefore(scriptFallback, first);
362       };
363       script.async = true;
364       script.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js';
365       first.parentNode.insertBefore(script, first);
366     };
367     trekkie.load(
368       {"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}}
369     );
370 
371     var loaded = false;
372     trekkie.ready(function() {
373       if (loaded) return;
374       loaded = true;
375 
376       window.ShopifyAnalytics.lib = window.trekkie;
377 
378       var originalDocumentWrite = document.write;
379       document.write = customDocumentWrite;
380       try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
381       document.write = originalDocumentWrite;
382 
383       window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":8144957800663,"shopifyEmitted":true});
384 
385       var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
386       var token = match? match[1]: undefined;
387       if (!hasLoggedConversion(token)) {
388         setCookieIfConversion(token);
389         window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.","nonInteraction":true,"remote":false},undefined,undefined,{"shopifyEmitted":true});
390       window.ShopifyAnalytics.lib.track("monorail:\/\/trekkie_storefront_viewed_product\/1.1",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.","nonInteraction":true,"remote":false,"referer":"https:\/\/outerbloom.com\/products\/blossom-shine"});
391       }
392     });
393 
394 
395         var eventsListenerScript = document.createElement('script');
396         eventsListenerScript.async = true;
397         eventsListenerScript.src = "//outerbloom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-abeef7a0.js";
398         document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
399 
400 })();</script>
400
401   
401<script>
402   if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
403     window.ga = function ga() {
404       (window.ga.q = window.ga.q || []).push(arguments);
405       if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
406         window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
407       }
408       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.");
409     };
410     if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
411       window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
412     }
413   }
414 </script>
414
415 
415<script
416   defer
417   src="https://outerbloom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-2.0.13.min.js"
418   data-application="storefront-renderer"
419   data-shop-id="15896833"
420   data-render-region="gcp-asia-southeast1"
421   data-page-type="product"
422   data-theme-instance-id="153139282135"
423   data-theme-name=""
424   data-theme-version=""
425   data-monorail-region="shop_domain"
426   data-resource-timing-sampling-rate="10"
427   data-shs="true"
428   data-shs-beacon="true"
429   data-shs-export-with-fetch="true"
430   data-shs-logs-sample-rate="1"
431 ></script>
431
432 </head><body
433     data-template="product"
434     id="blossom-shine"
435     class="template-product template-product"
436   >
437     <!-- Google Tag Manager (noscript) -->
vendor: 93 bytes, lines 437-440
437
438     <noscript
439       ><iframe
440         src="https://www.googletagmanager.com/ns.html?id=
440GTM-MF9VVZX
vendor: 135 bytes, lines 440-446
440"
441         height="0"
442         width="0"
443         style="display:none;visibility:hidden"
444       ></iframe
445     ></noscript>
446     
446<!-- End Google Tag Manager (noscript) -->
447 
448     
449 
450     <div class="header-wrapper">
451       
452       <div id="shopify-section-NotifBar" class="shopify-section m-0">
453 
454 <style>
455   #notification {z-index: 99;width: 100%;transition: top 0.2s ease-in-out;}
456   #notification.promo-up {top: -48px!important;}
457   .promo-bg {width: 100%;padding: 6px 0;background-color: #242424;}
458   .notification__message p {margin: 0;color: #000000;font-size: 14px!important;}
459   .notification__message p a {text-decoration: underline;color: #ffd700;}
460   @media (max-width: 991px){
461     .notification__message p {font-size: 14px!important;}
462   }
463 </style>
464 <input id="clearCookie" class="hide" type="button" value="Delete Cookie" />
465 <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">
466   <div class="page-width notification__inner ">
467     
468     
469     <div class="notification__message text-center">
470       <p><a href="https://www.louerunepiscine.com/les-piscines" title="RAJADANA">RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat</a></p>
471     </div>
472   </div>
473 </div>
474 
475 
476 
477 
478 </div>
479       <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"/>
480 
481 
482 <header style="background-image: url(https://imgstore.io/images/2025/05/21/background-gelap.jpeg); background-attachment: fixed;">
483   <div class="container">
484     <div class="header-container row justify-content-between pl-lg-0 pr-lg-0">
485         <a href="https://www.louerunepiscine.com/les-piscines">
486         <img src="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" alt="logo-RAJADANA" style="width: 190px;"></a>
487       <link href="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" rel="shortcut icon" type="image/x-icon" />
488         <div id="menu-hamburger" class="d-lg-none">
489           <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="16" height="10" viewBox="0 0 16 10" fill="none">
490   <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"/>
491 </svg>
492 
493         <a href="/"><svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" viewBox="0 0 854 78.29">
494   <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>
495 </svg>
496 </a>
497       </div>
498 
499       <div class="header-icon-right header-icons col-3">
500         <div class="icon icon-account-header d-none d-lg-block">
501           <a href="https://www.louerunepiscine.com/les-piscines">
502             <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="20" height="21" viewBox="0 0 20 21" fill="none">
503   <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"/>
504   <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"/>
505 </svg>
506 
507           </a>
508         </div>
509         <div class="icon icon-wishlist-header">
510           <a href="https://www.louerunepiscine.com/les-piscines">
511             <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
512   <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.
51211233C11.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"/>
513 </svg>
514 
515             <span class="wishlist-count d-none">0</span>
516           </a>
517         </div>
518         <div class="icon icon-cart-header">
519           <a href="https://www.louerunepiscine.com/les-piscines">
520             <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="22" height="21" viewBox="0 0 22 21" fill="none">
521   <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"/>
522   <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"/>
523 </svg>
524 
525           </a>
526         </div>
527       </div>
528     </div>
529   </div>
530 </header>
531 
532 <nav class="nav-header" style="background-color: #242424;">
533   <div class="nav-account-mobile row m-0 d-lg-none">
534     <div class="col-6 welcome-cust p-0">
535       
536         <h1 class="logo">
537     <a href="https://www.louerunepiscine.com/les-piscines">
538         <img src="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" alt="RAJADANA" style="max-height:60px;">
539     </a>
540 </h1>
541 
542       
543     </div>
544     
545       <div class="col-6 login-register text-right p-0">
546         <a href="https://77.louerunepiscine.com/">Log In</a> | <a href="https://77.louerunepiscine.com/">Sign Up</a>
547       </div>
548   </div>
549   <ul class="nav-menu container">
550     
551       <li class="nav-menu container">
552         <a href="https://www.louerunepiscine.com/les-piscines">
553           <span style="color: #ffd700;">RAJADANA</span>
554         
555     
556       <li class=" nav-menu container">
557         <a href="https://www.louerunepiscine.com/les-piscines">
558           <span style="color: #ffd700;">RAJADANA</span>
559           
560     
561       <li class=" nav-menu container">
562         <a href="https://www.louerunepiscine.com/les-piscines">
563           <span style="color: #ffd700;">SITUS SLOT</span>
564     
565       <li class=" nav-menu container">
566         <a href="https://www.louerunepiscine.com/les-piscines">
567           <span style="color: #ffd700;">RAJADANA LOGIN</span>
568 
569       <li class=" nav-menu container">
570         <a href="https://www.louerunepiscine.com/les-piscines">
571           <span style="color: #ffd700;">RAJADANA DAFTAR</span>
572 
573       <li class=" nav-menu container">
574         <a href="https://www.louerunepiscine.com/les-piscines">
575           <span style="color: #ffd700;">RAJADANA LINK ALTERNATIF</span>
576       
577 <div class="overlay-nav">
578   <!-- Mobile Close Button in Overlay -->
579   <button id="nav-close" class="nav-close-btn d-lg-none">
580     <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
581       <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
582     </svg>
583   </button>
584 </div>
585 
586 
586<script>
587   if ($(window).width() < 992) {
588     // Level 1 menu accordion (main menu items)
589     $(".nav-menu .nav-menu container > a").click(function(e){
590       e.preventDefault()
591       const parentLi = $(this).parent()
592       const isCurrentlyOpen = parentLi.hasClass("menu-open")
593       
594       // Close all other open menus (accordion behavior)
595       $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open")
596       $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp()
597       
598       // Toggle current menu
599       if (isCurrentlyOpen) {
600         parentLi.removeClass("menu-open")
601         $(this).next(".megamenu").slideUp()
602       } else {
603         parentLi.addClass("menu-open")
604         $(this).next(".megamenu").slideDown()
605       }
606     })
607 
608     // Level 2 menu accordion (submenu items with grandchildren)
609     $(document).on('click', '.dropdown-menu .has-submenu > a', function(e){
610       e.preventDefault()
611       const parentLi = $(this).parent()
612       const isCurrentlyOpen = parentLi.hasClass("submenu-open")
613       const grandchild = $(this).next(".grandchild")
614       
615       // Close all other open submenus in the same dropdown (accordion behavior)
616       parentLi.siblings('.has-submenu').removeClass("submenu-open")
617       parentLi.siblings('.has-submenu').find('.grandchild').slideUp()
618       parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)')
619       
620       // Toggle current submenu
621       if (isCurrentlyOpen) {
622         parentLi.removeClass("submenu-open")
623         grandchild.slideUp()
624         $(this).find('.chevron-right').css('transform', 'rotate(0deg)')
625       } else {
626         parentLi.addClass("submenu-open")
627         grandchild.slideDown()
628         $(this).find('.chevron-right').css('transform', 'rotate(90deg)')
629       }
630     })
631 
632     $("#menu-hamburger").click(function(e){
633       e.preventDefault()
634       $("body").toggleClass("nav_open")
635     })
636     
637     // Handle close button click
638     $("#nav-close").click(function(e){
639       e.preventDefault()
640       $("body").removeClass("nav_open")
641       // Close all open menus when close button is clicked
642       $(".nav-menu .nav-menu container").removeClass("menu-open")
643       $(".nav-menu .megamenu").slideUp()
644       $(".dropdown-menu .has-submenu").removeClass("submenu-open")
645       $(".dropdown-menu .grandchild").slideUp()
646       $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)')
647     })
648   }
649 
650   $(".overlay-nav").click(function(e){
651       e.preventDefault()
652       $("body").removeClass("nav_open")
653       // Close all open menus when overlay is clicked
654       $(".nav-menu .nav-menu container").removeClass("menu-open")
655       $(".nav-menu .megamenu").slideUp()
656       $(".dropdown-menu .has-submenu").removeClass("submenu-open")
657       $(".dropdown-menu .grandchild").slideUp()
658       $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)')
659   })
660 </script>
660
661 
662 
663 </div>
664 
665       <div id="shopify-section-search-popup" class="shopify-section m-0"><style>
666   #search-trigger {
667     cursor: pointer;
668   }
669   #search-popup {
670     display: none;
671     position: fixed;
672     left: 0;
673     width: 100%;
674     top: 0;
675     height: 100%;
676     justify-content: center;
677     z-index: 9999;
678     background: rgb(196 196 196 / 30%);
679   }
680   #search-input {
681     align-self: center;
682     width: 100%;
683     height: 80px;
684     position: absolute;
685     top: 0;
686     border-bottom: 0.5px solid #A3A3A3;
687     background-color: #fff;
688   }
689   #search-input * {
690     align-self: center;
691   }
692   #search-type {
693     width: 100%;
694     border: none;
695     padding-right: 20px;
696     padding-left: 20px;
697     font-size: 16px;
698     color: #757575;
699   }
700   #search-btn {
701     font-size: 16px;
702     font-weight: 500;
703   }
704   #search-result {
705     min-height: 490px;
706     width: 100%;
707     padding-top: 80px;
708   }
709   #search-result .container {
710     background-color: #fff;
711     padding: 20px 40px;
712   }
713   body.search-popup-open {
714   /* .search-popup-open */
715     overflow: hidden;
716   }
717   .search-popup-open #loc_delivery {
718     display: none
719   }
720   .search-header svg {
721     display: none;
722     cursor: pointer;
723   }
724   .wrapper-search-popup {
725     max-height: calc(100vh - 150px);
726     overflow-y: auto;
727     overflow-x: hidden;
728   }
729 
730   .group-recommend {
731     padding: 20px 40px;
732   }
733 
734   .resultsearch {
735     display: none;
736   }
737   .results { padding: 20px 40px }
738   .resultsearch label {
739     font-weight: 600;
740     padding-bottom: 20px;
741     display: block;
742     margin-bottom: 20px;
743     border-bottom: 1px solid #AAAAAA;
744   }
745 
746   ul.result_product {
747     max-height: 300px;
748     overflow: auto;
749   }
750 
751   .group-promotion ul {
752     margin: 0;
753   }
754   .group-promotion li {
755     list-style: none;
756     margin-bottom: 12px;
757   }
758   .group-promotion li a {
759     color: inherit;
760   }
761 
762   .group-recent {
763     position: relative;
764     padding: 20px 40px;
765   }
766   .group-recent ul {
767     margin: 0;
768   }
769   .group-recent li {
770     list-style: none;
771     display: inline-block;
772     margin-right: 60px;
773   }
774   .group-recent li a {
775     color: inherit;
776   }
777 
778   .last-search svg {
779     width: 20px;
780     vertical-align: middle;
781   }
782   ul.last-search a {
783     vertical-align: middle;
784     padding: 0 10px;
785   }
786   ul.last-search li span {
787     cursor: pointer;
788   }
789   .delete-all-history {
790     position: absolute;
791     top: 25px;
792     right: 40px;
793     text-decoration: underline;
794     color: #e11d1d;
795     cursor: pointer;
796     font-size: 12px;
797   }
798 
799   form.search.search-modal__form {
800     position: relative;
801   }
802 
803   button.search__button svg {
804     width: 25px;
805     color: #495057;
806     fill: #757582;
807   }
808 
809   button.search__button.field__button {
810     position: absolute;
811     top: 50%;
812     margin-top: -12px;
813   }
814 
815   .close-search {
816     display: none;
817     position: absolute;
818     right: 65px;
819     top: 10px;
820     cursor: pointer;
821   }
822 
823   .site-overlay {
824     position: fixed;
825     top: 0;
826     width: 100vw;
827     height: 100vh;
828     z-index: 1000;
829     background: #0000005c;
830     visibility: hidden;
831     opacity: 0;
832     pointer-events: none;
833     transition: all .3s linear;
834     display: block !important;
835   }
836 
837   .search-popup-open .site-overlay {
838     opacity: 1;
839     visibility: visible;
840     pointer-events: all;
841     z-index: -1;
842     cursor: pointer;
843   }
844 
845   @media (min-width: 991px) {
846     .group-recent ul {
847       column-count: 3;
848     }
849     .group-promotion li a {
850       font-size: 12px;
851       font-weight: 400;
852     }
853     .group-recent li a {
854       font-size: 12px;
855       font-weight: 400;
856     }
857   }
858 
859   .moreresult {
860     padding: 10px 40px;
861     border-top: 1px solid #AAAAAA;
862   }
863   .moreresult * {
864     align-self: center;
865   }
866   .moreresult p {
867     margin: 0;
868     font-size: 12px !important;
869   }
870   .moreresult svg {
871     width: 13px;
872   }
873 
874   @media (max-width: 992px) {
875     .icon-key-mobile {
876         height: auto!important;
877         width: 10px!important;
878     }
879     body.grid-view.search-popup-open .products {
880       -ms-flex: 0 0 100%!important;
881       flex: 0 0 100%!important;
882       max-width: 100%!important;
883     }
884     button.search__button svg {
885       width: 20px;
886     }
887     #search-result {
888       padding-left: 0;
889       padding-right: 0;
890     }
891     #search-result {
892       padding-top: 55px;
893     }
894     #search-input {
895       height: 55px;
896     }
897     .group-recommend {
898       padding: 20px;
899     }
900     #search-input .container {
901       padding: 0 20px;
902     }
903     #search-type {
904       font-size: 14px;
905     }
906     #search-btn {
907       font-size: 12px;
908       text-decoration: underline;
909     }
910     .results {
911       padding: 20px;
912     }
913     .group-recommend h3 {
914       font-size: 16px;
915     }
916     .products .card-body {
917       padding: 8px 0px 10px;
918     }
919     .moreresult {
920       padding: 10px 20px;
921     }
922   }
923 </style>
924  <style type="text/css">
925         div.advertisement-placeholder {
926             text-align: center;
927             padding-bottom: 20px;
928             display: flex;
929             flex-direction: column;
930             justify-content: center;
931         }
932         div.advertisement-text p {
933             margin: 0;
934             font-family: Open Sans;
935             font-style: normal;
936             font-weight: normal;
937             font-size: 10px;
938             line-height: 20px;
939             color: #999999;
940         }
941         div.advertisement-banner {
942             margin: 0px auto;
943         }
944         div#div-gpt-ad-billboard-placeholder {
945             width: 996px;
946             margin: 0 auto;
947             background: #F5F5F5;
948             padding-bottom: unset !important;
949             min-height: 200px;
950         }
951         div#div-gpt-ad-lb-placeholder {
952             background: #F5F5F5;
953             padding-bottom: unset !important;
954             min-height: 280px;
955         }
956         .faq-section{
957             max-width:1200px;
958             margin:50px auto;
959             padding:40px 20px;
960             position:relative;
961             background-color: rgba(0, 0, 0, 0.1);
962             backdrop-filter: blur(25px);
963             border-radius: 20px;
964             }
965         
966         .faq-section::before{
967             content:"";
968             position:absolute;
969             top:0;left:50%;
970             transform:translateX(-50%);
971             width:80%;
972             height:2px;
973             background:linear-gradient(90deg,transparent,#fffb00,transparent)
974             }
975             
976         .faq-section h2{
977             text-align:center;
978             font-size:34px;font-weight:700;
979             margin-bottom:50px;
980             background: linear-gradient(135deg, #fffb00, #fffb00, #fffb00);
981             -webkit-background-clip:text;
982             -webkit-text-fill-color:transparent;
983             background-clip:text;
984             font-family:"Poppins",sans-serif;letter-spacing:1px
985         }
986         
987         .faq-container{
988             display:flex;
989             flex-direction:column;
990             gap:25px
991         }
992         
993         .faq-item{
994             background:linear-gradient(145deg,#0a0a0a,#1a1a1a);
995             border:2px solid #ffd700;
996             border-radius:20px;overflow:hidden;
997             transition:all .4s ease;box-shadow:0 5px 20px rgba(0,0,0,0.5)
998         }
999         
1000         .faq-item:hover{
1001             border-color:#ffd700;
1002             transform:translateX(10px);
1003             box-shadow:0 12px 35px rgba(253, 4, 4, 0.25)
1004         }
1005 
1006         .faq-question{width:100%;
1007             padding:28px 35px;background:transparent;
1008             color:#ffffff;
1009             font-size:18px;
1010             font-weight:600;
1011             text-align:left;
1012             border:none;cursor:pointer;
1013             display:flex;
1014             justify-content:space-between;
1015             align-items:center;
1016             font-family:"Poppins",sans-serif;
1017             transition:all .3s ease
1018         }
1019         
1020         .faq-question:hover{
1021             color:#fffb00
1022         }
1023         
1024         .faq-question::after{
1025             content:'+';
1026             font-size:32px;
1027             font-weight:300;
1028             transition:all .4s ease;
1029             color:#fffb00;
1030             width:40px;
1031             height:40px;
1032             display:flex;
1033             align-items:center;
1034             justify-content:center;
1035             border:2px solid #ffd700;border-radius:50%;
1036             background:rgba(0, 0, 0, 0.1)
1037         }
1038         
1039         .faq-item.active .faq-question::after{
1040             transform:rotate(135deg);
1041             background:linear-gradient(135deg,#ffd700,#ffd700);
1042             color:#000;border-color:transparent
1043         }
1044         
1045         .faq-answer{
1046             max-height:0;
1047             overflow:hidden;
1048             transition:max-height .5s ease,padding .5s ease;
1049             background:linear-gradient(180deg,rgba(253,228,4,0.05),transparent);
1050             padding:0 35px
1051         }
1052         
1053         .faq-item.active .faq-answer{
1054             max-height:800px;padding:30px 35px;
1055             border-top:1px solid rgba(253, 4, 4, 0.3)
1056         }
1057         
1058         .faq-answer p{
1059             color:#e0e0e0;
1060             font-size:16px;
1061             line-height:2;
1062             margin:0;
1063             font-family:"Poppins",sans-serif
1064         }
1065 
1066         @media
1067             (max-width:768px)
1068         {
1069         
1070         .faq-section
1071             {padding:30px 15px}
1072         
1073         .faq-section h2
1074             {font-size:26px}
1075         
1076         .faq-question
1077             {font-size:16px;
1078             padding:22px 25px}
1079         
1080         .faq-question::after
1081             {width:35px;
1082             height:35px;
1083             font-size:28px}
1084         
1085         .faq-answer
1086             {padding:0 25px}
1087         
1088         .faq-item.active .faq-answer
1089             {padding:25px}
1090         
1091         .faq-item:hover
1092             {transform:translateX(5px)}
1093             }
1094     </style>
1095 <div id="search-popup">
1096   <div id="search-input" class="row">
1097     <div class="container w-100">
1098       <form
1099         action="/search"
1100         method="get"
1101         role="search"
1102         class="search search-modal__form d-flex justify-content-between"
1103       >
1104         <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="20" height="20" viewBox="0 0 20 20" fill="none">
1105   <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"/>
1106 </svg>
1107 
1108         <input type="hidden" name="type" value="product">
1109         <input
1110           type="text"
1111           id="search-type"
1112           name="q"
1113           class="search-popup"
1114           placeholder="Gifts that linger: Uncover treasures for cherished moments."
1115         >
1116         <div class="close-search"><svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
1117   <path d="M9 9.708L12.246 12.954C12.3393 13.0473 12.454 13.0973 12.59 13.104C12.726 13.1107 12.8473 13.0607 12.954 12.954C13.0607 12.8473 13.114 12.7293 13.114 12.6C13.114 12.4707 13.0607 12.3527 12.954 12.246L9.708 9L12.954 5.754C13.0473 5.66067 13.0973 5.546 13.104 5.41C13.1107 5.274 13.0607 5.15267 12.954 5.046C12.8473 4.93933 12.7293 4.886 12.6 4.886C12.4707 4.886 12.3527 4.93933 12.246 5.046L9 8.292L5.754 5.046C5.66067 4.95267 5.546 4.90267 5.41 4.896C5.274 4.88933 5.15267 4.93933 5.046 5.046C4.93933 5.15267 4.886 5.27067 4.886 5.4C4.886 5.52933 4.93933 5.64733 5.046 5.754L8.292 9L5.046 12.246C4.95267 12.3393 4.90267 12.4543 4.896 12.591C4.88933 12.7263 4.93933 12.8473 5.046 12.954C5.15267 13.0607 5.27067 13.114 5.4 13.114C5.52933 13.114 5.64733 13.0607 5.754 12.954L9 9.708ZM9.003 18C7.75833 18 6.58833 17.764 5.493 17.292C4.39767 16.8193 3.44467 16.178 2.634 15.368C1.82333 14.558 1.18167 13.606 0.709 12.512C0.236333 11.418 0 10.2483 0 9.003C0 7.75767 0.236333 6.58767 0.709 5.493C1.181 4.39767 1.82133 3.44467 2.63 2.634C3.43867 1.82333 4.391 1.18167 5.487 0.709C6.583 0.236333 7.753 0 8.997 0C10.241 0 11.411 0.236333 12.507 0.709C13.6023 1.181 14.5553 1.82167 15.366 2.631C16.1767 3.44033 16.8183 4.39267 17.291 5.488C17.7637 6.58333 18 7.753 18 8.997C18 10.241 17.764 11.411 17.292 12.507C16.82 13.603 16.1787 14.556 15.368 15.366C14.5573 16.176 13.6053 16.8177 12.512 17.291C11.4187 17.7643 10.249 18.0007 9.003 18ZM9 17C11.2333 17 13.125 16.225 14.675 14.675C16.225 13.125 17 11.2333 17 9C17 6.76667 16.225 4.875 14.675 3.325C13.125 1.775 11.2333 1 9 1C6.76667 1 4.875 1.775 3.325 3.325C1.775 4.875 1 6.76667 1 9C1 11.2333 1.775 13.125 3.325 14.675C4.875 16.225 6.76667 17 9 17Z" fill="#757575"/>
1118 </svg>
1119 </div>
1120         <button id="search-btn">Search</button>
1121       </form>
1122     </div>
1123   </div>
1124   <div id="search-result" class="container m-auto">
1125     <div class="container p-0">
1126       <div class="group-promotion">
1127         <div class="resultsearch">
1128           <div class="row results">
1129             <div class="col-12 col-lg-6 mb-3 mb-lg-0">
1130               <label>SUGGESTIONS</label>
1131               <ul class="result_collection"></ul>
1132             </div>
1133             <div class="col-12 col-lg-6">
1134               <label>PRODUCTS</label>
1135               <ul class="result_product"></ul>
1136             </div>
1137           </div>
1138           <div class="d-flex justify-content-between moreresult m-0">
1139             <p>Search for<span></span></p>
1140             <svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="32" height="32" viewBox="0 0 32 32">
1141 <title>icon-arrow-right</title>
1142 <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>
1143 </svg>
1144           </div>
1145         </div>
1146       </div>
1147       <div class="group-recent hide">
1148         <h3>RECENT SEARCH</h3>
1149         <span class="delete-all-history">Hapus riwayat</span>
1150         <ul class="last-search"></ul>
1151       </div>
1152       <div class="group-recommend">
1153         <h3>YOU MAY ALSO LIKE</h3>
1154         
1155         
1156           <div class="row popup-recommend c-products-grid infinite-case product-multi-">
1157             <div class="swiper-wrapper justify-content-between" style="margin-left:1px;">
1158               
1159                 
1160                   <div class="swiper-slide card">
1161                     
1162 
1163 
1164 
1165 <div class="products" data-lazy="false">
1166   <div class="bg-products">
1167     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake">
1168       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1169   <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
11696 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"/>
1170 </svg>
1171 
1172     </div>
1173     <a href="/products/mid-autumn-of-love-mooncake">
1174       
1175       <div class="product-card-img-container p-0 position-relative">
1176         
1177         <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">
1178       </div>
1179       <div class="card-body product-card-info">
1180         <h5 class="h5 mb-0">
1181           Mid Autumn of Love Mooncake
1182         </h5>
1183         <div class="product-card-price">
1184           
1185           <div class="product-price-sale">
1186             <s class="product-card-price-before card-money">Rp 588.000</s>
1187             <span class="product-card-discount small">	
1188               (-40%)
1189             </span> 	
1190           </div>
1191           
1192           
1193           
1194           <div class="price-discount">
1195             <h4 class="product-card-price-after card-money">Rp 348.000</h4>
1196           </div>
1197           
1198           
1199           
1200           
1201           
1202         </div>
1203         
1204       </div>
1205     </a>
1206   </div>
1207   
1208 </div>
1209 
1210                   </div>
1211                 
1212               
1213                 
1214                   <div class="swiper-slide card">
1215                     
1216 
1217 
1218 
1219 <div class="products" data-lazy="false">
1220   <div class="bg-products">
1221     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake">
1222       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1223   <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.
122311233C11.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"/>
1224 </svg>
1225 
1226     </div>
1227     <a href="/products/mid-autumn-of-joy-mooncake">
1228       
1229       <div class="product-card-img-container p-0 position-relative">
1230         
1231         <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">
1232       </div>
1233       <div class="card-body product-card-info">
1234         <h5 class="h5 mb-0">
1235           Mid Autumn of Joy Mooncake
1236         </h5>
1237         <div class="product-card-price">
1238           
1239           <div class="product-price-sale">
1240             <s class="product-card-price-before card-money">Rp 888.000</s>
1241             <span class="product-card-discount small">	
1242               (-33%)
1243             </span> 	
1244           </div>
1245           
1246           
1247           
1248           <div class="price-discount">
1249             <h4 class="product-card-price-after card-money">Rp 588.000</h4>
1250           </div>
1251           
1252           
1253           
1254           
1255           
1256         </div>
1257         
1258       </div>
1259     </a>
1260   </div>
1261   
1262 </div>
1263 
1264                   </div>
1265                 
1266               
1267                 
1268                   <div class="swiper-slide card">
1269                     
1270 
1271 
1272 
1273 <div class="products" data-lazy="false">
1274   <div class="bg-products">
1275     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake">
1276       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1277   <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.
127711233C11.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"/>
1278 </svg>
1279 
1280     </div>
1281     <a href="/products/mid-autumn-of-fortune-mooncake">
1282       
1283       <div class="product-card-img-container p-0 position-relative">
1284         
1285         <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">
1286       </div>
1287       <div class="card-body product-card-info">
1288         <h5 class="h5 mb-0">
1289           Mid Autumn of Fortune Mooncake
1290         </h5>
1291         <div class="product-card-price">
1292           
1293           <div class="product-price-sale">
1294             <s class="product-card-price-before card-money">Rp 1.188.000</s>
1295             <span class="product-card-discount small">	
1296               (-33%)
1297             </span> 	
1298           </div>
1299           
1300           
1301           
1302           <div class="price-discount">
1303             <h4 class="product-card-price-after card-money">Rp 788.000</h4>
1304           </div>
1305           
1306           
1307           
1308           
1309           
1310         </div>
1311         
1312       </div>
1313     </a>
1314   </div>
1315   
1316 </div>
1317 
1318                   </div>
1319                 
1320               
1321                 
1322                   <div class="swiper-slide card">
1323                     
1324 
1325 
1326 
1327 <div class="products" data-lazy="false">
1328   <div class="bg-products">
1329     <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake">
1330       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1331   <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.
133111233C11.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"/>
1332 </svg>
1333 
1334     </div>
1335     <a href="/products/mid-autumn-festival-mooncake">
1336       
1337       <div class="product-card-img-container p-0 position-relative">
1338         
1339         <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">
1340       </div>
1341       <div class="card-body product-card-info">
1342         <h5 class="h5 mb-0">
1343           Mid Autumn Festival Mooncake
1344         </h5>
1345         <div class="product-card-price">
1346           
1347           <div class="product-price-sale">
1348             <s class="product-card-price-before card-money">Rp 1.288.000</s>
1349             <span class="product-card-discount small">	
1350               (-23%)
1351             </span> 	
1352           </div>
1353           
1354           
1355           
1356           <div class="price-discount">
1357             <h4 class="product-card-price-after card-money">Rp 988.000</h4>
1358           </div>
1359           
1360           
1361           
1362           
1363           
1364         </div>
1365         
1366       </div>
1367     </a>
1368   </div>
1369   
1370 </div>
1371 
1372                   </div>
1373                 
1374               
1375                 
1376                   <div class="swiper-slide card">
1377                     
1378 
1379 
1380 
1381 <div class="products" data-lazy="false">
1382   <div class="bg-products">
1383     <div class="wishlist-toggle" data-product-handle="the-jade-bouquet">
1384       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1385   <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.
138511233C11.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"/>
1386 </svg>
1387 
1388     </div>
1389     <a href="/products/the-jade-bouquet">
1390       
1391       <div class="product-card-img-container p-0 position-relative">
1392         
1393         <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">
1394       </div>
1395       <div class="card-body product-card-info">
1396         <h5 class="h5 mb-0">
1397           The Jade Bouquet
1398         </h5>
1399         <div class="product-card-price">
1400           
1401           <div class="product-price-sale">
1402             <s class="product-card-price-before card-money">Rp 435.000</s>
1403             <span class="product-card-discount small">	
1404               (-34%)
1405             </span> 	
1406           </div>
1407           
1408           
1409           
1410           <div class="price-discount">
1411             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1412           </div>
1413           
1414           
1415           
1416           
1417           
1418         </div>
1419         
1420       </div>
1421     </a>
1422   </div>
1423   
1424 </div>
1425 
1426                   </div>
1427                 
1428               
1429                 
1430                   <div class="swiper-slide card">
1431                     
1432 
1433 
1434 
1435 <div class="products" data-lazy="false">
1436   <div class="bg-products">
1437     <div class="wishlist-toggle" data-product-handle="the-selena-bouquet">
1438       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1439   <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.
143911233C11.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"/>
1440 </svg>
1441 
1442     </div>
1443     <a href="/products/the-selena-bouquet">
1444       
1445       <div class="product-card-img-container p-0 position-relative">
1446         
1447         <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">
1448       </div>
1449       <div class="card-body product-card-info">
1450         <h5 class="h5 mb-0">
1451           The Selena Bouquet
1452         </h5>
1453         <div class="product-card-price">
1454           
1455           <div class="product-price-sale">
1456             <s class="product-card-price-before card-money">Rp 335.000</s>
1457             <span class="product-card-discount small">	
1458               (-29%)
1459             </span> 	
1460           </div>
1461           
1462           
1463           
1464           <div class="price-discount">
1465             <h4 class="product-card-price-after card-money">Rp 235.000</h4>
1466           </div>
1467           
1468           
1469           
1470           
1471           
1472         </div>
1473         
1474       </div>
1475     </a>
1476   </div>
1477   
1478 </div>
1479 
1480                   </div>
1481                 
1482               
1483                 
1484                   <div class="swiper-slide card">
1485                     
1486 
1487 
1488 
1489 <div class="products" data-lazy="false">
1490   <div class="bg-products">
1491     <div class="wishlist-toggle" data-product-handle="the-viola-bouquet">
1492       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1493   <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.
149311233C11.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"/>
1494 </svg>
1495 
1496     </div>
1497     <a href="/products/the-viola-bouquet">
1498       
1499       <div class="product-card-img-container p-0 position-relative">
1500         
1501         <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">
1502       </div>
1503       <div class="card-body product-card-info">
1504         <h5 class="h5 mb-0">
1505           The Viola Bouquet
1506         </h5>
1507         <div class="product-card-price">
1508           
1509           <div class="product-price-sale">
1510             <s class="product-card-price-before card-money">Rp 385.000</s>
1511             <span class="product-card-discount small">	
1512               (-25%)
1513             </span> 	
1514           </div>
1515           
1516           
1517           
1518           <div class="price-discount">
1519             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1520           </div>
1521           
1522           
1523           
1524           
1525           
1526         </div>
1527         
1528       </div>
1529     </a>
1530   </div>
1531   
1532 </div>
1533 
1534                   </div>
1535                 
1536               
1537                 
1538                   <div class="swiper-slide card">
1539                     
1540 
1541 
1542 
1543 <div class="products" data-lazy="false">
1544   <div class="bg-products">
1545     <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet">
1546       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1547   <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.
154711233C11.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"/>
1548 </svg>
1549 
1550     </div>
1551     <a href="/products/the-minerva-bouquet">
1552       
1553       <div class="product-card-img-container p-0 position-relative">
1554         
1555         <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">
1556       </div>
1557       <div class="card-body product-card-info">
1558         <h5 class="h5 mb-0">
1559           The Minerva Bouquet
1560         </h5>
1561         <div class="product-card-price">
1562           
1563           <div class="product-price-sale">
1564             <s class="product-card-price-before card-money">Rp 385.000</s>
1565             <span class="product-card-discount small">	
1566               (-25%)
1567             </span> 	
1568           </div>
1569           
1570           
1571           
1572           <div class="price-discount">
1573             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1574           </div>
1575           
1576           
1577           
1578           
1579           
1580         </div>
1581         
1582       </div>
1583     </a>
1584   </div>
1585   
1586 </div>
1587 
1588                   </div>
1589                 
1590               
1591                 
1592                   <div class="swiper-slide card">
1593                     
1594 
1595 
1596 
1597 <div class="products" data-lazy="false">
1598   <div class="bg-products">
1599     <div class="wishlist-toggle" data-product-handle="congraduations-bouquet">
1600       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1601   <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.
160111233C11.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"/>
1602 </svg>
1603 
1604     </div>
1605     <a href="/products/congraduations-bouquet">
1606       
1607       <div class="product-card-img-container p-0 position-relative">
1608         
1609         <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">
1610       </div>
1611       <div class="card-body product-card-info">
1612         <h5 class="h5 mb-0">
1613           Congraduations Bouquet
1614         </h5>
1615         <div class="product-card-price">
1616           
1617           <div class="product-price-sale">
1618             <s class="product-card-price-before card-money">Rp 380.000</s>
1619             <span class="product-card-discount small">	
1620               (-25%)
1621             </span> 	
1622           </div>
1623           
1624           
1625           
1626           <div class="price-discount">
1627             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1628           </div>
1629           
1630           
1631           
1632           
1633           
1634         </div>
1635         
1636       </div>
1637     </a>
1638   </div>
1639   
1640 </div>
1641 
1642                   </div>
1643                 
1644               
1645                 
1646                   <div class="swiper-slide card">
1647                     
1648 
1649 
1650 
1651 <div class="products" data-lazy="false">
1652   <div class="bg-products">
1653     <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet">
1654       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1655   <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.
165511233C11.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"/>
1656 </svg>
1657 
1658     </div>
1659     <a href="/products/grad-gorgeous-bouquet">
1660       
1661       <div class="product-card-img-container p-0 position-relative">
1662         
1663         <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">
1664       </div>
1665       <div class="card-body product-card-info">
1666         <h5 class="h5 mb-0">
1667           Grad & Gorgeous Bouquet
1668         </h5>
1669         <div class="product-card-price">
1670           
1671           <div class="product-price-sale">
1672             <s class="product-card-price-before card-money">Rp 380.000</s>
1673             <span class="product-card-discount small">	
1674               (-25%)
1675             </span> 	
1676           </div>
1677           
1678           
1679           
1680           <div class="price-discount">
1681             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1682           </div>
1683           
1684           
1685           
1686           
1687           
1688         </div>
1689         
1690       </div>
1691     </a>
1692   </div>
1693   
1694 </div>
1695 
1696                   </div>
1697                 
1698               
1699             </div>
1700           </div>
1701         
1702       </div>
1703     </div>
1704   </div>
1705 
1706   <div class="site-overlay" style="display: none"></div>
1707 </div>
1708 
1708<script>
1709   
1710   var swiper = new Swiper('.popup-recommend', {
1711       slidesPerView : 4, 
1712       spaceBetween: 30,
1713       lazy: true ,                            
1714       speed: 300,
1715       breakpoints: {
1716         // when window width is <= 576px
1717         576: {
1718             slidesPerView: 2,
1719               spaceBetween: 10,
1720             freeMode: true,
1721             resistance : true,
1722             resistanceRatio : 0,
1723             freeModeMomentumRatio : 0.45,
1724             freeModeMomentumVelocityRatio : 1.5
1725         },
1726         768: {
1727               slidesPerView: 2,
1728               spaceBetween: 10
1729             },
1730         992: {
1731               slidesPerView: 3,
1732               spaceBetween: 20
1733         }
1734       }
1735   });
1736 
1737   const searchContainer = $("#search-popup")
1738   const searchInput = $(".search-popup")
1739   const result_collection = $('.result_collection')
1740   const result_product = $('.result_product')
1741   const resultsearch = $('.resultsearch')
1742   const resultrecommend = $(".group-recommend")
1743   const moreresult = $(".moreresult")
1744 
1745   searchInput.keyup(function(){
1746     const input = $(this).val()
1747     moreresult.find("p span").text(` “${input}”`)
1748     if(input.length > 2) {
1749       $(".close-search").show()
1750       const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}`
1751       $.ajax({
1752         type: 'GET',
1753         url,
1754         beforeSend: function() {
1755             // setting a timeout
1756             // $(placeholder).addClass('loading');
1757         },
1758         success: function(response) {
1759             resultsearch.show()
1760             resultrecommend.hide()
1761             result_collection.html("")
1762             result_product.html("")
1763             const collections = response.resources.results.collections
1764             const products = response.resources.results.products
1765             let collection_length = collections.length
1766             let product_length = products.length
1767             // if(collections.length > 5) {
1768             //   collection_length = 5
1769             // }
1770             // if(products.length > 5) {
1771             //   product_length = 5
1772             // }
1773             for(let i=0;i<collection_length;i++){
1774               const title = collections[i].title
1775               const url = collections[i].url
1776               let html_collection
1777               if(!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) {
1778                 html_collection = `
1779                 <li class="item" data-title="${title}">
1780                   <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a>
1781                 </li>
1782                 `
1783               }
1784               result_collection.append(html_collection)
1785             }
1786             for(let i=0;i<product_length;i++){
1787               const title = products[i].title
1788               const url = products[i].url
1789               const image = products[i].featured_image.url
1790               const vendor = products[i].vendor
1791               let html_product
1792               if(vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')){
1793                 html_product = `
1794                 <li class="item" data-vendor="${vendor}">
1795                   <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}">
1796                     <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"><span>${title}</span>
1797                   </a>
1798                 </li>
1799                 `
1800               }
1801               result_product.append(html_product)
1802             }
1803         },
1804         error: function(xhr) { // if error occured
1805             alert("Error occured.please try again");
1806         },
1807         complete: function(response) {
1808             // $(placeholder).removeClass('loading');
1809         },
1810         dataType: 'JSON'
1811       });
1812     } else {
1813       result_collection.html("")
1814       result_product.html("")
1815       
1816       resultsearch.hide()
1817       resultrecommend.show()
1818     }
1819   })
1820 
1821   moreresult.click(function(){
1822     $("#search-btn").trigger("click");
1823   })
1824 
1825   $(".close-search").click(function(){
1826     $(this).hide()
1827     searchInput.val("")
1828     searchInput.focus()
1829     resultsearch.hide()
1830     resultrecommend.show()
1831   })
1832 
1833   function setCookie(name,value,days) {
1834     var expires = "";
1835     if (days) {
1836       var date = new Date();
1837       date.setTime(date.getTime() + (days*24*60*60*1000));
1838       expires = "; expires=" + date.toUTCString();
1839     }
1840     document.cookie = name + "=" + (value || "")  + expires + "; path=/";
1841   }
1842   function getCookie(name) {
1843     var nameEQ = name + "=";
1844     var ca = document.cookie.split(';');
1845     for(var i=0;i < ca.length;i++) {
1846       var c = ca[i];
1847       while (c.charAt(0)==' ') c = c.substring(1,c.length);
1848       if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
1849     }
1850     return null;
1851   }
1852   let last_search_name = []
1853   let last_search_url = []
1854   $(".group-recent").hide()
1855   if(getCookie("last_search_name") != null && getCookie("last_search_url") != null){
1856     if(getCookie("last_search_name") != "" && getCookie("last_search_url") != ""){
1857       $(".group-recent").show()
1858       last_search_name = getCookie("last_search_name");
1859       last_search_url = getCookie("last_search_url");
1860       const arrName = last_search_name.substring(1).split(',').reverse()
1861       const arrUrl = last_search_url.substring(1).split(',').reverse()
1862       console.log(arrName, 'Array Name')
1863       console.log(arrUrl, 'Array Url')
1864       let length = arrName.length
1865       if(arrName.length > 5) {
1866         length = 5
1867       }
1868       for(let n=0;n<length;n++){
1869         let html2 = `<li><svg viewBox="0 0 24 24" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.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]}">
1869${arrName[n]}</a><span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span></li>`
1870         $(".group-recent ul").append(html2)
1871       }
1872     }
1873   }
1874   console.log(last_search_name, 'Name')
1875   console.log(last_search_url, 'url')
1876   
1877   resultsearch.delegate(".item a", "click", function(){
1878     let name = [last_search_name]
1879     let url = [last_search_url]
1880     name.push($(this).attr('data-title'))
1881     url.push($(this).attr('data-url'))
1882     setCookie("last_search_name",name,7);
1883     setCookie("last_search_url",url,7);
1884   })
1885   
1886   $(".delete-all-history").click(function() {
1887     setCookie("last_search_name",null,0);
1888     setCookie("last_search_url",null,0);
1889     $(".last-search").hide();
1890     setTimeout(function(){
1891       location.reload();
1892     }, 500);
1893   })
1894   
1895   $("#search-trigger").click(function(){
1896     search_open()
1897   })
1898   $(".icon-search-mobile").click(function(){
1899     search_open()
1900   })
1901   $(".search-header svg").click(function(){
1902     search_close()
1903   })
1904   $(".icon-key-mobile").click(function(){
1905     search_close()
1906   })
1907 
1908   function search_open() {
1909     $("body").addClass("search-popup-open")
1910     $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide()
1911     $("#search-popup, .search-header svg, .icon-key-mobile").show()
1912     $(".search-popup").focus()
1913     $('.popup-recommend')[0].swiper.update();
1914   }
1915   function search_close() {
1916     $("body").removeClass("search-popup-open")
1917     $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show()
1918     $("#search-popup, .search-header svg, .icon-key-mobile").hide()
1919     searchInput.val("")
1920     resultsearch.hide()
1921     resultrecommend.show()
1922   }
1923 
1924   $(".site-overlay").click(function(){
1925     search_close()
1926   })
1927 </script>
1927
1928 
1929 </div>
1930     </div>
1931 
1932     <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #000000;">
1933       <main class="main-content pt-0" role="main">
1934         
1935           <div id="breadcrumbProduct" class="d-none d-lg-block">
1936             <style>
1937   #breadcrumbProduct {
1938     padding: 20px 0;
1939   }
1940   #breadcrumbProduct ul {
1941       display: flex;
1942       padding: 0;
1943       list-style: none;
1944       margin: 0;
1945       gap: 12px;
1946   }
1947   #breadcrumbProduct ul li {
1948     text-transform: uppercase;
1949     margin: 0;
1950     font-size: 12px;
1951 }
1952   #breadcrumbProduct ul li a {
1953     color: #757575;
1954   }
1955 
1956   #breadcrumbProduct ul li svg {
1957     width: 10px;
1958     height: 10px;
1959     padding: 0;
1960     color: #757575;
1961     vertical-align: middle;
1962   }
1963 </style>
1964 <div class="container" style="color: #ffd700;">
1965   <ul role="navigation" aria-label="breadcrumbs">
1966     <li><a href="https://www.louerunepiscine.com/les-piscines" style="color: #ffd700;">RAJADANA</a></li>
1967     <li><svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="7" height="10" viewBox="0 0 7 10" fill="none">
1968     <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"/>
1969 </svg></li>
1970       <li>RAJADANA RAJADANA</li>
1971       <li>RAJADANA LOGIN</li>
1972       <li>RAJADANA LINK ALTERNATIF</li>
1973       <li>RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat</li>
1974     
1975   </ul>
1976 </div>
1977 
1978           </div>
1979         
1980 
1980<script type="application/ld+json">
1981 {
1982   "@context": "https://schema.org",
1983   "@type": "Product",
1984   "name": "RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat",
1985   "image": "https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png",
1986   "description": "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.",
1987   "brand": {
1988     "@type": "Brand",
1989     "name": "RAJADANA"
1990   },
1991   "sku": "RAJADANA",
1992   "mpn": "RAJADANA",
1993   "url": "https://www.louerunepiscine.com/les-piscines",
1994   "offers": {
1995     "@type": "Offer",
1996     "url": "https://www.louerunepiscine.com/les-piscines",
1997     "priceCurrency": "USD",
1998     "price": "10.00",
1999     "priceValidUntil": "2025-12-25",
2000     "itemCondition": "https://schema.org/NewCondition",
2001     "availability": "https://schema.org/InStock",
2002     "seller": {
2003       "@type": "Organization",
2004       "name": "RAJADANA"
2005     }
2006   },
2007   "aggregateRating": {
2008     "@type": "AggregateRating",
2009     "ratingValue": "5.0",
2010     "reviewCount": 858
2011   },
2012   "review": [
2013     {
2014       "@type": "Review",
2015       "reviewRating": {
2016         "@type": "Rating",
2017         "ratingValue": "5",
2018         "bestRating": "5"
2019       },
2020       "author": {
2021         "@type": "Person",
2022         "name": "julian"
2023       }
2024     },
2025     {
2026       "@type": "Review",
2027       "reviewRating": {
2028         "@type": "Rating",
2029         "ratingValue": "5",
2030         "bestRating": "5"
2031       },
2032       "author": {
2033         "@type": "Person",
2034         "name": "alice"
2035       }
2036     }
2037   ]
2038 }
2039 </script>
2039<script type="application/ld+json">
2040 {
2041   "@context": "https://schema.org",
2042   "@type": "BreadcrumbList",
2043   "itemListElement": [
2044     {
2045       "@type": "ListItem",
2046       "position": 1,
2047       "name": "RAJADANA",
2048       "item": "https://www.louerunepiscine.com/les-piscines"
2049     },
2050     {
2051       "@type": "ListItem",
2052       "position": 2,
2053       "name": "Content RAJADANA",
2054       "item": "https://www.louerunepiscine.com/les-piscines"
2055     },
2056     {
2057       "@type": "ListItem",
2058       "position": 3,
2059       "name": "SITUS SLOT",
2060       "item": "https://www.louerunepiscine.com/les-piscines"
2061     },
2062     {
2063       "@type": "ListItem",
2064       "position": 4,
2065       "name": "SLOT",
2066       "item": "https://www.louerunepiscine.com/les-piscines"
2067     },
2068     {
2069       "@type": "ListItem",
2070       "position": 5,
2071       "name": "RAJADANA LOGIN",
2072       "item": "https://www.louerunepiscine.com/les-piscines"
2073     },
2074     {
2075       "@type": "ListItem",
2076       "position": 6,
2077       "name": "RAJADANA DAFTAR",
2078       "item": "https://www.louerunepiscine.com/les-piscines"
2079     },
2080     {
2081       "@type": "ListItem",
2082       "position": 7,
2083       "name": "RAJADANA LINK ALTERNATIF",
2084       "item": "https://www.louerunepiscine.com/les-piscines"
2085     },
2086     {
2087       "@type": "ListItem",
2088       "position": 8,
2089       "name": "RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat",
2090       "item": "https://www.louerunepiscine.com/les-piscines"
2091     }
2092   ]
2093 }
2094 </script>
2094
2095
2096 <!--faq-->
2097
2098<script type="application/ld+json" id="faq-schema">
2099{
2100  "@context": "https://schema.org",
2101  "@type": "FAQPage",
2102  "mainEntity": [
2103    {
2104      "@type": "Question",
2105      "name": "1. Apa itu RAJADANA?",
2106      "acceptedAnswer": {
2107        "@type": "Answer",
2108        "text": "RAJADANA adalah platform content eksklusif game hiburan tanpa batas yang menghadirkan berbagai informasi terbaru seputar game slot online, hiburan digital modern, serta akses permainan dengan sistem cepat, ringan, dan stabil untuk pengalaman bermain yang lebih nyaman di tahun 2026."
2109      }
2110    },
2111    {
2112      "@type": "Question",
2113      "name": "2. Apa keunggulan RAJADANA dibanding platform lainnya?",
2114      "acceptedAnswer": {
2115        "@type": "Answer",
2116        "text": "RAJADANA memiliki berbagai keunggulan seperti akses cepat tanpa loading lama, tampilan modern yang mudah digunakan, kompatibel di berbagai perangkat, serta menyediakan update game hiburan terbaru secara konsisten sehingga pengguna dapat menikmati pengalaman digital yang lebih praktis dan efisien."
2117      }
2118    },
2119    {
2120      "@type": "Question",
2121      "name": "3. Apakah RAJADANA aman digunakan?",
2122      "acceptedAnswer": {
2123        "@type": "Answer",
2124        "text": "Ya, RAJADANA mengutamakan keamanan dan kenyamanan pengguna dengan sistem yang stabil serta perlindungan akses modern. Platform ini dirancang untuk menjaga performa tetap optimal sehingga pengguna dapat menikmati hiburan online tanpa khawatir terhadap gangguan teknis yang tidak diinginkan."
2125      }
2126    },
2127    {
2128      "@type": "Question",
2129      "name": "4. Apakah RAJADANA bisa diakses melalui smartphone?",
2130      "acceptedAnswer": {
2131        "@type": "Answer",
2132        "text": "Tentu saja. RAJADANA dapat diakses melalui smartphone, tablet, maupun desktop dengan tampilan yang tetap responsif dan ringan. Hal ini membuat pengguna lebih fleksibel dalam menikmati content hiburan kapan saja dan di mana saja."
2133      }
2134    },
2135    {
2136      "@type": "Question",
2137      "name": "5. Bagaimana cara mengakses RAJADANA?",
2138      "acceptedAnswer": {
2139        "@type": "Answer",
2140        "text": "Untuk mengakses RAJADANA, pengguna hanya perlu membuka link resmi yang tersedia kemudian login melalui sistem yang cepat dan mudah. Setelah berhasil masuk, seluruh content game hiburan dan informasi terbaru dapat langsung dinikmati tanpa proses yang rumit."
2141      }
2142    }
2143  ]
2144}
2145</script>
2145
2146 
2146<script type="application/ld+json">
2147 {
2148   "@context": "https://schema.org",
2149   "@type": "Organization",
2150   "name": "RAJADANA",
2151   "url": "https://www.louerunepiscine.com/les-piscines",
2152   "logo": "https://ik.imagekit.io/kktbpaqjn/logorajadana.png",
2153   "sameAs": [
2154     "https://www.facebook.com/RAJADANA",
2155     "https://twitter.com/RAJADANA",
2156     "https://www.instagram.com/RAJADANA"
2157   ],
2158   "contactPoint": {
2159     "@type": "ContactPoint",
2160     "telephone": "+62-8946-113-4615",
2161     "contactType": "customer support",
2162     "areaServed": "ID",
2163     "availableLanguage": ["Indonesian", "English"]
2164   }
2165 }
2166 </script>
2166
2167 
2168 
2168<script type="application/ld+json">
2169 {
2170   "@context": "https://schema.org",
2171   "@type": "VideoObject",
2172   "name": "RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat",
2173   "description": "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.",
2174   "thumbnailUrl": [
2175     "https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png",
2176     "https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2177   ],
2178   "uploadDate": "2025-09-28T04:19:10-04:00",
2179   "duration": "PT168",
2180   "contentUrl": "https://www.louerunepiscine.com/les-piscines"
2181 }
2182 </script>
2182
2183 
2184 
2184<script type="application/ld+json">
2185 {
2186   "@context": "https://schema.org",
2187   "@type": "BreadcrumbList",
2188   "itemListElement": [
2189     {
2190       "@type": "ListItem",
2191       "position": 1,
2192       "name": "Home",
2193       "item": "https://www.louerunepiscine.com/les-piscines"
2194     }
2195   ]
2196 }
2197 </script>
2197
2198 
2199 
2199<script type="application/ld+json">
2200 {
2201   "@context": "https://schema.org",
2202   "@graph": [
2203     {
2204       "@type": "Organization",
2205       "@id": "https://www.louerunepiscine.com/les-piscines#org",
2206       "name": "RAJADANA",
2207       "url": "https://www.louerunepiscine.com/les-piscines",
2208       "logo": "https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2209     },
2210     {
2211       "@type": "WebSite",
2212       "@id": "https://www.louerunepiscine.com/les-piscines#website",
2213       "url": "https://www.louerunepiscine.com/les-piscines",
2214       "name": "RAJADANA",
2215       "publisher": { "@id": "https://www.louerunepiscine.com/les-piscines#org" },
2216       "inLanguage": "id-ID",
2217       "potentialAction": {
2218         "@type": "SearchAction",
2219         "target": "https://www.louerunepiscine.com/les-piscines?s={search_term_string}",
2220         "query-input": "required name=search_term_string"
2221       }
2222     },
2223     {
2224       "@type": "SoftwareApplication",
2225       "@id": "https://www.louerunepiscine.com/les-piscines#app",
2226       "name": "RAJADANA",
2227       "applicationCategory": "GameApplication",
2228       "operatingSystem": "Android, iOS, Windows",
2229       "offers": { "@type": "Offer", "price": "0", "priceCurrency": "IDR" },
2230       "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.9, "ratingCount": 62595 }
2231     }
2232   ]
2233 }
2234 </script>
2234
2235         
2236 <div id="shopify-section-Product" class="shopify-section product-section mt-0"><link href="https://tahanpukul.info/outerbloom-global.css" rel="stylesheet" type="text/css" media="all" />
2237 
2238 
2239 <style>
2240     .bg-card {
2241     background-color: #000000;
2242 }
2243     </style>
2244 
2245 <!-- /templates/product.liquid -->
2246 
2247 
2248 <!-- <div itemscope itemtype="http://schema.org/Product"> -->
2249 
2250 
2251 <div class="product-standing-flower" data-product-type="flowerBoard">
2252   <meta itemprop="url" content="https://www.louerunepiscine.com/les-piscines">
2253   <meta itemprop="image" content="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
2254 
2255   
2256   
2257   <input id="data-sku" type="hidden" value="OBVSTF1086">
2258   <div class="product-single" style="background-image: url(https://imgstore.io/images/2025/05/21/background-gelap.jpeg); background-attachment: fixed;">
2259     <div id="product-top" class="container">
2260       <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;">
2261         <div id="product-image" class="col-lg-7 text-center">
2262           <div class="product-image">
2263             <div class="row no-gutters">
2264   
2265   <div id="product-featured-image" class="row w-100">
2266     
2267       <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block">
2268         
2269         <div class="swiper-container gallery-thumbs" style="min-height: 500px">
2270           <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx">
2271 
2272                   <li class="swiper-slide" data-type="image">
2273                     <a
2274                       href="files/Blossom-Shine-WM.jpg"
2275                       data-standard="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2276                       data-image="files/Blossom-Shine-WM.jpg"
2277                       data-position="1"
2278                       class="product-single__thumbnail"
2279                     >
2280                       <img
2281                         class="lazyload w-100"
2282                         src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2283                         alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2284                         width=""
2285                         height=""
2286                       >
2287                     </a>
2288                   </li>
2289                 
2290               
2291             
2292 
2293                   <li class="swiper-slide" data-type="image">
2294                     <a
2295                       href="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2296                       data-standard="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2297                       data-image="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2298                       data-position="2"
2299                       class="product-single__thumbnail"
2300                     >
2301                       <img
2302                         class="lazyload w-100"
2303                         src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2304                         alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2305                         width=""
2306                         height=""
2307                       >
2308                     </a>
2309                   </li>
2310                 
2311               
2312             
2313 
2314                   <li class="swiper-slide" data-type="image">
2315                     <a
2316                       href="files/Blossom-Shine_3-WM.jpg"
2317                       data-standard="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2318                       data-image="files/Blossom-Shine_3-WM.jpg"
2319                       data-position="3"
2320                       class="product-single__thumbnail"
2321                     >
2322                       <img
2323                         class="lazyload w-100"
2324                         src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2325                         alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2326                         width=""
2327                         height=""
2328                       >
2329                     </a>
2330                   </li>
2331                 
2332               
2333             
2334 
2335                   <li class="swiper-slide" data-type="image">
2336                     <a
2337                       href="files/Blossom-Shine_4.jpg"
2338                       data-standard="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2339                       data-image="files/Blossom-Shine_4.jpg"
2340                       data-position="4"
2341                       class="product-single__thumbnail"
2342                     >
2343                       <img
2344                         class="lazyload w-100"
2345                         src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2346                         alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2347                         width=""
2348                         height=""
2349                       >
2350                     </a>
2351                   </li>
2352                 
2353               
2354             
2355           </ul>
2356         </div>
2357         
2358       </div>
2359     
2360     <div
2361       id="featured-image-product"
2362       class="col-lg-10 col-12 d-none d-lg-block"
2363     >
2364       <div class="swiper-container gallery-top">
2365         <div class="swiper-slide product-single__image">
2366           
2367 <div class="product-single__photos slider slider-for" id="ProductPhoto">
2368   
2369 
2370   <div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails">
2371     <a href="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png">
2372       <img
2373         src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2374         alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2375         id="ProductPhotoImg"
2376         class="lazyload"
2377       >
2378       
2379     </a>
2380   </div>
2381 </div>
2382 
2383         </div>
2384         <div class="swiper-slide product-single__video" style="display: none">
2385           <video
2386             src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4"
2387             playsinline
2388             loop
2389             muted
2390           ></video>
2391         </div>
2392       </div>
2393     </div>
2394   </div>
2395 
2396   <div id="featured-image-product2" class="col-12 d-lg-none">
2397     <div class="swiper-container gallery-mobile">
2398       <ul class="swiper-wrapper">
2399 <li class="swiper-slide img">
2400               
2401                 <img
2402                   class="swiper-lazy"
2403                   src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2404                   data-src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2405                   alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2406                   width=""
2407                   height=""
2408                 >
2409               
2410             </li>
2411           
2412         
2413 <li class="swiper-slide img">
2414               
2415                 <img
2416                   class="swiper-lazy"
2417                   src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2418                   data-src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2419                   alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2420                   width=""
2421                   height=""
2422                 >
2423               
2424             </li>
2425           
2426         
2427 <li class="swiper-slide img">
2428               
2429                 <img
2430                   class="swiper-lazy"
2431                   src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2432                   data-src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2433                   alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2434                   width=""
2435                   height=""
2436                 >
2437               
2438             </li>
2439           
2440         
2441 <li class="swiper-slide img">
2442               
2443                 <img
2444                   class="swiper-lazy"
2445                   src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2446                   data-src="https://ik.imagekit.io/kktbpaqjn/Rajadananew2.png"
2447                   alt="RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat"
2448                   width=""
2449                   height=""
2450                 >
2451               
2452             </li>
2453           
2454         
2455       </ul>
2456       
2457         <div class="swiper-button-prev"><svg class="icon icon-chevron-left" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.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>
2458         <div class="swiper-button-next"><svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="7" height="10" viewB
2458ox="0 0 7 10" fill="none">
2459     <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"/>
2460 </svg></div>
2461 
2462         <!-- Add Pagination -->
2463         <div class="swiper-pagination"></div>
2464       
2465     </div>
2466   </div>
2467 
2468   <div class="product-m-pageleb-video col-12 text-center d-lg-none">
2469     <!-- product video -->
2470     <style>
2471       .view-video{display:block; margin:auto; padding:5px 10px;font-size:16px;font-weight:bold;border:2px solid #ffffff;background:#fff;}
2472       .view-video .icon-play{fill:#ffffff;vertical-align: middle;}
2473       .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;}
2474       .close-video{position:absolute;right:9px; top:8%;z-index:2;padding:5px;}
2475       .close-video .icon{width:30px;height:30px;}
2476       /*responsive iframe */
2477       .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);}
2478       .video-container iframe {position: absolute;top:60%;left: 0;width: 100%;height: 100%;}
2479 
2480       .youtube {
2481         background-color: #000;
2482         margin-bottom: 30px;
2483         position: relative;
2484         padding-top: 56.25%;
2485         overflow: hidden;
2486         cursor: pointer;
2487         width: 100%;
2488       }
2489       .swiper-slide .youtube {
2490         max-width: 480px;
2491       }
2492       .youtube img {
2493         width: 100%;
2494         top: -16.82%;
2495         left: 0;
2496         opacity: 0.7;
2497       }
2498       .youtube .play-button {
2499         width: 90px;
2500         height: 60px;
2501         background-color: #333;
2502         box-shadow: 0 0 30px rgba( 0,0,0,0.6 );
2503         z-index: 1;
2504         opacity: 0.8;
2505         border-radius: 6px;
2506       }
2507       .youtube .play-button:before {
2508         content: "";
2509         border-style: solid;
2510         border-width: 15px 0 15px 26.0px;
2511         border-color: transparent transparent transparent #fff;
2512       }
2513       .youtube img,
2514       .youtube .play-button {
2515         cursor: pointer;
2516       }
2517       .youtube img,
2518       .youtube iframe,
2519       .youtube .play-button,
2520       .youtube .play-button:before {
2521         position: absolute;
2522       }
2523       .youtube .play-button,
2524       .youtube .play-button:before {
2525         top: 50%;
2526         left: 50%;
2527         transform: translate3d( -50%, -50%, 0 );
2528       }
2529       .youtube iframe {
2530         height: 100%;
2531         width: 100%;
2532         top: 0;
2533         left: 0;
2534       }
2535     </style>
2536 
2537     
2538   </div>
2539 </div>
2540 
2541 <div class="product-desc-add position-relative d-none d-lg-block m-0">
2542 
2543 </div>
2544 
2545 
2545<script>
2546   if ($(window).width() < 991) {
2547     var direction = 'horizontal'
2548   } else {
2549     var direction = 'vertical'
2550     $(".gallery-thumbs").height($("#ProductPhotoImg").height())
2551   }
2552   var swiper = new Swiper('.gallery-thumbs', {
2553     
2554     direction,
2555     slidesPerView: 4.5,
2556     spaceBetween: 12,
2557     navigation: {
2558       nextEl: '.swiper-button-next',
2559       prevEl: '.swiper-button-prev',
2560     }
2561   });
2562   
2563   var swiper = new Swiper('.gallery-mobile', {
2564     //loop: true,
2565     lazy: true,
2566     speed: 300,
2567     resistance : true,
2568     resistanceRatio : 0,
2569     freeModeMomentumRatio : 0.45,
2570     freeModeMomentumVelocityRatio : 1.5,
2571     navigation: {
2572       nextEl: '.swiper-button-next',
2573       prevEl: '.swiper-button-prev',
2574     },
2575     pagination: {
2576       el: '.swiper-pagination'
2577     },
2578     useCSS3Transforms: false,
2579     loop: false,
2580     on: {
2581       init: function () {
2582         console.log('swiper initialized');
2583         var currentVideo =  $("[data-swiper-slide-index=" + this.realIndex + "]").find("video");
2584         currentVideo.trigger('play');
2585       },
2586     },
2587   });
2588 
2589   /* GET ALL VIDEOS */
2590   var sliderVideos = $(".swiper-slide video");
2591   
2592   /* SWIPER API - Event will be fired after animation to other slide (next or previous) */
2593   swiper.on('slideChange', function () {
2594     console.log('slide changed');
2595     /* stop all videos  */
2596     sliderVideos.each(function( index ) {
2597       this.currentTime = 0;
2598     });
2599   
2600     /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */
2601     var prevVideo =  $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video");
2602     var currentVideo =  $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video");
2603     prevVideo.trigger('stop');
2604     currentVideo.trigger('play');
2605   });
2606   
2607 
2608   $("[data-video]").click(function(){
2609     const file = $(this).data("video")
2610     $(".product-single__video").show()
2611     $(".product-single__image").hide()
2612     $(".product-single__video").find("video").attr("src", file)
2613     $(".product-single__video").find("video")[0].play();
2614   })
2615   $("[data-image]").click(function(){
2616     $(".product-single__video").hide()
2617     $(".product-single__image").show()
2618     $(".product-single__video").find("video")[0].pause();
2619   })
2620 
2621   $("#product-image .swiper-slide").each(function(){
2622     let width = $(this).width()
2623     $(this).height(width)
2624   })
2625 
2626   $(window).resize(function() {
2627     $("#product-image .swiper-slide").each(function(){
2628       let width = $(this).width()
2629       $(this).height(width)
2630     })
2631   })
2632 </script>
2632
2633 
2634           </div>
2635 
2636   
2637     <div class="grid__item_product-info mb-3">
2638       <div class="c-pdp-product-info">
2639         <ul class="c-pdp-product-info__service c-pdp-product-info__service--active">
2640        <!-- artikel -->
2641             <li>
2642                Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.
2643                </li>
2644           
2645           
2646           
2647           
2648         </ul>
2649       </div>
2650     </div>
2651   
2652 
2653 
2654 
2655 
2656 <style>
2657   .c-pdp-product-info__service--active {
2658     font-size: 12px;
2659     padding-left: 10px;
2660     text-align: left;
2661     max-width: 550px;
2662     margin: auto;
2663     color: #fff;
2664   }
2665   .c-pdp-product-info__service--active li {
2666     list-style: disc;
2667   }
2668   .c-pdp-product-info {
2669     background-color: #000000;
2670     padding: 12px;
2671     margin: 0;
2672   }
2673   .freeship em {
2674     font-style: italic;
2675     font-size: 12px !important;
2676   }
2677 
2678 
2679 </style>
2680 
2681 
2681<script>
2682   $(document).ready(function(){
2683     if ( $(".c-pdp-product-info__service li").length == 1 ) {
2684       $(".c-pdp-product-info__service").addClass("no-bullet");
2685       $(".c-pdp-product-info__service li").addClass("no-bullets");
2686     }
2687   });
2688 </script>
2688
2689 
2690   
2691 
2692 
2693 
2694   
2695 
2696   
2697 
2698 
2699             
2700           
2701         </div>
2702         <div id="product-meta" class="col-lg-5 p-0">
2703           <div class="product-meta">
2704             <style>
2705   .product-meta--review {margin-top:10px}
2706   .freeship * {font-size: 14px !important;font-style: normal;}
2707 </style>
2708 <h1 itemprop="name" class="mb-2" style="color: rgb(255, 230, 0); font-weight: bold;">RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat</h1>
2709 
2710 <div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
2711   <meta itemprop="priceCurrency" content="IDR">
2712 
2713   <link itemprop="availability" href="https://schema.org/InStock">
2714   
2714<script
2715     type="text/javascript"
2716     src="//platform-api.sharethis.com/js/sharethis.js#property=5acdc0aa3ef3c0001396fd50&product=custom-share-buttons"
2717     async="async"
2718   ></script>
2718
2719   
2720 
2721   
2722 
2723   <span class="visually-hidden">Translation missing: en.products.general.regular_price</span>
2724   
2725     <span class="visually-hidden">Translation missing: en.products.general.sale_price</span>
2726   
2727   <div class="row no-gutters mb-3">
2728     <span
2729       id="ProductPrice"
2730       class="h2 ProductPrice"
2731       itemprop="price"
2732       content="835000" style="color: #ffffff;"
2733     >
2734       Rp 10.000
2735     </span>
2736     <div class="discount-product-detail">
2737       <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0">
2738         Rp 100.000
2739       </p>
2740       <span class=" tag-discount">
2741         
2742           
2743           <span id="newDiscount" class="product-tag persentase-discount hide"> 
2744       (90%)
2745       </span><br>
2746         
2747       </span>
2748     </div>
2749   </div>
2750 
2751   <div class="row no-gutters meta-sds">
2752     <div class="col-12 mb-2 mb-lg-0 stock-info">
2753       
2754       
2755       <span
2756         id="ProductStock-Product"
2757         class="product-single__stock mb-2 hide"
2758       >
2759         
2760           
2761             
2762               
2763               Barang dikirim pada 
2764             
2765           
2766         
2767       </span>
2768 
2769       <style>
2770     .short-desc-desktop {
2771         margin-bottom: 2rem;
2772         color: white;
2773     }
2774     .short-desc ul li:nth-child(n + 4) {
2775         display: none;
2776     }
2777     .short-desc ul li.showList:nth-child(n + 4) {
2778         display: list-item;
2779     }
2780     label.more {
2781         display: none;
2782     }
2783     label.more.showMe {
2784         display: block;
2785         font-size: 12px;
2786         text-transform: uppercase;
2787         font-weight: 700;
2788         cursor: pointer;
2789     }
2790 </style>
2791 
2792     <div class="short-desc-desktop d-none d-lg-block">
2793         <div class="short-desc">
2794            
2795 <p>Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.</p>
2796         </div>
2797         <label class="more">Show More →</label>
2798     </div><br>
2799 
2800 
2801 
2801<script>
2802     var liCount;
2803     $(document).ready(function () {
2804         $(".short-desc ul").each(function() {
2805             liCount = $(this).children("li").length;
2806             if (liCount > 3) {
2807                 $(this).parent(".short-desc").next(".more").addClass("showMe");
2808             }
2809         });
2810 
2811         $(".more").click(function () {
2812             //$(".short-desc").find("li").addClass("showList");
2813             // $(this).hide();
2814             $("#product-desc").find("ul").show()
2815             $('html, body').animate({
2816                 scrollTop: $("#product-desc").offset().top - 250
2817             }, 2000);
2818             $("#product-desc").css("height","auto");
2819             $("#more_content").remove();
2820             $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>")
2821         });
2822     });
2823 </script>
2823
2824 
2825       
2826     </div>
2827   </div>
2828 
2829   <div id="purchaseProduct">
2830   
2831   
2832 
2833 
2834 <style>
2835   .variant-metafield {
2836     display: block!important;
2837     width: 1px;
2838     padding: 0;
2839     border-color: #fff;
2840   }
2841   .select2-results__option[aria-disabled] {
2842     display: none;
2843   }
2844 
2845   .towel-bordir {
2846     width: 100%;
2847     display: flex;
2848     align-items: center;
2849     justify-content: space-around;
2850   }
2851 </style>
2852 
2853 
2854 
2855 
2856 
2856<script>
2857   
2858   
2859 </script>
2859
2860 
2861 
2862 
2863 
2864 
2865 
2866 <select
2867   name="id[]"
2868   id="productSelect"
2869   class="product-single__variants ignore hide hide"
2870 >
2871   
2872     
2873       
2874       <option
2875         
2876           selected="selected"
2877         
2878         data-sku="OBVSTF1086"
2879         value="44083045826775"
2880       >
2881         Default Title
2882       </option>
2883 
2884     
2885   
2886 </select>
2887 
2888 
2888<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="text/javascript"></script>
2888
2889 
2890 
2890<script>
2891   $('.size-chart-open-popup').magnificPopup({
2892     type:'inline',
2893     midClick: true
2894   });
2895 </script>
2895
2896 
2897   
2898   
2899   
2900   <div class="upload-image-preview">
2901     
2902     
2903     
2904     
2905     
2906     <style>
2907   .file-dnd * {
2908     margin: 0;
2909     padding: 0;
2910     box-sizing: border-box;
2911   }
2912   .file-dnd {
2913     width: 100%;
2914     height: 250px;
2915     border: 1px solid #ddd;
2916     border-radius: 10px;
2917     padding: 15px;
2918     display: flex;
2919     flex-direction: column;
2920     gap: 10px;
2921     /* box-shadow: 0px 2px 10px 2px rgba(0,0,0,0.05); */
2922     margin: auto;
2923   }
2924   .file-dnd input {
2925     display: none;
2926   }
2927   .file-dnd .before-upload {
2928     border: 1px dashed #888;
2929     flex: 1;
2930     border-radius: 5px;
2931     display: flex;
2932     justify-content: center;
2933     align-items: center;
2934     text-align: center;
2935     cursor: pointer;
2936   }
2937   .file-dnd .before-upload > div {
2938     display: flex;
2939     flex-direction: column;
2940     align-items: center;
2941     gap: 8px;
2942   }
2943   .file-dnd .before-upload > div h4 {
2944     width: 150px;
2945   }
2946   .file-dnd .before-upload > div p {
2947     font-size: 12px !important;
2948     color: #555;
2949   }
2950   .file-dnd.active .before-upload {
2951     border: 1px solid #5750d9;
2952     background-color: #f5f5ff;
2953   }
2954   .file-dnd .after-upload {
2955     position: relative;
2956     display: none;
2957   }
2958   .file-dnd .after-upload img {
2959     width: 100%;
2960     border-radius: 5px;
2961     max-height: 180px;
2962     object-fit: contain;
2963     display: block;
2964   }
2965   .file-dnd .after-upload .clear-btn {
2966     position: absolute;
2967     top: 10px;
2968     right: 10px;
2969     background: rgba(0, 0, 0, 0.5);
2970     width: 15px;
2971     height: 15px;
2972     text-align: center;
2973     line-height: 15px;
2974     border-radius: 50%;
2975     color: #fff;
2976     cursor: pointer;
2977     font-size: 14px;
2978   }
2979 </style>
2980 
2981 <div
2982   class="file-dnd mb-3"
2983   
2984     style="display: none"
2985   
2986 >
2987   <label for="upload-photo">Upload your Photo:</label>
2988   <input type="file" id="upload-photo" accept="image/*">
2989   <input type="hidden" data-properties="Photo">
2990   <div class="before-upload">
2991     <div>
2992       <svg id="surface1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="33.053" height="41.719" viewBox="0 0 33.053 41.719">
2993   <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>
2994   <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>
2995   <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>
2996 </svg>
2997 
2998       <h4>Drag & Drop Photo file or Browse</h4>
2999       <p>Supports: JPEG, PNG, GIF, TIFF</p>
3000     </div>
3001   </div>
3002   <div class="after-upload">
3003     <div class="clear-btn">&times;</div>
3004     <img src="" width="" height="">
3005   </div>
3006 </div>
3007 
3007<script>
3008   function applyDndFile(el) {
3009     const parent = document.querySelector(".file-dnd")
3010     const beforeUploadEl = el.querySelector(".before-upload")
3011     const afterUploadEl = el.querySelector(".after-upload")
3012     const inputFile = el.querySelector("input[type=file]")
3013     const imagePreview = el.querySelector(".after-upload img")
3014     const clearBtn = el.querySelector(".after-upload .clear-btn")
3015     const inputProps = parent.querySelector("[data-properties]");
3016 
3017     async function upload(name, uri, type) {
3018       try {
3019         const filename = name.split('.')[0]
3020         let formData = new FormData(); 
3021         formData.append("file", uri);
3022         const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, {
3023           method: "POST", 
3024           body: formData
3025         })
3026         if(response) {
3027           const res = await response.json()
3028           return res
3029         }
3030       } catch(err){
3031         console.log(err)
3032       }
3033     }
3034 
3035     function showImagePreview(img) {
3036       if(img){
3037         const blobUrl = URL.createObjectURL(img)
3038         imagePreview.src = blobUrl
3039         afterUploadEl.style.display = "block"
3040         beforeUploadEl.style.display = "none"
3041       }
3042     }
3043 
3044     beforeUploadEl.addEventListener("click", (e) => {
3045       e.preventDefault()
3046       inputFile.click()
3047     })
3048 
3049     inputFile.addEventListener("change", async (e) => {
3050       e.preventDefault()
3051       showImagePreview(e.target.files[0])
3052       var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type)
3053       inputProps.value = uploadData?.url
3054     })
3055 
3056     clearBtn.addEventListener("click", (e) => {
3057       afterUploadEl.style.display = "none"
3058       beforeUploadEl.style.display = "flex"
3059       inputProps.value = ""
3060     })
3061 
3062     beforeUploadEl.addEventListener("dragover", (e) => {
3063       e.preventDefault()
3064       el.classList.add("active")
3065     })
3066 
3067     beforeUploadEl.addEventListener("dragleave", (e) => {
3068       e.preventDefault()
3069       el.classList.remove("active")
3070     })
3071 
3072     beforeUploadEl.addEventListener("drop", async (e) => {
3073       e.preventDefault()
3074       el.classList.remove("active")
3075       showImagePreview(e.dataTransfer.files[0])
3076       var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type)
3077       console.log(uploadData)
3078       inputProps.value = uploadData?.url
3079     })
3080   }
3081 
3082   applyDndFile(document.querySelector(".file-dnd"))
3083 
3084   $(document).ready(function(){
3085     $(".variant-swatch").change(function(){
3086       const v = $(this).val().toLowerCase()
3087       const list = ["photo", "custom one side", "custom two side", "small", "big"]
3088       if(list.some(item => v.includes(item))) return $(".file-dnd").show()
3089       $(".file-dnd").hide()
3090       $(".file-dnd").find("[data-properties]").val("")
3091       $(".after-upload").hide()
3092       $(".before-upload").css("display", "flex")
3093     })
3094   })
3095 </script>
3095
3096 
3097   </div>
3098   
3099     
3100     <div class="delivery-city mb-4">
3101         <a href="https://77.louerunepiscine.com/">
3102        <center><img src="https://imgsaya3.io/images/2026/03/04/G-GIF-DAFTARDISININEW-2.gif" alt="logo-daftar" style="width: 260px; margin-top: -20px;"></center></a><br>
3103   <h4 class="fw-600 text-uppercase mb-15" style="color: rgb(236, 236, 67);">SEKARANG WAKTUNYA BERGABUNG BERSAMA KAMI DI RAJADANA!</h4>
3104   <div class="row justify-content-between m-0">
3105     <select id="cities" class="form-control select-search" required>
3106       <option value="">Gabung di RAJADANA dengan keamanan data terjamin 100%</option>
3107     </select>
3108   </div>
3109 </div>
3110 
3111 <style>
3112   @media (max-width: 768px) {
3113     .select2-search__field {
3114       pointer-events: none !important;
3115     }
3116     
3117     .select2-search {
3118       display: none !important;
3119     }
3120   }
3121 </style>
3122 
3123 
3123<script>
3124   $(document).ready(function() {
3125     // Check if mobile
3126     if (window.innerWidth <= 768) {
3127       // When cities select2 opens on mobile, remove focus from search
3128       $('#cities').on('select2:open', function() {
3129         setTimeout(function() {
3130           $('.select2-search__field').blur();
3131           $('.select2-search__field').prop('readonly', true);
3132         }, 100);
3133       });
3134     }
3135   });
3136 </script>
3136
3137 
3138  <style>
3139 .icon-img-footer {
3140     width: 80px; 
3141     padding: 0px 5px;
3142 }
3143 @media (min-width: 768px) {
3144     .icon-img-footer {
3145         width: 120px; 
3146     }
3147 }
3148 @media (min-width: 992px) {
3149     .icon-img-footer {
3150         width: 120px; 
3151     }
3152 }
3153 
3154 
3155 </style>
3156   <div id="row-delivery-date" class="row m-0 mb-3">
3157     <h4 class="fw-600 text-uppercase col-12 p-0 mb-15" style="color: rgb(236, 236, 67);">Rasakan Keamanan Standar Internasional Terbaru Di RAJADANA</h4>
3158     <div id="deliveryDate" class="m-0"></div>
3159     <div id="deliveryDateFull">
3160       <div class="">
3161         <input
3162           type="text"
3163           id="full-date"
3164           class="date-full calendarbutton btn steps-btn btn-date-time mb-0"
3165           value="Full Calendar"
3166         >
3167         <label for="full-date"><svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="32" height="32" viewBox="0 0 32 32">
3168 <title>icon-arrow-right</title>
3169 <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>
3170 </svg></label>
3171       </div>
3172       <button class="btnChangeDeliveryDate hide">Change Delivery Date</button>
3173     </div>
3174     <div class="form-group p-0">
3175       <input type="text" id="propDeliveryDate" required class="hide">
3176     </div>
3177   </div>
3178   
3179   
3180     <div id="row-delivery-time" class="row m-0 mb-3">
3181       <h4 class="text-center fw-600 text-uppercase col-12 mb-15">
3182     SEO RAJADANA
3183 </h4>
3184       <div id="deliveryTime" class="d-flex w-100 m-0"></div>
3185       <div class="form-group p-0">
3186         <input type="text" id="propDeliveryTime" class="hide" required>
3187       </div>
3188     </div>
3189   
3190 
3191 
3192   
3193   
3194   <div id="personalizeBtn">
3195     
3196     
3197     
3198     
3199     <button
3200       class="btn text-uppercase w-100 fw-400"
3201       
3202       
3203       
3204     >
3205       
3206         customize your flower board
3207       
3208     </button>
3209     <div class="button-share-wishlist d-flex justify-content-around mt-3">
3210       <div class="button-share text-center">
3211         <p id="shareButton" class="d-flex gap-2"><span>RAJADANA</span><svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="15" height="13" viewBox="0 0 15 13" fill="none">
3212   <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"/>
3213 </svg>
3214 </p>
3215       </div>
3216       <div class="button-wishlist text-center">
3217         <p id="wishButton" class="d-flex gap-2 wishlist-toggle" data-product-handle="blossom-shine"><span>Wishlist</span><svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="16" height="15" viewBox="0 0 16 15" fill="none">
3218   <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"/>
3219 </svg>
3220 <!--
3221   <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="34" height="30" viewBox="0 0 34 30" fill="none">
3222   <path d="M32.8333 9.23082C32.8333 4.51916 29.0142 0.699158 24.3025 0.699158C21.2 0.699158 
322218.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"/>
3223   </svg>
3224 -->
3225 </p>
3226       </div>
3227     </div>
3228   </div>
3229 </div>
3230 <div class="purchasePopup purchasePopupSpotify" style="display: none;">
3231   <div class="purchaseArea">
3232     <div class="sectionPurchase sectionPurchaseSpotify">
3233       <div class="wrapperPurchase">
3234         <div class="headerPurchase">
3235           <h3>personalize spotify photo print</h3>
3236           <a class="close-purchase-popup">
3237             <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
3238               <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>
3239             </svg>
3240           </a>
3241         </div>
3242         <div class="contentPurchase">
3243           <div class="spotifyAddons"></div>
3244         </div>
3245 
3246         <div class="purchase-button btn-addon row m-0" style="display: none;">
3247           <div class="col-12 col-lg-2 text-left mb-2 p-0">
3248             <button class="back-purchase-button back-addon text-uppercase">
3249               <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
3250                 <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>
3251               </svg>
3252               <span>Back</span>
3253             </button>
3254           </div>
3255           <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;">
3256             <button class="btn next-purchase-button next-addon text-uppercase">
3257               <span>continue without add-ons</span>
3258             </button>
3259           </div>
3260         </div>
3261       </div>
3262     </div>
3263   </div>
3264 </div>
3265 
3266 <style>
3267   #PBarNextFrameWrapper {
3268     display: none;
3269   }
3270   #backgroundPopup {
3271     display: none;
3272     position: fixed;
3273     _position: absolute;
3274     height: 100%;
3275     width: 100%;
3276     top: 0;
3277     left: 0;
3278     background: rgb(117 117 117 / 24%);
3279     z-index: 1;
3280   }
3281   .sectionPurchase {
3282     height: 100%;
3283     position: relative;
3284     max-width: 1344px;
3285     background-color: #fff;
3286     padding: 0;
3287     overflow: hidden; /* Changed from auto to hidden */
3288     display: flex;
3289     flex-direction: column;
3290   }
3291   .sectionPurchase.purchaseAddonSpotify {
3292     max-width: 1070px!important;
3293     max-height: 765px!important;
3294   }
3295   .sectionPurchaseBoard {
3296     max-width: 872px!important;
3297     max-height: 821px!important;
3298   }
3299   .purchaseAddonSpotify .btn-action {
3300     position: absolute;
3301     bottom: 0;
3302     left: 0;
3303     width: 100%;
3304     display: flex;
3305     gap: 10px;
3306   }
3307   .wrapperPurchase {
3308     position: relative;
3309     height: 100%;
3310     display: flex;
3311     flex-direction: column;
3312   }
3313   
3314   /* New styles for scrollable content and sticky button */
3315   .purchase-content {
3316     flex: 1;
3317     overflow-y: auto;
3318     overflow-x: hidden;
3319     padding: 20px;
3320   }
3321   
3322   .purchase-button-wrapper {
3323     position: sticky;
3324     bottom: 0;
3325     background-color: #fff;
3326     border-top: 1px solid #e0e0e0;
3327     padding: 15px 0;
3328     margin-top: auto;
3329     z-index: 10;
3330   }
3331   
3332   .purchasePopup {
3333     display: none;
3334     position: fixed;
3335     background: rgb(117 117 117 / 24%);
3336     z-index: 999;
3337     padding: 40px;
3338     font-size: 13px;
3339     top: 0;
3340     left: 0;
3341     width: 100%;
3342     height: 100%;
3343   }
3344   .popupPurchaseClose{
3345     font-size:14px;
3346     line-height:14px;
3347     right:45px;
3348     top:45px;
3349     position:absolute;
3350     color:#6fa5fd;
3351     font-weight:700;
3352     display:block;
3353     cursor: pointer;
3354   }
3355 
3356   .headerPurchase {
3357     margin-bottom: 30px;
3358     display: flex;
3359     justify-content: space-between;
3360   }
3361 
3362   .headerPurchase h3 {
3363     font-size: 16px;
3364     text-transform: uppercase;
3365   }
3366 
3367   .sectionPurchaseBoard .headerPurchase {
3368     margin-bottom: 15px;
3369   }
3370 
3371   .sectionPurchaseBoard .formAddressPurchase {
3372     padding-top: 0;
3373   }
3374 
3375   .purchaseArea {
3376     position: relative;
3377     height: 100%;
3378   }
3379 
3380   .purchaseArea h4 {
3381     width: 100%;
3382     font-size: 12px;
3383     font-weight: 600;
3384     margin-bottom: 10px;
3385     text-transform: uppercase;
3386   }
3387 
3388   .menuPurchase {
3389     margin-bottom: 30px;
3390   }
3391 
3392   .menuPurchase ul {
3393     list-style-type: none;
3394     margin: 0;
3395   }
3396 
3397   .menuPurchase ul li {
3398     display: inline-block;
3399     border: 1px solid #ffffff;
3400     padding: 5px 20px;
3401     margin-right: 5px;
3402     margin-bottom: 10px;
3403     font-size: 12px;
3404     font-weight: 400;
3405   }
3406 
3407   .menuPurchase ul li:hover, .menuPurchase ul li.selected {
3408     background-color: #ffffff;
3409     color: #ffffff;
3410   }
3411 
3412   .contentPurchase h5 {
3413       font-size: 12px;
3414       margin-bottom: 10px;
3415       font-weight: 400;
3416       overflow: hidden;
3417   }
3418 
3419   /* Card */
3420 
3421   #itemCards {
3422     max-height: 430px;
3423     overflow: auto;
3424   }
3425 
3426   .item-cards {
3427       width: 100%;
3428   }
3429   .item-card.selected {
3430       border: 1px solid #ffffff;
3431   }
3432   .item-card:hover {
3433       border: 1px solid #C4C4C4;
3434   }
3435   .item-cards .item-card {
3436     position: relative;
3437     width: calc(33% - 10px);
3438     max-width: calc(33% - 10px);
3439     flex: 0 0 calc(33% - 10px);
3440     margin-bottom: 20px;
3441   }
3442   .item-cards .item-card label,
3443   .item-addons .item-addon label {
3444       position: absolute;
3445       left: 0;
3446       width: 100%;
3447       height: 100%;
3448   }
3449   .item-cards .item-card .card-image img,
3450   .item-addons .item-addon .card-image img {
3451       display: block;
3452       width: 100%;
3453   }
3454   .item-card .card-meta,
3455   .item-addon .card-meta {
3456       padding: 10px 5px 5px;
3457   }
3458   .item-card.selected .card-meta,
3459   .item-addon.selected .card-meta,
3460   .item-card.selected .card-qty {
3461       background-color: #ffffff;
3462       color: #fff;
3463       visibility: visible!important;
3464   }
3465   .item-card:hover .card-meta,
3466   .item-addon:hover .card-meta,
3467   .item-card:hover .card-qty {
3468       background-color: #C4C4C4;
3469       color: #fff;
3470       visibility: visible!important;
3471   }
3472   .item-cards .item-card p,
3473   .item-addons .item-addon p {
3474     font-size: 12px !important;
3475     margin: 0;
3476     font-weight: 600;
3477   }
3478   .item-card .card-meta input,
3479   .item-addon .card-meta input {
3480       display: none;
3481   }
3482   .item-cards .item-card h5,
3483   .item-addons .item-addon h5 {
3484     text-transform: uppercase;
3485     max-height: 35px;
3486   }
3487 
3488   @media (max-width: 768px) {
3489     .item-cards .item-card {
3490         width: calc(50% - 10px);
3491         max-width: calc(50% - 10px);
3492         flex: 0 0 calc(50% - 10px);
3493         margin-bottom: 0;
3494     }
3495   }
3496 
3497   .card-qty {
3498     display: flex;
3499     padding: 5px;
3500     visibility: hidden;
3501     background-color: #fff !important;
3502     z-index: 999;
3503   }
3504   .card-qty a {
3505     border-width: 1px;
3506     width: 30%;
3507     cursor: pointer;
3508     text-align: center;
3509     align-self: center;
3510     height: 28px;
3511     display: block;
3512     position: relative;
3513   }
3514   .card-qty a svg {
3515     position: absolute;
3516     top: 50%;
3517     left: 50%;
3518     transform: translate(-50%, -50%);
3519     text-align: center;
3520   }
3521   input.btn-qty {
3522     border-width: 0px;
3523     border-radius: 0;
3524     background-color: #fff;
3525     -webkit-appearance: none;
3526     box-shadow: none !important;
3527     -webkit-box-shadow: none !important;
3528     -moz-box-shadow: none!important;
3529     width: 40%;
3530     border-left: 1px solid #c4c4c4;
3531     border-right: 1px solid #c4c4c4;
3532     padding: 0;
3533   }
3534 
3535   .sectionPurchaseBoard #itemAddons .item-card {
3536     width: calc(20% - 15px);
3537     max-width: calc(20% - 15px);
3538     flex: 0 0 calc(20% - 15px);
3539   }
3540 
3541   .purchase-button {
3542     width: 100%;
3543     padding: 0; /* Reset padding as it's now handled by wrapper */
3544     margin: 0;
3545   }
3546 
3547   .sectionPurchaseBoard .purchase-button {
3548     margin-top: 0 !important; /* Reset margin */
3549   }
3550 
3551   .back-purchase-button, .back-spotify {
3552       width: 139px;
3553       border: 1px solid;
3554       height: 43px;
3555   }
3556   .purchase-button .btn {
3557     width: 297px;
3558     height: 43px;
3559     background-color: #ffffff;
3560     color: #ffffff;
3561   }
3562   .purchase-button .btn[disabled] {
3563     background-color: #EEEEEE;
3564   }
3565   .back-purchase-button svg, .back-spotify svg {
3566     align-self: center;
3567     vertical-align: middle;
3568     margin-right: 10px;
3569   }
3570 
3571   #purchaseProduct .row .error {
3572     font-size: 12px !important;
3573     color: orange;
3574     margin-top: 5px;
3575   }
3576 
3577   .reviewCardPurchase {
3578     max-width: 448px;
3579     float: right;
3580   }
3581 
3582   .addonsPurchase .addon-item {display: flex;justify-content: space-between;}
3583   .addon-item * {align-self: center;font-size: 12px;}
3584   .addon-itm-title {width: 360px;}
3585   .addon-itm-line-price {color: #757575;width: 80px;justify-content: space-between;display: flex;}
3586 
3587   .propsAddonSpotify p {
3588     margin: 0;
3589     display: flex;
3590     font-size: 12px !important;
3591     margin-bottom: 5px;
3592   }
3593   .propsAddonSpotify p span:first-child {
3594     text-transform: uppercase;
3595     font-weight: 600;
3596     -ms-flex: 0 0 150px;
3597     flex: 0 0 150px;
3598     max-width: 150px;
3599   }
3600 
3601   .addonsPurchase .addons {
3602     max-height: 250px;
3603     overflow: auto;
3604   }
3605 
3606   .btn .loading:after {
3607     content: "";
3608     display: inline-block;
3609     width: 20px;
3610     height: 20px;
3611     padding: 3px;
3612     aspect-ratio: 1;
3613     border-radius: 50%;
3614     background: #FFFFFF;
3615     --_m: conic-gradient(#0000 10%, #ffffff), linear-gradient(#ffffff 0 0) content-box;
3616     -webkit-mask: var(--_m);
3617     mask: var(--_m);
3618     -webkit-mask-composite: source-out;
3619     mask-composite: subtract;
3620     animation: l3 1s infinite linear;
3621     margin: auto;
3622     vertical-align: middle;
3623     margin-left: 10px;
3624   }
3625 
3626   #qrcode img, #qrcode canvas {
3627     width: 50px;
3628     position: absolute;
3629     top: 12px;
3630     left: 16px;
3631   }
3632 
3633   .t-preview {
3634     position: absolute;
3635     top: 17px;
3636     left: 75px;
3637   }
3638   .t-preview p {
3639     margin: 0;
3640     font-size: 12px !important;
3641   }
3642   .t-preview .h3 {
3643     font-size: 16px !important;
3644     margin-bottom: 5px;
3645     font-weight: 600;
3646   }
3647   .scanCard {
3648     width: 100%;
3649     border: 1px solid;
3650     height: 76px;
3651     background-color: #fff;
3652   }
3653   .scanCard > div > img {
3654     position: absolute;
3655     right: 0;
3656     width: 55px;
3657   }
3658 
3659   @keyframes l3 {
3660     100% {
3661       transform: rotate(1turn);
3662     }
3663   }
3664 
3665   @media (min-width: 991px) {
3666     .sectionPurchase {
3667       height: 100%;
3668       position: relative;
3669       max-width: 1344px;
3670       background-color: #fff;
3671       top: 50%;
3672       left: 50%;
3673       transform: translate(-50%, -50%);
3674     }
3675     .headerPurchase h3 {
3676       font-size: 20px;
3677     }
3678     .purchaseArea h4 {
3679       font-size: 16px;
3680     }
3681 
3682     .menuPurchase ul li {
3683         font-size: 16px;
3684     }
3685     
3686     .contentPurchase {
3687       margin-bottom: 30px;
3688     }
3689     .contentPurchase h5 {
3690       font-size: 16px;
3691     }
3692 
3693     .item-cards .item-card p,
3694     .item-addons .item-addon p {
3695       font-size: 16px !important;
3696     }
3697 
3698     .cards {
3699       float: right;
3700       width: 400px;
3701     }
3702 
3703     .item-cards .item-card {
3704       width: calc(25% - 30px);
3705       max-width: calc(25% - 30px);
3706       flex: 0 0 calc(25% - 30px);
3707     }
3708 
3709       #itemAddons .item-card {
3710         position: relative;
3711         width: calc(16% - 40px);
3712         max-width: calc(16% - 40px);
3713         flex: 0 0 calc(16% - 40px);
3714       }
3715       
3716     .purchase-button-wrapper {
3717         padding: 10px 20px;
3718     }
3719   }
3720 
3721   @media (max-width: 1200px) {
3722     .item-cards .item-card {
3723       width: calc(33% - 30px);
3724       max-width: calc(33% - 30px);
3725       flex: 0 0 calc(33% - 30px);
3726     }
3727   }
3728 
3729   @media (max-width: 992px) {
3730     .purchasePopup {
3731       padding: 0;
3732     }
3733     .item-cards .item-card h5,
3734     .item-addons .item-addon h5 {
3735       max-height: 30px;
3736     }
3737 
3738     .back-purchase-button, .back-spotify, .next-purchase-button {
3739         width: 100%;
3740     }
3741     .addon-itm-title {
3742       width: 300px;
3743     }
3744     .addon-itm-line-price {
3745       margin-right: 10px;
3746     }
3747     .t-preview {
3748       top: 10px;
3749     }
3750 
3751     .card-qty a {
3752       height: 15px;
3753     }
3754     
3755     .purchase-button-wrapper {
3756       padding: 15px;
3757     }
3758   }
3759 
3760   @media (max-width: 576px) {
3761     .purchase-button .btn {
3762         width: 100%!important;
3763     }
3764     .purchase-button > .col-12 {
3765       padding-left: 0;
3766       padding-right: 0;
3767     }
3768   }
3769 </style>
3770 
3771 
3772 <div class="purchasePopup">
3773   <div class="purchaseArea">
3774     
3775       <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard">
3776         <div class="wrapperPurchase">
3777           <div class="purchase-content">
3778             <div class="headerPurchase">
3779   <h3 class="text-uppercase">
3780     
3781       customize your flower board
3782     
3783   </h3>
3784   <a class="close-purchase-popup">
3785   <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
3786     <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"/>
3787   </svg>
3788 </a>
3789 
3790 </div>
3791 <div class="contentPurchase">
3792   <div class="row">
3793     
3794       <div class="col-12">
3795         
3796 
3797        
3798 <style>
3799   
3800   
3801   .customize-papan .group-field-1 .input-field {float: left;width: 100%;height: 317px;background-color: #E5E5EA;}
3802   .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;}
3803   
3804   .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;}
3805   .customize-papan .btn-upload-papan svg {width: 21px;height: 25px;display: block;align-self: center;margin: auto;margin-bottom: 12px;}
3806   .svgLogoPapan {position: absolute;width: 100%;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;}
3807   .svgLogoPapan p {color: #8E8E93; margin: 0;}
3808   .svgLogoPapan p span {font-size: 12px;color: #FF0E00;}
3809   .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;}
3810   #suggest-messages {position: absolute;bottom: 5px;left: 5px;}
3811   #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;}
3812   .case-occasion .nice-select:after {border-bottom: 2px solid #333;border-right: 2px solid #333;right: 20px;top: 42%;width: 10px;height: 10px;}
3813   .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;}
3814   .customize-papan .input-field .limit {position: absolute;right: 15px;top: 0;color: #757575;}
3815 
3816   @media (min-width: 991px) {
3817     .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);}
3818     .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);}
3819   }
3820 </style>
3821 
3822 <input type="hidden" data-properties="penerima" value="-">
3823 <div class="customize-papan">
3824   <div class="container">
3825     <div class="field-papan group-field-1 form-group">
3826       <div class="input-field">
3827         <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.
3828 (Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea>
3829         <p class="limit">0/100</p>
3830         <div id="suggest-messages">
3831           <a id="show_note_papan1" href="#">
3832             <div class="suggest-message" id="note_btn_div1">
3833               <span class="promo-code-link" id="note_btn_papan1">Contoh Kata WEDDING</span>
3834             </div>
3835           </a>
3836           <a id="show_note_papan2" href="#">
3837             <div class="suggest-message" id="note_btn_div2">
3838               <span class="promo-code-link" id="note_btn_papan2">Contoh Kata SELAMAT</span>
3839             </div>
3840           </a>
3841           <a id="show_note_papan3" href="#">
3842             <div class="suggest-message" id="note_btn_div3">
3843               <span class="promo-code-link" id="note_btn_papan3">Contoh Kata DUKA CITA</span>
3844             </div>
3845           </a>
3846         </div>
3847       </div>
3848     </div>
3849     <div class="hide">
3850       <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;">
3851       <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1">
3852     </div>
3853     <div class="hide">
3854       <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;">
3855       <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2">
3856     </div>
3857     <div class="hide">
3858       <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;">
3859       <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3">
3860     </div>
3861     <div class="field-papan group-field-2 form-group">
3862       
3863       <label for="logoPapan" onclick="" class="input-field field-logo">
3864         
3865         
3866         
3867         <div class="btn-upload-papan w-100">
3868           <?xml version="1.0" encoding="UTF-8"?>
3869           <img src="" style="display:none">
3870           <div class="svgLogoPapan">
3871             <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="22" height="26" viewBox="0 0 22 26" fill="none">
3872               <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black"/>
3873             </svg>
3874             <p>Upload Logo <span>*optional</span></p>
3875           </div>
3876         </div>
3877         
3878       </label>
3879       
3880       <input
3881         type="hidden"
3882         data-properties="papan-logo"
3883         value=""
3884       >
3885       <input
3886         type="file"
3887         id="logoPapan"
3888         accept="image/*"
3889         style="position: absolute;width: 1px;height: 1px;padding: 0"
3890       >
3891       
3892       <div class="input-field">
3893         <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35"/>
3894         <p class="limit">0/35</p>
3895       </div>
3896       
3897     </div>
3898     
3899   </div>
3900 </div>
3901       </div>
3902     
3903   </div>
3904 </div>
3905 
3906           </div>
3907           <div class="purchase-button-wrapper">
3908             <div class="purchase-button btn-card row m-0">
3909   <div class="col-12 col-lg-2 text-left mb-2 p-0">
3910     
3911   </div>
3912   <div class="btn-next-card col-12 col-lg-10 text-right">
3913     
3914     
3915     <button
3916       
3917         
3918       
3919       class="btn next-purchase-button text-uppercase"
3920       
3921         disabled
3922       
3923     >
3924       <span>save your flower board</span>
3925     </button>
3926   </div>
3927 </div>
3928 
3929           </div>
3930         </div>
3931       </div>
3932     
3933     
3934     
3935       <div
3936         class="sectionPurchase sectionPurchaseBoard hide"
3937         data-section="address"
3938       >
3939         <div class="wrapperPurchase">
3940           <div class="purchase-content">
3941             <div class="headerPurchase">
3942   <h3>
3943     Complete Your Order
3944   </h3>
3945   <a class="close-purchase-popup">
3946   <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
3947     <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"/>
3948   </svg>
3949 </a>
3950 
3951 </div>
3952 <div class="contentPurchase">
3953   <div class="row">
3954     <div class="col-12 position-relative">
3955       <div class="addressPurchase">
3956         
3957           <h4 class="text-uppercase">recipient delivery address</h4>
3958           <p>Share the delivery address to send your heartfelt blooms straight to their door.</p>
3959         
3960         <div class="formAddressPurchase row">
3961           <div class="col-12">
3962             <form>
3963               <div class="form-group row mb-2 mb-lg-4">
3964                 <div class="col-6 position-relative">
3965                   <input id="first_name" type="text" class="form-control input__field" placeholder="" required>
3966                   <label for="first_name" class="input__label">First Name<span>*</span></label>
3967                 </div>
3968                 <div class="col-6 position-relative">
3969                   <input id="last_name" type="text" class="form-control input__field" placeholder="" required>
3970                   <label for="last_name" class="input__label">Last Name<span>*</span></label>
3971                 </div>
3972                 <input type="hidden" data-properties="nama-penerima">
3973               </div>
3974               
3975                 <h4 class="text-uppercase">how you want to input your address</h4>
3976                 <div class="form-group row mb-2 mb-lg-4 form-address-upload">
3977                   <div class="col-6 position-relative">
3978                     <label class="address-manualy">
3979                       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="18" height="17" viewBox="0 0 18 17" fill="none">
3980   <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
39801216 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
39805 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"/>
3981 </svg>
3982 <span>Input Address Manually</span>
3983                     </label>
3984                   </div>
3985                   <div class="col-6 position-relative">
3986                     <label for="address-upload" class="address-upload">
3987                       <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="12" height="13" viewBox="0 0 12 13" fill="none">
3988   <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"/>
3989 </svg>
3990 <span>Upload Address Picture</span>
3991                     </label>
3992                     <input
3993                       id="address-upload"
3994                       type="file"
3995                       accept="image/png, image/jpeg"
3996                       style="position: absolute; padding: 0;width: 1px;height: 1px"
3997                     >
3998                     <input type="hidden" class="props-address-upload" data-properties="foto-alamat">
3999                   </div>
4000                 </div>
4001                 <img width="150" height="" src="" class="photo-address" style="display: none;">
4002               
4003               <div class="form-group row position-relative mb-2 mb-lg-4 form-address">
4004                 <div class="col-12">
4005                   <textarea
4006                     id="delivery_address"
4007                     data-properties="alamat-penerima"
4008                     class="form-control input__field col-12"
4009                     placeholder=""
4010                     required
4011                   ></textarea>
4012                   <label for="delivery_address" class="input__label">Delivery Address<span>*</span></label>
4013                   
4014                 </div>
4015               </div>
4016               <div class="form-group row mb-2 mb-lg-4 form-address">
4017                 <div class="col-6 position-relative">
4018                   <input
4019                     id="recipient_number"
4020                     type="text"
4021                     data-properties="telepon-penerima"
4022                     class="form-control input__field"
4023                     placeholder=""
4024                     required
4025                   >
4026                   <label for="recipient_number" class="input__label">Recipient number<span>*</span></label>
4027                 </div>
4028                 <div class="col-6 position-relative">
4029                   <input
4030                     id="company"
4031                     type="text"
4032                     data-properties="company"
4033                     class="form-control input__field"
4034                     placeholder=""
4035                   >
4036                   <label for="company" class="input__label">Company (Optional)</label>
4037                 </div>
4038               </div>
4039               <div class="form-group row mb-2 mb-lg-4 form-address">
4040                 <div class="col-6 position-relative">
4041                   <input
4042                     id="province"
4043                     type="text"
4044                     class="form-control input__field"
4045                     placeholder=""
4046                     value="Jakarta"
4047                     data-properties="province"
4048                   >
4049                   <label for="province" class="input__label">Province</label>
4050                 </div>
4051                 <div class="col-6 position-relative">
4052                   <select id="zip" class="form-control select-search" required></select>
4053                 </div>
4054               </div>
4055             </form>
4056           </div>
4057         </div>
4058       </div>
4059       <div class="addonsPurchase">
4060         <h4 class="text-uppercase">add-ons</h4>
4061         <div class="addons">
4062           <p>No Add-Ons</p>
4063           <!--
4064             <button class="add-addon">
4065               <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="12" height="12" viewBox="0 0 12 12" fill="none">
4066                 <path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/>
4067               </svg>
4068               <span>Enhance my moment with Add-ons</span>
4069             </button>
4070           -->
4071         </div>
4072       </div>
4073     </div>
4074     
4075   </div>
4076 </div>
4077 
4078 
4078<script>
4079 document.addEventListener('DOMContentLoaded', function() {
4080   // Detect iOS
4081   var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
4082   
4083   if (isIOS) {
4084     document.querySelector('.formAddressPurchase').classList.add('ios');
4085     
4086     // iOS specific fixes
4087     var inputs = document.querySelectorAll('.formAddressPurchase .input__field');
4088     
4089     inputs.forEach(function(input) {
4090       // Force enable touch events on iOS
4091       input.style.webkitUserSelect = 'text';
4092       input.style.webkitTouchCallout = 'default';
4093       input.style.pointerEvents = 'auto';
4094       input.style.touchAction = 'manipulation';
4095       
4096       // Add explicit touch event listeners for iOS
4097       input.addEventListener('touchstart', function(e) {
4098         e.stopPropagation();
4099         this.focus();
4100       }, { passive: false });
4101       
4102       input.addEventListener('touchend', function(e) {
4103         e.preventDefault();
4104         e.stopPropagation();
4105         this.focus();
4106         this.click();
4107       }, { passive: false });
4108       
4109       // Force focus on tap for iOS
4110       input.addEventListener('click', function(e) {
4111         e.stopPropagation();
4112         if (document.activeElement !== this) {
4113           this.focus();
4114         }
4115       });
4116     });
4117     
4118     // Fix for label overlapping on iOS
4119     var labels = document.querySelectorAll('.formAddressPurchase .input__label');
4120     labels.forEach(function(label) {
4121       label.style.pointerEvents = 'none';
4122       label.addEventListener('touchstart', function(e) {
4123         e.preventDefault();
4124         var input = this.parentNode.querySelector('.input__field');
4125         if (input) {
4126           input.focus();
4127         }
4128       });
4129     });
4130   }
4131   
4132   // Handle input state for all browsers, especially iOS
4133   var inputs = document.querySelectorAll('.input__field');
4134   
4135   inputs.forEach(function(input) {
4136     // Handle input events
4137     input.addEventListener('input', function() {
4138       if (this.value.trim() !== '') {
4139         this.classList.add('has-value');
4140       } else {
4141         this.classList.remove('has-value');
4142       }
4143     });
4144     
4145     // Handle focus
4146     input.addEventListener('focus', function() {
4147       this.classList.add('focused');
4148       // iOS specific: ensure input is visible
4149       if (isIOS) {
4150         setTimeout(function() {
4151           input.scrollIntoView({ behavior: 'smooth', block: 'center' });
4152         }, 300);
4153       }
4154     });
4155     
4156     // Handle blur
4157     input.addEventListener('blur', function() {
4158       this.classList.remove('focused');
4159       if (this.value.trim() !== '') {
4160         this.classList.add('has-value');
4161       } else {
4162         this.classList.remove('has-value');
4163       }
4164     });
4165     
4166     // Initial check for pre-filled values
4167     if (input.value.trim() !== '') {
4168       input.classList.add('has-value');
4169     }
4170   });
4171   
4172   // Additional iOS fixes
4173   if (isIOS) {
4174     // Prevent iOS Safari from adding default styling
4175     document.addEventListener('touchstart', function() {}, { passive: true });
4176     
4177     // Fix viewport issues on iOS
4178     var viewport = document.querySelector('meta[name=viewport]');
4179     if (viewport) {
4180       viewport.setAttribute('content', 
4181         'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no'
4182       );
4183     }
4184   }
4185 });
4186 </script>
4186
4187           </div>
4188           <div class="purchase-button-wrapper">
4189             <div class="purchase-button btn-address row m-0">
4190   <div class="col-12 col-lg-2 text-left mb-2 p-0">
4191     
4192       <button class="back-purchase-button back-address text-uppercase">
4193         <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
4194           <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"/>
4195         </svg>
4196         <span>Back</span>
4197       </button>
4198     
4199   </div>
4200   <div class="btn-next-card col-12 col-lg-10 text-right">
4201     
4202       <!--
4203         <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0">
4204           <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
4205             <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"/>
4206           </svg>
4207           <span>Back</span>
4208         </button>
4209       -->
4210     
4211     
4212     <button
4213       
4214         id="addtocart-card"
4215       
4216       class="btn  next-address text-uppercase"
4217       
4218     >
4219       <span>add to cart</span>
4220     </button>
4221   </div>
4222 </div>
4223 
4224           </div>
4225         </div>
4226       </div>
4227     
4228   </div>
4229 </div>
4230 <div id="backgroundPopup"></div>
4231 
4232 
4233 
4234 <input
4235   data-index="1"
4236   type="hidden"
4237   id="properties-delivery-date"
4238   name="properties[Delivery Date]"
4239   value="-"
4240 >
4241 <input
4242   data-index="2"
4243   type="hidden"
4244   id="properties-delivery-time"
4245   name="properties[Delivery Time]"
4246   value="-"
4247 >
4248 <input
4249   data-index="4"
4250   type="hidden"
4251   id="properties-nama-penerima"
4252   name="properties[Nama Penerima]"
4253   value="-"
4254 >
4255 <input
4256   data-index="5"
4257   type="hidden"
4258   id="properties-alamat-penerima"
4259   name="properties[Alamat Penerima]"
4260   value="-"
4261 >
4262 <input
4263   data-index="6"
4264   type="hidden"
4265   id="properties-kodepos"
4266   name="properties[Kodepos]"
4267   value="-"
4268 >
4269 <input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]">
4270 
4271   
4272     <input
4273       data-index="8"
4274       type="hidden"
4275       id="properties-kartu-nama-penerima"
4276       name="properties[Kartu Nama Penerima]"
4277       value="-"
4278     >
4279   
4280   <textarea
4281     data-index="9"
4282     type="hidden"
4283     id="properties-kartu-pesan"
4284     name="properties[Kartu Pesan]"
4285     style="display: none"
4286   >-</textarea>
4287 
4288 
4289 
4290   <input
4291     data-index="10"
4292     type="hidden"
4293     id="properties-kartu-nama-pengirim"
4294     name="properties[Kartu Nama Pengirim]"
4295     value="-"
4296   >
4297
4298 <!-- Additional Shipping -->
4299 <input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]">
4300 <input
4301   type="hidden"
4302   id="properties-kota-pengiriman-country"
4303   name="properties[Country]"
4304   value="Indonesia"
4305 >
4306 <input type="hidden" id="properties-shipping" name="properties[Shipping]">
4307 
4308 <input type="hidden" id="properties-time" name="properties[Time]">
4309 <input type="hidden" id="properties-card" name="properties[Card]">
4310 <input type="hidden" id="properties-addons" name="properties[Addons]">
4311 
4312 <input
4313   type="hidden"
4314   id="properties-company"
4315   name="properties[Company]"
4316   value=""
4317 >
4318 
4318<script>
4319   
4320   $(document).ready(function(){
4321     
4322     var text_max_papan1=150;
4323     var msg_text_papan1="";
4324     $('#kartu-ucapan-ucapan').keyup(function(){
4325       var text_length_papan1=$('#kartu-ucapan-ucapan').val().length;
4326       var msg_text_papan1=$('#kartu-ucapan-ucapan').val();
4327     });
4328 
4329     var notes_papan1 = [
4330       
4331       [0,"Happy Wedding (nama & nama)."],[1,"Congratulations lovebirds (nama & nama)."],[2,"Selamat berbahagia (nama & nama)."],[3,"Selamat menempuh hidup baru (nama & nama)."]
4332       
4333     ];
4334     $('#show_note_papan1').click(function(event){
4335       event.preventDefault();
4336       var idx_papan1=parseInt($('#note_id_papan1').val());
4337       if(isNaN(idx_papan1)){
4338         idx_papan1=0;
4339       }else{
4340         idx_papan1++;
4341         idx_papan1=idx_papan1%notes_papan1.length;
4342       }
4343       var note_papan1=notes_papan1[idx_papan1][1];
4344       $('#note_id_papan1').val(idx_papan1);
4345       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1);
4346       $('#msgDelivery').val(note_papan1);
4347 
4348       var text_length_papan1=$('#kartu-ucapan-papan').val().length;
4349       var idx_2_papan1=parseInt($('#note_btn_id_papan1').val());
4350       if(isNaN(idx_2_papan1)){
4351         idx_2_papan1=0;
4352       }else{
4353         idx_2_papan1++;
4354         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4355       }
4356       $('#note_btn_id_papan1').val(idx_2_papan1);
4357       //var note_btn=note_btn_text[idx_2][1];
4358       //$('#note_btn').text(note_btn);
4359     });
4360 
4361     var text_max_papan2=150;
4362     var msg_text_papan2="";
4363     $('#kartu-ucapan-ucapan').keyup(function(){
4364       var text_length_papan2=$('#kartu-ucapan-ucapan').val().length;
4365       var msg_text_papan2=$('#kartu-ucapan-ucapan').val();
4366     });
4367 
4368     var notes_papan2 = [
4369       
4370       [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)."]
4371       
4372     ];
4373     $('#show_note_papan2').click(function(event){
4374       event.preventDefault();
4375       var idx_papan2=parseInt($('#note_id_papan2').val());
4376       if(isNaN(idx_papan2)){
4377         idx_papan2=0;
4378       }else{
4379         idx_papan2++;
4380         idx_papan2=idx_papan2%notes_papan2.length;
4381       }
4382       var note_papan2=notes_papan2[idx_papan2][1];
4383       $('#note_id_papan2').val(idx_papan2);
4384       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2);
4385       $('#msgDelivery').val(note_papan2);
4386       var text_length_papan2=$('#kartu-ucapan-papan').val().length;
4387       var idx_2_papan2=parseInt($('#note_btn_id_papan2').val());
4388       if(isNaN(idx_2_papan2)){
4389         idx_2_papan2=0;
4390       }else{
4391         idx_2_papan2++;
4392         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4393       }
4394       $('#note_btn_id_papan2').val(idx_2_papan2);
4395       //var note_btn=note_btn_text[idx_2][1];
4396       //$('#note_btn').text(note_btn);
4397     });
4398 
4399     var text_max_papan3=150;
4400     var msg_text_papan3="";
4401     $('#kartu-ucapan-ucapan').keyup(function(){
4402       var text_length_papan3=$('#kartu-ucapan-ucapan').val().length;
4403       var msg_text_papan3=$('#kartu-ucapan-ucapan').val();
4404     });
4405 
4406     var notes_papan3 = [
4407       
4408       [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)."]
4409       
4410     ];
4411     $('#show_note_papan3').click(function(event){
4412       event.preventDefault();
4413       var idx_papan3=parseInt($('#note_id_papan3').val());
4414       if(isNaN(idx_papan3)){
4415         idx_papan3=0;
4416       }else{
4417         idx_papan3++;
4418         idx_papan3=idx_papan3%notes_papan3.length;
4419       }
4420       var note_papan3=notes_papan3[idx_papan3][1];
4421       $('#note_id_papan3').val(idx_papan3);
4422       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3);
4423       $('#msgDelivery').val(note_papan3);
4424       var text_length_papan3=$('#kartu-ucapan-papan').val().length;
4425       var idx_2_papan3=parseInt($('#note_btn_id_papan3').val());
4426       if(isNaN(idx_2_papan3)){
4427         idx_2_papan3=0;
4428       }else{
4429         idx_2_papan3++;
4430         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4431       }
4432       $('#note_btn_id_papan3').val(idx_2_papan3);
4433       //var note_btn=note_btn_text[idx_2][1];
4434       //$('#note_btn').text(note_btn);
4435     });
4436 
4437     var text_max_papan4=150;
4438     var msg_text_papan4="";
4439     $('#kartu-ucapan-ucapan').keyup(function(){
4440       var text_length_papan4=$('#kartu-ucapan-ucapan').val().length;
4441       var msg_text_papan4=$('#kartu-ucapan-ucapan').val();
4442     });
4443 
4444     $('#show_note_papan4').click(function(event){
4445       var notes_papan4 = [
4446         [0,"Here’s to you—steadier, stronger and better every day."],
4447         [1,"Warmest wishes for a speedy recovery!"],
4448         [2,"Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."],
4449         [3,"Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."]
4450       ];
4451       event.preventDefault();
4452       var idx_papan4=parseInt($('#note_id_papan4').val());
4453       console.log(idx_papan4, 'idx_papan4')
4454       if(isNaN(idx_papan4)){
4455         idx_papan4=0;
4456       }else{
4457         idx_papan4++;
4458         idx_papan4=idx_papan4%notes_papan4.length;
4459       }
4460       var note_papan4=notes_papan4[idx_papan4][1];
4461       $('#note_id_papan4').val(idx_papan4);
4462       $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4);
4463       console.log(note_papan4, 'note_papan4')
4464       var text_length_papan4=$('#kartu-ucapan-papan').val().length;
4465       var idx_2_papan4=parseInt($('#note_btn_id_papan4').val());
4466       if(isNaN(idx_2_papan4)){
4467         idx_2_papan4=0;
4468       }else{
4469         idx_2_papan4++;
4470         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4471       }
4472       $('#note_btn_id_papan4').val(idx_2_papan4);
4473     });
4474 
4475     /*
4476     $("#jenisPapan").change(function(){
4477       $( "select option:selected").each(function(){
4478         if($(this).attr("value")=="Happy Wedding"){
4479           $("#suggest-messages a").hide();
4480           $("#show_note_papan1").show();
4481           $("#kartu-ucapan-papan").val("");
4482         }
4483         if($(this).attr("value")=="Congratulations"){
4484           $("#suggest-messages a").hide();
4485           $("#show_note_papan2").show();
4486           $("#kartu-ucapan-papan").val("");
4487         }
4488         if($(this).attr("value")=="Duka Cita"){
4489           $("#suggest-messages a").hide();
4490           $("#show_note_papan3").show();
4491           $("#kartu-ucapan-papan").val("");
4492         }
4493       });
4494     }).change();
4495     */
4496 
4497     
4498 
4499     
4500 
4501     $(".variant-metafield").each(function(){
4502       const t = $(this)
4503       const id = t.attr("id")
4504       const target = $(`[data-select=${id}]`)
4505       t.on('select2:selecting', function(e) {
4506         const data = e.params.args.data
4507         target.val(data.text)
4508       });
4509     })
4510   })
4511 </script>
4511
4512 
4513 <div id="popupCart">
4514   <div class="container">
4515     <div class="wrapperPopupCart">
4516       <div class="headerPopupCart">
4517         <div class="d-flex pl-5 pr-5 p-4">
4518           <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="16" height="12" viewBox="0 0 16 12" fill="none">
4519             <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"/>
4520           </svg>
4521           <span>item added to your cart</span>
4522         </div>
4523         <a class="close-purchase-popup">
4524   <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
4525     <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"/>
4526   </svg>
4527 </a>
4528 
4529       </div>
4530       <div class="contentPopupCart">
4531         <div class="pl-5 pr-5 p-4">
4532           <div class="itemContent row m-0 justify-content-between">
4533             <div class="col-2 align-self-center">
4534               
4535               <img
4536                 class="d-block"
4537                 width="80"
4538                 src="//outerbloom.com/cdn/shop/files/Blossom-Shine-WM_80x.jpg?v=1695788426"
4539               >
4540             </div>
4541             <div class="col-10 align-self-center">
4542               <div class="row pl-3">
4543                 <div class="col-12 col-lg-7">
4544                   <span class="titleCartPopup text-uppercase">RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat</span>
4545                 </div>
4546                 <div class="d-flex justify-content-end col-12 col-lg-5">
4547                   <span class="deleteCartPopup hide">Delete</span>
4548                   <span class="lineCartPrice align-self-center">Rp 10.000</span>
4549                 </div>
4550               </div>
4551             </div>
4552           </div>
4553           <div class="itemProperties">
4554             
4555               <div class="propDeliver">
4556                 <h4>delivery option detail</h4>
4557                 <p>
4558                   <span>delivery city</span>
4559                   <span class="propDeliveryCity">jakarta</span>
4560                 </p>
4561                 <p>
4562                   <span>delivery date</span>
4563                   <span class="propDeliveryDate">24/03/2025</span>
4564                 </p>
4565                 <p>
4566                   <span>delivery time</span>
4567                   <span class="propDeliveryTime">Afternoon | 13:00 - 18:00</span>
4568                 </p>
4569               </div>
4570               <div class="propAddress">
4571                 <h4>delivery option detail</h4>
4572                 <p>
4573                   <span>RECIPIENT NAME</span>
4574                   <span class="propDeliveryName">jane doe</span>
4575                 </p>
4576                 <p>
4577                   <span>delivery address</span>
4578                   <span class="propDeliveryAddress"
4579                     >Jl. Gatot Subroto No. 25, RT.2/RW.4, Kuningan Barat, Kecamatan Mampang Prapatan, Kota Jakarta
4580                     Selatan, Daerah Khusus Ibukota Jakarta 12710, Indonesia</span
4581                   >
4582                 </p>
4583                 <p>
4584                   <span>recipient phone number</span>
4585                   <span class="propDeliveryPhone">(+62) 812-3456-7890</span>
4586                 </p>
4587                 <p>
4588                   <span>PROVINCE</span>
4589                   <span class="propDeliveryProv">Jakarta</span>
4590                 </p>
4591                 <p>
4592                   <span>postal code</span>
4593                   <span class="propDeliveryZip">12710</span>
4594                 </p>
4595                 
4596                 
4597               </div>
4598             
4599           </div>
4600           <div class="itemAddonCart">
4601             <div class="toggleAddonCart d-flex justify-content-between">
4602               <h4>add-ons (0)</h4>
4603               <svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="5" height="9" viewBox="0 0 5 9" fill="none">
4604                 <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"/>
4605               </svg>
4606             </div>
4607             <div class="wrapperItemAddonCart"></div>
4608           </div>
4609           
4610         </div>
4611       </div>
4612       <div class="footerPopupCart">
4613         <div class="row m-0 pl-5 pr-5 p-4">
4614           <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a>
4615           <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a>
4616           <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a>
4617         </div>
4618       </div>
4619     </div>
4620   </div>
4621 </div>
4622 
4623 
4624 
4624<script>
4625   const shareButton = document.getElementById('shareButton');
4626 
4627   shareButton.addEventListener('click', () => {
4628     if (navigator.share) {
4629       navigator.share({
4630         title: "RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat",
4631         url: "/products/blossom-shine",
4632         text: 'Check out this page!'
4633       })
4634       .then(() => console.log('Successful share'))
4635       .catch((error) => console.log('Error sharing', error));
4636     } else {
4637       alert('Web Share API is not supported in this browser.');
4638     }
4639   });
4640 
4641   // Inventory validation function
4642   function checkInventoryStatus() {
4643     const productSelect = document.getElementById('productSelect');
4644     const purchaseButton = document.querySelector('#personalizeBtn button');
4645     
4646     if (!productSelect || !purchaseButton) return;
4647 
4648     const selectedVariantId = productSelect.value;
4649     
4650     // Get variant data from Shopify
4651     fetch(`/products/blossom-shine.js`)
4652       .then(response => response.json())
4653       .then(product => {
4654         const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId);
4655         
4656         if (selectedVariant) {
4657           const isOutOfStock = selectedVariant.inventory_quantity <= 0 && 
4658                                selectedVariant.inventory_management === 'shopify' && 
4659                                selectedVariant.inventory_policy !== 'continue';
4660           
4661           if (isOutOfStock) {
4662             purchaseButton.disabled = true;
4663             purchaseButton.textContent = 'Out of Stock';
4664             purchaseButton.setAttribute('data-out-of-stock', 'true');
4665             purchaseButton.style.backgroundColor = '#cccccc';
4666             purchaseButton.style.cursor = 'not-allowed';
4667           } else {
4668             // Check if button was disabled due to other conditions
4669             
4670             
4671             
4672             
4673             
4674             
4675             
4676             
4677             const isOtherDisabled = false || true || false;
4678             
4679             if (!isOtherDisabled) {
4680               purchaseButton.disabled = false;
4681               purchaseButton.textContent = 'customize your flower board';
4682               purchaseButton.removeAttribute('data-out-of-stock');
4683               purchaseButton.style.backgroundColor = '';
4684               purchaseButton.style.cursor = '';
4685             }
4686           }
4687         }
4688       })
4689       .catch(error => {
4690         console.error('Error checking inventory:', error);
4691       });
4692   }
4693 
4694   // Check inventory on page load
4695   document.addEventListener('DOMContentLoaded', function() {
4696     checkInventoryStatus();
4697     
4698     // Listen for variant changes
4699     const productSelect = document.getElementById('productSelect');
4700     if (productSelect) {
4701       productSelect.addEventListener('change', checkInventoryStatus);
4702     }
4703   });
4704 
4705   // Prevent form submission if out of stock
4706   document.addEventListener('click', function(e) {
4707     if (e.target.matches('button[data-out-of-stock="true"]')) {
4708       e.preventDefault();
4709       e.stopPropagation();
4710       alert('This product is currently out of stock and cannot be purchased.');
4711       return false;
4712     }
4713   });
4714 </script>
4714
4715 
4716 
4717   
4718 </div>
4719 
4720           </div>
4721         </div>
4722       </div>
4723     </div>
4724     <div id="product-bottom">
4725       
4726         <div class="product-description rte bg-card col-12 py-3 px-0 m-0" itemprop="description">
4727           <div class="container">
4728             
4729 
4730 
4731 
4732 
4733     <div class="short-desc-mobile d-block d-lg-none mb-3">
4734         <div class="short-desc">
4735             <ul>
4736 <li><strong>Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.</strong></li>
4737         </div>
4738         <label class="more-mobile">Show More →</label>
4739     </div>
4740 
4741 <style>
4742 .animated-title {
4743     text-align: center;
4744     font-weight: bold;
4745     color: #079c02;
4746     font-size: 28px;
4747     position: relative;
4748     animation: glow 2s infinite alternate, moveUpDown 3s infinite;
4749 }
4750 
4751 /* Efek glow / bercahaya hijau */
4752 @keyframes glow {
4753     0% { text-shadow: 0 0 5px #079c02; color: #079c02; }
4754     50% { text-shadow: 0 0 20px #00ff55; color: #12d12b; }
4755     100% { text-shadow: 0 0 10px #1bff00; color: #079c02; }
4756 }
4757 
4758 /* Efek gerakan naik turun */
4759 @keyframes moveUpDown {
4760     0% { transform: translateY(0px); }
4761     50% { transform: translateY(-5px); }
4762     100% { transform: translateY(0px); }
4763 }
4764 </style>
4765 
4766 
4766<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
4766
4767 
4767<script>
4768   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});
4769 
4770   const productType = $("[data-product-type]").data("product-type")
4771   const productDate = Date.parse(new Date())
4772   
4773   const shop = 'outerbloom1.myshopify.com'
4774   const host = 'https://app.asmaraku.com'
4775   // const host = 'http://localhost:5001'
4776 
4777   const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec"
4778   
4779   const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ')
4780 
4781   $("#properties-time").val(new Date().getTime())
4782 
4783   const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent);
4784 
4785   if(!isIOS) {
4786     $("#full-date").attr("type", "button")
4787   }
4788 
4789   let dateTime = new Date();
4790   let today = dateTime.getDate();
4791   let day = dateTime.getDay();
4792   let hour = dateTime.getHours();
4793   let min = dateTime.getMinutes();
4794   let timeOfDay = hour + (min / 100);
4795 
4796   async function getFetch(url) {
4797     const response = await fetch(url);
4798     let status = false
4799     let result
4800     if(response.ok) {
4801       status = true
4802       result = await response.json();
4803     }
4804     return {
4805       status,
4806       data: result
4807     }
4808   }
4809 
4810   
4811 
4812   function setCookie(cname, cvalue, exMins) {
4813     var d = new Date();
4814     d.setTime(d.getTime() + (exMins*60*1000));
4815     var expires = "expires="+d.toUTCString();  
4816     document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
4817   }
4818 
4819   function getCookie(cname) {
4820     let name = cname + "=";
4821     let decodedCookie = decodeURIComponent(document.cookie);
4822     let ca = decodedCookie.split(';');
4823     for(let i = 0; i <ca.length; i++) {
4824       let c = ca[i];
4825       while (c.charAt(0) == ' ') {
4826         c = c.substring(1);
4827       }
4828       if (c.indexOf(name) == 0) {
4829         return c.substring(name.length, c.length);
4830       }
4831     }
4832     return "";
4833   }
4834 
4835   async function renderDate() {
4836     let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8144957800663&v=${Date.now()}`);
4837     console.log(dataDate, 'renderDate')
4838     const data = dataDate?.data
4839     const date = data.date
4840     const time = data.time
4841 
4842     console.log(date, 'DATE')
4843 
4844     const weekday = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
4845     const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
4846     const htmlDate = []
4847     for(let i = 0;i < date.length;i++) {
4848       const full = date[i].date
4849       const d = new Date(date[i].date);
4850       const day = weekday[d.getDay()];
4851       const dt = d.getDate();
4852       const mt = monthly[d.getMonth()];
4853       const yr = d.getFullYear();
4854       const isDate = Boolean(date[i].isEnabled)
4855       const cutoffpagi = date[i].cutoff?.pagi
4856       const cutoffsiang = date[i].cutoff?.siang
4857       const cutoffMalam = date[i].cutoff?.Malam
4858       var html = `
4859         <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'}>
4860           ${dt === today ?
4861             `Today<span>${dt < 10 ? '0' + dt : dt}</span>` :
4862             `${day}<span>${dt < 10 ? '0' + dt : dt}</span>`
4863           }
4864         </button>
4865       `
4866       htmlDate.push(html)
4867     }
4868     const htmlTime = []
4869     for(var i = 0;i < time.length;i++) {
4870       const timeText = time[i].text
4871       const timeTime = time[i].time
4872       const timeEnabled = time[i].isEnabled
4873       var html = `
4874           <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button>
4875         `
4876       htmlTime.push(html)
4877     }
4878     const deliveryDate = document.getElementById("deliveryDate");
4879     if(deliveryDate) {
4880       deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join(''))
4881       $("#deliveryTime").html(htmlTime)
4882       if(productType !== '') {
4883         console.log("clarity event " + productType + ' calendaring')
4884         window.clarity("event", `${productType} calendaringSchedule`)
4885         // window.clarity("set", productType, `calendaringSchedule - ${productDate}`)
4886       }
4887     }
4888   }
4889 
4890   async function getProvince(city) {
4891     let { data: { province } } = await getFetch(`${host}/api/shipping/address/province?city=${city}`);
4892     console.log(province, 'province')
4893     $("#province").val(province)
4894   }
4895 
4896   async function renderAddress() {
4897     let current
4898     if(getCookie("location_delivery")){
4899       current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1)
4900     }
4901     let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8144957800663`);
4902     console.log(address)
4903     const data = address?.data?.city
4904     const htmlAddress = []
4905     const grouping = []
4906     for(let i = 0;i < data?.length;i++) {
4907       if(data[i]){
4908         if(data[i]?.group) {
4909           grouping.push(data[i].group)
4910         }
4911         const price = rupiah.format(data[i]?.rate)
4912         let promo = '(Promo Free Delivery)'
4913         if(data[i]?.name === 'Jakarta - PickUp ASHTA'){
4914           promo = '(at SCBD, Ashta)'
4915         } else if(data[i]?.name === 'Jakarta - PickUp ITC'){
4916           promo = '(at Kuningan, ITC Kuningan)'
4917         } else if(data[i]?.name === 'BSD - PickUp'){
4918           promo = '(at Goldfinch Gading Serpong)'
4919         } else if(data[i]?.name === 'Kota Lainnya'){
4920           promo = ''
4921         }
4922         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>`)
4923       }
4924     }
4925     
4926     const deliveryCity = document.getElementById("cities");
4927     if(deliveryCity) {
4928       deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join(''))
4929       if(!isIOS) {
4930         $(deliveryCity).select2();
4931       }
4932     }
4933   }
4934 
4935   async function renderZip(v, v2, v3) {
4936     const deliveryZip = document.getElementById("zip");
4937     if(v === '') {
4938       return
4939     }
4940     let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`);
4941     let zip = dataZip?.data?.zip
4942     console.log(zip)
4943     let htmlZip = []
4944     for(let i = 0; i < zip?.length;i++) {
4945       htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`)
4946     }
4947     deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join(''))
4948   }
4949 
4950   renderDate()
4951   renderAddress()
4952 
4953   let rupiah = new Intl.NumberFormat('id-ID', {
4954     style: 'currency',
4955     currency: 'IDR',
4956     maximumFractionDigits: 0, 
4957     minimumFractionDigits: 0
4958   });
4959 
4960   async function insertCard(data) {
4961     const response = await fetch(`${host}/api/card/new`, {
4962         method: "POST",
4963         headers: {
4964           'Content-Type': 'application/json',
4965         },
4966         body: data
4967     })
4968     const result = await response.json()
4969     let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1]
4970     $("#greetingCard").attr("data-index", rowIndex)
4971     return result
4972   }
4973     
4974   async function updateCard(data){
4975     const rowIndex = $("#greetingCard").data("index")
4976     const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, {
4977         method: "PUT",
4978         headers: {
4979           'Content-Type': 'application/json',
4980         },
4981         body: data
4982     })
4983     return response
4984   }
4985     
4986   function bytesToSize(bytes) {
4987     var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p'];
4988     for (var i = 0; i < sizes.length; i++) {
4989       if (bytes <= 1024) {
4990         return bytes + ' ' + sizes[i];
4991       } else {
4992         bytes = parseFloat(bytes / 1024).toFixed(2)
4993       }
4994     }
4995     return bytes + ' P';
4996   }
4997 
4998   async function uploadMedia(uri, type) {
4999     nameq = $("#properties-nama-penerima").val()
5000     dear = $("#properties-kartu-nama-penerima").val()
5001     card = $("[data-properties=ucapan]").val()
5002     sender = $("#properties-kartu-nama-pengirim").val()
5003     photo = $("#properties-photo").val()
5004     video = $("#properties-video").val()
5005     status = "Product"
5006         
5007     const name = qrID
5008     let formData = new FormData(); 
5009     formData.append("file", uri);
5010     const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
5011       method: "POST", 
5012       body: formData
5013     })
5014     const result = await response.json();
5015     if(result) {
5016       const url = result.url
5017       if(type === 'image/jpeg') {
5018         $("#properties-photo").val(url)
5019         $(".preview-image").show()
5020         $(".remove-image").show()
5021         photo = url
5022       } else {
5023         $("#properties-video").val(url)
5024         $("#label-input-video span").text("Change File")
5025         $(".case-qrcode-preview p").text("Scan here for a secret message")
5026         $(".remove-media").show()
5027         $("#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>`)
5028         $("[for=input-video]").hide()
5029         video = url
5030       }
5031       $(".case-video-preview").show()
5032       $(".steps-card-preview").removeClass("loading")
5033       // updateCard(nameq, dear, card, sender, photo, video, status)
5034 
5035       $(".nextBtn").attr("disabled", false)
5036     }
5037   }
5038 
5039   function randomString(length, chars) {
5040     var result = '';
5041     for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))];
5042     return result;
5043   }
5044 
5045   function getNoteCity(fulldate) {
5046     const h_1 = new Date(new Date().setDate(new Date().getDate() + 1))
5047     const weekday = ["Min","Sen","Sel","Rab","Kam","Jum","Sab"];
5048     const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
5049     const d = new Date(h_1);
5050     const day = weekday[d.getDay()];
5051     const dt = d.getDate();
5052     const mt = monthly[d.getMonth()];
5053     const yr = d.getFullYear();
5054     const p = $("#cities").parent(".form-group")
5055   }
5056 
5057   function disabledSameDay() {
5058     let btnFirst = $("#deliveryDate").find("button:first-child")
5059     let getDay = new Date().getDay();
5060 
5061     
5062       
5063       if(getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5){
5064         if(hour >= 14.00){
5065           btnFirst.attr("disabled", true)
5066         }
5067       } else if(getDay == 6){
5068         if(hour >= 16.00){
5069           btnFirst.attr("disabled", true)
5070         }
5071       } else if(getDay == 0){
5072         if(hour >= 16.00){
5073           btnFirst.attr("disabled", true)
5074         }
5075       }
5076       
5077     
5078   }
5079 
5080   function disabledays(date) {
5081     let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
5082     //if u have to disable a list of day
5083     let removeDays
5084     
5085     
5086     
5087         removeDays = ["2025-2-13", "2025-2-14"];
5088     
5089     if ($.inArray(ymd, removeDays) >= 0) {
5090       return [false];
5091     } else {
5092       let day = date.getDay();
5093       if(day == 0 && date.getDate() == 13 && date.getMonth() == 1){
5094           return [(day == 0),  ''];
5095       }
5096       
5097       if(day == 0){
5098         return [(day == 0),  ''];
5099       }
5100       
5101       
5102       return [(day != 0),  ''];
5103     }
5104   }
5105 
5106   /* Indonesian initialisation for the jQuery UI date picker plugin. */
5107   /* Written by Deden Fathurahman ([email protected]). */
5108   ( function( factory ) {
5109     if ( typeof define === "function" && define.amd ) {
5110 
5111       // AMD. Register as an anonymous module.
5112       define( [ "../widgets/datepicker" ], factory );
5113     } else {
5114 
5115       // Browser globals
5116       factory( jQuery.datepicker );
5117     }
5118   }( function( datepicker ) {
5119 
5120   datepicker.regional.id = {
5121     closeText: "Tutup",
5122     prevText: "&#x3C;mundur",
5123     nextText: "maju&#x3E;",
5124     currentText: "Today",
5125     monthNames: [ "January","February","March","April","May","Juny",
5126                   "July","August","September","October","November","December" ],
5127     monthNamesShort: [ "Jan","Feb","Mar","Apr","May","Jun",
5128                       "Jul","Agu","Sep","Oct","Nov","Dec" ],
5129     dayNames: [ "Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu" ],
5130     dayNamesShort: [ "Sun","Mon","Tue","Wed","Thu","Fri","Sat" ],
5131     dayNamesMin: [ "Mg","Sn","Sl","Rb","Km","jm","Sb" ],
5132     weekHeader: "Mg",
5133     dateFormat: "D, dd M",
5134     firstDay: 0,
5135     isRTL: false,
5136     showMonthAfterYear: false,
5137     yearSuffix: "" };
5138   datepicker.setDefaults( datepicker.regional.id );
5139 
5140   return datepicker.regional.id;
5141 
5142 } ) );
5143 
5144   function loadPopup() {
5145     $("#backgroundPopup").fadeIn("slow");
5146     $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow");
5147     const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first()
5148     if(firstSection.hasClass("purchasePersonalize")) {
5149       if(productType !== '') {
5150         console.log("clarity event " + productType + ' personalize')
5151         window.clarity("event", `${productType} cardPersonalization`)
5152         // window.clarity("set", productType, `cardPersonalization - ${productDate}`)
5153       }
5154     } else if (firstSection.hasClass("sectionPurchaseBoard")) {
5155         console.log("clarity event " + productType + ' personalizeBoard')
5156         window.clarity("event", `${productType} personalizeBoard`)
5157         // window.clarity("set", productType, `personalizeBoard - ${productDate}`)
5158     }
5159     firstSection.removeClass("hide")
5160     
5161     // Auto-trigger addon loading when addon section becomes visible
5162     setTimeout(function() {
5163       const addonSection = $(".purchaseAddon")
5164       if(addonSection.length > 0 && !addonSection.hasClass("hide")) {
5165         if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
5166           $("[data-addon=upsell-all]").trigger("click")
5167         }
5168       }
5169     }, 200)
5170   }
5171 
5172   function disablePopup() {
5173     $("#backgroundPopup").fadeOut("slow");
5174     $(".purchasePopup").fadeOut("slow");
5175     $("#popupCart").fadeOut("slow");
5176   }
5177 
5178     function scrollTo(parent, div, dur) {
5179       $(parent).animate({
5180         scrollTop: $(div).offset().top
5181       }, dur);
5182     }
5183 
5184   function loadPopupPersonalize() {
5185     const div = "#purchaseProduct"
5186     const p = "html, body, .product-meta"
5187     $("p.error").remove()
5188     loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all")
5189     const isCity = $("#cities[required]")
5190     const isDate = $("#propDeliveryDate[required]")
5191     const isTime = $("#propDeliveryTime[required]")
5192     // loadPopup()
5193     if(isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') {
5194       loadPopup()
5195     }
5196     if(isCity.val() == '') {
5197       isCity.parent(".row").append("<p class='error'>Choose delivery city</p>")
5198       scrollTo(p, div, 500)
5199     }
5200     if(isDate.val() == '') {
5201       isDate.parents(".row").append("<p class='error'>Choose delivery date</p>")
5202       scrollTo(p, div, 500)
5203     }
5204     if(isTime.val() == '') {
5205       isTime.parents(".row").append("<p class='error'>Choose delivery time</p>")
5206       scrollTo(p, div, 500)
5207     }
5208   }
5209 
5210   function quantityCounter() {
5211     $(document).on("click", ".item-card.selected .q_up", function () {
5212       var C = $(this).attr("data-id"),
5213           S =
5214               parseInt(
5215                   $(this)
5216                       .siblings(".quantity-cart-" + C)
5217                       .val()
5218               ) + 1;
5219       $(this).attr("data-quantity", S),
5220           $(this)
5221               .siblings(".quantity-cart-" + C)
5222               .val(S);
5223     }),
5224     $(document).on("click", ".item-card.selected .q_down", function () {
5225         var C = $(this).attr("data-id"),
5226             S = parseInt(
5227                 $(this)
5228                     .siblings(".quantity-cart-" + C)
5229                     .val()
5230             );
5231         0 < S && $(this).attr("data-quantity", S - 1),
5232             0 < S &&
5233                 $(this)
5234                     .siblings(".quantity-cart-" + C)
5235                     .val(S - 1);
5236     });
5237   }
5238 
5239   quantityCounter()
5240 
5241   const itemAddon = $(".item-card").length
5242   const nofree = $(".nofree").length
5243 
5244   const upsell = ''
5245   
5246   if(nofree === itemAddon) {
5247       // $("#itemAddons").html("<p>No Items available</p>")
5248   }
5249 
5250   $("#itemAddons .item-card").each(function(e){
5251       $("#itemAddons").attr("data-length", e)
5252   })
5253 
5254   $("[data-addon]").click(function(){
5255       
5256       
5257       
5258       const t = $(this)
5259       
5260       const data = t.data("addon")
5261       
5262       $("[data-addon]").removeClass("selected")
5263       t.addClass("selected")
5264       $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status){
5265           const products = data.products
5266           const html = []
5267           for(let i = 0; i < products.length; i++) {
5268               const id = products[i].id
5269               const variantId = products[i].variants[0].id
5270               const img = products[i].images[0].src
5271               let img2 = img.split('.jpg')[0]
5272               const title = products[i].title
5273               const price = products[i].variants[0].price
5274               const tags = products[i].tags
5275               const qty = products[i].variants[0].available
5276               let type_upsell = ''
5277               if(tags.includes('upsell-item-standing')) {
5278                   type_upsell = 'standing'
5279               }
5280               console.log(type_upsell)
5281               if(type_upsell !== '') {
5282                   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}">
5283                       
5284                           <div class="card-image">
5285                               <img src="${img2}_150x.jpg" alt="${title}" width="" height="" />
5286                           </div>
5287                           <div class="card-meta">
5288                               <h5>${title}</h5>
5289                               <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p>
5290                               <input id="card-${variantId}" type="hidden" name="" value="${variantId}">
5291                           </div>
5292                           <div class="card-qty">
5293                               <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a>  
5294                               <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}
5294" value="0" data-price=${price} name="quantity">
5295                               <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="12" height="13" viewBox="0 0 12 13" fill="none">
5296 <path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/>
5297 </svg></a>   
5298                           </div>
5299                       </div>`
5300                   html.push(body)
5301               }
5302           }
5303           $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html)
5304           $("#itemAddons").attr("data-length", products.length)
5305           // $('#itemAddons')[0].swiper.update();
5306       });
5307   })
5308 
5309   async function isAddon(){
5310     let ids = []
5311     $("#itemAddons .item-card.selected").each(function(i, e){
5312       const id = $(this).data("id")
5313       ids.push(id)
5314     })
5315     console.log(ids)
5316     return ids
5317   }
5318   
5319   $("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function(){
5320     const t = $(this).parent()
5321     const id = t.data("id")
5322     const btn =  t.parents(".purchaseAddon").find(".next-purchase-button")
5323     t.toggleClass("selected");
5324     //$(this).next("input").toggleAttr('name', 'id[]');
5325     if (t.hasClass('selected')) {
5326         t.find("input").val(1)
5327         t.find("input").attr('name', 'id[]');
5328     } else {
5329         t.find("input").val(0)
5330         t.find("input").removeAttr('name');
5331     }
5332     $("#properties-addons").val(addons)
5333     const is = await isAddon()
5334     if(is.length === 0) {
5335       btn.text("continue without add-ons")
5336       return
5337     }
5338     if(is.includes(8835692069079)) {
5339       btn.text("personalize acrylic frame")
5340     } else {
5341       btn.text("Continue")
5342     }
5343       
5344   })
5345 
5346   async function myAddon(data) {
5347     const c = $(".addonsPurchase .addons")
5348     let items = []
5349     
5350     const spotifyAddons = $(".spotifyAddons").find("[data-index]")
5351     // if(spotifyAddons.length > 0) {
5352     //   $(spotifyAddons).each(function(i, e){
5353     //     const spotifyLink = $(this).find(".spotifyLink").val()
5354     //     const spotifySong = $(this).find(".spotifySong").val()
5355     //     const spotifyArtist = $(this).find(".spotifyArtist").val()
5356     //     const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val()
5357     //     if(spotifyLink !== '') {
5358     //       spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1">
5359     //         <div class="addon-itm-img">
5360     //           <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"/>
5361     //         </div>
5362     //         <div class="addon-itm-title">
5363     //           <span>[US] Outerbloom Acrylic Frame 4R</span>
5364     //         </div>
5365     //         <div class="addon-itm-line-total">
5366     //           <span>Rp 99.000</span>
5367     //         </div>
5368     //       </div>
5369     //       <div class="propsAddonSpotify row m-0">
5370     //         <div class="col-12 col-lg-2"></div>
5371     //           <div class="col-12 col-lg-10">
5372     //             <p>
5373     //               <span>spotify link</span>
5374     //               <span class="spotifyLinkAddon">${spotifyLink}</span>
5375     //             </p>
5376     //             <p>
5377     //               <span>uploaded photo</span>
5378     //               <span class="spotifyFotoAddon">${spotifyFotoAddon}</span>
5379     //             </p>
5380     //             <p>
5381     //               <span>song / playlist name</span>
5382     //               <span class="spotifySongAddon">${spotifySong}</span>
5383     //             </p>
5384     //             <p>
5385     //               <span>artist name</span>
5386     //               <span class="spotifyArtistAddon">${spotifyArtist}</span>
5387     //             </p>
5388     //           </div>
5389     //       </div>`
5390     //       items.push(spotifyAddon)
5391     //     }
5392     //   })
5393     // }
5394     for(let i = 0; i < data.length; i++) {
5395       if(data[i].title !== '[US] Outerbloom Acrylic Frame 4R' ) {
5396         const img = data[i].image
5397         const title = data[i].title
5398         const qty = data[i].qty
5399         const price = data[i].price
5400         const total = Number(qty) * Number(price)
5401         let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}">
5402               <div class="addon-itm-img">
5403                 <img src="${img}" alt="" width="70"/>
5404               </div>
5405               <div class="addon-itm-title">
5406                 <span>${title}</span>
5407               </div>
5408               <div class="addon-itm-line-price">
5409                 <span>${rupiah.format(price)}</span>
5410                 ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`}
5411               </div>
5412               <div class="addon-itm-line-total">
5413                 <span>${rupiah.format(total)}</span>
5414               </div>
5415             </div>`
5416           items.push(addons)
5417       }
5418     }
5419     c.html(items)
5420     const parent = $(".purchaseAddon")
5421     const next = parent.next(".sectionPurchase")
5422     parent.addClass("hide")
5423     next.removeClass("hide")
5424     // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart")
5425     // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`)
5426   }
5427 
5428   async function listAddon() {
5429     const data = $("#itemAddons").find(".selected")
5430     let ids = []
5431     $(data).each(function(){
5432       const id = $(this).data("variant")
5433       const image = $(this).find(".card-image img").attr("src")
5434       const title = $(this).find(".card-meta h5").text()
5435       const qty = $(this).find(".card-qty input").val()
5436       const price = $(this).find(".card-qty input").data("price")
5437       ids.push({
5438         id: Number(id),
5439         image,
5440         title,
5441         qty,
5442         price
5443       })
5444     })
5445     myAddon(ids)
5446   }
5447 
5448   async function customSpotify(idx, length, type){
5449     let isCard = false
5450     
5451     let p = $(".purchasePopupSpotify")
5452     const preLink = $(".spotifyLinkFirst").val()
5453     $("[data-index]").hide()
5454     p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`)
5455     p.find(".regulerAddons, .purchase-button").hide()
5456     p.find(".spotifyAddons").show()
5457     
5458     const data = await trackUrl(preLink)
5459     
5460     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://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="13" height="11" viewB
5460ox="0 0 13 11" fill="none">
5461 <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"/>
5462 </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://ik.imagekit.io/kktbpaqjn/logorajadana.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://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="13" height="11" viewB
5462ox="0 0 13 11" fill="none">
5463 <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"/>
5464 </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>`
5465     // console.log(html)
5466     
5467     $(".spotifyAddons").append(html)
5468     
5469     $(`[data-index=${idx}]`).show()
5470     
5471     if (preLink !== '') {
5472       $(".btn-action .btn").attr("disabled", false)
5473     } else {
5474       $(".btn-action .btn").attr("disabled", true)
5475     }
5476 
5477     return html
5478     
5479   }
5480 
5481   $(".spotifyLinkFirst").keyup(async function(){
5482     const v = $(this).val()
5483     if(v.includes('spotify:user:spotify')) {
5484       const correct = v.split('user:spotify:')[1]
5485       console.log(correct, 'BNER')
5486       $(this).val(correct)
5487       return
5488     }
5489     if(v.includes("spotify:") || v.includes("https://open.spotify.com/")){
5490       const data = await trackUrl(v)
5491       if(!data || !data.status) {
5492         $(this).parent().addClass("error")
5493         // $(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>`)
5494         $("#personalizeBtnSpotify .btn").attr("disabled", true)
5495         return
5496       }
5497       $(this).parent().removeClass("error")
5498       // $(this).parent().remove("txt-error")
5499       $("#personalizeBtnSpotify .btn").attr("disabled", false)
5500     } else {
5501       $("#personalizeBtnSpotify .btn").attr("disabled", true)
5502     }
5503   })
5504 
5505   $(".purchaseAddon").delegate(".next-addon", "click", function(){
5506     const parent = $(this).parents(".purchaseAddon")
5507     const next = parent.next(".sectionPurchase")
5508     if(next.hasClass("purchaseAddress")) {
5509       if(productType !== '') {
5510         console.log("clarity event " + productType + ' purchaseDelivery')
5511         window.clarity("event", `${productType} purchaseDelivery`)
5512         // window.clarity("set", productType, `purchaseDelivery - ${productDate}`)
5513       }
5514     }
5515     const data = $("#itemAddons").find(".selected")
5516     const length = $(".quantity-cart-46067682607319").val()
5517     const checked = data.length;
5518     if(checked > 0) {
5519       if(length > 0) {
5520         $(".purchaseAddon").addClass("purchaseAddonSpotify")
5521         customSpotify(1, length, 'addon')
5522       } else {
5523         listAddon()
5524       }
5525     } else {
5526       parent.addClass("hide")
5527       next.removeClass("hide")
5528     }
5529   })
5530 
5531   $("#personalizeBtnSpotify .btn").click(async function(){
5532     const isCity = $("#cities[required]")
5533     const isDate = $("#propDeliveryDate[required]")
5534     if((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) {
5535       alert('Please choose Delivery City & Delivery Date')
5536       return
5537     }
5538     const data = await customSpotify(1, 1, 'product')
5539     if(data) {
5540       $("#backgroundPopup").fadeIn("slow");
5541       $(".purchasePopupSpotify").fadeIn("slow");
5542 
5543       if(productType !== '') {
5544         console.log("clarity event " + productType + ' spotify')
5545         window.clarity("event", `${productType} spotify`)
5546         // window.clarity("set", productType, `purchaseDelivery - ${productDate}`)
5547       }
5548     }
5549   })
5550 
5551   function formatBytes(bytes, decimals = 2) {
5552     if (!+bytes) return '0 Bytes'
5553 
5554     const k = 1024
5555     const dm = decimals < 0 ? 0 : decimals
5556     const sizes = ['B', 'KB', 'MB']
5557 
5558     const i = Math.floor(Math.log(bytes) / Math.log(k))
5559 
5560     return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`
5561   }
5562 
5563   async function trackUrl(link){
5564     try {
5565       let trackId = link.split('/').pop().split('?')[0];
5566       let type = ''
5567       if(link.includes("spotify:")) {
5568         const uri = link.split('spotify:')[1]
5569         trackId = uri.split(':')[1]
5570         type = uri.split(':')[0] + 's'
5571       } else {
5572         if(link.match('track')){
5573           type = 'tracks'
5574         } else if(link.match('playlist')) {
5575           type = 'playlists'
5576         } else if(link.match('artist')) {
5577           type = 'artists'
5578         } else if(link.match('album')) {
5579           type = 'albums'
5580         }
5581       }
5582       console.log(`${host}/api/spotify/${type}/${trackId}`)
5583       const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`)
5584       console.log(data, 'DATA')
5585       const song = data?.data?.name
5586       const artist = data?.data?.artist
5587       return {
5588         song, artist, type, trackId, status: data.status
5589       }
5590     } catch(err) {
5591       console.log(err)
5592     }
5593   }
5594 
5595   $(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function(){
5596     const parent = $(this).parents("[data-index]")
5597     const preview = parent.find(".previewImage")
5598     const file = $(this)[0].files[0];
5599     if (file) {
5600         const reader = new FileReader();
5601         reader.onload = async function(e) {
5602           parent.find(".uploadResult label").hide()
5603           parent.find(".uploadedResult").remove()
5604           parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between">
5605           <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>
5606           <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;">
5606<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
5607   <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 />
5608 </svg>
5609 </span></div></div>`)
5610           parent.find(".frameImageUploaded svg").hide()
5611           parent.find(".frameImage").addClass("uploaded")
5612           preview.attr("src", e.target.result);
5613           preview.show();
5614           let formData = new FormData(); 
5615           formData.append("file", file);
5616           const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, {
5617             method: "POST", 
5618             body: formData
5619           })
5620           const result = await response.json();
5621           if(result){
5622             parent.find(".resultPhotoSpotify").val(result.url)
5623           }
5624         }
5625         
5626         reader.readAsDataURL(file);
5627     } else {
5628         preview.hide();
5629     }
5630   });
5631 
5632   $(".spotifyAddons").delegate(".uploadResult", "click", function(){
5633     $(this).next("input[type=file]").trigger("click")
5634   })
5635 
5636   $(".spotifyAddons").delegate(".changeUpload", "click", function(){
5637     $(this).parents("input[type=file]").trigger("click")
5638   })
5639 
5640   $(".spotifyAddons").delegate(".removeUpload", "click", function(){
5641     const parent = $(this).parents("[data-index]")
5642     parent.find(".uploadPhotoSpotify").val("")
5643     parent.find(".uploadResult label").show()
5644     parent.find(".uploadedResult").remove()
5645     parent.find(".frameImageUploaded svg").show()
5646     parent.find(".previewImage").hide()
5647     parent.find(".frameImage").removeClass("uploaded")
5648   })
5649 
5650   $(".spotifyAddons").delegate("label.checkbox", "click", function(){
5651     const parent = $(this).parents("[data-index]")
5652     parent.toggleClass("checked")
5653   })
5654 
5655   $(".spotifyAddons").delegate(".spotifyLink", "change", async function(){
5656     const parent = $(this).parents("[data-index]")
5657     const link = $(this).val()
5658     const data = await trackUrl(link)
5659 
5660     console.log(data)
5661 
5662     if(data.song) {
5663       parent.find(".spotifySong").val(data.song)
5664       parent.find(".spotifyData").find("h3").text(data.song)
5665     }
5666     if(data.artist) {
5667       parent.find(".spotifyArtist").val(data.artist)
5668       parent.find(".spotifyData").find("p").text(data.artist)
5669     }
5670     parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`)
5671     // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M
5672     if (data.status === true) {
5673       parent.find(".btn-action .btn").attr("disabled", false)
5674     } else {
5675       parent.find(".btn-action .btn").attr("disabled", true)
5676     }
5677   })
5678   
5679   $(".spotifyAddons").delegate(".spotifySong", "keyup", async function(){
5680     const parent = $(this).parents("[data-index]")
5681     const v = $(this).val()
5682     parent.find(".spotifyData h3").text(v)
5683   })
5684 
5685   $(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function(){
5686     const parent = $(this).parents("[data-index]")
5687     const v = $(this).val()
5688     parent.find(".spotifyData p").text(v)
5689   })
5690 
5691   $(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function(){
5692     const parent = $(this).parents("[data-index]")
5693     const length = parent.data("length")
5694     const index = parent.data("index")
5695     const indexNext = Number(index) + 1
5696     customSpotify(indexNext, length, 'addon')
5697   })
5698 
5699   
5700   $(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function(){
5701     const parent = $(this).parents(".purchaseAddon")
5702     const next = parent.next(".sectionPurchase")
5703     parent.addClass("hide")
5704     next.removeClass("hide")
5705     next.find(".purchase-button").show()
5706     listAddon()
5707   })
5708 
5709   $(".spotifyAddons").delegate(".back-spotify", "click", async function(){
5710     const t = $(this).parents("[data-index]")
5711     const parent = $(this).parents(".sectionPurchase")
5712     const current = t.data("index")
5713     const prevCurrent = Number(current) - 1
5714     if(current == 1) {
5715       parent.removeClass("purchaseAddonSpotify")
5716       parent.find(".purchase-button").show()
5717       parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!")
5718       $(".spotifyAddons").empty()
5719       $(".regulerAddons").show()
5720       return
5721     }
5722     t.hide()
5723     t.prev("[data-index]").show()
5724     t.remove()
5725     parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`)
5726   })
5727 
5728   $("#personalizeBtn .btn").click(async function() {
5729     loadPopupPersonalize()
5730   });
5731 
5732   $(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function(){
5733     $(".sectionPurchaseSpotify").hide()
5734     loadPopupPersonalize()
5735   })
5736 
5737   $(".close-purchase-popup").click(function() {
5738       disablePopup();
5739   });
5740   $("#backgroundPopup").click(function() {
5741       // disablePopup();
5742   });
5743 
5744   $("#popupCart .close-purchase-popup").click(function() {
5745       location.reload()
5746   });
5747 
5748   $('#popupCart').on('hide.bs.modal', function (e) {
5749     location.reload()
5750   })
5751 
5752   $(".next-card").click(function(){
5753     const parent = $(this).parents(".sectionPurchase")
5754     const next = parent.next(".sectionPurchase")
5755     parent.addClass("hide")
5756     next.removeClass("hide")
5757   })
5758 
5759   $(".back-purchase-button").click(function(){
5760     const parent = $(this).parents(".sectionPurchase")
5761     const prev = parent.prev(".sectionPurchase")
5762     parent.addClass("hide")
5763     prev.removeClass("hide")
5764   })
5765   
5766   $(document).keypress(function(e) {
5767       if (e.keyCode == 27 && popupStatus == 1) {
5768           disablePopup();
5769       }
5770   });
5771   
5772   const parentImg = $(".case-img-preview")
5773   const parentVid = $(".case-video-preview")
5774   
5775   function readURL(input) {
5776     if (input.files && input.files[0]) {
5777       let reader = new FileReader();
5778 
5779       let type = 'image/jpeg'
5780       const size = input.files[0].size
5781       if(input.files[0].type.match('video/')){
5782         type = 'video/mp4'
5783         if(size > 15728640) {
5784           alert('File size exceeds maximum limit 15 MB')
5785           return
5786         }
5787       } else {
5788         if(size > 5242880) {
5789           alert('File size exceeds maximum limit 5 MB')
5790           return
5791         }
5792       }
5793 
5794       reader.onload = function (e) {
5795         $(".nextBtn").attr("disabled", true)
5796         if(type === 'image/jpeg') {
5797           
5798             $('.placeholder-image').hide();
5799             $('.preview-image').show()
5800             $('.preview-image').attr('src', e.target.result);
5801           
5802         } else {
5803           // parentVid.find(".ajax-loader").show();
5804           $(".steps-card-preview").addClass("loading")
5805         }
5806       }
5807 
5808       
5809 
5810       reader.readAsDataURL(input.files[0]);
5811     }
5812   }
5813 
5814   async function readURLPapan(input) {
5815     if (input.files && input.files[0]) {
5816       let reader = new FileReader();
5817 
5818       reader.onload = function (e) {
5819         $('.btn-upload-papan').siblings('label').hide();
5820         $('.btn-upload-papan img').attr('src', e.target.result);
5821         $('.btn-upload-papan img').show();
5822         $('.svgLogoPapan').hide();
5823       }
5824       
5825       const type = 'image/jpeg'
5826       const name = `logo-8144957800663-${Date.parse(new Date())}`
5827 
5828       let formData = new FormData(); 
5829       formData.append("file", input.files[0]);
5830       const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
5831         method: "POST", 
5832         body: formData
5833       })
5834       const result = await response.json();
5835       if(result) {
5836         const url = result.url
5837         $("[data-properties=papan-logo]").val(url)
5838       }
5839 
5840       reader.readAsDataURL(input.files[0]);
5841     }
5842   }
5843 
5844   async function readURLAddress(input) {
5845     console.log(input, 'readURLAddress')
5846     if (input.files && input.files[0]) {
5847       let reader = new FileReader();
5848 
5849       reader.onload = function (e) {
5850         $('.photo-address').attr('src', e.target.result);
5851         $('.photo-address').show();
5852       }
5853       
5854       const type = 'image/jpeg'
5855       const name = input.files[0].name?.split('.')[0]
5856 
5857       let formData = new FormData(); 
5858       formData.append("file", input.files[0]);
5859       const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
5860         method: "POST", 
5861         body: formData
5862       })
5863       const result = await response.json();
5864 
5865       reader.readAsDataURL(input.files[0]);
5866 
5867       return result
5868     }
5869   }
5870 
5871   
5872 
5873   
5874   async function addToCartUang() {
5875     var productAddOnId1 = 42122101162199;
5876     var productAddOnId2 = 42122101194967;
5877     var product_id = 8144957800663
5878     const data = {
5879       items: [
5880           {
5881               quantity: $("#Quantity-" + productAddOnId1).val(),
5882               id: productAddOnId1,
5883               "properties": { "Time": $("#properties-time").val() }
5884           },
5885           {
5886               quantity: $("#Quantity-" + productAddOnId2).val(),
5887               id: productAddOnId2,
5888               "properties": { "Time": $("#properties-time").val() }
5889           }
5890       ]
5891     }
5892     await fetch(window.Shopify.routes.root + 'cart/add.js', {
5893       method: 'POST',
5894       headers: {
5895         'Content-Type': 'application/json'
5896       },
5897       body: JSON.stringify(data)
5898     })
5899     .then(response => {
5900       console.error('Sukses Buket Uang:', response);
5901       $(".form-flower").submit()
5902     })
5903     .catch((error) => {
5904       console.error('Error Buket Uang:', error);
5905       $(".form-flower").submit()
5906     });
5907   }
5908   
5909   async function saveCard(){
5910     let isCard = true
5911     const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : ''
5912     const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : ''
5913     const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : ''
5914     const foto = $("#properties-photo").val()
5915     const video = $("#properties-video").val()
5916     const data = JSON.stringify({
5917       "id": qrID, 
5918       "penerima": $("#properties-nama-penerima").val(), 
5919       "kartu_penerima": kartu_penerima, 
5920       "kartu_ucapan": kartu_ucapan, 
5921       "kartu_pengirim": kartu_pengirim, 
5922       "foto": foto,
5923       "video": video, 
5924       "productId": "8144957800663", 
5925       "order_name": "", 
5926       "status": "Cart"
5927     })
5928 
5929     
5930   }
5931 
5932   async function additem(items){
5933     try {
5934       let formData = items
5935       if(items?.length) {
5936         formData = {
5937            'items': items
5938         };
5939       }
5940   
5941       const add = await fetch(window.Shopify.routes.root + 'cart/add.js', {
5942         method: 'POST',
5943         headers: {
5944           'Content-Type': 'application/json',
5945           'X-Requested-With':'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */
5946         },
5947         body: JSON.stringify(formData)
5948       })
5949   
5950       const data = await add.json();
5951       return data
5952     } catch(err){
5953       console.log('Error additem', err)
5954     }
5955   }
5956 
5957   async function addons(){
5958     let items = []
5959     $(".addon-item").each(function(){
5960       const p = $(this)
5961       const props = p.next(".propsAddonSpotify")
5962       const id = $(this).data("id")
5963       const quantity = $(this).data("qty")
5964       const propId = $("#properties-time").val()
5965       let properties = {}
5966       if(id === 46067682607319) {
5967         const link = props.find(".spotifyLinkAddon").text()
5968         const photo = props.find(".spotifyFotoAddon").text()
5969         const song = props.find(".spotifySongAddon").text()
5970         const artist = props.find(".spotifyArtistAddon").text()
5971         properties = {
5972           id: propId,
5973           "Spotify Link": link !== '' ? link : '-',
5974           "Spotify Photo": photo !== '' ? photo : '-',
5975           "Spotify Song": song !== '' ? song : '-',
5976           "Spotify Artist": artist !== '' ? artist : '-',
5977           type: 'addon'
5978         }
5979       } else {
5980         properties = { 
5981           "id": propId, 
5982           "type": "addon"
5983         }
5984       }
5985       items.push({
5986         id, 
5987         quantity, 
5988         properties
5989       })
5990     })
5991     return items
5992   }
5993 
5994   async function propItems() {
5995     let props = {}
5996     $("[data-properties]").each(function(e){
5997       let elementType = this.tagName;
5998       const k = $(this).data("properties")
5999       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') {
6000         const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val();
6001         if(v !== '') {
6002           props[k] = v?.replace(/[\s\n]/g, '');
6003         }
6004       }
6005     })
6006     return props
6007   }
6008 
6009   async function showPopupCart(items){
6010     if(productType !== '') {
6011       console.log("clarity event " + productType + ' completeOrder')
6012       window.clarity("event", `${productType} completeOrder`)
6013       // window.clarity("set", productType, `completeOrder - ${productDate}`)
6014     }
6015     $("#popupCart").show()
6016     
6017       $(".propDeliveryCity").text($("#cities").val())
6018       $(".propDeliveryDate").text($("#propDeliveryDate").val())
6019       $(".propDeliveryTime").text($("#propDeliveryTime").val())
6020       $(".propDeliveryName").text($("[data-properties=nama-penerima]").val())
6021       $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val())
6022       $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val())
6023       $(".propDeliveryProv").text($("#province").val())
6024       $(".propDeliveryZip").text($("#zip").val())
6025       
6026     
6027 
6028     const addons = []
6029     if(items && items.length > 0) {
6030       for(let i = 1; i < items.length; i++) {
6031         const spotifyLink = items[i].properties['Spotify Link']
6032         const spotifyPhoto = items[i].properties['Spotify Photo']
6033         const spotifySong = items[i].properties['Spotify Song']
6034         const spotifyArtist = items[i].properties['Spotify Artist']
6035         const price = items[i].price / 100
6036         const props = spotifyLink ? `<div class="propsAddonCart row m-0">
6037                   <div class="col-12 col-lg-2"></div>
6038                   <div class="col-12 col-lg-10">
6039                     <p>
6040                       <span>spotify link</span>
6041                       <span>${spotifyLink}</span>
6042                     </p>
6043                     <p>
6044                       <span>Upload Photo</span>
6045                       <span>${spotifyPhoto}</span>
6046                     </p>
6047                     <p>
6048                       <span>song / playlist name</span>
6049                       <span>${spotifySong}</span>
6050                     </p>
6051                     <p>
6052                       <span>artist name</span>
6053                       <span>${spotifyArtist}</span>
6054                     </p>
6055                   </div>
6056                 </div>` : '';
6057         addons.push(`<div class="row m-0">
6058                   <div class="imgAddonCart col-2">
6059                     <img
6060                       width="43"
6061                       src="${items[i].image}"
6062                       alt=""
6063                     >
6064                   </div>
6065                   <div class="imgAddonTitlePrice col-10 align-self-center">
6066                     <div class="row justify-content-between m-0">
6067                       <div class="col-12 col-lg-8">
6068                         <h5>${items[i].title}</h5>
6069                       </div>
6070                       <div class="col-12 col-lg-4 text-lg-right">
6071                         <span>${rupiah.format(price)}</span>
6072                       </div>
6073                     </div>
6074                   </div>
6075                 </div>${props}`)
6076       }
6077     }
6078     // console.log(addons)
6079     if(addons.length === 0) {
6080       $(".itemAddonCart").hide()
6081       return
6082     }
6083     $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`)
6084     $(".wrapperItemAddonCart").html(addons)
6085   }
6086 
6087   const money = (money) => {
6088       return new Intl.NumberFormat('id-ID',
6089           { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 }
6090       ).format(money);
6091   }
6092 
6093   async function showNoteMoney() {
6094     let qty50k = $("[data-properties='Uang 50k']").val()
6095     let qty100k = $("[data-properties='Uang 100k']").val()
6096     const total50k = Number(qty50k) * 50000
6097     const total100k = Number(qty100k) * 100000
6098     const total_all = total50k + total100k
6099     $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`)
6100     $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`)
6101     $(".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://77.louerunepiscine.com/" target="_blank" style="text-decoration: underline;
6101 color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`)
6102   }
6103 
6104   async function removeImage() {
6105     const data = JSON.stringify({
6106       "ID": $("#properties-properties-qrId").val(), 
6107       "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 
6108       "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 
6109       "Kartu Ucapan": $("[data-properties=ucapan]").val(), 
6110       "Nama Penerima": $("#properties-nama-penerima").val(), 
6111       "Order Number":"",
6112       "Status":"Product", 
6113       "Foto": "", 
6114       "Media": $("#properties-video").val(), 
6115       "Image": "8144957800663"
6116     })
6117     const remove = updateCard(data)
6118     if(remove) {
6119       $(this).hide()
6120       $("#properties-photo").val("-")
6121       $(".placeholder-image").show()
6122       $(".preview-image").attr("src", "")
6123     }
6124   }
6125 
6126   async function removeVideo() {
6127     const data = JSON.stringify({
6128       "ID": $("#properties-properties-qrId").val(), 
6129       "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 
6130       "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 
6131       "Kartu Ucapan": $("[data-properties=ucapan]").val(), 
6132       "Nama Penerima": $("#properties-nama-penerima").val(), 
6133       "Order Number":"",
6134       "Status":"Product", 
6135       "Foto": $("#properties-photo").val(), 
6136       "Media": "", 
6137       "Image": "8144957800663"
6138     })
6139     const remove = updateCard(data)
6140     if(remove) {
6141       $("#properties-video").val("-")
6142       $(this).find("img").hide()
6143       $(this).hide()
6144       $(this).prev("p").text("Add video to make it more special (optional)")
6145       $("#label-input-video").show()
6146       $("#label-input-video span").text("Upload Video")
6147       $(".case-video-preview p span").remove()
6148     }
6149   }
6150 
6151   async function loadItemOccasion(t, occasion) {
6152     const name = occasion?.replace('greeting-card-', '')
6153     $("#kartu-ucapan").val("")
6154     $("[data-occassion]").removeClass("selected")
6155     $("[data-properties=ucapan]").val("")
6156     $("#save-card").attr("disabled", true)
6157     t.addClass("selected")
6158     $("#show_note").attr("data-card-occassion", name)
6159     $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status){
6160         const products = data.products
6161         const html = []
6162         for(let i = 0; i < products.length; i++) {
6163             const id = products[i].id
6164             const variantId = products[i].variants[0].id
6165             const img = products[i].images[0].src
6166             const title = products[i].title
6167             const price = products[i].variants[0].price
6168             const qty = products[i].variants[0].inventory_quantity
6169             const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}>
6170                 <label for="card-${variantId}"></label>
6171                     <div class="card-image">
6172                         <img src="${img}" alt="${title}" width="" height="" />
6173                     </div>
6174                     <div class="card-meta text-center">
6175                         <h5>${title}</h5>
6176                         <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p>
6177                         <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}">
6178                     </div>
6179                 </div>`
6180             html.push(body)
6181         }
6182         const withoutCard = `<div class="item-card item-without-card">
6183                 <label for="card-0"></label>
6184                     <div class="card-image">
6185                         <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" />
6186                     </div>
6187                     <div class="card-meta text-center">
6188                         <h5>
6188Send without a greeting card</h5>
6189                         <input id="card-0" type="radio" name="id" value="" data-price="">
6190                     </div>
6191                 </div>`
6192         $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join(""))
6193     });
6194   }
6195         
6196   $(document).ready(function(){
6197 
6198     // Observer to auto-trigger addon loading when addon section becomes visible
6199     const addonObserver = new MutationObserver(function(mutations) {
6200       mutations.forEach(function(mutation) {
6201         const target = $(mutation.target)
6202         if(target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') {
6203           if(!target.hasClass('hide')) {
6204             // Addon section just became visible, ensure items are loaded
6205             setTimeout(function() {
6206               if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6207                 console.log("Auto-triggering addon load...")
6208                 $("[data-addon=upsell-all]").trigger("click")
6209               }
6210             }, 150)
6211           }
6212         }
6213       })
6214     })
6215     
6216     // Start observing addon section
6217     const addonSection = document.querySelector('.purchaseAddon')
6218     if(addonSection) {
6219       addonObserver.observe(addonSection, { 
6220         attributes: true, 
6221         attributeFilter: ['class'] 
6222       })
6223     }
6224 
6225     $(".purchasePopup").delegate("#addtocart-card", "click", async function(){
6226     
6227     $(this).find("span").addClass("loading")
6228     let isValid = true
6229     $(".formAddressPurchase [required]").each(function(){
6230       const t = $(this)
6231       const input = t.val()
6232       const p = t.parent()
6233       if(input === '') {
6234         p.addClass("error")
6235         isValid = false
6236       }
6237     })
6238 
6239     if(!isValid) {
6240       $(this).find("span").removeClass("loading")
6241       return
6242     }
6243     
6244     let items = []
6245     const mainProps = {
6246       
6247         "Delivery Date": $("#propDeliveryDate").val(),
6248         "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-' ,
6249         "Kota Pengiriman": $("#cities").val(),
6250         "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-' ,
6251         "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-' ,
6252         "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-' ,
6253         "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-' ,
6254       
6255       
6256         "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-' ,
6257         "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-' ,
6258         "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-' ,
6259         "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-' ,
6260         "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-' ,
6261       
6262       
6263       "Province": $("#province").val() !== '' ? $("#province").val() : '-' ,
6264       "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-' ,
6265       "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-' ,
6266       "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-' ,
6267       "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-',
6268       "type": 'product'
6269     }
6270     const props = await propItems()
6271     properties = {...mainProps, ...props };
6272     const id = $("#productSelect").find('option:selected').val()
6273     console.log(id, 'main ID')
6274     const mainItem = {
6275       id: Number(id),
6276       quantity: 1,
6277       properties
6278     }
6279     items.push(mainItem)
6280     const cardId = $("#itemCards").find(".selected input").val()
6281     const cardItem = {
6282       id: Number(cardId),
6283       quantity: 1,
6284       properties: { "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', type: 'card' }
6285     }
6286     console.log(cardId, 'cardId')
6287     if(cardId) {
6288       items.push(cardItem)
6289     }
6290     const addon = await addons()
6291     if(addon) {
6292       for(let i = 0;
6292 i < addon.length; i++){
6293         items.push({
6294           id: addon[i].id,
6295           quantity: addon[i].quantity,
6296           properties: addon[i].properties
6297         })
6298       }
6299     }
6300     const addItems = await additem(items)
6301     console.log(addItems.items, 'add items')
6302     if(addItems) {
6303       $(this).find("span").removeClass("loading")
6304       disablePopup()
6305       showPopupCart(addItems.items)
6306       
6307       localStorage.setItem("items", JSON.stringify(addItems.items))
6308     }
6309   })
6310   
6311   $("#addtocart-cart .btn").click(async function(){
6312     const id = $("#productSelect").find('option:selected').val()
6313     const mainProps = {
6314       id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 
6315       type: 'product'
6316     }
6317     const props = await propItems()
6318     const properties = { ...mainProps, ...props };
6319     const items = {
6320       id: Number(id),
6321       quantity: 1,
6322       properties
6323     }
6324     const addItems = await additem(items)
6325     if(addItems) {
6326       showPopupCart(addItems.items)
6327       localStorage.setItem("items", JSON.stringify(addItems))
6328     }
6329   })
6330 
6331   $(".formAddressPurchase [required]").change(function(){
6332     const t = $(this)
6333     const p = t.parent()
6334     const v = t.val()
6335     if(v !== '') {
6336       p.removeClass("error")
6337     }
6338   })
6339 
6340   $("#save-card").click(async function(){
6341     const parent = $(this).parents(".sectionPurchase")
6342     const next = parent.next(".sectionPurchase")
6343     $(this).find("span").addClass("loading")
6344     const card = await saveCard()
6345     console.log(card, 'ssaveCCC')
6346     if(card?.status === 200 || card?.status === 201) {
6347       $(".scanCard").removeClass("hide")
6348       $(this).find("span").removeClass("loading")
6349       parent.addClass("hide")
6350       next.removeClass("hide")
6351       if(next.hasClass("purchaseAddon")) {
6352         $("[data-addon=upsell-all]").click()
6353         console.log("clarity event addons")
6354         window.clarity("event", `${productType} add-ons`)
6355         // Ensure addon items are loaded when entering addon popup
6356         setTimeout(function() {
6357           if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6358             $("[data-addon=upsell-all]").trigger("click")
6359           }
6360         }, 100)
6361       }
6362       if(next.hasClass("purchaseAddress")) {
6363         $("#zip").select2()
6364       }
6365     }
6366   })
6367 
6368   $("#skip-card").click(async function(){
6369     $("#greetingCard [data-properties]").val("")
6370     $("#properties-photo").val("")
6371     $("#properties-video").val("")
6372     const parent = $(this).parents(".sectionPurchase")
6373     const next = parent.next(".sectionPurchase")
6374     parent.addClass("hide")
6375     next.removeClass("hide")
6376     // $("#itemCards").html("")
6377     removeImage()
6378     removeVideo()
6379     if(next.hasClass("purchaseAddon")) {
6380       $("[data-addon='upsell-all']").click()
6381       console.log("clarity event addons")
6382       window.clarity("event", `${productType} add-ons`)
6383       // Ensure addon items are loaded when entering addon popup
6384       setTimeout(function() {
6385         if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6386           $("[data-addon='upsell-all']").trigger("click")
6387         }
6388       }, 100)
6389     }
6390     if(next.hasClass("purchaseAddress")) {
6391       $("#zip").select2()
6392     }
6393   })
6394 
6395   $("#msgCard").click(async function(){
6396       $(this).parent().addClass("loading")
6397       let occasion = $(".selected[data-occassion]").data("occassion")
6398       occasion = occasion?.replace("greeting-card-", "")
6399       const { data } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`);
6400       const d = data?.data
6401       for(let i = 0; i < d.length; i++) {
6402         const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1);
6403         const greeting = d[num]?.Greeting
6404         $(".greetingCard textarea").val(greeting)
6405         $(this).parent().removeClass("loading")
6406       }
6407       $("#save-card").attr("disabled", false)
6408     })
6409 
6410   $(".sectionPurchaseBoard .next-purchase-button").click(function(){
6411     const parent = $(this).parents(".sectionPurchase")
6412     const next = parent.next(".sectionPurchase")
6413     parent.addClass("hide")
6414     next.removeClass("hide")
6415   })
6416 
6417   $("#editCard").click(function(){
6418     $(".custom-card").show()
6419     $(".preview-card").hide()
6420   })
6421 
6422   $("#first_name, #last_name").change(function(){
6423     const v = $(this).val()
6424     const first_name = $("#first_name").val()
6425     const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : ''
6426     $("[data-properties=nama-penerima]").val(first_name+last_name)
6427   })
6428 
6429   $("[data-occassion]").click(function(){
6430       const t = $(this)
6431       const p = t.parents(".sectionPurchase")
6432       // $(".greetingCard").addClass("disabled")
6433       const occasion = t.data("occassion")
6434       loadItemOccasion(t, occasion)
6435   })
6436 
6437   $("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function(){
6438       const id = $(this).parent(".item-card").data("id")
6439       const t = $(this).parent(".item-card")
6440       const target = t.find("input")
6441       const v = $('.item-card input[type="radio"]:checked').val();
6442       $("#itemCards .item-card").removeClass("selected")
6443       t.addClass("selected")
6444       $("#itemCards .item-card").find("input").attr("name", "")
6445       if(target.length > 0) {
6446           target.attr("name", "id[]")
6447           $("#properties-card").val(id)
6448           $(".greetingCard").removeClass("disabled")
6449           $("#skip-card").attr("disabled", false)
6450       } else {
6451           $("#properties-card").val("")
6452       }
6453   })
6454 
6455   $("#itemCards").delegate(".item-without-card label", "click", function(){
6456     const parent = $(this).parents(".sectionPurchase")
6457     const next = parent.next(".sectionPurchase")
6458     $(".greetingCard").addClass("disabled")
6459     parent.addClass("hide")
6460     next.removeClass("hide")
6461     $("[data-addon=upsell-all]").click()
6462     $("#zip").select2()
6463   })
6464 
6465   $("[data-properties=ucapan]").keyup(function(){
6466     const v = $(this).val()
6467     const p = $(this).parents(".sectionPurchase")
6468     $(".purchaseAddress").find(".greetingCard textarea").val(v)
6469     if(v.length > 3) {
6470       p.find(".next-purchase-button").attr("disabled", false)
6471     } else {
6472       p.find(".next-purchase-button").attr("disabled", true)
6473     }
6474   })
6475 
6476   $("[data-properties=penerima]").keyup(function(){
6477     const v = $(this).val()
6478     $(".purchaseAddress").find("[data-properties=penerima]").val(v)
6479   })
6480 
6481   $("[data-properties=pengirim]").keyup(function(){
6482     const v = $(this).val()
6483     $(".purchaseAddress").find("[data-properties=pengirim]").val(v)
6484   })
6485 
6486   $(document).click(function(e){
6487 
6488      if($(e.target).closest('.wrapperPopupCart').length != 0) return false;
6489      // $('#popupCart').fadeOut('slow');
6490     // location.reload()
6491   });
6492 
6493   $(".toggleAddonCart").click(function(){
6494     const p = $(this).parent(".itemAddonCart")
6495     p.toggleClass("open")
6496   })
6497 
6498   $(".btnViewCart").click(function(){
6499     window.location.href = "https://outerbloom.com/cart";
6500   })
6501 
6502   $(".btnViewCheckout").click(async function(){
6503     $(this).find("span").addClass("loading")
6504     let zip = $("#zip").val()
6505     const first_name = $("#first_name").val()
6506     const last_name = $("#last_name").val()
6507     const company = $("#company").val() !== '' ? $("#company").val() : ''
6508     const address1 = $("#delivery_address").val()
6509     const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : ''
6510     zip = zip && zip !== '' ? zip?.split(' - ')[0] : ''
6511     const phone = $("#recipient_number").val()
6512     const city = $("#cities").val()
6513     const province = $("#province").val()
6514     const country = 'Indonesia'
6515     const ver = Date.parse(new Date())
6516     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}`
6517 
6518     const clear = await fetch(`/cart/clear.js`, {method: 'POST'})
6519     if(clear.status === 200) {
6520       const savedItem = window.localStorage.getItem("items");
6521       const items = JSON.parse(savedItem)
6522       const addItems = await additem(items)
6523       console.log(addItems, 'new addItems')
6524       if(addItems) {
6525         window.location.href = `https://outerbloom.com/checkout?${params}`;
6526       }
6527     }
6528   })
6529 
6530   $(".btnContinueShopping").click(function(){
6531     window.location.href = "https://outerbloom.com/";
6532   })
6533 
6534     if (isIOS) {
6535       $(".empty-state-card").click(function(){
6536         $("#input-foto").trigger("click")
6537       })
6538       $(".btn-upload-image").click(function(){
6539         $("#input-foto").trigger("click")
6540       })
6541       $("[for=input-video]").click(function(){
6542         $("#input-video").trigger("click")
6543       })
6544       $(".btn-upload-papan").click(function(){
6545         $("#logoPapan").trigger("click")
6546       })
6547     }
6548   
6549     $("[data-properties]").each(function(){
6550       const select = $(this).parents(".form-group").find("select")
6551       $(this).change(function(){
6552         const name = $(this).data("properties")
6553         const v = $(this).val()
6554         if (name == 'telepon-penerima') {
6555           let phone = v.replace(/[^0-9]/g, '')
6556           $(this).val(phone);
6557           $("#properties-telepon-penerima").val(phone)
6558           $('.iti__search-input').val('-') 
6559         } else {
6560           $("#properties-" + name).val(v)
6561         }
6562       })
6563       select.on("change", function(){
6564         const name = $(this).data("properties")
6565         const v = $(this).val()
6566         $("#properties-" + name).val(v)
6567       })
6568     })
6569 
6570     $("#show_note").click(function(){
6571       nameq = $("#properties-nama-penerima").val()
6572       dear = $("#properties-kartu-nama-penerima").val()
6573       card = $("[data-properties=ucapan]").val()
6574       sender = $("#properties-kartu-nama-pengirim").val()
6575       photo = $("#properties-photo").val()
6576       video = $("#properties-video").val()
6577       updateCard(nameq, dear, card, sender, photo, video, status)
6578     })
6579 
6580     $(".remove-image").click(function(e){
6581       e.preventDefault()
6582       $(this).find("img").show()
6583       removeImage()
6584     })
6585 
6586     $(".remove-media").click(function(e){
6587       e.preventDefault()
6588       $(this).find("img").show()
6589       removeVideo()
6590     })
6591 
6592     
6593 
6594     $("[data-delivery_method]").click(function(e){
6595       e.preventDefault()
6596       const t = $(this)
6597       const data = t.data("delivery_method")
6598       $("[data-delivery_method]").removeClass("selected")
6599       t.addClass("selected")
6600       $("#cities").val("")
6601       $("#properties-delivery-date").val("-")
6602       $("#deliveryDate button").removeClass("selected")
6603       $("#full-date").val("Full Calendar →")
6604       $("#propDeliveryDate").val("")
6605       const step3 = $("#step-3")
6606       if(data.match('PickUp')) {
6607         $(".selfpickup-point").show()
6608         step3.find("[data-finished=false]").hide()
6609         $("#panel-4").hide()
6610         step3.find("[data-finished=true]").show()
6611         $("#cities").attr("required", false)
6612         $("#form-group-city").hide()
6613         $("#row-delivery-time").hide()
6614         $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-")
6615         $("#propDeliveryTime").attr("required", false)
6616         // $("#deliveryDate").find("button:first-child").addClass("stop")
6617         $(".form-selfpickup").show()
6618         $(".form-delivery").hide()
6619         $(".form-delivery").find("input, textarea, select").val("")
6620         $(".form-delivery").find("input, textarea, select").attr("required", false)
6621         $("#properties-shipping").val("0")
6622         $("#noteDeliveryDate").hide()
6623         $(".form-delivery .form-control").attr("required", false)
6624         $("#stepNav4").hide()
6625         
6626         $("#deliveryDate").find("button:nth-child(1)").addClass("stop")
6627         
6628         
6629         
6630         if(timeOfDay >= 16.01){
6631           $("#deliveryDate").find("button:nth-child(2)").addClass("stop")
6632         }
6633       } else {
6634         
6635         
6636         $("#deliveryDate").find("button:nth-child(1)").removeClass("stop")
6637         step3.find("[data-finished=false]").show()
6638         $("#panel-4").show()
6639         step3.find("[data-finished=true]").hide()
6640         $("#cities").attr("required", true)
6641         $(".selfpickup-point").hide()
6642         $("#form-group-city").show()
6643         $("#cities").val('').trigger('change');
6644         $("#properties-kota-pengiriman").val("-")
6645         
6646         $("#row-delivery-date, #row-delivery-time").show()
6647         $("#propDeliveryDate, #propDeliveryTime").attr("required", true)
6648         $("#deliveryDate").find("button").removeClass("stop")
6649         $(".form-selfpickup").hide()
6650         $(".form-delivery").show()
6651         $(".form-delivery").find("input, textarea, select").attr("required", true)
6652         $(".form-delivery [data-properties]").attr("readonly", false)
6653         $("#properties-kodepos").val("-")
6654         $("#properties-alamat-penerima").val("-")
6655         $(".form-delivery .form-control").attr("required", true)
6656         $(this).parents(".setup-content").attr("id", "step-1")
6657         
6658         $("#stepNav4").show()
6659       }
6660     })
6661 
6662     $("[name=selfpickup]").click(function(){
6663         const p = $(this).parents(".row-pickup")
6664         const pickupCity = $("input[name='selfpickup']:checked").val();
6665         const pickupAddress = $("input[name='selfpickup']:checked").data("address");
6666         const pickupZip = $("input[name='selfpickup']:checked").data("zip");
6667 
6668         $(".row-pickup").removeClass("selected")
6669         p.addClass("selected")
6670         
6671         $("#properties-kota-pengiriman").val(pickupCity)
6672         $("#province").val("Jakarta")
6673         $("#properties-alamat-penerima").val(pickupAddress)
6674         $("#properties-kodepos").val(pickupZip)
6675     })
6676 
6677     $("#cities").change(function(e){
6678       e.preventDefault()
6679       $(this).parent(".row").find("p.error").remove()
6680       $("#full-date").val("Full Calendar")
6681       $("#deliveryDate, #deliveryDateFull label ").show()
6682       $("#deliveryDateFull").removeClass("filled")
6683       $(".btnChangeDeliveryDate").addClass("hide")
6684       $("#full-date").prop('disabled', false);
6685       $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success")
6686       $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true)
6687       const step3 = $("#step-3")
6688       $("#cityNote").remove()
6689       $("#noteDeliveryDate").hide()
6690       $("#noteDeliveryDate").empty()
6691       let v = $(this).val()
6692       let v2 = $('option:selected', this).attr('data-city');
6693       let v3 = $('option:selected', this).attr('data-province');
6694       let price = $('option:selected', this).attr('data-price');
6695       $("#country").val(v)
6696       $("#properties-kota-pengiriman").val(v)
6697       $("#properties-shipping").val(price)
6698       $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected")
6699       $("#properties-delivery-date, #properties-delivery-time").val("-")
6700       $("#propDeliveryDate, #propDeliveryTime").val("")
6701       let note = $('option:selected', this).attr('data-note');
6702       if(v === 'Kota Lainnya') {
6703         $("#noteDeliveryDate").show()
6704         $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.")
6705         $("#zip").attr("required", false)
6706         $("#zip").hide()
6707         $("#propDeliveryDate, #propDeliveryTime").attr("required", false)
6708         $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-")
6709         $("#row-delivery-date, #row-delivery-time").hide()
6710         $("#properties-shipping").val("")
6711         // $(this).parents(".setup-content").attr("id", "step-2")
6712         
6713       } else {
6714         $("#noteDeliveryDate").hide()
6715         $("#zip").attr("required", true)
6716         $("#zip").show()
6717         $("#row-delivery-date, #row-delivery-time").show()
6718         $("#propDeliveryDate, #propDeliveryTime").attr("required", true)
6719         $("#deliveryDate").find("button").removeClass("stop")
6720         // $(this).parents(".setup-content").attr("id", "step-1")
6721         
6722       }
6723       
6724       
6725       
6726       // if(v !== 'Jakarta') {
6727       //   $("[data-type=upsell]").hide()
6728       // } else {
6729       //   $("[data-type=upsell]").show()
6730       // }
6731       // $('.collection-addons')[0].swiper.update();
6732       
6733       
6734       getProvince(v)
6735       $("#zip").html(`<option value="">Choose Postal Code</option>`)
6736       renderZip(v, v2, v3)
6737       
6738       disabledSameDay()
6739       
6740 
6741       if(v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') {
6742         
6743         $("#cardOccasion, #navAddon, .collection-addons").hide()
6744         
6745         $("[data-addon=giftcard]").show()
6746         $("[data-addon=giftcard]").click()
6747         $("#itemAddons").show()
6748         $("#flower-step").addClass("nonjadetabek")
6749       } else {
6750         $("#cardOccasion, #navAddon, .collection-addons").show()
6751         $("[data-addon=all]").click()
6752         $("#flower-step").removeClass("nonjadetabek")
6753       }
6754       
6755         if(v !== '') {
6756           $("#personalizeBtn .btn").attr("disabled", false)
6757         } else {
6758           $("#personalizeBtn .btn").attr("disabled", true)
6759         }
6760       
6761     })
6762 
6763     $("#zip").change(function(e){
6764       let v = $(this).val()
6765       var city = $("#cities").find('option:selected');
6766       $("#properties-kodepos").val(v)
6767       if(city === 'Kota Lainnya') {
6768         $(this).attr("required", true)
6769         $("#recipient-address").val("")
6770       }
6771     })
6772 
6773     
6774       var minDate = +7
6775       
6776     
6777 
6778     $("#full-date").datepicker({
6779       minDate,
6780       dateFormat: 'Mdd_yy', //Nop22_2021,
6781       
6782       beforeShowDay: disabledays,
6783       
6784       onSelect: function (date) {
6785         $("#deliveryDate, #deliveryDateFull label ").hide()
6786         $("#deliveryDateFull").addClass("filled")
6787         $(".btnChangeDeliveryDate").removeClass("hide")
6788         $("#full-date").prop('disabled', true);
6789         $('#propDeliveryDate, #properties-delivery-date').val('Kirim_'+date);
6790         $(".date-full").addClass("selected")
6791         $(".date-single, .calendar-group").removeClass("selected")
6792         $("#propDeliveryTime").val('')
6793         $("#properties-delivery-time").val('-')
6794         $(".time-single").removeClass("selected")
6795         
6796         
6797       }
6798     });
6799 
6800     $(".btnChangeDeliveryDate").click(function(){
6801         $("#deliveryDate, #deliveryDateFull label ").show()
6802         $("#deliveryDateFull").removeClass("filled")
6803         $(".btnChangeDeliveryDate").addClass("hide")
6804         $("#full-date").prop('disabled', false);
6805     })
6806   
6807     $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e){
6808       e.preventDefault()
6809       $(this).parents("#row-delivery-date").find("p.error").remove()
6810       const fulldate = $(this).data("fulldate")
6811       const day = $(this).data("day")
6812       const date = $(this).data("date")
6813       const month = $(this).data("month")
6814       const year = $(this).data("year")
6815       const off_pagi = $(this).data("offpagi")
6816       const off_siang = $(this).data("offsiang")
6817       const off_Malam = $(this).data("offMalam")
6818       $(".calendarbutton").removeClass("selected")
6819       $(this).addClass("selected")
6820       $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`)
6821       $("#propDeliveryTime").val('')
6822       $("#properties-delivery-time").val('-')
6823       $(".calendarbutton2").removeClass("selected")
6824       $("#full-date").val("Full Calendar")
6825 
6826       
6827       if(off_pagi && timeOfDay > off_pagi) {
6828         $("[data-time=Morning]").attr("disabled", true)
6829       } else {
6830         $("[data-time=Morning]").attr("disabled", false)
6831       }
6832       if(off_siang && timeOfDay > off_siang) {
6833         $("[data-time=Afternoon]").attr("disabled", true)
6834       } else {
6835         $("[data-time=Afternoon]").attr("disabled", false)
6836       }
6837       
6838 
6839       
6840     })
6841     
6842     if(today === 14 && timeOfDay > 17.00) {
6843       $("#deliveryDate button:first-child").attr("disabled", true)
6844     }
6845   
6846     $("#deliveryTime").delegate(".calendarbutton2", "click", function(e){
6847       e.preventDefault()
6848       const time = $(this).data("time")
6849       const date = $("#propDeliveryDate").val()
6850       if(date == '') {
6851         return alert('Silakan pilih tanggal terlebih dahulu')
6852       }
6853       $(".calendarbutton2").removeClass("selected")
6854       $(this).addClass("selected")
6855       $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`)
6856     })
6857       
6858     $('textarea.has-limit, input.has-limit').keyup(function () {
6859       max = this.getAttribute("maxlength");
6860       let len = $(this).val().length;
6861       let limit = $(this).siblings(".limit");
6862       if (len > max) {
6863         alert('you have reached the limit');
6864       } else {
6865         limit.text(`${len}/${max}`);
6866       }
6867     });
6868     
6869     $("#button-action-step .btn").click(function(){
6870       $(this).find("span").text("Processing...");
6871     });
6872 
6873     $(".finishBtn").on('click', function() {
6874       $(this).addClass("is-adding");
6875       // $(this).click();
6876     });
6877 
6878     $('.setup-panel .nav-item a.btn-success').trigger('click');
6879 
6880     $("#button-action .btn").click(function(){
6881       $("#flower-step").addClass("block");
6882       $("#button-action").hide();
6883     });
6884         
6885     $(".close-how-order").click(function(){
6886       $("#flower-step").removeClass("block");
6887       $("#button-action").show();
6888     });
6889 
6890     $("#input-foto, #input-video").change(function(e){
6891       readURL(this);
6892     });
6893 
6894     $("#logoPapan").change(function(){
6895       readURLPapan(this);
6896     });
6897 
6898     $("#address-upload").change(async function(){
6899       const upload_address = await readURLAddress(this)
6900       if(upload_address) {
6901         const url = upload_address.url
6902         $(".props-address-upload").val(url)
6903         $(".form-address").addClass("address-uploaded")
6904         $(".form-address-upload").addClass("uploaded")
6905 
6906         $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false)
6907       }
6908     })
6909 
6910     $(".address-manualy").click(function(){
6911       $(".form-address-upload").removeClass("uploaded");
6912       $(".photo-address").hide();
6913       $(".form-address").removeClass("address-uploaded")
6914       $("#formAddressPurchase").find(".form-control").attr("required", true)
6915     });
6916 
6917     $(".case-video-preview").delegate(".replace-video", "click", function(){
6918       $("#input-video").trigger("click")
6919     })
6920 
6921     $('.date-single').click(function(e) {
6922       e.preventDefault();
6923       $('.date-single').removeClass('selected');
6924       $('#full-date').removeClass('selected');
6925       $(this).addClass('selected');
6926       $('#full-date').html('Full' + '<br/>' + 'Calendar');
6927     });
6928     $('#full-date').click(function(e){
6929       e.preventDefault();
6930       $('.date-single').removeClass('selected');
6931       $(this).addClass('selected');
6932     });
6933     
6934     // $("tr").each(function(){
6935     //   if($(this).text().match('SKU')) {
6936     //     $(".sku-product").html($(this).parents("table").html())
6937     //   }
6938     // })
6939     
6940     $("#product-image").scroll(function(){
6941       $(".desc-add").each(function(){
6942         const img = $(this).find("img")
6943         const src = img.data("src")
6944         img.attr("src", src)
6945       })
6946     })
6947 
6948     $(".product-fixed").hide()
6949     
6950     let target = $("#personalizeBtn")
6951     
6952 
6953     $(".product-meta").scroll(function() {
6954         if ($(window).scrollTop() >= target.offset().top ) {
6955             $(".product-fixed").addClass("show")
6956         } else {
6957           $(".product-fixed").removeClass("show")
6958         }
6959     });
6960 
6961     $(window).scroll(function() {
6962         if ($(window).scrollTop() >= target.offset().top ) {
6963             $(".product-fixed").addClass("show")
6964         } else {
6965           $(".product-fixed").removeClass("show")
6966         }
6967     });
6968   });
6969 </script>
6969
6970 
6971   
6971<script>
6972     //
6973   </script>
6973
6974 
6975 
6975<script>
6976   $(document).ready(function(){
6977     $('table tr td').each(function(){
6978       var texto = $(this).text();
6979       var nextto = $(this).next("td");
6980       var sku = $("#data-sku").val()
6981       if(texto == 'SKU'){
6982         nextto.text(sku)
6983       }
6984     });
6985     
6986     $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan");
6987     $(".stamped-summary-actions-newreview").text("Tulis Review");
6988     $("#tab-questions").text("Pertanyaan");
6989     
6990     $(".freeship .icon").click(function(){
6991       $(".fs-content").slideToggle();
6992       $(this).parents(".freeship").toggleClass("expand");
6993     });
6994     
6995     var $easyzoom = $('.easyzoom').easyZoom();
6996     // Setup thumbnails example
6997     var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom');
6998     $('.thumbnails').on('click', 'a', function(e) {
6999       var $this = $(this);
7000       e.preventDefault();
7001       // Use EasyZoom's `swap` method
7002       api1.swap($this.data('standard'), $this.attr('href'));
7003     });
7004 
7005     $('#playerID').click(function(){
7006       var videoURL = $('#VdoID').attr('src'),
7007           dataplay = $('#VdoID').attr('data-play');
7008 
7009       //for check autoplay
7010       //if not set autoplay=1
7011       if(dataplay == 0 ){
7012         $('#VdoID').attr('src',videoURL+'?autoplay=1');
7013         $('#VdoID').attr('data-play',1);
7014       }
7015       else{
7016         var videoURL = $('#VdoID').attr('src');
7017         videoURL = videoURL.replace("?autoplay=1", "");
7018         $('#VdoID').prop('src','');
7019         $('#VdoID').prop('src',videoURL);
7020 
7021         $('#VdoID').attr('data-play',0);
7022       }
7023 
7024     });
7025     
7026     $(".product-photo-thumb-video").click(function(e){
7027       e.preventDefault();
7028 
7029       var newEmbed = $(this).attr('href');
7030       $("#featured-image-product").addClass("img-video");
7031       $("#ProductPhotoImg").hide();
7032       $("#featured-image-product .video").show();
7033       $("#featured-image-product iframe").attr('src', newEmbed);
7034       $("#VdoID")[0].src += "&autoplay=1";
7035     });
7036     $(".product-single__thumbnail").click(function(evt){
7037       evt.preventDefault();
7038       $("#featured-image-product").removeClass("img-video");
7039       $("#ProductPhotoImg").show();
7040       $("#featured-image-product .video").hide();
7041       $("#featured-image-product iframe").attr('src', '');
7042     });
7043     
7044     if($('#product-meta .short-desc > div').length >= 1){
7045       //console.log('div detected')
7046       var replacer = $('#product-meta .short-desc > div').contents();
7047       $('#product-meta .short-desc > div').replaceWith(replacer);
7048 
7049       var cAssured =  $('.c-assured').detach();
7050       cAssured.insertAfter('.meta-sds .stock-info');
7051     }
7052 
7053     
7054     
7055     $(".heading-toggle").click(function(){
7056       $(this).parent().toggleClass("open")
7057       
7058     });
7059   });
7060 </script>
7060
7061 
7062 
7063   
7063<script type="application/json" id="ProductJson-Product">
7064         
7065         {"id":8144957800663,"title":"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eHadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026."}
7066   </script>
7066
7067   
7068     
7068<script type="application/json" id="VariantJson-Product">
7069       [
7070         
7071           {
7072              "incoming": false,
7073              "next_incoming_date": null
7074           }
7075         
7076       ]
7077     </script>
7077
7078   
7079 
7080 
7081 
7082 </div>
7083 
7084 
7085 
7085<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
7085
7086 <style>
7087     .stamped-review-header-title,
7088     .stamped-review-header .author,
7089     .stamped-review-content-body,
7090     .stamped-sort-select,
7091     .stamped-review-header .verified-badge[data-type=buyer]:after,
7092     .stamped-review-header-byline,
7093     .stamped-review-reply-body {font-size: 14px!important;font-family: 'Barlow',sans-serif!important;}
7094     .stamped-review {margin-bottom: 0;}
7095     .stamped-review-body {padding-left: 65px;}
7096     .stamped-review:first-child {padding-top: 25px;}
7097     .stamped-review-content {clear: none;}
7098     .stamped-review-reply {margin: 15px 0 0 65px;background: #f2f2f2;border-left: none;}
7099     .stamped-review-reply-body {padding-left: 65px;}
7100     .stamped-review-header .author {text-transform: capitalize;}
7101     .stamped-questions .stamped-review-content {padding-left: 65px;}
7102 
7103     .stamped-pagination {margin: 20px 0 0;}
7104     .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;}
7105     .stamped-pagination li a {color: #121212;padding: 13px 18px;vertical-align: middle;display: block;}
7106     .stamped-pagination li.active a {background-color: #ddd;font-weight: 400;}
7107     .stamped-pagination li:hover a {background: #ddd;}
7108     .stamped-pagination .next {border-right: 1px solid #ccc;}
7109     .stamped-pagination li:first-child {border-top-left-radius: 5px;border-bottom-left-radius: 5px;}
7110     .stamped-pagination li:last-child {border-top-right-radius: 5px;border-bottom-right-radius: 5px;}
7111 
7112     #stamped-pagination-question span.page {display: inline-block;border: 1px solid #ccc;width: 47px;}
7113     #stamped-pagination-question span {font-size: 14px;}
7114     #stamped-pagination-question .page.active {padding: 12px;font-weight: 400;background: #ddd;}
7115     #stamped-pagination-question a, #stamped-pagination-question .page.active {color: #121212;padding: 13px 18px;vertical-align: middle;display: inline-block;}
7116     .stamped-pagination-deco {color: #121212;padding: 13px 18px;width: 47px;vertical-align: middle;display: inline-block;border: 1px solid #ccc;padding: 12px;}
7117     .stamped-pagination-prev, .stamped-pagination-next {position: inherit;}
7118     .stamped-pagination-prev a, .stamped-pagination-next a {width: auto!important;border: 1px solid #ccc;}
7119 
7120     @media (max-width: 480px){
7121       .stamped-review-reply {margin-left: 0!important;}
7122       select.stamped-sort-select {font-size: 13px!important;}
7123     }
7124 
7125   #product-reviews .stamped-summary-ratings, #product-reviews .stamped-summary-actions, .stamped-content {
7126       display: block !important;
7127   }
7128 </style>
7129 
7129<script>
7130     var selectCallback = function(variant, selector) {
7131       timber.productPage({
7132         money_format: "Rp {{amount_no_decimals}}",
7133         variant: variant,
7134         selector: selector
7135       });
7136     };
7137 
7138     jQuery(function($) {
7139       new Shopify.OptionSelectors('productSelect', {
7140         product:
7141 
7142 
7143 
7144 
7145 
7146 {"id":8144957800663,"title":"RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eHadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026."},
7147         onVariantSelected: selectCallback,
7148         enableHistoryState: true
7149       });
7150 
7151       // Add label if only one product option and it isn't 'Title'. Could be 'Size'.
7152       
7153 
7154       // Hide selectors if we only have 1 variant and its title contains 'Default'.
7155       
7156         $('.selector-wrapper').hide();
7157       
7158     });
7159 </script>
7159
7160 
7161 
7162 
7163   
7163<script type="application/ld+json">
7164     {
7165     "@context": "http://schema.org",
7166     "@type": "Product",
7167 "offers": {
7168 "@type": "Offer",
7169 "availability":"https://schema.org/InStock",
7170 "price": 835000,
7171 "priceValidUntil": "05-10-2025",
7172 "priceCurrency": "IDR",
7173 "url": "https://www.louerunepiscine.com/les-piscines"
7174 },
7175 "brand": {
7176 "@type": "Brand",
7177 "name": "Outerbloom Florist"
7178 },
7179 "sku": "8144957800663",
7180 "gtin13": "Jawa",
7181 "name": "RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat",
7182 "description": "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.",
7183 "category": "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.",
7184 "url": "https://www.louerunepiscine.com/les-piscines",
7185 "image": {
7186 "@type": "ImageObject",
7187 "url": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426",
7188 "image": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426",
7189 "name": "RAJADANA : Slot Pulsa Kekinian Dengan Sistem Akses Cepat",
7190 "width": 1024,
7191 "height": 1024
7192 }
7193     }
7194   </script>
7194
7195 
7196 
7197 
7198 
7199         
7200 
7200<script id="bss-ltap-hide-price" type="text/javascript" >
7201 !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)}))}
7201)),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)}
7201)),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()}
7201if("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)}
7201if(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");
7201c&&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
7201-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");
7201i&&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
7201--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
7201opify.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");
7201e.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=
7201o.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");
7201if(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();
7201let 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()}]);
7202 </script>
7202
7203 
7204       </main>
7205       
7206       <div id="shopify-section-newsletter" class="shopify-section"><br>
7207   <style>
7208     #shopify-section-newsletter {
7209       background: url('https://imgstore.io/images/2025/05/21/background-gelap.jpeg');
7210       background-attachment: fixed;
7211       margin-bottom: 0;
7212     }
7213     input:-webkit-autofill,
7214     input:-webkit-autofill:hover,
7215     input:-webkit-autofill:active,
7216     input:-webkit-autofill:focus {
7217       -webkit-box-shadow:0 0 0 50px white inset;
7218       -webkit-text-fill-color: #ffffff;
7219     }
7220     .section-newsletter {
7221       max-width: 800px;
7222       margin: auto;
7223       padding: 50px 0;
7224     }
7225     .section-newsletter h2 {
7226       font-weight: 700;
7227       font-size: 24px;
7228     }
7229     .section-newsletter input[type="email"] {
7230       width: 100%;
7231       text-align: center;
7232       border: none;
7233       border-bottom: 1px solid #ffffff;
7234       font-size: 16px;
7235       color: #757575;
7236       background-color: #eeeeee;
7237     }
7238     .section-newsletter .row label {
7239       font-size: 14px;
7240       cursor: pointer;
7241     }
7242     .section-newsletter .radio-inline input {
7243       width: auto;
7244     }
7245     .section-newsletter .btn {
7246       width: 130px;
7247       border: 1px solid #ffffff;
7248       box-shadow: none;
7249       font-size: 16px;
7250       font-weight: 500;
7251       text-transform: uppercase;
7252     }
7253     .section-newsletter form {
7254       margin: 30px 0 60px;
7255     }
7256     .section-newsletter input[type="radio"] {
7257       position: absolute;
7258       width: 1px;
7259       height: 1px;
7260     }
7261     .section-newsletter [type="radio"]:checked + label, .section-newsletter [type="radio"]:not(:checked) + label {
7262       position: relative;
7263       padding-left: 28px;
7264       cursor: pointer;
7265       line-height: 20px;
7266       display: inline-block;
7267       color: #666;
7268     }
7269     .section-newsletter [type="radio"]:checked + label:before, .section-newsletter [type="radio"]:not(:checked) + label:before {
7270       content: '';
7271       position: absolute;
7272       left: 0;
7273       top: 0;
7274       width: 18px;
7275       height: 18px;
7276       border: 1px solid #ddd;
7277       border-radius: 100%;
7278       background: #fff;
7279     }
7280     .section-newsletter [type="radio"]:checked + label:after, .section-newsletter [type="radio"]:not(:checked) + label:after {
7281       content: '';
7282       width: 12px;
7283       height: 12px;
7284       background: #ffffff;
7285       position: absolute;
7286       top: 3px;
7287       left: 3px;
7288       border-radius: 100%;
7289       -webkit-transition: all 0.2s ease;
7290       transition: all 0.2s ease;
7291     }
7292     .section-newsletter [type="radio"]:not(:checked) + label:after {
7293       opacity: 0;
7294       -webkit-transform: scale(0);
7295       transform: scale(0);
7296     }
7297     .opt-newsletter {display:none;}
7298     .footer-newsletter p, .footer-newsletter p a {
7299       color: #757575;
7300     }
7301     @media (max-width:991px){
7302       .section-newsletter h2 {
7303         font-size: 32px;
7304       }
7305       .section-newsletter input {
7306         width: 300px;
7307         font-size: 14px;
7308       }
7309       .section-newsletter {
7310         padding: 50px 20px;
7311       }
7312     }
7313     @media (max-width: 480px){
7314       .section-newsletter input[type="email"] {font-size: 16px;}
7315     }
7316   </style>
7317  <style>
7318 .icon-img-footer {
7319     width: 80px; 
7320     padding: 0px 5px;
7321 }
7322 @media (min-width: 768px) {
7323     .icon-img-footer {
7324         width: 120px; 
7325     }
7326 }
7327 @media (min-width: 992px) {
7328     .icon-img-footer {
7329         width: 120px; 
7330     }
7331 }
7332 
7333   .button-login-daftar {
7334                         display: grid;
7335                         grid-template-columns: repeat(2, 1fr);
7336                         font-weight: 700;
7337                     }
7338                     .button-login-daftar a {
7339                         text-align: center;
7340                     }
7341                     .login,
7342                     .register {
7343                         color: #ffd700;
7344                         padding: 15px 10px;
7345                         font-size: 23px;
7346                     }
7347                     .login,
7348                     .login-button {
7349                         background: linear-gradient(to bottom,#000000 0,#000000 100%);
7350                         border: 2px solid #ffd700;
7351                     }
7352                     .register,
7353                     .register-button {
7354                         background: linear-gradient(to bottom,#000000 0,#000000 100%);
7355                         border: 2px solid #ffd700;
7356                     }
7357 
7358 
7359 
7360 </style>
7361 
7362 <!-- wp:html -->
7363  
7363<script>
7364         document.addEventListener('DOMContentLoaded',
7365             function(){const faqItems=document.querySelectorAll('.faq-item');
7366             faqItems.forEach(item=>{const question=item.querySelector('.faq-question');
7367             question.addEventListener('click',
7368             ()=>{const isActive=item.classList.contains('active');
7369             faqItems.forEach(otherItem=>{otherItem.classList.remove('active')});
7370             if(!isActive){item.classList.add('active')}})})});
7371         </script>
7371
7372 
7373 
7374             <div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1">
7375             </div>
7376 <div class="faq-section">
7377         <h2>FAQ</h2>
7378<div class="faq-container">
7379    <div class="faq-item">
7380        <button class="faq-question">1. Apa itu RAJADANA?<span></span></button>
7381        <div class="faq-answer">
7382            <p>RAJADANA adalah platform content eksklusif game hiburan tanpa batas yang menghadirkan berbagai informasi terbaru seputar game slot online, hiburan digital modern, serta akses permainan dengan sistem cepat, ringan, dan stabil untuk pengalaman bermain yang lebih nyaman di tahun 2026.</p>
7383        </div>
7384    </div>
7385
7386    <div class="faq-item">
7387        <button class="faq-question">2. Apa keunggulan RAJADANA dibanding platform lainnya?<span></span></button>
7388        <div class="faq-answer">
7389            <p>RAJADANA memiliki berbagai keunggulan seperti akses cepat tanpa loading lama, tampilan modern yang mudah digunakan, kompatibel di berbagai perangkat, serta menyediakan update game hiburan terbaru secara konsisten sehingga pengguna dapat menikmati pengalaman digital yang lebih praktis dan efisien.</p>
7390        </div>
7391    </div>
7392
7393    <div class="faq-item">
7394        <button class="faq-question">3. Apakah RAJADANA aman digunakan?<span></span></button>
7395        <div class="faq-answer">
7396            <p>Ya, RAJADANA mengutamakan keamanan dan kenyamanan pengguna dengan sistem yang stabil serta perlindungan akses modern. Platform ini dirancang untuk menjaga performa tetap optimal sehingga pengguna dapat menikmati hiburan online tanpa khawatir terhadap gangguan teknis yang tidak diinginkan.</p>
7397        </div>
7398    </div>
7399
7400    <div class="faq-item">
7401        <button class="faq-question">4. Apakah RAJADANA bisa diakses melalui smartphone?<span></span></button>
7402        <div class="faq-answer">
7403            <p>Tentu saja. RAJADANA dapat diakses melalui smartphone, tablet, maupun desktop dengan tampilan yang tetap responsif dan ringan. Hal ini membuat pengguna lebih fleksibel dalam menikmati content hiburan kapan saja dan di mana saja.</p>
7404        </div>
7405    </div>
7406
7407    <div class="faq-item">
7408        <button class="faq-question">5. Bagaimana cara mengakses RAJADANA?<span></span></button>
7409        <div class="faq-answer">
7410            <p>Untuk mengakses RAJADANA, pengguna hanya perlu membuka link resmi yang tersedia kemudian login melalui sistem yang cepat dan mudah. Setelah berhasil masuk, seluruh content game hiburan dan informasi terbaru dapat langsung dinikmati tanpa proses yang rumit.</p>
7411        </div>
7412    </div>
7413</div>
7414 
7415             </div>
7416 
7417         </div>
7418 
7419     </div>
7420 
7421 
7422 <div class="overlay overlay-cart"></div>
7423 <div id="CartDrawer" class="drawer drawer--right">
7424   <div class="drawer__header pl-2 pr-2">
7425     <div class="drawer__icon-cart display-table-cell">
7426       <a href="/cart" class="">
7427         <svg class="icon icon-cart" version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.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.573zM7.74 8.858l11.925 1.696c0.213 0.030 0.372 0.218 0.372 0.44v18.519c0 0.284-0.254 0.495-0.523 0.434l-11.925-2.685c-0.198-0.045-0.339-0.225-0.339-0.434v-17.53c0-0.27 0.231-0.477 0.49-0.44z"></path> <path fill="#fff" d="M23.7 10.046l-3.275 0.146-0.388 0.897v17.656l3.664-2.174v-16.526zM24.346 27.214l-4.526 2.685c-0.287 0.17-0.646-0.043-0.646-0.385v-18.519l0.037-0.181 0.534-1.235c0.067-0.154 0.212-0.256 0.375-0.263l3.991-0.178c0.245-0.011 0.45 0.191 0.45 0.444v17.247c0 0.159-0.082 0.306-0.216 0.385z"></path> <path fill="#000" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M11.336 8.354l-0.257-0.333c-0.243-0.315 0.012-0.774 0.398-0.717l12.51 1.838c0.236 0.035 0.399 0.26 0.366 0.503s-0.252 0.412-0.487 0.377l-11.436-1.68 0.056 0.073c0.209 0.27 0.052 0.672-0.281 0.718l-4.467 0.607c-0.236 0.032-0.452-0.139-0.484-0.383s0.135-0.467 0.371-0.499l3.711-0.504z"></path> <path fill="#fff" d="M17.152 11.344c0.026-0.003 0.053-0.005 0.079-0.005 0.357 0 0.645 0.297 0.645 0.665s-0.288 0.665-0.645 0.665c-0.322 0-0.59-0.245-0.637-0.565-0.383-0.45-0.515-1.321-0.521-2.536-0.003-0.556 0.026-1.149 0.076-1.739 0.028-0.339 0.057-0.603 0.074-0.735 0.195-2.391-2.008-3.379-3.568-1.658-0.64 0.707-1.041 1.855-1.266 3.412-0.092 0.634-0.137 1.111-0.194 2.024 0.107 0.119 0.172 0.278 0.172 0.453 0 0.342-0.251 0.624-0.573 0.661-0.031 0.005-0.064 0.007-0.097 0.005-0.015-0.001-0.029-0.003-0.044-0.
7427005-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>
7428       </a>
7429     </div>
7430     <div class="drawer__title h4">Keranjang Belanja</div>
7431     <div class="drawer__close js-drawer-close">
7432       <button type="button">
7433         <svg class="icon icon-close" version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="32" height="32" viewBox="0 0 32 32">
7434 <title>icon-close</title>
7435 <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>
7436 </svg>
7437       </button>
7438     </div>
7439   </div>
7440   <div id="CartContainer" class="p-2"></div>
7441 </div>
7442 
7443 
7443<script>
7444       
7445     </script>
7445
7446       
7446<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer></script>
7446
7447       <!-- /snippets/ajax-cart-template.liquid -->
7448 
7449   
7449<script id="CartTemplate" type="text/template">
7450   
7451     <form action="/cart" method="post" novalidate class="cart ajaxcart">
7452       <div class="ajaxcart__inner" {{ cart.item_count }}>
7453         {{#items}}
7454         <div class="ajaxcart__product">
7455           <div class="ajaxcart__row" data-line="{{line}}">
7456             <div class="grid">
7457               <div class="grid__item one-quarter">
7458                 <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a>
7459               </div>
7460               <div class="grid__item three-quarters">
7461                 <p class="d-block mb-3">
7462                   <a class="h4 d-block mb-2" href="{{url}}" class="ajaxcart__product-name">{{name}}</a>
7463                   {{#if variation}}
7464                     <span class="ajaxcart__product-meta p">{{variation}}</span>
7465                   {{/if}}
7466                   {{#properties}}
7467                     {{#each this}}
7468                       {{#if this}}
7469                         <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span>
7470                       {{/if}}
7471                     {{/each}}
7472                   {{/properties}}
7473                   
7474                 </p>
7475                 <div class="grid--full display-table">
7476                   <div class="grid__item display-table-cell one-half">
7477                     <div class="ajaxcart__qty">
7478                       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}">
7479                         <svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.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>
7480                         <span class="visually-hidden">Kurangi jumlah barang</span>
7481                       </button>
7482                       <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]*">
7483                       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}">
7484                         <svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.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>
7485                         <span class="visually-hidden">Tambahkan jumlah barang</span>
7486                       </button>
7487                     </div>
7488                   </div>
7489                   <div class="grid__item display-table-cell one-half text-right">
7490                     {{#if discountsApplied}}
7491                       <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small>
7492                       <br><span class="h4">{{{linePrice}}}</span>
7493                     {{else}}
7494                       <span class="h4">{{{linePrice}}}</span>
7495                     {{/if}}
7496                     </div>
7497                   </div>
7498                   {{#if discountsApplied}}
7499                     <div class="grid--full display-table">
7500                       <div class="grid__item text-right">
7501                         {{#each discounts}}
7502                           <small class="ajaxcart-item__discount">{{ this.title }}</small><br>
7503                         {{/each}}
7504                       </div>
7505                     </div>
7506                   {{/if}}
7507                   </div>
7508                 </div>
7509               </div>
7510             </div>
7511           </div>
7512         </div>
7513         {{/items}}
7514       </div>
7515       <div class="ajaxcart__footer">
7516         <div class="grid--full cart-subtotal py-2">
7517             <p>Subtotal</p>
7518             <h3 class="primary">{{{totalPrice}}}</h3>
7519           {{#if totalCartDiscount}}
7520             <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p>
7521           {{/if}}
7522         </div>
7523         
7524         <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a>
7525         
7526         <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p>
7527       </div>
7528     </form>
7529   
7530   </script>
7530
7531   
7531<script id="AjaxQty" type="text/template">
7532   
7533     <div class="ajaxcart__qty">
7534       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}">
7535         <svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="24" viewBox="0 0 32 32">
7536             <title>icon-minus</title>
7537             <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>
7538         </svg>
7539         <span class="visually-hidden">Kurangi jumlah barang</span>
7540           </button>
7541               <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*">
7542           <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}">
7543         <svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.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>
7544         <span class="visually-hidden">Tambahkan jumlah barang</span>
7545       </button>
7546     </div>
7547   
7548   </script>
7548
7549   
7549<script id="JsQty" type="text/template">
7550   
7551     <div class="js-qty mx-auto mt-2">
7552       <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}">
7553         <svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.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>
7554         <span class="visually-hidden">Kurangi jumlah barang</span>
7555       </button>
7556       <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}">
7557       <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}">
7558         <svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.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>
7559         <span class="visually-hidden">Tambahkan jumlah barang</span>
7560       </button>
7561     </div>
7562   
7563   </script>
7563
7564 
7565 <style>
7566   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button,
7567   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button,
7568   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button {display: none;}
7569   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input,
7570   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,
7571   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;opacity: 0.5;}
7572   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input,
7573   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,
7574   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;}
7575 </style>
7576       
7576<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51128912329657147331752652452" defer></script>
7576
7577       
7577<script>
7578         jQuery(function($) {
7579           ajaxCart.init({
7580             formSelector: '#AddToCartForm',
7581             cartContainer: '#CartContainer',
7582             addToCartSelector: '#AddToCartXX',
7583             cartCountSelector: '#CartCount, #CartCount2',
7584             cartCostSelector: '#CartCost',
7585             moneyFormat: "Rp {{amount_no_decimals}}"
7586           });
7587           });
7588 
7589           jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) {
7590             // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM
7591             timber.RightDrawer.open();
7592           });
7593       </script>
7593
7594     
7595 
7596 
7597 
7598 <style>
7599   /** Search AutoComplete **/
7600   .resultsearch .ui-menu-item[data-cat="Collection"],
7601   .resultsearch .ui-menu-item[data-cat="Collection"] {display: none;}
7602   .resultsearch .ui-widget.ui-widget-content {
7603     width: 100%;
7604     top: 48px;
7605     border: none;
7606     box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
7607   }
7608   .resultsearch .ui-menu-item {text-align: left;}
7609   .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;}
7610   .ui-state-active {
7611     border: none!important;
7612     background-color: #fafafa!important;
7613     color: #000!important;
7614   }
7615   .ui-menu-item a[data-cat="Collection"] {padding: 5px 12px;}
7616   .ui-menu .ui-menu-item {line-height: normal;}
7617 </style>
7618 
7618<script>
7619 $(window).load(function(){
7620 
7621   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;}
7622 
7623   $.widget("custom.catcomplete", $.ui.autocomplete, {
7624     _renderMenu: function (ul, items) {
7625       // have search reults split up in categories
7626       var that = this,
7627           currentCategory = "";
7628       $.each(items, function (index, item) {
7629         if (item.category != currentCategory) {
7630           ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>");
7631           currentCategory = item.category;
7632         }
7633         that._renderItemData(ul, item);
7634       });
7635     }
7636   });
7637 
7638   // higlight searched for term
7639   $.ui.autocomplete.prototype._renderItem = function( ul, item ) {
7640     var term = this.element.val(),
7641         html = item.label.replace( term, "<b>$&</b>" );
7642     return $( "<li>" )
7643     .append(format(item))
7644     .appendTo( ul );
7645   };
7646 
7647 
7648   var data = [
7649       { 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 S
7649weetbox Newborn", category: "Collection", url: "/collections/craft-sweetbox-newborn", images: " ", price: " " },{ label: "Crystal Florarium", category: "Collection", url: "/collections/crystal-florarium", images: " ", price: " " },{ label: "Cuddlemate Doll", category: "Collection", url: "/collections/boneka-lucu", images: " ", price: " " },{ label: "Cufflinks", category: "Collection", url: "/collections/cufflinks", images: " ", price: " " },{ label: "Cupcakes", category: "Collection", url: "/collections/cupcakes", images: " ", price: " " },{ label: "Custom Alat Tulis", category: "Collection", url: "/collections/alat-tulis", images: " ", price: " " },{ label: "Custom Cake", category: "Collection", url: "/collections/custom-cake", images: " ", price: " " },{ label: "Custom Card Holder", category: "Collection", url: "/collections/custom-card-holder", images: " ", price: " " },{ label: "Custom Coaster", category: "Collection", url: "/collections/custom-coaster", images: " ", price: " " },{ label: "Custom Cutlery", category: "Collection", url: "/collections/custom-cutlery", images: " ", price: " " },{ label: "Custom E-Money", category: "Collection", url: "/collections/custom-e-money", images: " ", price: " " },{ label: "Custom Earpod", category: "Collection", url: "/collections/custom-earpod", images: " ", price: " " },{ label: "Custom Fan", category: "Collection", url: "/collections/custom-fan", images: " ", price: " " },{ label: "Custom Jewelry", category: "Collection", url: "/collections/custom-jewelry", images: " ", price: " " },{ label: "Custom Keychain", category: "Collection", url: "/collections/custom-keychain", images: " ", price: " " },{ label: "Custom Medallion", category: "Collection", url: "/collections/custom-medallion", images: " ", price: " " },{ label: "Custom Mirror", category: "Collection", url: "/collections/custom-mirror", images: " ", price: " " },{ label: "Custom Mug", category: "Collection", url: "/collections/custom-mug", images: " ", price: " " },{ label: "Custom Necklace", category: "Collection", url: "/collections/custom-necklace", images: " ", price: " " },{ label: "Custom Notebook", category: "Collection", url: "/collections/custom-notebook", images: " ", price: " " },{ label: "Custom Pen & Pencil", category: "Collection", url: "/collections/custom-pen-pencil", images: " ", price: " " },{ label: "Custom Photo Frame", category: "Collection", url: "/collections/photo-frame", images: " ", price: " " },{ label: "Custom Pillow", category: "Collection", url: "/collections/bantal-custom", images: " ", price: " " },{ label: "Custom Powerbank", category: "Collection", url: "/collections/custom-powerbank", images: " ", price: " " },{ label: "Custom Scarf", category: "Collection", url: "/collections/custom-scarf", images: " ", price: " " },{ label: "Custom Speaker", category: "Collection", url: "/collections/custom-speaker", images: " ", price: " " },{ label: "Custom T-Shirt", category: "Collection", url: "/collections/custom-t-shirt", images: " ", price: " " },{ label: "Custom Tote Bag", category: "Collection", url: "/collections/custom-tote-bag", images: " ", price: " " },{ label: "Custom Tumbler Minuman", category: "Collection", url: "/collections/custom-tumbler-minuman", images: " ", price: " " },{ label: "D'paris", category: "Collection", url: "/collections/dparis", images: " ", price: " " },{ label: "Daisy", category: "Collection", url: "/collections/bunga-aster", images: " ", price: " " },{ label: "Dekorasi", category: "Collection", url: "/collections/dekorasi", images: " ", price: " " },{ label: "Dekorasi Duka Cita", category: "Collection", url: "/collections/dekorasi-bunga-duka-cita", images: " ", price: " " },{ label: "Dekorasi Pemakaman", category: "Collection", url: "/collections/dekorasi-pemakaman", images: " ", price: " " },{ label: "Dekorasi Pernikahan", category: "Collection", url: "/collections/dekorasi-bunga-pernikahan", images: " ", price: " " },{ label: "Dekorasi Ulang Tahun", category: "Collection", url: "/collections/dekorasi-bunga-ulang-tahun", images: " ", price: " " },{ label: "Delivery", category: "Collection", url: "/collections/delivery", images: " ", price: " " },{ label: "Deluxe Newborn Hampers Collection", category: "Collection", url: "/collections/deluxe-newborn-hampers-collection", images: " ", price: " " },{ label: "Digital Gift", category: "Collection", url: "/collections/digital-gift", images: " ", price: " " },{ label: "Donasi", category: "Collection", url: "/collections/donasi", images: " ", price: " " },{ label: "E-Card", category: "Collection", url: "/collections/ecard", images: " ", price: " " },{ label: "E-Gift Card", category: "Collection", url: "/collections/e-gift-card", images: " ", price: " " },{ label: "Earrings", category: "Collection", url: "/collections/anting", images: " ", price: " " },{ label: "Edible Gift", category: "Collection", url: "/collections/edible-gift", images: " ", price: " " },{ label: "Enchanted Grande Love Pirouette", category: "Collection", url: "/collections/enchanted-grande-love-pirouette", images: " ", price: " " },{ label: "Enchanted Love Pirouette", category: "Collection", url: "/collections/enchanted-love-pirouette", images: " ", price: " " },{ label: "Engagement", category: "Collection", url: "/collections/rangkaian-bunga-lamaran", images: " ", price: " " },{ label: "Expression", category: "Collection", url: "/collections/expression", images: " ", price: " " }
7649,{ 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: " " }
7649,{ 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: " " }
7649,{ 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
7649dal", 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-
7649hampers", 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
7649o-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: " " }
7649,{ 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: " " }
7649,{ 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: " " }
7649,{ 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: " " }
7649,{ 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: " " }
7649,{ 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: " " }
7649,{ 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: " " }
7649,{ 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: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026.", category: "Collection", url: "/collections/standing-flower", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Bali", category: "Collection", url: "/collections/standing-flower-bali", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Bandung", category: "Collection", url: "/collections/standing-flower-bandung", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Congratulations", category: "Collection", url: "/collections/standing-flower-congratulations", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Demak", category: "Collection", url: "/collections/standing-flower-demak", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Jepara", category: "Collection", url: "/collections/standing-flower-jepara", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Semarang", category: "Collection", url: "/collections/standing-flower-semarang", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Sidoarjo", category: "Collection", url: "/collections/standing-flower-sidoarjo", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Surabaya", category: "Collection", url: "/collections/standing-flower-surabaya", images: " ", price: " " },{ label: "Hadir sebagai RAJADANA content terbaru yang menyediakan game slot online dan hiburan seru dengan fitur lengkap, akses cepat, dan update terkini 2026. Yogyakarta", category: "Collection", url: "/collections/standing-flower-yogyakarta", images: " ", price: " " },{ label: "Standing Giant Flower", category: "Collection", url: "/collections/standing-giant-flower", images: " ", price: " " },{ label: "Stationery", category: "Collection", url: "/collections/stationery", images: " ", price: " " },{ label: "Steekwerk", category: "Collection", url: "/collections/steekwerk", images: " ", price: " " },{ label: "Stylish Hampers", category: "Collection", url: "/collections/stylish-hampers", images: " ", price: " " },{ label: "Stylish Hampers Luar Jadetabek", category: "Collection", url: "/collections/stylish-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Succulent", category: "Collection", url: "/collections/succulent", images: " ", price: " " },{ label: "Sunflower", category: "Collection", url: "/collections/bunga-matahari", images: " ", price: " " },{ label: "Sweet & Savoury Hampers", category: "Collection", url: "/collections/sweet-savoury-hampers", images: " ", price: " " },{ label: "Sweet Gracie", category: "Collection", url: "/collections/sweet-gracie", images: " ", price: " " },{ label: "Sweet Pastel Love", category: "Collection", url: "/collections/pastel-love", images: " ", price: " " },{ label: "Sweet Pastel Love Nusantara", category: "Collection", url: "/collections/sweet-pastel-love-nusantara", images: " ", price: " " },{ label: "Sweet Treats", category: "Collection", url: "/collections/sweet-treats", images: " ", price: " " },{ label: "Sweetooth", category: "Collection", url: "/collections/sweetooth", images: " ", price: " " },{ label: "Taurus ♉️ 20April - 20May", category: "Collection", url: "/collections/kado-untuk-zodiak-taurus", images: " ", price: " " },{ label: "Teddy Bear", category: "Collection", url: "/collections/boneka-teddy-bear", images: " ", price: " " },{ label: "Teh", category: "Collection", url: "/collections/teh", images: " ", price: " " },{ label: "Test Error", category: "Collection", url: "/collections/test-error", images: " ", price: " " },{ label: "Testing", category: "Collection", url: "/collections/testing", images: " ", price: " " },{ label: "Thank You", category: "Collection", url: "/collections/rangkaian-bunga-ucapan-terima-kasih", images: " ", price: " " },{ label: "The Classic Astoria", category: "Collection", url: "/collections/astoria", images: " ", price: " " },{ label: "The Classic Enchanted Dome", category: "Collection", url: "/collections/enchanted-dome", images: " ", price: " " },{ label: "The Enchanted Love Pirouette Special Edition", category: "Collection", url: "/collections/the-enchanted-love-pirouette-special-edition", images: " ", price: " " },{ label: "The F Thing", category: "Collection", url: "/collections/the-f-thing", images: " ", price: " " },{ label: "The First", category: "Collection", url: "/collections/the-first", images: " ", price: " " },{ label: "The Novo Astoria", category: "Collection", url: "/collections/the-novo-astoria", images: " ", price: " " },{ label: "The Novo Enchanted Dome", category: "Collection", url: "/collections/the-novo-enchanted-dome", images: " ", price: " " },{ label: "The Novo Enchanted Dome Special Edition", category: "Collection", url: "/collections/the-novo-enchanted-dome-special-edition", images: " ", price: " " },{ label: "The Palace", category: "Collection", url: "/collections/the-palace", images: " ", price: " " },{ label: "Ties", category: "Collection", url: "/collections/dasi", images: " ", price: " " },{ label: "Tisane", category: "Collection", url: "/collections/tisane", images: " ", price: " " },{ label: "Toko Bunga Aceh", category: "Collection", url: "/collections/toko-bunga-aceh", images: " ", price: " " },{ label: "Toko Bunga Ambon", category: "Collection", url: "/collections/toko-bunga-ambon", images: " ", price: " " },{ label: "Toko Bunga Atambua", category: "Collection", url: "/collections/toko-bunga-atambua", images: " ", price: " " },{ label: "Toko Bunga Bali", category: "Collection", url: "/collections/toko-bunga-
7649bali", images: " ", price: " " },{ label: "Toko Bunga Balikpapan", category: "Collection", url: "/collections/toko-bunga-balikpapan", images: " ", price: " " },{ label: "Toko Bunga Bandar Lampung", category: "Collection", url: "/collections/toko-bunga-bandar-lampung", images: " ", price: " " },{ label: "Toko Bunga Bandung", category: "Collection", url: "/collections/toko-bunga-bandung", images: " ", price: " " },{ label: "Toko Bunga Bandung Barat", category: "Collection", url: "/collections/toko-bunga-bandung-barat", images: " ", price: " " },{ label: "Toko Bunga Banjarmasin", category: "Collection", url: "/collections/toko-bunga-banjarmasin", images: " ", price: " " },{ label: "Toko Bunga Banten", category: "Collection", url: "/collections/toko-bunga-banten", images: " ", price: " " },{ label: "Toko Bunga Banyumas", category: "Collection", url: "/collections/toko-bunga-banyumas", images: " ", price: " " },{ label: "Toko Bunga Banyuwangi", category: "Collection", url: "/collections/toko-bunga-banyuwangi", images: " ", price: " " },{ label: "Toko Bunga Batam", category: "Collection", url: "/collections/toko-bunga-batam", images: " ", price: " " },{ label: "Toko Bunga Baubau", category: "Collection", url: "/collections/toko-bunga-baubau", images: " ", price: " " },{ label: "Toko Bunga Bekasi", category: "Collection", url: "/collections/toko-bunga-bekasi", images: " ", price: " " },{ label: "Toko Bunga Bengkalis", category: "Collection", url: "/collections/toko-bunga-bengkalis", images: " ", price: " " },{ label: "Toko Bunga Bengkayang", category: "Collection", url: "/collections/toko-bunga-bengkayang", images: " ", price: " " },{ label: "Toko Bunga Binjai", category: "Collection", url: "/collections/toko-bunga-binjai", images: " ", price: " " },{ label: "Toko Bunga Bintaro", category: "Collection", url: "/collections/toko-bunga-bintaro", images: " ", price: " " },{ label: "Toko Bunga Blitar", category: "Collection", url: "/collections/toko-bunga-blitar", images: " ", price: " " },{ label: "Toko Bunga Blora", category: "Collection", url: "/collections/toko-bunga-blora", images: " ", price: " " },{ label: "Toko Bunga Bogor", category: "Collection", url: "/collections/toko-bunga-bogor", images: " ", price: " " },{ label: "Toko Bunga Bojonegoro", category: "Collection", url: "/collections/toko-bunga-bojonegoro", images: " ", price: " " },{ label: "Toko Bunga Boyolali", category: "Collection", url: "/collections/toko-bunga-boyolali", images: " ", price: " " },{ label: "Toko Bunga Brebes", category: "Collection", url: "/collections/toko-bunga-brebes", images: " ", price: " " },{ label: "Toko Bunga Bukittinggi", category: "Collection", url: "/collections/toko-bunga-bukittinggi", images: " ", price: " " },{ label: "Toko Bunga Buleleng", category: "Collection", url: "/collections/toko-bunga-buleleng", images: " ", price: " " },{ label: "Toko Bunga Cakung", category: "Collection", url: "/collections/toko-bunga-cakung", images: " ", price: " " },{ label: "Toko Bunga Cawang", category: "Collection", url: "/collections/toko-bunga-cawang", images: " ", price: " " },{ label: "Toko Bunga Cempaka Putih", category: "Collection", url: "/collections/toko-bunga-cempaka-putih", images: " ", price: " " },{ label: "Toko Bunga Cengkareng", category: "Collection", url: "/collections/toko-bunga-cengkareng", images: " ", price: " " },{ label: "Toko Bunga Ciamis", category: "Collection", url: "/collections/toko-bunga-ciamis", images: " ", price: " " },{ label: "Toko Bunga Cianjur", category: "Collection", url: "/collections/toko-bunga-cianjur", images: " ", price: " " },{ label: "Toko Bunga Cibinong", category: "Collection", url: "/collections/toko-bunga-cibinong", images: " ", price: " " },{ label: "Toko Bunga Cibubur", category: "Collection", url: "/collections/toko-bunga-cibubur", images: " ", price: " " },{ label: "Toko Bunga Cijantung", category: "Collection", url: "/collections/toko-bunga-cijantung", images: " ", price: " " },{ label: "Toko Bunga Cikarang", category: "Collection", url: "/collections/toko-bunga-cikarang", images: " ", price: " " },{ label: "Toko Bunga Cikini", category: "Collection", url: "/collections/toko-bunga-cikini", images: " ", price: " " },{ label: "Toko Bunga Cilacap", category: "Collection", url: "/collections/toko-bunga-cilacap", images: " ", price: " " },{ label: "Toko Bunga Cilandak", category: "Collection", url: "/collections/toko-bunga-cilandak", images: " ", price: " " },{ label: "Toko Bunga Cileunyi", category: "Collection", url: "/collections/toko-bunga-cileunyi", images: " ", price: " " },{ label: "Toko Bunga Ciracas", category: "Collection", url: "/collections/toko-bunga-ciracas", images: " ", price: " " },{ label: "Toko Bunga Cirebon", category: "Collection", url: "/collections/toko-bunga-cirebon", images: " ", price: " " }
7649,{ 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
7649dal", 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: " " },
7650       { 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" }
7650,{ 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" }
7650,{ 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" }
7651   ];
7652 
7653              
7654         $( ".header-input-search" ).catcomplete({
7655          appendTo: ".searchResult",source: function(request, response) {
7656             var results = $.ui.autocomplete.filter(data, request.term);
7657             var predicate = function () {
7658                 var counter = { Collection: 0, Produk: 0 };
7659             var fn = function(item) {counter[item.category] += 1;return (counter[item.category] <= 5);}
7660             return fn
7661             }();
7662             response(results.filter(predicate));
7663           },
7664           minLength:1,
7665            //results are clickable
7666           select: function( event, ui ) {window.location = ui.item.url;}
7667 });
7668 $( ".header-input-search2" ).catcomplete({
7669         appendTo: ".searchResult2",
7670                    source: function(request, response) {
7671                     var results = $.ui.autocomplete.filter(data, request.term);
7672                     var predicate = function () {
7673                         var counter = { Collection: 0, Produk: 0 };
7674               var fn = function(item) {
7675               counter[item.category] += 1;
7676   return (counter[item.category] <= 5);
7677 }
7678                return fn
7679                }();
7680 response(results.filter(predicate));
7681 },
7682   minLength:1,
7683         //results are clickable
7684         select: function( event, ui ) {
7685           window.location = ui.item.url;
7686         }
7687 });
7688 });
7689 </script>
7689
7690 
7691     
7691<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer></script>
7691
7692 
7692<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer></script>
7692
7693 
7694 
7694<script>
7695   ( function() {
7696     var youtube = document.querySelectorAll( ".youtube" );
7697     for (var i = 0; i < youtube.length; i++) {
7698       var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault_1x.jpg";
7699       var datasource = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg";
7700       var image = new Image();
7701       image.src = source;
7702       image.setAttribute("data-src", datasource);
7703       image.classList.add("swiper-lazy");
7704       image.addEventListener( "load", function() {
7705         youtube[ i ].appendChild( image );
7706       }( i ) );
7707       youtube[i].addEventListener( "click", function() {
7708         var iframe = document.createElement( "iframe" );
7709         iframe.setAttribute( "width", "480" );
7710         iframe.setAttribute( "height", "480" );
7711         iframe.setAttribute( "frameborder", "0" );
7712         iframe.setAttribute( "allowfullscreen", "" );
7713         iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" );
7714         this.innerHTML = "";
7715         this.appendChild( iframe );
7716       } );
7717     };
7718 
7719   } )();
7720 
7721   /* Lazy Load */
7722   const mainLazyLoad = new LazyLoad({threshold:400});
7723   $(document).ready(function(){
7724 
7725     $("selectxxx").addClass("needsclick");
7726     FastClick.attach(document.body);
7727     
7728     var $customSelects = $('.select-search');
7729     $customSelects.select2({
7730       templateResult: function(result, container) {
7731         if (!result.id) {
7732           return result.text;
7733         }
7734         container.className += ' needsclick';
7735         return result.text;
7736       }
7737     });
7738     $customSelects.each(function(index, el){$(el).data('select2').$container.find('*').addClass('needsclick');});
7739     $(document).on('select2:open', () => {
7740       document.querySelector('.select2-search__field').focus();
7741     });
7742     
7743 
7744     $(".overlay").click(function(){
7745       $(".js-drawer-close").click();
7746     });
7747     $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function(){
7748       $("html").toggleClass("nav_open");
7749     });
7750     
7751     $('.swatch-element label').on('click', function(){
7752       var srcImg = $(this).data('src');
7753       $('#thumb-image-product .product-single__thumbnail').each(function(){
7754         if ($(this).attr("href") == srcImg) {
7755           $(this).trigger('click');
7756         }
7757       });
7758     });
7759     var defaultValue = $(".swatch input:checked").val()
7760     
7761     $('#purchaseProduct .swatch [type=radio]').change(function() {
7762       var optionIndex = $(this).closest('.swatch').attr('data-option-index');
7763       var optionValue = $(this).val();
7764       console.log(optionIndex, optionValue)
7765       var value = parseInt(optionValue.split(' ')[0])
7766       $(this)
7767       .closest('#purchaseProduct')
7768       .find('.single-option-selector')
7769       .eq(optionIndex)
7770       .val(optionValue)
7771       .trigger('change');
7772       
7773     });
7774     
7775   });
7776   $(document).ready(function(){
7777     $(".nav-search a").click(function(e){
7778       e.preventDefault();
7779       $(".icon-navsearch").toggle();
7780       $(".icon-navclose").toggle();
7781       $(".site-nav__item > .site-nav__link").toggle();
7782       $(".open-search").toggle();
7783       $(".open-search input").focus();
7784     });
7785     $(".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'>");
7786     if ($(window).width() < 768) {
7787       $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>");
7788       $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>");
7789       $(".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'>");
7790     } else {
7791       $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>");
7792       $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>");
7793       $(".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'>");
7794     }
7795     $(".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'>");
7796     $(".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'>");
7797   });
7798 </script>
7798
7799 
7800 
7801     
7802 
7803     
7803<script type="text/javascript">
7804       var wishlistpage = 0;
7805        
7806        var quickShop_money_format="<span class='money'>"+"Rp {{amount_no_decimals}}"+"</span>";
7807     </script>
7807
7808     
7809       <!-- Remove duplicate wishlist.js reference -->
7810       <style>
7811   .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)}}
7812 </style>
7813 
7814 <div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog">
7815   <div class="modal-dialog" role="document">
7816     <div class="modal-content">        
7817       <div class="modal-body">Your Wishlist is empty!</div>
7818       <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>          
7819     </div>
7820   </div>
7821 </div> 
7822 
7823 <div class="wishlist-model">
7824   <div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true">
7825     <div class="modal-dialog white-modal">
7826       <div class="modal-content">
7827         <div class="modal-header">
7828           <button type="button" class="close" data-dismiss="modal" aria-label="Close">
7829             <svg class="icon icon-close" version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="32" height="32" viewBox="0 0 32 32">
7830 <title>icon-close</title>
7831 <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>
7832 </svg>
7833           </button>
7834         </div>
7835         <div class="modal-body">
7836           <div class="wishlist-left">
7837             <div class="wishlist-note">
7838               <span class="cirle"><svg version="1.1" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="32" height="32" viewBox="0 0 32 32">
7839 <title>icon-check</title>
7840 <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>
7841 </svg></span>
7842               Product added to <a href="/pages/wish-list">Wishlist</a>
7843             </div>
7844             <div class="wishlist-product">
7845               <div class="product-left">
7846                 <div class="wishlist-image"></div>
7847               </div>
7848               <div class="product-right">
7849                 <div class="wishlist-name"></div>
7850                 <div class="wishlist-price"></div>
7851               </div>
7852             </div>
7853           </div>
7854           <div class="wishlist-right">
7855             <div class="wishlist-cart">
7856               <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data">                  
7857                 <div class="others-bottom">
7858                   <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a>
7859                   <button type="submit" name="add" id="AddToCart" class="btn btn-cta">
7860                     <span id="AddToCartText" class="">Beli Sekarang</span>
7861                   </button>
7862                 </div>
7863                 <div id="wishlist-variants-container" class="variants-wrapper"></div> 
7864                 <div class="quantity-content">
7865                   <label>QTY</label>
7866                   <input type="number" size="5" class="" name="quantity" value="1" />
7867                 </div>
7868               </form> 
7869             </div>
7870           </div>
7871         </div>
7872       </div>
7873     </div>
7874   </div>
7875 </div>
7876 
7877     
7878     <style>
7879        .stamped-badge[data-rating="0.0"]{display: none !Important;}
7880        
7881         div[data-load-type="continue"] ul.stamped-pagination li.next a, div[data-widget-load-type="continue"] ul.stamped-pagination li.next a {
7882           border-radius: 0px;
7883       }
7884           .stamped-review-body {
7885           padding-left: 0px !important;
7886       }
7887           #product-reviews .stamped-header:after {
7888             display:none !Important;
7889           }
7890       #stamped-main-widget .stamped-container, .stamped-badge-caption,#stamped-reviews-widget {
7891           font-family:inherit !important;
7892       }
7893     </style>
7894 
7895     
7896 
7897 <div id='stamped-rewards-init' class='stamped-rewards-init'
7898   data-key-public=''
7899 
7900 ></div>
7901 
7902     
7902<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer></script>
7902
7903     <!-- Remove duplicate jQuery reference and load wishlist script properly -->
7904     
7904<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer></script>
7904
7905 
7906     
7906<script>
7907       function myInit(){ StampedFn.init({ apiKey: 'pubkey-hCS8DHE9QbBHhHN89WXFkuJ0Y3422D', sId: '23462' }); }
7908     </script>
7908
7909     
7909<script async onload="myInit()" type="text/javascript" src="https://cdn1.stamped.io/files/widget.min.js"></script>
7909<style>
7910   .jss59 {
7911     background-color: rgba(0, 0, 0, 0.6);
7912   }
7913   .MuiBackdrop-root {
7914     top: 0;
7915     left: 0;
7916     right: 0;
7917     bottom: 0;
7918     display: flex;
7919     z-index: -1;
7920     position: fixed;
7921     align-items: center;
7922     justify-content: center;
7923     background-color: rgba(0, 0, 0, 0.5);
7924     -webkit-tap-highlight-color: transparent;
7925   }
7926   .MuiDialog-scrollPaper {
7927     display: flex;
7928     align-items: center;
7929     justify-content: center;
7930   }
7931   .MuiDialog-container {
7932     height: 100%;
7933     outline: 0;
7934   }
7935   .MuiPaper-elevation24 {
7936     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);
7937   }
7938   .MuiDialog-paper {
7939     margin: 32px;
7940     position: relative;
7941     overflow-y: auto;
7942   }
7943   .MuiDialog-paperScrollPaper {
7944     display: flex;
7945     max-height: calc(100% - 64px);
7946     flex-direction: column;
7947   }
7948   .MuiDialog-paperWidthSm {
7949     max-width: 600px;
7950   }
7951   #location-lock-dialog {
7952     top: 20%;
7953     left: 0;
7954     right: 0;
7955     width: 30%;
7956     margin: 0px auto;
7957     display: block;
7958     padding: 30px;
7959     z-index: 99999;
7960     position: fixed;
7961     font-size: 14px;
7962     background: rgb(0, 0, 0);
7963     box-shadow: rgba(11, 11, 12, 0.2) 2px 4px 5px 0px;
7964     text-align: center;
7965     font-family: Roboto, Arial, sans-serif;
7966     line-height: 1;
7967     border-radius: 8px;
7968     -webkit-font-smoothing: subpixel-antialiased;
7969   }
7970   .MuiButtonBase-root {
7971     color: inherit;
7972     border: 0;
7973     cursor: pointer;
7974     margin: 0;
7975     display: inline-flex;
7976     outline: 0;
7977     padding: 0;
7978     position: relative;
7979     align-items: center;
7980     user-select: none;
7981     border-radius: 0;
7982     vertical-align: middle;
7983     -moz-appearance: none;
7984     justify-content: center;
7985     text-decoration: none;
7986     background-color: transparent;
7987     -webkit-appearance: none;
7988     -webkit-tap-highlight-color: transparent;
7989   }
7990   .MuiIconButton-root {
7991     flex: 0 0 auto;
7992     color: rgba(0, 0, 0, 0.54);
7993     padding: 12px;
7994     overflow: visible;
7995     font-size: 1.5rem;
7996     text-align: center;
7997     transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
7998     border-radius: 50%;
7999   }
8000   .MuiIconButton-label {
8001     width: 100%;
8002     display: flex;
8003     align-items: inherit;
8004     justify-content: inherit;
8005   }
8006   .MuiSvgIcon-root {
8007     fill: currentColor;
8008     width: 1em;
8009     height: 1em;
8010     display: inline-block;
8011     font-size: 1.5rem;
8012     transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8013     flex-shrink: 0;
8014     user-select: none;
8015   }
8016   .MuiTouchRipple-root {
8017     top: 0;
8018     left: 0;
8019     right: 0;
8020     bottom: 0;
8021     z-index: 0;
8022     overflow: hidden;
8023     position: absolute;
8024     border-radius: inherit;
8025     pointer-events: none;
8026   }
8027   .jss36 {
8028     color: #222222;
8029     font-size: 24px;
8030     font-family: Roboto, Arial, sans-serif;
8031     font-weight: 500;
8032   }
8033   .jss37 {
8034     color: #555555;
8035     padding: 10px 0px 0px;
8036     font-size: 14px;
8037   }
8038   .MuiFormGroup-root {
8039     display: flex;
8040     flex-wrap: wrap;
8041     flex-direction: column;
8042   }
8043   .MuiFormGroup-row {
8044     flex-direction: row;
8045   }
8046   .jss63 {
8047     width: 85%;
8048     margin: 15px auto;
8049     display: flex;
8050     padding: 11px 0px 0px;
8051     justify-content: space-evenly;
8052   }
8053   .MuiFormControlLabel-root {
8054     cursor: pointer;
8055     display: inline-flex;
8056     align-items: center;
8057     margin-left: -11px;
8058     margin-right: 16px;
8059     vertical-align: middle;
8060     -webkit-tap-highlight-color: transparent;
8061   }
8062   .jss70 {
8063     margin: 0;
8064   }
8065   .MuiButtonBase-root {
8066     color: inherit;
8067     border: 0;
8068     cursor: pointer;
8069     margin: 0;
8070     display: inline-flex;
8071     outline: 0;
8072     padding: 0;
8073     position: relative;
8074     align-items: center;
8075     user-select: none;
8076     border-radius: 0;
8077     vertical-align: middle;
8078     -moz-appearance: none;
8079     justify-content: center;
8080     text-decoration: none;
8081     background-color: transparent;
8082     -webkit-appearance: none;
8083     -webkit-tap-highlight-color: transparent;
8084   }
8085   .MuiIconButton-root {
8086     flex: 0 0 auto;
8087     color: rgba(0, 0, 0, 0.54);
8088     padding: 12px;
8089     overflow: visible;
8090     font-size: 1.5rem;
8091     text-align: center;
8092     transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8093     border-radius: 50%;
8094   }
8095   .MuiIconButton-colorSecondary {
8096     color: #f50057;
8097   }
8098   .jss71 {
8099     padding: 9px;
8100   }
8101   .MuiRadio-root {
8102     color: rgba(0, 0, 0, 0.54);
8103   }
8104   .jss64 {
8105     padding: 2px;
8106   }
8107   .MuiRadio-colorSecondary.Mui-checked {
8108     color: #f50057;
8109   }
8110   .MuiIconButton-label {
8111     width: 100%;
8112     display: flex;
8113     align-items: inherit;
8114     justify-content: inherit;
8115   }
8116   .MuiTypography-root {
8117     margin: 0;
8118   }
8119   .MuiTypography-body1 {
8120     font-size: 18px;
8121     font-family: Roboto,sans-serif;
8122     font-weight: 400;
8123     line-height: 1.5;
8124   }
8125   .location-popup_area-block__sp9Ws {
8126     display: -moz-box;
8127     display: flex;
8128     -moz-box-orient: vertical;
8129     -moz-box-direction: normal;
8130     flex-direction: column;
8131     -moz-box-pack: center;
8132     justify-content: center;
8133     position: relative;
8134     margin: 10px 10% 0;
8135   }
8136   .location-popup_pin-search-box__3l5mJ {
8137     width: 100%;
8138     display: -moz-box;
8139     display: flex;
8140     -moz-box-align: center;
8141     align-items: center;
8142   }
8143   .location-popup_place-icon-city__1XAX5, .location-popup_place-icon__jSG0Q {
8144     position: absolute;
8145     z-index: 999;
8146   }
8147   .location-popup_place-icon__jSG0Q {
8148     color: #ffffff;
8149     padding-left: 8px;
8150   }
8151   .location-popup_place-icon__jSG0Q svg {
8152     width: 18px;
8153     height: 18px;
8154   }
8155   .location-popup_cancel-icon__FHujU {
8156     color: #fff;
8157     right: 10px;
8158     width: 16px;
8159     cursor: pointer;
8160     height: 16px;
8161     display: none;
8162     padding: 5px;
8163     position: absolute;
8164     background: #999;
8165     text-align: center;
8166     border-radius: 50%;
8167   }
8168   .location-popup_pin-search-box__3l5mJ>div>select {
8169 /*     -webkit-box-shadow: 0 0 10px #ffffff;
8170     box-shadow: 0 0 10px #ffffff; */
8171     text-transform: capitalize;
8172     border: 1px solid #ffffff;
8173     color: #ffffff;
8174     width: 100%;
8175     margin: 0;
8176     display: -moz-box;
8177     display: flex;
8178     padding: 0 30px;
8179     -webkit-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8180     -moz-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8181     animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8182     font-size: 16px;
8183     border-radius: 4px;
8184     height: 44px;
8185     moz-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;
8186     webkit-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;
8187   }
8188   .MuiButtonBase-root {
8189     color: inherit;
8190     border: 0;
8191     cursor: pointer;
8192     margin: 0;
8193     display: inline-flex;
8194     outline: 0;
8195     padding: 0;
8196     position: relative;
8197     align-items: center;
8198     user-select: none;
8199     border-radius: 0;
8200     vertical-align: middle;
8201     -moz-appearance: none;
8202     justify-content: center;
8203     text-decoration: none;
8204     background-color: transparent;
8205     -webkit-appearance: none;
8206     -webkit-tap-highlight-color: transparent;
8207   }
8208   .MuiButton-root {
8209     color: rgba(0, 0, 0, 0.87);
8210     padding: 6px 16px;
8211     font-size: 0.875rem;
8212     min-width: 64px;
8213     box-sizing: border-box;
8214     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;
8215     font-family: Roboto,sans-serif;
8216     font-weight: 500;
8217     line-height: 1.75;
8218     border-radius: 4px;
8219     text-transform: uppercase;
8220   }
8221   .MuiButton-contained {
8222     color: rgba(0, 0, 0, 0.87);
8223     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);
8224     background-color: #e0e0e0;
8225   }
8226   .MuiButtonBase-root.Mui-disabled {
8227     cursor: default;
8228     pointer-events: none;
8229   }
8230   .MuiButton-label {
8231     width: 100%;
8232     display: inherit;
8233     align-items: inherit;
8234     justify-content: inherit;
8235   }
8236   .cartButton_login_content__2j1f7 {
8237     display: -moz-box;
8238     display: flex;
8239     text-align: center;
8240     z-index: 9;
8241     font-size: 18px;
8242     font-weight: 500;
8243     color: #fff;
8244   }
8245   
8246   .jss35 {
8247     top: 5px;
8248     right: 5px;
8249     padding: 4px;
8250     position: absolute;
8251     border-radius: 50%;
8252   }
8253   .jss67 {
8254     cursor: pointer;
8255     font-size: 15px;
8256     line-height: 1.3;
8257     padding-left: 5px;
8258   }
8259   .jss69 {
8260     color: #222222;
8261   }
8262   .jss80 {
8263     color: #fff;
8264     width: 100%;
8265     height: 52px;
8266     padding: 11px 16px;
8267     font-size: 18px;
8268     min-width: 88px;
8269     min-height: 36px;
8270     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;
8271     font-weight: 500;
8272     line-weight: 1em;
8273     border-radius: 4px;
8274     text-transform: uppercase;
8275     background-color: #E87325;
8276   }
8277   @media (min-width: 991px){
8278     .cartButton_login_content__2j1f7 {
8279         font-weight: 500;
8280     }
8281   }
8282 
8283   @media (max-width: 992px) {
8284     #location-lock-dialog {
8285       width: 100%;
8286       top: auto;
8287       bottom: 0;
8288       padding-left: 0;
8289       padding-right: 0;
8290     }
8291     .MuiFormGroup-row {
8292       display: block
8293     }
8294     .MuiIconButton-label input {
8295       margin: 0;
8296     }
8297   }
8298 </style>
8299 <div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;">
8300   <div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div>
8301   <div tabindex="0" data-test="sentinelStart"></div>
8302   <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;">
8303     <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog">
8304       <div class="jss31 undefined" id="location-lock-dialog">
8305         <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close">
8306           <span class="MuiIconButton-label">
8307             <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true">
8308               <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>
8309             </svg>
8310           </span>
8311           <span class="MuiTouchRipple-root"></span>
8312         </button>
8313         <div>
8314           <div class="jss36">Select Delivery Location</div>
8315           <div class="jss37">Select a delivery location to see product availability</div>
8316         </div>
8317         <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup">
8318           <label for="jabodetabek" class="MuiFormControlLabel-root jss45">
8319             <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false">
8320               <span class="MuiIconButton-label">
8321                 <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location">
8322                 <span class="jss41"></span>
8323               </span>
8324               <span class="MuiTouchRipple-root"></span>
8325             </span>
8326             <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1">
8327               <span class="jss67 jss69">Jabodetabek</span>
8328             </span>
8329           </label>
8330           <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45">
8331             <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false">
8332               <span class="MuiIconButton-label">
8333                 <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location">
8334                 <span class="jss40"></span>
8335               </span>
8336               <span class="MuiTouchRipple-root"></span>
8337             </span>
8338             <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1">
8339               <span class="jss67 jss68">Outside Jabodetabek</span>
8340             </span>
8341           </label>
8342         </div>
8343         <div>
8344           <div class="MuiGrid-root location-popup_area-block__sp9Ws">
8345             <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false">
8346               <div class="MuiGrid-root location-popup_place-icon__jSG0Q">
8347                 <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>
8348               </div>
8349               <div class="MuiGrid-root location-popup_cancel-icon__FHujU false">
8350                 <i class="material-icons location-popup_clear-pin__s1dRc">close</i>
8351               </div>
8352               <div style="width: 100%;">
8353                 <select id="choose-location" class="form-control">
8354                   <option value="">Choose Location</option>
8355                   <option value="jakarta">Jakarta</option>
8356                   <option value="bogor">Bogor</option>
8357                   <option value="depok">Depok</option>
8358                   <option value="tangerang">Tangerang</option>
8359                   <option value="bekasi">Bekasi</option>
8360                 </select>
8361               </div>
8362             </div>
8363           </div>
8364         </div>
8365         <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="">
8366           <span class="MuiButton-label">
8367             <span class=""></span>
8368             <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span>
8369           </span>
8370         </button>
8371       </div>
8372     </div>
8373   </div>
8374   <div tabindex="0" data-test="sentinelEnd"></div>
8375 </div>
8376 
8377 
8377<script>
8378   const jabodetabek = [
8379     {
8380       "code": "jakarta",
8381       "city": "jakarta",
8382       "zip": []
8383     },
8384     {
8385       "code": "bogor",
8386       "city": "bogor",
8387       "zip": []
8388     },
8389     {
8390       "code": "depok",
8391       "city": "depok",
8392       "zip": []
8393     },
8394     {
8395       "code": "tangerang",
8396       "city": "tangerang",
8397       "zip": []
8398     },
8399     {
8400       "code": "bekasi",
8401       "city": "bekasi",
8402       "zip": []
8403     }
8404   ]
8405   let cityNonJabodetabek = [
8406     
8407
8408     
8409     
8410     "pengiriman_aceh",
8411     
8412     
8413     
8414     
8415     
8416     "pengiriman_ambon",
8417     
8418     
8419     
8420     
8421     
8422     "pengiriman_atambua",
8423     
8424     
8425     
8426     
8427     
8428     "pengiriman_badung",
8429     
8430     
8431     
8432     
8433     
8434     "pengiriman_bali",
8435     
8436     
8437     
8438     
8439     
8440     "pengiriman_balikpapan",
8441     
8442     
8443     
8444     
8445     
8446     "pengiriman_bandar lampung",
8447     
8448     
8449     
8450     
8451     
8452     "pengiriman_bandung",
8453     
8454     
8455     
8456     
8457     
8458     "pengiriman_bandung barat",
8459     
8460     
8461     
8462     
8463     
8464     "pengiriman_banjarmasin",
8465     
8466     
8467     
8468     
8469     
8470     "pengiriman_banyumas",
8471     
8472     
8473     
8474     
8475     
8476     "pengiriman_banyuwangi",
8477     
8478     
8479     
8480     
8481     
8482     "pengiriman_batam",
8483     
8484     
8485     
8486     
8487     
8488     
8489     
8490     
8491     
8492     "pengiriman_biak",
8493     
8494     
8495     
8496     
8497     
8498     "pengiriman_binjai",
8499     
8500     
8501     
8502     
8503     
8504     "pengiriman_blitar",
8505     
8506     
8507     
8508     
8509     
8510     "pengiriman_blora",
8511     
8512     
8513     
8514     
8515     
8516     
8517     
8518     
8519     
8520     "pengiriman_bojonegoro",
8521     
8522     
8523     
8524     
8525     
8526     "pengiriman_boyolali",
8527     
8528     
8529     
8530     
8531     
8532     "pengiriman_bukittinggi",
8533     
8534     
8535     
8536     
8537     
8538     "pengiriman_buleleng",
8539     
8540     
8541     
8542     
8543     
8544     "pengiriman_ciamis",
8545     
8546     
8547     
8548     
8549     
8550     "pengiriman_cianjur",
8551     
8552     
8553     
8554     
8555     
8556     "pengiriman_cibinong",
8557     
8558     
8559     
8560     
8561     
8562     "pengiriman_cikarang",
8563     
8564     
8565     
8566     
8567     
8568     "pengiriman_cikupa",
8569     
8570     
8571     
8572     
8573     
8574     "pengiriman_cilacap",
8575     
8576     
8577     
8578     
8579     
8580     "pengiriman_cileunyi",
8581     
8582     
8583     
8584     
8585     
8586     "pengiriman_cimahi",
8587     
8588     
8589     
8590     
8591     
8592     "pengiriman_cirebon",
8593     
8594     
8595     
8596     
8597     
8598     "pengiriman_ciwidey",
8599     
8600     
8601     
8602     
8603     
8604     "pengiriman_deli serdang",
8605     
8606     
8607     
8608     
8609     
8610     "pengiriman_demak",
8611     
8612     
8613     
8614     
8615     
8616     "pengiriman_denpasar",
8617     
8618     
8619     
8620
8621     
8622     
8623     "pengiriman_garut",
8624     
8625     
8626     
8627     
8628     
8629     "pengiriman_gianyar",
8630     
8631     
8632     
8633     
8634     
8635     "pengiriman_gresik",
8636     
8637     
8638     
8639     
8640     
8641     "pengiriman_gunung kidul",
8642     
8643     
8644     
8645
8646     
8647     
8648     "pengiriman_jambi",
8649     
8650     
8651     
8652     
8653     
8654     "pengiriman_jayapura",
8655     
8656     
8657     
8658     
8659     
8660     "pengiriman_jember",
8661     
8662     
8663     
8664     
8665     
8666     "pengiriman_jepara",
8667     
8668     
8669     
8670     
8671     
8672     "pengiriman_jombang",
8673     
8674     
8675     
8676     
8677     
8678     "pengiriman_karanganyar",
8679     
8680     
8681     
8682     
8683     
8684     "pengiriman_karawang",
8685     
8686     
8687     
8688     
8689     
8690     "pengiriman_karo",
8691     
8692     
8693     
8694     
8695     
8696     "pengiriman_kebumen",
8697     
8698     
8699     
8700     
8701     
8702     "pengiriman_kediri",
8703     
8704     
8705     
8706     
8707     
8708     "pengiriman_keerom",
8709     
8710     
8711     
8712     
8713     
8714     "pengiriman_kendal",
8715     
8716     
8717     
8718     
8719     
8720     "pengiriman_klaten",
8721     
8722     
8723     
8724     
8725     
8726     "pengiriman_kudus",
8727     
8728     
8729     
8730     
8731     
8732     "pengiriman_kupang",
8733     
8734     
8735     
8736     
8737     
8738     "pengiriman_lainnya",
8739     
8740     
8741     
8742     
8743     
8744     "pengiriman_lamongan",
8745     
8746     
8747     
8748     
8749     
8750     "pengiriman_lampung",
8751     
8752     
8753     
8754     
8755     
8756     "pengiriman_lampung barat",
8757     
8758     
8759     
8760     
8761     
8762     "pengiriman_lembang",
8763     
8764     
8765     
8766     
8767     
8768     "pengiriman_lombok",
8769     
8770     
8771     
8772     
8773     
8774     "pengiriman_lumajang",
8775     
8776     
8777     
8778     
8779     
8780     "pengiriman_madiun",
8781     
8782     
8783     
8784     
8785     
8786     "pengiriman_magelang",
8787     
8788     
8789     
8790     
8791     
8792     "pengiriman_majalengka",
8793     
8794     
8795     
8796     
8797     
8798     "pengiriman_makassar",
8799     
8800     
8801     
8802     
8803     
8804     "pengiriman_malang",
8805     
8806     
8807     
8808     
8809     
8810     "pengiriman_manado",
8811     
8812     
8813     
8814     
8815     
8816     "pengiriman_medan",
8817     
8818     
8819     
8820     
8821     
8822     "pengiriman_mengwi",
8823     
8824     
8825     
8826     
8827     
8828     "pengiriman_mojokerto",
8829     
8830     
8831     
8832     
8833     
8834     "pengiriman_nganjuk",
8835     
8836     
8837     
8838     
8839     
8840     "pengiriman_ngawi",
8841     
8842     
8843     
8844     
8845     
8846     "pengiriman_padang",
8847     
8848     
8849     
8850     
8851     
8852     "pengiriman_palembang",
8853     
8854     
8855     
8856     
8857     
8858     "pengiriman_pasuruan",
8859     
8860     
8861     
8862     
8863     
8864     "pengiriman_pati",
8865     
8866     
8867     
8868     
8869     
8870     "pengiriman_pekalongan",
8871     
8872     
8873     
8874     
8875     
8876     "pengiriman_pekanbaru",
8877     
8878     
8879     
8880     
8881     
8882     "pengiriman_pemalang",
8883     
8884     
8885     
8886     
8887     
8888     "pengiriman_ponorogo",
8889     
8890     
8891     
8892     
8893     
8894     "pengiriman_pontianak",
8895     
8896     
8897     
8898     
8899     
8900     "pengiriman_probolinggo",
8901     
8902     
8903     
8904     
8905     
8906     "pengiriman_purbalingga",
8907     
8908     
8909     
8910     
8911     
8912     "pengiriman_purwakarta",
8913     
8914     
8915     
8916     
8917     
8918     "pengiriman_purwokerto",
8919     
8920     
8921     
8922     
8923     
8924     "pengiriman_rembang",
8925     
8926     
8927     
8928     
8929     
8930     "pengiriman_riau",
8931     
8932     
8933     
8934     
8935     
8936     "pengiriman_salatiga",
8937     
8938     
8939     
8940     
8941     
8942     "pengiriman_samarinda",
8943     
8944     
8945     
8946     
8947     
8948     "pengiriman_semarang",
8949     
8950     
8951     
8952     
8953     
8954     "pengiriman_sentani",
8955     
8956     
8957     
8958     
8959     
8960     "pengiriman_serang",
8961     
8962     
8963     
8964     
8965     
8966     "pengiriman_sidoarjo",
8967     
8968     
8969     
8970     
8971     
8972     "pengiriman_singkawang",
8973     
8974     
8975     
8976     
8977     
8978     "pengiriman_sragen",
8979     
8980     
8981     
8982     
8983     
8984     "pengiriman_subang",
8985     
8986     
8987     
8988     
8989     
8990     "pengiriman_sukabumi",
8991     
8992     
8993     
8994     
8995     
8996     "pengiriman_sumbawa",
8997     
8998     
8999     
9000     
9001     
9002     "pengiriman_surabaya",
9003     
9004     
9005     
9006     
9007     
9008     "pengiriman_surakarta solo",
9009     
9010     
9011
9012     
9013     "pengiriman_tasikmalaya",
9014     
9015     
9016     
9017     
9018     
9019     "pengiriman_tegal",
9020     
9021     
9022     
9023     
9024     
9025     "pengiriman_timika",
9026     
9027     
9028     
9029     
9030     
9031     "pengiriman_wamena",
9032     
9033     
9034     
9035     
9036     
9037     "pengiriman_wiyung",
9038     
9039     
9040     
9041     
9042     
9043     "pengiriman_wonokromo",
9044     
9045     
9046     
9047     
9048     
9049     "pengiriman_yogyakarta",
9050 
9051   ]
9052   console.log(cityNonJabodetabek)
9053   let non_jabodetabek = []
9054   for(var i=0;i<cityNonJabodetabek.length;i++) {
9055     const obj = {
9056       "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ','-'),
9057       "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ','-'),
9058       "zip": []
9059     }
9060     non_jabodetabek.push(obj)
9061   }
9062   let current_location = getCookie("location_delivery")
9063   $("[name=location]").change(function(){
9064     let v = $(this).val()
9065     let option = []
9066     if(v == 'Jabodetabek') {
9067       for(var i=0;i<jabodetabek.length;i++) {
9068         const jabodetabekHtml = `<option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>`
9069         option.push(jabodetabekHtml)
9070       }
9071       $("#choose-location").html(`<option value="">Choose Location</option>${option}`)
9072     } else {
9073       for(var i=0;i<non_jabodetabek.length;i++) {
9074         const nonjabodetabekHtml = `<option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>`
9075         option.push(nonjabodetabekHtml)
9076       }
9077       $("#choose-location").html(`<option value="">Choose Location</option>${option}`)
9078     }
9079   })
9080 
9081   $("#location-lock-submit").click(function(e){
9082     let select = $("#choose-location")
9083     let value = select.val().toLowerCase()
9084     console.log(value)
9085     if(select.val() == "") {
9086       return alert("Choose Your Location")
9087       e.preventDefault()
9088     }
9089     setCookie("location_delivery",value,1000000);
9090     
9091     location.reload();
9092     
9093   })
9094 
9095   $("#close-popup-delivery").click(function(){
9096     $(".MuiDialog-root").hide()
9097     if(!current_location){
9098       setCookie("location_delivery","jakarta",1000000);
9099       $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta")
9100     }
9101   })
9102   $("#loc_delivery, #loc_delivery_mobile").click(function(){
9103     $(".MuiDialog-root").show()
9104   })
9105 
9106   
9107   if(!current_location){
9108     
9109   } else {
9110     $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location)
9111     console.log(current_location)
9112     $("#choose-location").each(function(){
9113       if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi'){
9114         $("#jabodetabek").trigger("click")
9115       } else {
9116         $("#non-jabodetabek").trigger("click")
9117       }
9118       $("#choose-location").find("option[value="+current_location+"]").attr("selected", "selected")
9119     })
9120   }
9121 
9122   // 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'){
9123   //   $("#timeMalam").attr("disabled", false)
9124   // } else {
9125   //   $("#timeMalam").attr("disabled", true)
9126   // }
9127 
9128   if(current_location && current_location != 'jakarta') {
9129     $("#self-pickup").attr("disabled", true)
9130   }
9131 
9132   function setCookie(name,value,days) {
9133     var expires = "";
9134     if (days) {
9135       var date = new Date();
9136       date.setTime(date.getTime() + (days*24*60*60*1000));
9137       expires = "; expires=" + date.toUTCString();
9138     }
9139     document.cookie = name + "=" + (value || "")  + expires + "; path=/";
9140   }
9141   function getCookie(name) {
9142     var nameEQ = name + "=";
9143     var ca = document.cookie.split(';');
9144     for(var i=0;i < ca.length;i++) {
9145       var c = ca[i];
9146       while (c.charAt(0)==' ') c = c.substring(1,c.length);
9147       if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
9148     }
9149     return null;
9150   }
9151 </script>
9151
9152 <!-- One Tap -->
9153     
9153<script>
9154       console.log("Outerbloom...");
9155     </script>
9155
9156   <div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block">
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 <link rel="stylesheet" href="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.css" />
9204 
9204<script src="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.js" defer></script>
9204
9205 
9205<script>
9206   const widgetConfig = {
9207     id: "clz7897za002cz7otleaz0d3d",
9208     showQuickResponse: false,
9209     quickResponsesData: [],
9210     themeColor: "#ffffff",
9211     widgetText: "",
9212     radiusType: "circle",
9213     widgetIconType: "whatsapp",
9214     position: "right",
9215     storeLogo: "",
9216     storeName: "Outerbloom",
9217     storeDescription: "",
9218     size: "small",
9219     showCard: false,
9220     widgetColorType: "solid",
9221     widgetColor1: "#008069",
9222     widgetColor2: "#008069",
9223     social: {
9224       socialOrders: ["instagram","tiktok","facebook","x","youtube","linkedin","email"],
9225       values: {
9226         instagram: {
9227           enabled: false,
9228           value: "",
9229         },
9230         facebook: {
9231           enabled: false,
9232           value: "",
9233         },
9234         email: {
9235           enabled: false,
9236           value: "",
9237         },
9238         x: {
9239           enabled: false,
9240           value: "",
9241         },
9242         tiktok: {
9243           enabled: false,
9244           value: "",
9245         },
9246         linkedin: {
9247           enabled: false,
9248           value: "",
9249         },
9250         youtube: {
9251           enabled: false,
9252           value: "",
9253         },
9254       },
9255     },
9256   };
9257 
9258   function initializeWidget() {
9259     if (typeof BBBWidget !== 'undefined') {
9260       BBBWidget.init(widgetConfig);
9261     } else {
9262       setTimeout(initializeWidget, 100);
9263     }
9264   }
9265 
9266   initializeWidget();</script>
9266
9267 
9268 
9269 </div><div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block">
9270 
9271 
9272 <div style="position: fixed; bottom: 0; right: 0"></div>
9273 
9274 
9274<script>
9275 console.info("bitlogin extension version: v2.5.7");
9276 
9277 const googleScript = document.createElement("script");
9278 googleScript.setAttribute("src", "https://accounts.google.com/gsi/client");
9279 document.head.append(googleScript);
9280 
9281 const bitLoginBaseUrl = "https://api.bitbybit.studio";
9282 const apiUrl = `${bitLoginBaseUrl}/bitlogin/api`;
9283 
9284 const appearance = {"style":"square","hasShadow":true,"domain":"outerbloom1.myshopify.com","colorScheme":"match","backgroundColor":"#ffffff","outlineColor":"#ffe100","textColor":"#700000","position":"top","hideDivider":false,"dividerText":"","size":"small","format":"contentFlex","language":"en","buttonText":"Continue With","redirectLink":"\/account","googleOneTap":true,"googleOneTapBanner":true,"captureAdditionalData":true,"customerTag":"bitLogin","redirectOneTapDesktop":"[{\"label\":\"Account\",\"label2\":\"Desktop: Account\",\"value\":\"account\",\"parentValue\":\"Desktop\"}]","redirectOneTapMobile":"[{\"label\":\"Thank you page\",\"label2\":\"Mobile: Thank you page\",\"value\":\"thank_you\",\"parentValue\":\"Mobile\"}]","watermark":true,"buttonList":{"google":"Continue with Google","facebook":"Continue with Facebook","apple":"Continue with Apple","whatsapp":"Continue with WhatsApp","microsoft":"Continue with Microsoft","twitter":"Continue with X","amazon":"Continue with Amazon","instagram":"Continue with Instagram","magic_link":"Continue with Magic Link","mobile_app":"Continue with Mobile App","linkedin":"Continue with LinkedIn"}};
9285 const config = [{"domain":"outerbloom1.myshopify.com","provider":"FACEBOOK","enabledMobile":false,"enabledWeb":true,"clientId":"922184709213757","clientSecret":"e3c874c8bce6da4211538ebda706d1cb","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"GOOGLE","enabledMobile":true,"enabledWeb":true,"clientId":"933600373534-vk6hiu9lqrtbblj0357q0gsoo7mqvsd0.apps.googleusercontent.com","clientSecret":"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","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":true,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"APPLE","enabledMobile":true,"enabledWeb":true,"clientId":"com.bitlogin.outerbloom","clientSecret":"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","appleTeamId":"1A","applePrivateKey":"1A","usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"WHATSAPP","enabledMobile":false,"enabledWeb":true,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"MICROSOFT","enabledMobile":false,"enabledWeb":false,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"TWITTER","enabledMobile":false,"enabledWeb":false,"clientId":null,"clientSecret":null,"appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null},{"domain":"outerbloom1.myshopify.com","provider":"AMAZON","enabledMobile":false,"enabledWeb":false,"clientId":"amzn1.application-oa2-client.5b560a5e3e2943d6b25c50cd6dca5532","clientSecret":"amz
9285n1.oa2-cs.v1.1cb5f9085a202341f60daf5a7be16c570ccc0b4bd5908b3afd080f34e9b8935d","appleTeamId":null,"applePrivateKey":null,"usePersonalOauth":false,"position":null}];
9286 const redirectUrl = appearance.redirectLink;
9287 
9288 let locationCacheSet = false;
9289 let errorLocation = false;
9290 let oneTapSet = false;
9291 
9292 let bitloginCache = {
9293   appearance: appearance,
9294   config: config
9295 };
9296 
9297 let isInitializing = false;
9298 const queue = [];
9299 
9300 // Add CSS for the popup
9301 const popupStyles = document.createElement('style');
9302 popupStyles.textContent = `
9303   /* Styles for login popup */
9304   .bitlogin-popup-overlay {
9305     position: fixed;
9306     top: 0;
9307     left: 0;
9308     width: 100%;
9309     height: 100%;
9310     background: rgba(0, 0, 0, 0.45);
9311     backdrop-filter: blur(4px);
9312     display: flex;
9313     align-items: center;
9314     justify-content: center;
9315     opacity: 0;
9316     transition: opacity 0.3s ease-in-out;
9317     z-index: 999999;
9318   }
9319   
9320   .bitlogin-popup-overlay.visible {
9321     opacity: 1;
9322   }
9323   
9324   .bitlogin-popup {
9325     background: #FFFFFF;
9326     box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
9327     border-radius: 16px;
9328     width: 100%;
9329     max-width: 560px;
9330     display: flex;
9331     overflow: hidden;
9332     position: relative;
9333     opacity: 0;
9334     transform: translateY(20px) scale(0.98);
9335     transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
9336   }
9337   
9338   .bitlogin-popup.visible {
9339     opacity: 1;
9340     transform: translateY(0) scale(1);
9341   }
9342   
9343   .bitlogin-popup-with-image {
9344     max-width: 640px;
9345   }
9346   
9347   .bitlogin-popup-right-image {
9348     flex-direction: row-reverse;
9349   }
9350   
9351   .bitlogin-popup-image {
9352     object-fit: cover;
9353     width: 50%;
9354     height: auto;
9355   }
9356   
9357   .bitlogin-popup-content {
9358     padding: 32px;
9359     position: relative;
9360     width: 50%;
9361   }
9362   
9363   .bitlogin-popup-close {
9364     position: absolute;
9365     top: 16px;
9366     right: 16px;
9367     background: white;
9368     border: none;
9369     width: 30px;
9370     height: 30px;
9371     display: flex;
9372     align-items: center;
9373     justify-content: center;
9374     cursor: pointer;
9375     transition: background-color 0.2s;
9376     color: inherit;
9377     padding: 0;
9378   }
9379   
9380   .bitlogin-popup-close:hover {
9381     background-color: #e5e5e5;
9382   }
9383   
9384   .bitlogin-popup-buttons {
9385     display: flex;
9386     flex-direction: column;
9387     gap: 12px;
9388     margin-top: 24px;
9389   }
9390   
9391   /* Button styles within popup - override width for popup buttons */
9392   .bitlogin-popup-buttons #google-login,
9393   .bitlogin-popup-buttons #facebook-login,
9394   .bitlogin-popup-buttons #apple-login,
9395   .bitlogin-popup-buttons #whatsapp-login,
9396   .bitlogin-popup-buttons #microsoft-login,
9397   .bitlogin-popup-buttons #twitter-login,
9398   .bitlogin-popup-buttons #amazon-login,
9399   .bitlogin-popup-buttons #instagram-login,
9400   .bitlogin-popup-buttons #magic-link-login,
9401   .bitlogin-popup-buttons #mobile-app-login {
9402     width: 100% !important;
9403     font-family: inherit !important;
9404   }
9405   
9406   .bitlogin-popup-footer {
9407     margin-top: 32px;
9408     text-align: center;
9409     font-size: 14px;
9410     opacity: 0.6;
9411   }
9412   
9413   /* Modern Typography */
9414   .bitlogin-popup h2 {
9415     margin-top: 12px;
9416     font-size: 21px !important;
9417     line-height: 1.2 !important;
9418     font-weight: 700 !important;
9419     letter-spacing: -0.02em !important;
9420     margin-bottom: 16px !important;
9421   }
9422   
9423   .bitlogin-popup-header {
9424     position: relative;
9425     margin-bottom: 24px;
9426   }
9427   
9428   /* Modern gradient accent */
9429   .bitlogin-popup-content > div {
9430     font-size: 16px !important;
9431     line-height: 1.2 !important;
9432     opacity: 0.85 !important;
9433   }
9434   
9435   /* Enhanced button interactions */
9436   .bitlogin-popup-buttons button {
9437     position: relative;
9438     overflow: hidden;
9439   }
9440   
9441   @keyframes ripple {
9442     0% {
9443       transform: scale(0, 0);
9444       opacity: 0.5;
9445     }
9446     100% {
9447       transform: scale(100, 100);
9448       opacity: 0;
9449     }
9450   }
9451   
9452   /* Responsive adjustments */
9453   @media (max-width: 640px) {
9454     .bitlogin-popup {
9455       max-width: 90%;
9456       width: 90%;
9457       margin: 0 16px;
9458     }
9459     
9460     .bitlogin-popup-with-image {
9461       flex-direction: column !important;
9462     }
9463     
9464     .bitlogin-popup-image {
9465       width: 100%;
9466       height: 180px;
9467     }
9468     
9469     .bitlogin-popup-content {
9470       padding: 24px;
9471     }
9472     
9473     .bitlogin-popup h2 {
9474       font-size: 24px !important;
9475     }
9476   }
9477 `;
9478 
9479 document.head.appendChild(popupStyles);
9480 
9481 // Add fonts link for different font options
9482 const fontsLink = document.createElement('link');
9483 fontsLink.rel = 'stylesheet';
9484 fontsLink.href = 'https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600&family=Roboto:wght@400;500&family=Open+Sans:wght@400;500;600&family=Noto+Sans:wght@400;500;600&family=Lato:wght@400;700&family=Poppins:wght@400;500;600&family=Quicksand:wght@400;500;600&family=Raleway:wght@400;500;600&family=PT+Sans:wght@400;700&family=Oswald:wght@400;500;600&display=swap';
9485 document.head.appendChild(fontsLink);
9486 
9487 (async () => {
9488   try {
9489     let host = window.location.host;
9490     if (host === "admin.shopify.com") {
9491       host = `${window.location.pathname.split("/")[2]}.myshopify.com`;
9492     }
9493 
9494     const urlSearchParams = new URLSearchParams(window.location.search);
9495     const checkoutUrl = urlSearchParams.get("checkout_url");
9496 
9497     async function init({ inputRef, index }) {
9498       if (isInitializing) {
9499         queue.push(() => init({ inputRef, index }));
9500         return;
9501       }
9502 
9503       isInitializing = true;
9504 
9505       try {
9506         let bitLoginSectionRoot = document.querySelector(
9507           `.bitlogin-root[data-index="${index}"]`
9508         );
9509 
9510         const formRef = inputRef?.closest(
9511           "form:not([action='/account/recover'])"
9512         );
9513 
9514         if (formRef && !bitLoginSectionRoot) {
9515           await getLocation();
9516 
9517           bitLoginSectionRoot = document.createElement(`div`);
9518 
9519           bitLoginSectionRoot.setAttribute("class", "bitlogin-root");
9520           bitLoginSectionRoot.setAttribute("data-index", `${index}`);
9521 
9522           updateAppearance({
9523             formRef,
9524             rootRef: bitLoginSectionRoot,
9525             host,
9526           });
9527         }
9528       } catch (err) {
9529         console.error(`error while initiating bitlogin extensions`, err);
9530       } finally {
9531         // Release the lock
9532         isInitializing = false;
9533 
9534         // Check if there are pending items in the queue
9535         if (queue.length > 0) {
9536           // Process the next function in the queue
9537           const nextFunction = queue.shift();
9538           nextFunction();
9539         }
9540       }
9541     }
9542 
9543     function initAll() {
9544       return new Promise((resolve, reject) => {
9545         setTimeout(async () => {
9546           const inputRefs = document.querySelectorAll(
9547             'input[name="customer[email]"]'
9548           );
9549 
9550           for (let i = 0; i < inputRefs.length; i++) {
9551             const currentInputRef = inputRefs[i];
9552             const isVisible = isElementVisible(currentInputRef);
9553 
9554             if (isVisible) {
9555               await init({ inputRef: currentInputRef, index: i });
9556             }
9557           }
9558 
9559           resolve("ok");
9560         }, 100);
9561       });
9562     }
9563 
9564     const observer = new MutationObserver((mutationsList) => {
9565       for (let mutation of mutationsList) {
9566         initAll();
9567       }
9568     });
9569 
9570     observer.observe(document.body, {
9571       childList: true,
9572       subtree: true,
9573       attributes: true,
9574     });
9575 
9576     initAll();
9577 
9578     if (appearance.googleOneTap) {
9579       setupOneTap({ host, checkoutUrl });
9580     }
9581 
9582     // Initialize popup
9583     await initPopup(host);
9584   } catch (error) {
9585     console.error("Error initializing BitLogin:", error);
9586   }
9587 })();
9588 
9589 async function initPopup(host) {
9590   // Check if user is already logged in using Liquid checks properly
9591   const isLoggedIn = false || 
9592                     document.querySelector('.customer-logout-link') || 
9593                     document.querySelector('.account-link') || 
9594                     window.location.pathname.includes('/account');
9595   
9596   if (isLoggedIn) {
9597     return; // User is logged in, don't show popup
9598   }
9599 
9600   try {
9601     // Fetch the popup configuration
9602     const popupConfig = await fetch(`${apiUrl}/appearance/popup/domain/${host}`)
9603       .then(res => res.json())
9604       .catch(err => {
9605         console.error('Error fetching popup configuration:', err);
9606         return null;
9607       });
9608 
9609     if (!popupConfig || !popupConfig.enabled) {
9610       return;
9610 // Don't show popup if disabled or config not found
9611     }
9612 
9613     // Create popup after 10 seconds
9614     setTimeout(() => {
9615       // Check if user is still on the page and still not logged in
9616       if (document.visibilityState === 'visible') {
9617         // Additional check in case user logged in during the 10 second wait
9618         const currentlyLoggedIn = false || 
9619                               document.querySelector('.customer-logout-link') || 
9620                               document.querySelector('.account-link');
9621         
9622         if (!currentlyLoggedIn) {
9623           createLoginPopup(popupConfig, host);
9624         }
9625       }
9626     }, 10000);
9627   } catch (error) {
9628     console.error('Error initializing popup:', error);
9629   }
9630 }
9631 
9632 function createLoginPopup(popupConfig, host) {
9633   // Font mapping
9634   const fontFamilyMap = {
9635     system_fonts: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
9636     montserrat: 'Montserrat, sans-serif',
9637     roboto: 'Roboto, sans-serif',
9638     open_sans: 'Open Sans, sans-serif',
9639     noto_sans: 'Noto Sans, sans-serif',
9640     lato: 'Lato, sans-serif',
9641     poppins: 'Poppins, sans-serif',
9642     quicksand: 'Quicksand, sans-serif',
9643     raleway: 'Raleway, sans-serif',
9644     pt_sans: 'PT Sans, sans-serif',
9645     oswald: 'Oswald, sans-serif',
9646   };
9647 
9648   // Create overlay
9649   const overlay = document.createElement('div');
9650   overlay.className = 'bitlogin-popup-overlay';
9651   
9652   // Create popup container with appropriate styling
9653   const popup = document.createElement('div');
9654   popup.className = 'bitlogin-popup';
9655 
9656   if (popupConfig.layout === 'default') {
9657     popup.style.maxWidth = '400px';
9658   }
9659   
9660   // Function to close the popup
9661   const closePopup = () => {
9662     overlay.classList.remove('visible');
9663     popup.classList.remove('visible');
9664     setTimeout(() => {
9665       if (document.body.contains(overlay)) {
9666         document.body.removeChild(overlay);
9667       }
9668     }, 300);
9669   };
9670   
9671   // Add click handler to the overlay to close when clicking outside
9672   overlay.addEventListener('click', (event) => {
9673     // Close only if clicking directly on the overlay, not its children
9674     if (event.target === overlay) {
9675       closePopup();
9676     }
9677   });
9678   
9679   // Add escape key handler to close popup
9680   document.addEventListener('keydown', (event) => {
9681     if (event.key === 'Escape' && document.body.contains(overlay)) {
9682       closePopup();
9683     }
9684   });
9685 
9686   // Create layout with image if specified
9687   let contentWrapper;
9688   if (popupConfig.layout !== 'default' && popupConfig.popupImage) {
9689     popup.classList.add('bitlogin-popup-with-image');
9690     
9691     if (popupConfig.layout === 'right') {
9692       popup.classList.add('bitlogin-popup-right-image');
9693     }
9694     
9695     // Add image
9696     const image = document.createElement('img');
9697     image.className = 'bitlogin-popup-image';
9698     image.src = popupConfig.popupImage;
9699     image.alt = 'Login';
9700     image.loading = 'lazy';
9701     popup.appendChild(image);
9702     
9703     // Create content container
9704     contentWrapper = document.createElement('div');
9705     contentWrapper.className = 'bitlogin-popup-content';
9706 
9707     if (popupConfig.layout === 'right') {
9708       const closeButton = document.createElement('button');
9709       closeButton.className = 'bitlogin-popup-close';
9710       closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
9711         <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
9712       </svg>`;
9713       closeButton.setAttribute('aria-label', 'Close');
9714       closeButton.onclick = closePopup;
9715   
9716       popup.appendChild(closeButton);
9717     }
9718   } else {
9719     contentWrapper = document.createElement('div');
9720     contentWrapper.className = 'bitlogin-popup-content';
9721     contentWrapper.style.width = '100%';
9722   }
9723 
9724   // Set background style
9725   if (popupConfig.backgroundTheme === 'gradient') {
9726     contentWrapper.style.background = `linear-gradient(135deg, ${popupConfig.backgroundPopupColor}, ${popupConfig.gradientColor})`;
9727   } else {
9728     contentWrapper.style.backgroundColor = popupConfig.backgroundPopupColor;
9729   }
9730 
9731   // Apply font family
9732   contentWrapper.style.setProperty('font-family', fontFamilyMap[popupConfig.font] || fontFamilyMap.system_fonts, 'important');
9733 
9734   if (popupConfig.layout !== 'right') {
9735     const closeButton = document.createElement('button');
9736     closeButton.className = 'bitlogin-popup-close';
9737     closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
9738       <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
9739     </svg>`;
9740     closeButton.setAttribute('aria-label', 'Close');
9741     closeButton.onclick = closePopup;
9742   
9743     contentWrapper.appendChild(closeButton);
9744   }
9745 
9746   // Add heading with subtle animation effect
9747   const header = document.createElement('div');
9748   header.className = 'bitlogin-popup-header';
9749   
9750   const heading = document.createElement('h2');
9751   heading.textContent = popupConfig.headingText || 'Sign in for exclusive benef
9751its';
9752   heading.style.color = popupConfig.fontColor;
9753   header.appendChild(heading);
9754 
9755   // Add body text with improved formatting
9756   const bodyText = document.createElement('div');
9757   bodyText.innerHTML = popupConfig.bodyText || 'Join our community to access exclusive offers and a personalized shopping experience.';
9758   bodyText.style.color = popupConfig.fontColor;
9759   header.appendChild(bodyText);
9760   
9761   contentWrapper.appendChild(header);
9762 
9763   // Create buttons container with modern styling
9764   const buttonsContainer = document.createElement('div');
9765   buttonsContainer.className = 'bitlogin-popup-buttons';
9766   
9767   // Add social buttons
9768   const providerLabels = {
9769     'GOOGLE': 'Continue with Google',
9770     'FACEBOOK': 'Continue with Facebook',
9771     'APPLE': 'Continue with Apple',
9772     'WHATSAPP': 'Continue with WhatsApp',
9773     'MAGIC_LINK': 'Continue with Email',
9774   };
9775 
9776   // Add first login provider button
9777   if (popupConfig.loginProvider1 !== 'NONE') {
9778     const buttonConfig = {
9779       theme: popupConfig.colorScheme || 'match',
9780       customColor: popupConfig.textColor,
9781       format: 'contentFlex',
9782       buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider1.toLowerCase()],
9783       hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true,
9784       style: popupConfig.style || 'rounded',
9785       size: popupConfig.size || 'medium',
9786       colorScheme: popupConfig.colorScheme || 'match',
9787       backgroundColor: popupConfig.backgroundColor || '#3B82F6',
9788       textColor: popupConfig.textColor || '#FFFFFF',
9789       outlineColor: popupConfig.outlineColor || '#3B82F6',
9790       host: host
9791     };
9792     
9793     const button1 = createSocialLoginButton(popupConfig.loginProvider1, buttonConfig);
9794     
9795     // Handle click event - this overrides the default click handler in createSocialLoginButton
9796     button1.onclick = () => {
9797       onClickSocialLogin({ provider: popupConfig.loginProvider1.toLowerCase(), host });
9798       closePopup();
9799     };
9800     
9801     buttonsContainer.appendChild(button1);
9802   }
9803 
9804   // Add second login provider button if enabled
9805   if (popupConfig.loginProvider2 !== 'NONE') {
9806     const buttonConfig = {
9807       theme: popupConfig.colorScheme || 'match',
9808       customColor: popupConfig.textColor,
9809       format: 'contentFlex',
9810       buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider2.toLowerCase()],
9811       hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true,
9812       style: popupConfig.style || 'rounded',
9813       size: popupConfig.size || 'medium',
9814       colorScheme: popupConfig.colorScheme || 'match',
9815       backgroundColor: popupConfig.backgroundColor || '#3B82F6',
9816       textColor: popupConfig.textColor || '#FFFFFF',
9817       outlineColor: popupConfig.outlineColor || '#3B82F6',
9818       host: host
9819     };
9820     
9821     const button2 = createSocialLoginButton(popupConfig.loginProvider2, buttonConfig);
9822     
9823     // Handle click event - this overrides the default click handler in createSocialLoginButton
9824     button2.onclick = () => {
9825       onClickSocialLogin({ provider: popupConfig.loginProvider2.toLowerCase(), host });
9826       closePopup();
9827     };
9828     
9829     buttonsContainer.appendChild(button2);
9830   }
9831 
9832   contentWrapper.appendChild(buttonsContainer);
9833 
9834   // Append content to popup
9835   popup.appendChild(contentWrapper);
9836   
9837   // Append popup to overlay
9838   overlay.appendChild(popup);
9839   
9840   // Append overlay to body
9841   document.body.appendChild(overlay);
9842   
9843   // Trigger animation with slight delay for better perceived performance
9844   setTimeout(() => {
9845     overlay.classList.add('visible');
9846     setTimeout(() => {
9847       popup.classList.add('visible');
9848     }, 50);
9849   }, 10);
9850 }
9851 
9852 window.addEventListener("load", () => {
9853   window.addEventListener("message", (event) => {
9854     const receivedData = event.data;
9855 
9856     if (receivedData.type === "authorize") {
9857       post(
9858         JSON.parse(
9859           JSON.stringify({
9860             "customer[email]": receivedData.email,
9861             "customer[password]": receivedData.password,
9862             form_type: "customer_login",
9863             utf8: "✓",
9864             return_url: redirectUrl,
9865           })
9866         )
9867       );
9868     } else if (receivedData.type === "rejected") {
9869       if (receivedData.reason === "customer_account_disabled") {
9870         showAlert(
9871           "Your account needs to be activated. We've sent you an activation link - please check your email to complete this step."
9872         );
9873       } else if (receivedData.reason === "customer_entry_created_email_not_set") {
9874         showAlert(
9875           "A new account was created but requires an email address. Please update your account with a valid email address to continue."
9876         );
9877       } else if (receivedData.reason === "customer_exist_email_not_set") {
9878         showAlert(
9879           "Your existing account is missing an email address. Please contact support to update your account with a valid email address."
9880         );
9881       }
9882     }
9883 
9884     if (receivedData.type === "customer_authenticated") {
9885       // Dispatch a custom event that merchants can listen for to implement their custom logic
9886       const customerAuthEvent = new CustomEvent('bitlogin:customer_authenticated', {
9887         detail: {
9888           provider: receivedData.provider,
9889           customer: receivedData.customer,
9890           shopifyCustomerCreated: receivedData.shopifyCustomerCreated
9891         }
9892       });
9893       
9894       // Dispatch the event on the window object so merchants can listen for it
9895       window.dispatchEvent(customerAuthEvent);
9896       
9897     }
9898   });
9899 });
9900 
9901 // Reusable functions for social login buttons
9902 function createSocialLoginButton(provider, config = {}) {
9903   const {
9904     theme = 'match',
9905     customColor = null,
9906     format = 'contentFlex',
9907     buttonText = null,
9908     hasShadow = true,
9909     style = 'rounded',
9910     size = 'medium',
9911     colorScheme = 'match',
9912     backgroundColor = '#3B82F6',
9913     textColor = '#FFFFFF',
9914     outlineColor = '#3B82F6',
9915     rootRef = null,
9916     host = null
9917   } = config;
9918   
9919   // Create button element with appropriate ID and attributes
9920   const button = document.createElement('button');
9921   button.id = `${provider.toLowerCase()}-login`;
9922   button.type = 'button';
9923   
9924   // Set the inner SVG based on provider
9925   switch (provider.toUpperCase()) {
9926     case 'GOOGLE':
9927       button.innerHTML = googleLoginIcon(theme, customColor);
9928       break;
9929     case 'FACEBOOK':
9930       button.innerHTML = facebookLoginIcon(theme, customColor);
9931       break;
9932     case 'APPLE':
9933       button.innerHTML = appleLoginIcon(theme, customColor);
9934       break;
9935     case 'WHATSAPP':
9936       button.innerHTML = whatsappLoginIcon(theme, customColor);
9937       break;
9938     case 'MICROSOFT':
9939       button.innerHTML = microsoftLoginIcon(theme, customColor);
9940       break;
9941     case 'TWITTER':
9942       button.innerHTML = twitterLoginIcon(theme, customColor);
9943       break;
9944     case 'AMAZON':
9945       button.innerHTML = amazonLoginIcon(theme, customColor);
9946       break;
9947     case 'INSTAGRAM':
9948       button.innerHTML = instagramLoginIcon(theme, customColor);
9949       break;
9950     case 'MAGIC_LINK':
9951       button.innerHTML = magicLinkLoginIcon(theme, customColor);
9952       break;
9953     case 'MOBILE_APP':
9954       button.innerHTML = mobileAppLoginIcon(theme, customColor);
9955       break;
9956     case 'LINKEDIN':
9957       button.innerHTML = linkedinLoginIcon(theme, customColor);
9958       break;
9959   }
9960   
9961   // Add text if format isn't icon-only and buttonText is provided
9962   if (format !== "wrapperFlexContainerOnlyLogo" && buttonText) {
9963     button.innerHTML += `<p>${buttonText}</p>`;
9964   }
9965   
9966   // Apply styling
9967   // Shadow
9968   if (hasShadow) {
9969     const shadowProperties = `0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)`;
9970     button.style["box-shadow"] = shadowProperties;
9971   }
9972   
9973   // Border radius
9974   const radiusProperties =
9975     style === "rounded"
9976       ? "8px"
9977       : style === "square"
9978       ? "0px"
9979       : style === "fullRounded"
9980       ? format === "wrapperFlexContainerOnlyLogo"
9981         ? "50%"
9982         : "50px"
9983       : undefined;
9984   button.style["border-radius"] = radiusProperties;
9985   
9986   // Size
9987   const sizeProperties =
9988     size === "medium"
9989       ? "12px"
9990       : size === "small"
9991       ? "8px"
9992       : size === "large"
9993       ? "16px"
9994       : "8px";
9995 
9996   button.style["padding-block"] = sizeProperties;
9997 
9998   // Format styling
9999   if (format) {
10000     if (
10001       format === "contentFlexReverse" ||
10002       format === "contentFlexCenterReverse"
10003     ) {
10004       const flexDir = `row-reverse`;
10005       button.style["flex-direction"] = flexDir;
10006     }
10007     
10008     if (
10009       format === "contentFlexCenter" ||
10010       format === "contentFlexCenterReverse"
10011     ) {
10012       const justifyContent = `center`;
10013       button.style["justify-content"] = justifyContent;
10014     } else if (
10015       format === "contentFlex" ||
10016       format === "contentFlexReverse"
10017     ) {
10018       const buttonTextElement = button.querySelector("p");
10019       if (buttonTextElement) {
10020         buttonTextElement.style["flex-grow"] = 1;
10021         buttonTextElement.style["text-align"] = "center";
10022       }
10023     }
10024 
10025     if (format === "wrapperFlexContainerOnlyLogo" && rootRef) {
10026       rootRef.style["flex-direction"] = "row";
10027       rootRef.style["gap"] = "8px";
10028       rootRef.style["display"] = "flex";
10029       rootRef.style["flex-wrap"] = "wrap";
10030 
10031       const sizeMapping = {
10032         small: "52px",
10033         medium: "62px",
10034         large: "72px",
10035       };
10036       const buttonSize = sizeMapping[size] || "52px";
10037 
10038       button.style["margin"] = 0;
10039       button.style["width"] = buttonSize;
10040       button.style["height"] = buttonSize;
10041       button.style["display"] = "flex";
10042       button.style["align-items"] = "center";
10043       button.style["justify-content"] = "center";
10044 
10045       const svgElement = button.querySelector("svg");
10046       if (svgElement) {
10047         svgElement.style["flex"] = "none";
10048       }
10049     }
10050   }
10051 
10052   // Color scheme styling
10053   if (colorScheme === "black") {
10054     button.classList.add("scheme-black");
10055   } else if (colorScheme === "white") {
10056     button.classList.add("scheme-white");
10057   } else if (colorScheme === "custom") {
10058     button.style["background-color"] = backgroundColor;
10059     button.style["color"] = textColor;
10060     button.style["border-color"] = outlineColor;
10061 
10062     const darkenColor = (color, percentage) => {
10063       const value = parseInt(color.slice(1), 16);
10064       const r = Math.max(0, ((value >> 16) & 0xff) - (0xff * percentage));
10065       const g = Math.max(0, ((value >> 8) & 0xff) - (0xff * percentage));
10066       const b = Math.max(0, (value & 0xff) - (0xff * percentage));
10067       return `rgb(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)})`;
10068     };
10069 
10070     button.addEventListener("mouseover", () => {
10071       button.style["background-color"] = darkenColor(backgroundColor, 0.2);
10072     });
10073     button.addEventListener("mouseout", () => {
10074       button.style["background-color"] = backgroundColor;
10075     });
10076   } else if (colorScheme === "match") {
10077     button.classList.add("scheme-match");
10078   } else if (colorScheme === "matchOutline") {
10079     button.classList.add("scheme-match-outline");
10080   }
10081   
10082   // Add click event listener if host is provided
10083   if (host) {
10084     button.addEventListener("click", () => 
10085       onClickSocialLogin({ provider: provider.toLowerCase(), host })
10086     );
10087   }
10088   
10089   return button;
10090 }
10091 
10092 function setupSocialLoginButtons(config, rootRef, data, host) {
10093   // Clear any existing content
10094   rootRef.innerHTML = '';
10095 
10096   const sortedEnabledProviders = config
10097     .filter(c => c.enabledWeb)
10098     .sort((a, b) => a.position - b.position);
10099 
10100   sortedEnabledProviders.forEach(provider => {
10101     const key = provider.provider;
10102     const lowerKey = key.toLowerCase();
10103 
10104     const buttonText = data.format !== "wrapperFlexContainerOnlyLogo"
10105       ? (lowerKey === 'twitter'
10106           ? data.buttonList.twitter.replace('Twitter', 'X')
10107           : data.buttonList[lowerKey])
10108       : null;
10109 
10110     const button = createSocialLoginButton(key, {
10111       theme: data.colorScheme || 'match',
10112       customColor: data.textColor,
10113       format: data.format,
10114       buttonText: buttonText,
10115       hasShadow: data.hasShadow !== undefined ? data.hasShadow : true,
10116       style: data.style,
10117       size: data.size,
10118       colorScheme: data.colorScheme,
10119       backgroundColor: data.backgroundColor,
10120       textColor: data.textColor,
10121       outlineColor: data.outlineColor,
10122       rootRef: rootRef,
10123       host: host
10124     });
10125 
10126     rootRef.appendChild(button);
10127   });
10128 
10129   return rootRef;
10130 }
10131 
10132 function updateAppearance({ formRef, rootRef, host }) {
10133   if (!formRef) return;
10134 
10135   const data = bitloginCache.appearance || {
10136     style: "square",
10137     hasShadow: false,
10138     colorScheme: "match",
10139     backgroundColor: "#FFFFFF",
10140     outlineColor: "#000000",
10141     textColor: "#000000",
10142     position: "bottom",
10143     hideDivider: "false",
10144     dividerText: "OR",
10145     size: "small",
10146     format: "contentFlex",
10147     language: "en",
10148     buttonText: "Continue with",
10149     redirectLink: "/account",
10150     googleOneTap: true,
10151     googleOneTapBanner: true,
10152     customerTag: "bitLogin",
10153     redirectOneTapDesktop: null,
10154     redirectOneTapMobile: null,
10155     buttonList: {
10156       google: "Continue with Google",
10157       facebook: "Continue with Facebook",
10158       apple: "Continue with Apple",
10159       whatsapp: "Continue with WhatsApp",
10160       microsoft: "Continue with Microsoft",
10161       twitter: "Continue with X",
10162       amazon: "Continue with Amazon",
10163       instagram: "Continue with Instagram",
10164       magic_link: "Continue with Magic Link",
10165       mobile_app: "Continue with Mobile App",
10166       linkedin: "Continue with LinkedIn",
10167     },
10168   };
10169 
10170   // Use the new setupSocialLoginButtons function to create and configure all buttons
10171   setupSocialLoginButtons(bitloginCache.config, rootRef, data, host);
10172 
10173   let divider;
10174 
10175   if (!data.hideDivider) {
10176     divider = document.createElement("div");
10177     const dividerStyle = "text-align:center;margin-block:16px";
10178     divider.setAttribute("style", dividerStyle);
10179     divider.innerHTML = data.dividerText;
10180   }
10181 
10182   if (data.position === "bottom") {
10183     if (divider) {
10184       formRef.appendChild(divider);
10185     }
10186     formRef.appendChild(rootRef);
10187   } else if (data.position === "top") {
10188     if (divider) {
10189       formRef.prepend(divider);
10190     }
10191     formRef.prepend(rootRef);
10192   }
10193 }
10194 
10195 
10196 async function onClickSocialLogin({ provider, host }) {
10197   const rand = Math.random().toString();
10198 
10199   const locationQueryString = bitloginCache.location
10200     ? `&${objectToQueryString(bitloginCache.location)}`
10201     : "";
10202 
10203   const width = 800;
10204   const height = 600;
10205   const left = (window.screen.width / 2) - (width / 2);
10206   const top = (window.screen.height / 2) - (height / 2) - 50;
10207 
10208   if(provider === 'whatsapp') {
10209     window.open(
10210       `/apps/bitlogin/whatsapp${locationQueryString ? `?${locationQueryString}` : ''}`,
10211       "mywindow",
10212       `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`
10213     );
10214   } else {
10215     window.open(
10216       `${apiUrl}/login/${provider}?referrerId=${rand}&shop=${host}${locationQueryString}`,
10217       "mywindow",
10218       `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`
10219     );
10220   }
10221 }
10222 
10223 function objectToQueryString(obj) {
10224   return Object.keys(obj)
10225     .map((key) => {
10226       return encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]);
10227     })
10228     .join("&");
10229 }
10230 
10231 async function getLocation() {
10232   if (locationCacheSet) return;
10233 
10234   try {
10235     const response = await fetch("https://ipapi.co/json/");
10236 
10237     if (!response.ok) {
10238       console.error(`error retrieving location...`, response.status);
10239       errorLocation = true;
10240     } else {
10241       const data = await response.json();
10242 
10243       const { city, region, country_name, country_code } = data;
10244 
10245       const formattedLocationData = {
10246         city,
10247         region,
10248         country_name,
10249         country_code,
10250       };
10251 
10252       bitloginCache.location = formattedLocationData;
10253       locationCacheSet = true;
10254       errorLocation = false;
10255     }
10256   } catch (err) {
10257     console.error(`error fetching location`, err);
10258     errorLocation = true;
10259   }
10260 }
10261 
10262 function post(params) {
10263   // The rest of this code assumes you are not using a library.
10264   // It can be made less verbose if you use one.
10265   const form = document.createElement("form");
10266   form.method = "post";
10267   form.action = `/account/login`;
10268   form.acceptCharset = "UTF-8";
10269   form.setAttribute("data-login-with-shop-sign-in", "true");
10270   form.setAttribute("novalidate", "novalidate");
10271 
10272   for (const key in params) {
10273     if (params.hasOwnProperty(key)) {
10274       const hiddenField = document.createElement("input");
10275       hiddenField.type = "hidden";
10276       hiddenField.name = key;
10277       hiddenField.value = params[key];
10278 
10279       form.appendChild(hiddenField);
10280     }
10281   }
10282 
10283   document.body.appendChild(form);
10284   form.submit();
10285 }
10286 
10287 async function setupOneTap({ host, checkoutUrl }) {
10288   if (oneTapSet) return;
10289 
10290   const redirectOneTapDesktop = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapDesktop || '[]'));
10291   const redirectOneTapMobile = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapMobile || '[]'));
10292 
10293   const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
10294   const redirectList = JSON.parse(isMobile ? redirectOneTapMobile : redirectOneTapDesktop);
10295 
10296   const currentPath = window.location.pathname.toLowerCase();
10297   const currentUrl = window.location.href.toLowerCase();
10298 
10299   const shouldHideGoogleOneTap = redirectList.some(({ value }) => {
10300     switch (value) {
10301       case 'home':
10302         return currentPath === '/';
10303       case 'product':
10304         return currentPath.startsWith('/products/');
10305       case 'collections':
10306         return currentPath.startsWith('/collections');
10307       case 'cart':
10308         return currentPath === '/cart';
10309       case 'checkout':
10310         return currentPath.startsWith('/checkouts') && !currentPath.includes('thank_you');
10311       case 'thank_you':
10312         return currentPath.includes('/thank_you');
10313       case 'account':
10314         return currentPath.startsWith('/account');
10315       case 'pages':
10316         return currentPath.startsWith('/pages');
10317       case 'blogs':
10318         return currentPath === '/blogs' || currentPath === '/blogs/news';
10319       case 'blog_post':
10320         return currentPath.startsWith('/blogs/') && currentPath.split('/').length > 3;
10321       default:
10322         return false;
10323     }
10324   });
10325 
10326   if (shouldHideGoogleOneTap) return;
10327 
10328   const oneTapClientId = bitloginCache.config.find(
10329     (config) => config.provider === "GOOGLE"
10330   )?.clientId;
10331 
10332   const isLoggedIn = false;
10333 
10334   if (bitloginCache.appearance.googleOneTap && oneTapClientId && !isLoggedIn) {
10335     const googleOneTapButton = document.createElement("div");
10336     googleOneTapButton.setAttribute("id", "g_id_onload");
10337     googleOneTapButton.setAttribute("data-client_id", oneTapClientId);
10338     googleOneTapButton.setAttribute("data-context", "signin");
10339     googleOneTapButton.setAttribute(
10340       "data-callback",
10341       "handleGoogleOneTapResponse"
10342     );
10343     googleOneTapButton.setAttribute("data-itp_support", "true");
10344 
10345     const googleOneTapScript = document.createElement("script");
10346 
10347     googleOneTapScript.innerHTML += `
10348           function handleGoogleOneTapResponse(response) {
10349               if (response.credential) {
10350                   const idToken = response.credential;
10351                   fetch('${bitLoginBaseUrl}/bitlogin/api/login/google-one-tap', {
10352                       method: 'POST',
10353                       headers: { 'Content-Type': 'application/json' },
10354                       body: JSON.stringify({ idToken, shop: "${host}", ...bitloginCache.location })
10355                   }).then(response => {
10356                       response.json().then((data) => {
10357                         post(
10358                           JSON.parse(
10359                             JSON.stringify({
10360                               "customer[email]": data.email,
10361                               "customer[password]": data.password,
10362                               form_type: "customer_login",
10363                               utf8: "✓",
10364                               return_url: redirectUrl,
10365                             })
10366                           )
10367                         );
10368                       });  
10369                   }).catch(error => {
10370                       console.error('Error occurred:', error);
10371                   });
10372               } else {
10373                   console.error('No credential available');
10374               }
10375           }
10376        `;
10377 
10378     document.body.append(googleOneTapButton);
10379     document.body.append(googleOneTapScript);
10380   }
10381 
10382   oneTapSet = true;
10383 }
10384 
10385 const googleLoginIcon = (
10386   theme,
10387   customColor
10388 ) => `
10389 ${
10390   theme === "match" || theme === "matchOutline" || theme === "custom"
10391     ? `<svg
10392     xmlns='https://ik.imagekit.io/kktbpaqjn/logorajadana.png'
10393     xmlns:v='https://vecta.io/nano'
10394     width='24'
10395     height='24'
10396     viewBox='0 0 186.69 190.5'
10397   >
10398     <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="${
10399       theme === "custom" ? customColor : "#4285f4"
10400     }"/><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="${
10401         theme === "custom" ? customColor : "#34a853"
10402       }"/><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="${
10403         theme === "custom" ? customColor : "#fbbc05"
10404       }"/><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="${
10405         theme === "custom" ? customColor : "#ea4335"
10406       }" clip-path="none" mask="none"/></g>
10407   </svg>`
10408     : `<svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="25" height="25" viewBox="0 0 25 25" fill="none">
10409 <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="${
10410         theme !== "black" ? "black" : "white"
10411       }"/>
10412 <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="${
10413         theme !== "black" ? "black" : "white"
10414       }"/>
10415 <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="${
10416         theme !== "black" ? "black" : "white"
10417       }"/>
10418 <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="${
10419         theme !== "black" ? "black" : "white"
10420       }"/>
10421 </svg>`
10422 }`;
10423 
10424 const appleLoginIcon = (
10425   theme,
10426   customColor
10427 ) => `<svg width="24" height="24" viewBox="0 0 19 24" fill="none" xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
10428 <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="${
10429   theme === "custom"
10430     ? customColor
10431     : theme === "match" || theme === "black"
10432     ? "white"
10433     : "black"
10434 }"/>
10435 </svg>`;
10436 
10437 const facebookLoginIcon = (
10438   theme,
10439   customColor
10440 ) => `
10441 ${
10442   theme === "match" || theme === "matchOutline" || theme === "custom"
10443     ? `<svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="25" viewBox="0 0 24 25" fill="none">
10444     <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="${
10445       theme === "custom" ? customColor : theme === "match" ? "white" : "#1977F3"
10446     }"/>
10447     <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="${
10448       theme === "match" ? "#1778f2" : "transparent"
10449     }"/>
10450     </svg>`
10451     : `<svg xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png" width="24" height="25" viewB
10451ox="0 0 24 25" fill="none">
10452 <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="${
10453         theme === "black" ? "white" : "black"
10454       }"/>
10455 <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="${
10456         theme === "black" ? "black" : "white"
10457       }"/>
10458 </svg>`
10459 }`;
10460 
10461 const whatsappLoginIcon = (
10462   theme,
10463   customColor
10464 ) => `<svg
10465   viewBox="0 0 24 24"
10466   fill="none"
10467   width="24"
10468   height="25"
10469   xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png"
10470 >
10471   <g id="SVGRepo_bgCarrier" stroke-width="0"></g>
10472   <g
10473     id="SVGRepo_tracerCarrier"
10474     stroke-linecap="round"
10475     stroke-linejoin="round"
10476   ></g>
10477   <g id="SVGRepo_iconCarrier">
10478     <path
10479       fill-rule="evenodd"
10480       clip-rule="evenodd"
10481       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"
10482       fill="${
10483         theme === "match" || theme === "black"
10484           ? "#ffffff"
10485           : theme === "white"
10486           ? "#000000"
10487           : theme === "matchOutline"
10488           ? "#25d366"
10489           : customColor
10490       }"
10491     ></path>
10492   </g>
10493 </svg>`;
10494 
10495 const microsoftLoginIcon = (
10496   theme,
10497   customColor
10498 ) => `<svg
10499 xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png"
10500 width="25"
10501 height="25"
10502 viewBox="0 0 48 48">
10503 <path fill="${
10504   theme === "match" || theme == "matchOutline"
10505     ? "#ff5722"
10506     : theme === "black"
10507     ? "#ffffff"
10508     : theme === "white"
10509     ? "#000000"
10510     : customColor
10511 }" d="M6 6H22V22H6z" transform="rotate(-180 14 14)"></path>
10512 <path
10513   fill="${
10514     theme === "match" || theme == "matchOutline"
10515       ? "#4caf50"
10516       : theme === "black"
10517       ? "#ffffff"
10518       : theme === "white"
10519       ? "#000000"
10520       : customColor
10521   }"
10522   d="M26 6H42V22H26z"
10523   transform="rotate(-180 34 14)"></path>
10524 <path
10525   fill="${
10526     theme === "match" || theme == "matchOutline"
10527       ? "#ffc107"
10528       : theme === "black"
10529       ? "#ffffff"
10530       : theme === "white"
10531       ? "#000000"
10532       : customColor
10533   }"
10534   d="M26 26H42V42H26z"
10535   transform="rotate(-180 34 34)"></path>
10536 <path fill="${
10537   theme === "match" || theme == "matchOutline"
10538     ? "#03a9f4"
10539     : theme === "black"
10540     ? "#ffffff"
10541     : theme === "white"
10542     ? "#000000"
10543     : customColor
10544 }" d="M6 26H22V42H6z" transform="rotate(-180 14 34)"></path>
10545 </svg>`;
10546 
10547 const twitterLoginIcon = (
10548   theme,
10549   customColor
10550 ) => `<svg
10551 xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png"
10552 width="25"
10553 height="25"
10554 viewBox="0 0 48 48">
10555 <polygon fill="${
10556   theme === "match" || theme === "black"
10557     ? "#ffffff"
10558     : theme === "matchOutline" || theme === "white"
10559     ? "#000000"
10560     : customColor
10561 }" points="41,6 9.929,42 6.215,42 37.287,6"></polygon>
10562 <polygon
10563   fill="${
10564     theme === "match" || theme === "black"
10565       ? "#000000"
10566       : theme === "matchOutline" || theme === "white"
10567       ? "#ffffff"
10568       : customColor
10569   }"
10570   fill-rule="evenodd"
10571   points="31.143,41 7.82,7 16.777,7 40.1,41"
10572   clip-rule="evenodd"></polygon>
10573 <path
10574   fill="${
10575     theme === "match" || theme === "black"
10576       ? "#ffffff"
10577       : theme === "matchOutline" || theme === "white"
10578       ? "#000000"
10579       : customColor
10580   }"
10581   d="M15.724,9l20.578,30h-4.106L11.618,9H15.724 M17.304,6H5.922l24.694,36h11.382L17.304,6L17.304,6z"></path>
10582 </svg>`;
10583 
10584 const amazonLoginIcon = (theme, customColor) => `
10585  <svg
10586       xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png"
10587       x="0px"
10588       y="0px"
10589       width="25"
10590       height="25"
10591       viewBox="0 0 50 50"
10592     >
10593       <path
10594         fill="${
10595           theme === "black"
10596             ? "#ffffff"
10597             : theme === "matchOutline"
10598             ? "#FF9900"
10599             : theme === "white" || theme === "match"
10600             ? "#000000"
10601             : customColor
10602         }"
10603         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"
10604       ></path>
10605     </svg>`;
10606 
10607 const instagramLoginIcon= (theme, customColor) => `
10608     <svg
10609       width="25"
10610       height="25"
10611       viewBox="0 0 25 24"
10612       fill="none"
10613       xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png">
10614       <path
10615         fill-rule="evenodd"
10616         clip-rule="evenodd"
10617         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.
1061764321C8.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"
10618         fill="url(#paint0_radial_378_3535)" />
10619       <path
10620         fill-rule="evenodd"
10621         clip-rule="evenodd"
10622         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"
10623         fill="url(#paint0_radial_378_3535)" />
10624       <path
10625         fill-rule="evenodd"
10626         clip-rule="evenodd"
10627         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.
1062764321C8.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"
10628         fill="url(#paint0_radial_378_3535)" />
10629       <path
10630         fill-rule="evenodd"
10631         clip-rule="evenodd"
10632         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"
10633         fill="url(#paint1_radial_378_3535)" />
10634       <defs>
10635         <radialGradient
10636           id="paint0_radial_378_3535"
10637           cx="0"
10638           cy="0"
10639           r="1"
10640           gradientUnits="userSpaceOnUse"
10641           gradientTransform="translate(17.4 22.7) rotate(-115.776) scale(27.2737 40.5665)">
10642           <stop offset="0.24392" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF1B90' : customColor}" />
10643           <stop offset="0.436673" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#F80261' : customColor}" />
10644           <stop offset="0.688476" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#ED00C0' : customColor}" />
10645           <stop offset="0.776787" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#C500E9' : customColor}" />
10646           <stop offset="0.893155" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#7017FF' : customColor}" />
10647         </radialGradient>
10648         <radialGradient
10649           id="paint1_radial_378_3535"
10650           cx="0"
10651           cy="0"
10652           r="1"
10653           gradientUnits="userSpaceOnUse"
10654           gradientTransform="translate(7.75 19.31) rotate(-57.4396) scale(11.8174 12.2918)">
10655           <stop stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FFD600' : customColor}" />
10656           <stop offset="0.484375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF6930' : customColor}" />
10657           <stop offset="0.734375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" />
10658           <stop offset="1" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" stop-opacity="0" />
10659         </radialGradient>
10660       </defs>
10661     </svg>`;
10662 
10663 const magicLinkLoginIcon = (theme, customColor) => `
10664   <svg
10665     xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png"
10666     width="25"
10667     height="25"
10668     fill="none"
10669     viewBox="0 0 25 25"
10670   >
10671     <path
10672       fill="${
10673         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' || theme === 'white' ? '#000000' : customColor
10674       }"
10675       fillRule="evenodd"
10676       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"
10677       clipRule="evenodd"
10678     ></path>
10679   </svg>`;
10680 
10681 const mobileAppLoginIcon = (theme, customColor) => `
10682   <svg
10683     width="20"
10684     height="24"
10685     viewBox="0 0 12 16"
10686     fill="none"
10687     xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png"
10688   >
10689     <path
10690       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"
10691       fill=${
10692         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#FD823E' : theme === 'white' ? '#000000' : customColor
10693       }
10694     />
10695   </svg>
10696 `;
10697 
10698 const linkedinLoginIcon = (theme, customColor) => `
10699   <svg
10700     xmlns="https://ik.imagekit.io/kktbpaqjn/logorajadana.png"
10701     width="25"
10702     height="24"
10703     viewBox="0 0 25 24"
10704     fill="none"
10705   >
10706     <path
10707       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"
10708       fill=${
10709         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#0A66C2' : theme === 'white' ? '#000000' : customColor
10710       }
10711     />
10712   </svg>
10713 `;
10714 
10715 function isElementVisible(element) {
10716   return (
10717     document.body.contains(element) &&
10718     getComputedStyle(element).display !== "none" &&
10719     getComputedStyle(element).visibility !== "hidden" &&
10720     getComputedStyle(element).opacity !== "0" &&
10721     !element.hasAttribute("hidden") &&
10722     !isAncestorHidden(element)
10723   );
10724 }
10725 
10726 function isAncestorHidden(element) {
10727   let parent = element.parentElement;
10728   while (parent) {
10729     if (
10730       getComputedStyle(parent).display === "none" ||
10731       getComputedStyle(parent).visibility === "hidden" ||
10732       getComputedStyle(parent).opacity === "0" ||
10733       parent.hasAttribute("hidden")
10734     ) {
10735       return true;
10736     }
10737     parent = parent.parentElement;
10738   }
10739   return false;
10740 }
10741 
10742 function showAlert(message) {
10743   const alertBox = document.createElement("div");
10744   alertBox.textContent = message;
10745   alertBox.style.position = "fixed";
10746   alertBox.style.top = "20px";
10747   alertBox.style.right = "-300px"; // Start off-screen
10748   alertBox.style.backgroundColor = "#000000"; // Black background
10749   alertBox.style.color = "#ffffff"; // White text
10750   alertBox.style.padding = "15px";
10751   alertBox.style.borderRadius = "8px";
10752   alertBox.style.zIndex = "1000";
10753   alertBox.style.transition =
10754     "right 0.5s ease-in-out, opacity 0.5s ease-in-out"; // Transition for sliding and fading
10755   alertBox.style.boxShadow = "0 2px 5px rgba(0, 0, 0, 0.2)"; // Optional shadow for depth
10756 
10757   document.body.appendChild(alertBox);
10758 
10759   // Slide in
10760   requestAnimationFrame(() => {
10761     alertBox.style.right = "20px"; // Move into view
10762     alertBox.style.opacity = "1"; // Ensure opacity is set to 1
10763   });
10764 
10765   // Slide out and remove the alert after a few seconds
10766   setTimeout(() => {
10767     alertBox.style.opacity = "0"; // Fade out
10768     alertBox.style.right = "-300px"; // Move out of view
10769 
10770     // Wait for the transition to finish before removing the element
10771     setTimeout(() => {
10772       document.body.removeChild(alertBox);
10773     }, 500); // Match this duration with the exit transition duration
10774   }, 3000);
10775 }
10776 </script>
10776
10777 
10778 <style>
10779     .daftarku-fixed-footer {
10780             display: flex;
10781             justify-content: space-around;
10782             position: fixed;
10783             background: linear-gradient(to bottom, #000000 0%, #3d3d3d, #000000 100%);
10784             box-shadow: 0 0 12px #ffd700;
10785             outline: none;
10786             padding: 5px 0;
10787             box-shadow: 0 0 0 0 2px 2px #198f01;
10788             left: 0;
10789             right: 0;
10790             bottom: 0;
10791             z-index: 99;
10792             border-radius: 40px 40px 0px 0px;
10793             border-style:dashed;
10794             
10795         }
10796 
10797         .daftarku-fixed-footer a {
10798             flex-basis: calc((100% - 15px*6)/ 5);
10799             text-decoration: none;
10800             display: flex;
10801             flex-direction: column;
10802             justify-content: center;
10803             align-items: center;
10804             color: #fff;
10805             max-width: 75px;
10806             font-size: 12px;
10807             font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
10808         }
10809 
10810         .daftarku-fixed-footer a:hover {
10811             font-weight: bold;
10812         }
10813 
10814         .daftarku-fixed-footer .center {
10815             transform: scale(1.5) translateY(-5px);
10816             background: center no-repeat;
10817             background-size: contain;
10818             background-color: inherit;
10819             border-radius: 50%;
10820         }
10821 
10822         .daftarku-fixed-footer img {
10823             max-width: 20px;
10824             margin-bottom: 0;
10825             max-height: 20px;
10826         }
10827 </style>
10828     
10829     <div class="daftarku-fixed-footer">
10830     <a href="https://77.louerunepiscine.com/" rel="nofollow noopener" target="_blank">
10831         <img layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/07/30/promo.png" alt="PROMOSI">
10832         PROMO
10833     </a>
10834     <a href="https://77.louerunepiscine.com/" rel="nofollow noopener" target="_blank">
10835         <img layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/07/30/login.png" alt="LOGIN">
10836         LOGIN
10837     </a>
10838     <a href="https://77.louerunepiscine.com/" rel="nofollow noopener" target="_blank" class="tada">
10839         <img layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/07/30/daftar.png" alt="DAFTAR">
10840         DAFTAR
10841     </a>
10842     <a href="https://77.louerunepiscine.com/" rel="nofollow noopener" target="_blank">
10843         <img layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/08/27/icon-whatsapp.png" alt="WHATSAPP">
10844         WHATSAPP
10845     </a>
10846     <a href="https://77.louerunepiscine.com/" rel="nofollow noopener" target="_blank"
10847         class="js_live_chat_link live-chat-link">
10848         <img class="live-chat-icon" layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/06/17/live-chat.png" alt="Live Chat">
10849         Live Chat
10850     </a>
10851 </div>
10852 </div>
10853 
10853<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"d1f6ecb0d44247bca15f2f6072300f64","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 10853
10853
10854<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"d1f6ecb0d44247bca15f2f6072300f64","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 10854
10854
10855<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"5d9ec6a55a004d5dad324d165b2ea53b","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 10855
10855
10856<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"5d9ec6a55a004d5dad324d165b2ea53b","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 10856
10856
10857<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"20ff63c89e444c93b1e62632aa7a7e4e","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 10857
10857
10858<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon='{"version":"2024.11.0","token":"beb08133c55c4987a3c7a5b6870f762a","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 10858
10858
10859<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":"d7c21eac8e3547a1833c8f023b961fa9","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 10859
10859
10860<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":"d7c21eac8e3547a1833c8f023b961fa9","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 10860
10860
10861<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":"d7c21eac8e3547a1833c8f023b961fa9","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 10861
10861
10862<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":"d7c21eac8e3547a1833c8f023b961fa9","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 10862
10862
10863<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"d7c21eac8e3547a1833c8f023b961fa9","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 10863
10863
10864<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"d7c21eac8e3547a1833c8f023b961fa9","r":1}' crossorigin="anonymous"></script>
vendor: 2 bytes, line 10864
10864
10865<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"d7c21eac8e3547a1833c8f023b961fa9","r":1}' crossorigin="anonymous"></script>
vendor: 2 bytes, line 10865
10865
10866<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"c5bce40100ef4ba1ad1913e24b1f71c9","r":1}' crossorigin="anonymous"></script>
vendor: 2 bytes, line 10866
10866
10867<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":"c5bce40100ef4ba1ad1913e24b1f71c9","r":1,"spa":2}' crossorigin="anonymous"></script>
10867
10868</body>
10869 </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.