PageSourceSearch

https://collegeofnepal.com/checkout

html collegeofnepal.com collected 2026-10-05 04:31:22 UTC 667,137 bytes, 12,608 lines download raw bytes

1
2<!doctype html>
3   <html class="no-js">
4     <head>
5     <meta charset="utf-8">
6     <meta http-equiv="X-UA-Compatible" content="IE=edge">
7     <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1">
8     <meta name="apple-itunes-app" content="app-id=1576832504">
9     <link rel="icon" type="image/x-icon" href="https://harvestcakes.id/imagecd/logo.png">
10     <title>Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal</title>
11     <meta name="description" content="Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!">
12     <meta name="keywords" content="pubtogel, situs toto, toto togel, togel 4d, situs togel, togel online" />
13     <link rel="canonical" href="https://collegeofnepal.com/">
14     <link rel="amphtml" href="https://lingkaransetan.com/pub/d7/"/>
15     <meta property="og:type" content="SITUS TOTO">
16     <meta property="og:title" content="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal">
17     <meta property="og:image" content="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
18     <meta property="og:image:secure_url" content="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
19     <meta property="og:image" content="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
20     <meta property="og:image:secure_url" content="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
21     <meta property="og:image" content="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
22     <meta property="og:image:secure_url" content="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
23     <meta property="og:description" content="Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!">
24     <meta property="og:price:amount" content="10,000-,">
25     <meta property="og:price:currency" content="IDR">
26     <meta property="og:url" content="https://collegeofnepal.com/">
27     <meta property="og:site_name" content="PUBTOGEL">
28     <meta name="twitter:site" content="@PUBTOGEL">
29     <meta name="twitter:card" content="summary">
30     <meta name="twitter:title" content="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal">
31     <meta name="twitter:description" content="Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!">
32     <meta name="twitter:image" content="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
33     <meta name="twitter:image:width" content="600">
34     <meta name="twitter:image:height" content="600">
35     <link rel="shortcut icon" href="https://harvestcakes.id/imagecd/logo.png" type="image/png">
36     <meta name="theme-color" content="#ffffff">
37     <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet">
38     <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" />
39     <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201">
39<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer></script>
39
40     
40<script
41       src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.13.2/jquery-ui.min.js"
42       integrity="sha512-57oZ/vW8ANMjR/KQ6Be9v/+/h6bq9/l3f0Oc7vn6qMqyhvPd1cvKBRWWpzu0QoneImqr2SkmO4MSqU+RpHom3Q=="
43       crossorigin="anonymous"
44       referrerpolicy="no-referrer"
45       defer
46     ></script>
46
47     <div class="button-login-daftar">
48                     <a class="login" href="https://lingkaransetan.com/pub/d7/" rel="nofollow noreferrer" style="color: white;">
49                         LOGIN
50                     </a>
51                     <a class="register" href="https://lingkaransetan.com/pub/d7/" rel="nofollow noreferrer" style="color: white;">
52                         DAFTAR
53                     </a>
54                 </div>
55 
56 <link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all" />
57 
58 <link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all" />
59 <link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css">
60 
61 
61<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
61
62 
62<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="text/javascript"></script>
62
63 
63<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
63
64     
64<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
64
65 <meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog">
66 <link rel="alternate" type="application/json+oembed" href="https://collegeofnepal.com/.oembed">
67 
67<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID"></script>
67
68 
68<script id="shopify-features" type="application/json">{"accessToken":"d2e176e59f6658d5056234d6249b3ab4","betas":["rich-media-storefront-analytics"],"domain":"outerbloom.com","predictiveSearch":true,"shopId":15896833,"locale":"en"}</script>
68
69 
69<script>var Shopify = Shopify || {};
70 Shopify.shop = "outerbloom1.myshopify.com";
71 Shopify.locale = "en";
72 Shopify.currency = {"active":"IDR","rate":"1.0"};
73 Shopify.country = "ID";
74 Shopify.theme = {"name":"web-outerbloom-shopify\/main","id":153139282135,"schema_name":null,"schema_version":null,"theme_store_id":null,"role":"main"};
75 Shopify.theme.handle = "null";
76 Shopify.theme.style = {"id":null,"handle":null};
77 Shopify.cdnHost = "outerbloom.com/cdn";
78 Shopify.routes = Shopify.routes || {};
79 Shopify.routes.root = "/";</script>
79
80 
80<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
80
81 
81<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>
81
82 
82<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
82
83 
83<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});
84 "></script>
84
85 
85<script>(function() {
86   var isLoaded = false;
87   function asyncLoad() {
88     if (isLoaded) return;
89     isLoaded = true;
90     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"];
91     for (var i = 0; i < urls.length; i++) {
92       var s = document.createElement('script');
93       s.type = 'text/javascript';
94       s.async = true;
95       s.src = urls[i];
96       var x = document.getElementsByTagName('script')[0];
97       x.parentNode.insertBefore(s, x);
98     }
99   };
100   if(window.attachEvent) {
101     window.attachEvent('onload', asyncLoad);
102   } else {
103     window.addEventListener('load', asyncLoad, false);
104   }
105 })();</script>
105
106 
106<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>
106
107 
107<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
107
108 
108<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>
108
109 
109<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>
109
110 
110<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)}};
111 </script>
111
112 
112<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
113   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);
114 </script>
114
115 
115<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})}}));
116 </script>
116
117 
118 
118<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
118
119     <!-- /snippets/oldIE-js.liquid -->
120 
121 
122 <!--[if lt IE 9]>
123 
123<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
123
124 
124<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
124
125 <link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy" />
126 <link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect" />
127 
127<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
127
128 <![endif]-->
129 
130 
131 
132   
133     
134   <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">
135 <link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
136 
136<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>
136
137 
137<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":"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal","vendor":"Outerbloom Florist","id":"8144957800663","untranslatedTitle":"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal","url":"\/products\/blossom-shine","type":"Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!"},"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\":\"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal\",\"vendor\":\"Outerbloom Florist\",\"id\":\"8144957800663\",\"untranslatedTitle\":\"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal\",\"url\":\"\/products\/blossom-shine\",\"type\":\"Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!\"},\"id\":\"44083045826775\",\"image\":{\"src\":\"\/\/outerbloom.com\/cdn\/shop\/files\/Blossom-Shine-WM.jpg?v=1695788426\"},\"sku\":\"OBVSTF1086\",\"title\":\"Default Title\",\"untranslatedTitle\":\"Default Title\"}}]]"});</script>
137<script>
138   window.ShopifyAnalytics = window.ShopifyAnalytics || {};
139   window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
140   window.ShopifyAnalytics.meta.currency = 'IDR';
141   var meta = {"product":{"id":8144957800663,"gid":"gid:\/\/shopify\/Product\/8144957800663","vendor":"Outerbloom Florist","type":"Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!","variants":[{"id":44083045826775,"price":1000000
142   ,"name":"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal","public_title":null,"sku":"OBVSTF1086"}],"remote":false},"page":{"pageType":"product","resourceType":"product","resourceId":8144957800663}};
143   for (var attr in meta) {
144     window.ShopifyAnalytics.meta[attr] = meta[attr];
145   }
146 </script>
146
147 
147<script class="analytics">
148   (function () {
149     var customDocumentWrite = function(content) {
150       var jquery = null;
151 
152       if (window.jQuery) {
153         jquery = window.jQuery;
154       } else if (window.Checkout && window.Checkout.$) {
155         jquery = window.Checkout.$;
156       }
157 
158       if (jquery) {
159         jquery('body').append(content);
160       }
161     };
162 
163     var hasLoggedConversion = function(token) {
164       if (token) {
165         return document.cookie.indexOf('loggedConversion=' + token) !== -1;
166       }
167       return false;
168     }
169 
170     var setCookieIfConversion = function(token) {
171       if (token) {
172         var twoMonthsFromNow = new Date(Date.now());
173         twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
174 
175         document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
176       }
177     }
178 
179     var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
180     if (trekkie.integrations) {
181       return;
182     }
183     trekkie.methods = [
184       'identify',
185       'page',
186       'ready',
187       'track',
188       'trackForm',
189       'trackLink'
190     ];
191     trekkie.factory = function(method) {
192       return function() {
193         var args = Array.prototype.slice.call(arguments);
194         args.unshift(method);
195         trekkie.push(args);
196         return trekkie;
197       };
198     };
199     for (var i = 0; i < trekkie.methods.length; i++) {
200       var key = trekkie.methods[i];
201       trekkie[key] = trekkie.factory(key);
202     }
203     trekkie.load = function(config) {
204       trekkie.config = config || {};
205       trekkie.config.initialDocumentCookie = document.cookie;
206       var first = document.getElementsByTagName('script')[0];
207       var script = document.createElement('script');
208       script.type = 'text/javascript';
209       script.onerror = function(e) {
210         var scriptFallback = document.createElement('script');
211         scriptFallback.type = 'text/javascript';
212         scriptFallback.onerror = function(error) {
213                 var Monorail = {
214       produce: function produce(monorailDomain, schemaId, payload) {
215         var currentMs = new Date().getTime();
216         var event = {
217           schema_id: schemaId,
218           payload: payload,
219           metadata: {
220             event_created_at_ms: currentMs,
221             event_sent_at_ms: currentMs
222           }
223         };
224         return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
225       },
226       sendRequest: function sendRequest(endpointUrl, payload) {
227         // Try the sendBeacon API
228         if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
229           var blobData = new window.Blob([payload], {
230             type: 'text/plain'
231           });
232 
233           if (window.navigator.sendBeacon(endpointUrl, blobData)) {
234             return true;
235           } // sendBeacon was not successful
236 
237         } // XHR beacon
238 
239         var xhr = new XMLHttpRequest();
240 
241         try {
242           xhr.open('POST', endpointUrl);
243           xhr.setRequestHeader('Content-Type', 'text/plain');
244           xhr.send(payload);
245         } catch (e) {
246           console.log(e);
247         }
248 
249         return false;
250       },
251       isIos12: function isIos12() {
252         return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
253       }
254     };
255     Monorail.produce('monorail-edge.shopifysvc.com',
256       'trekkie_storefront_load_errors/1.1',
257       {shop_id: 15896833,
258       theme_id: 153139282135,
259       app_name: "storefront",
260       context_url: window.location.href,
261       source_url: "//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js"});
262 
263         };
264         scriptFallback.async = true;
265         scriptFallback.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js';
266         first.parentNode.insertBefore(scriptFallback, first);
267       };
268       script.async = true;
269       script.src = '//outerbloom.com/cdn/s/trekkie.storefront.10b9e06bd1980b2ce8435c2fe6c8f07eb6305ae4.min.js';
270       first.parentNode.insertBefore(script, first);
271     };
272     trekkie.load(
273       {"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}}
274     );
275 
276     var loaded = false;
277     trekkie.ready(function() {
278       if (loaded) return;
279       loaded = true;
280 
281       window.ShopifyAnalytics.lib = window.trekkie;
282 
283       var originalDocumentWrite = document.write;
284       document.write = customDocumentWrite;
285       try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
286       document.write = originalDocumentWrite;
287 
288       window.ShopifyAnalytics.lib.page(null,{"pageType":"product","resourceType":"product","resourceId":8144957800663,"shopifyEmitted":true});
289 
290       var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
291       var token = match? match[1]: undefined;
292       if (!hasLoggedConversion(token)) {
293         setCookieIfConversion(token);
294         window.ShopifyAnalytics.lib.track("Viewed Product",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!","nonInteraction":true,"remote":false},undefined,undefined,{"shopifyEmitted":true});
295       window.ShopifyAnalytics.lib.track("monorail:\/\/trekkie_storefront_viewed_product\/1.1",{"currency":"IDR","variantId":44083045826775,"productId":8144957800663,"productGid":"gid:\/\/shopify\/Product\/8144957800663","name":"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal","price":"835000.00","sku":"OBVSTF1086","brand":"Outerbloom Florist","variant":null,"category":"Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!","nonInteraction":true,"remote":false,"referer":"https:\/\/outerbloom.com\/products\/blossom-shine"});
296       }
297     });
298 
299 
300         var eventsListenerScript = document.createElement('script');
301         eventsListenerScript.async = true;
302         eventsListenerScript.src = "//outerbloom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-abeef7a0.js";
303         document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
304 
305 })();</script>
305
306   
306<script>
307   if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
308     window.ga = function ga() {
309       (window.ga.q = window.ga.q || []).push(arguments);
310       if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
311         window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
312       }
313       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.");
314     };
315     if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
316       window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
317     }
318   }
319 </script>
319
320 
320<script
321   defer
322   src="https://outerbloom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-2.0.13.min.js"
323   data-application="storefront-renderer"
324   data-shop-id="15896833"
325   data-render-region="gcp-asia-southeast1"
326   data-page-type="product"
327   data-theme-instance-id="153139282135"
328   data-theme-name=""
329   data-theme-version=""
330   data-monorail-region="shop_domain"
331   data-resource-timing-sampling-rate="10"
332   data-shs="true"
333   data-shs-beacon="true"
334   data-shs-export-with-fetch="true"
335   data-shs-logs-sample-rate="1"
336 ></script>
336
337 </head><body
338     data-template="product"
339     id="blossom-shine"
340     class="template-product template-product"
341   >
342     <!-- Google Tag Manager (noscript) -->
vendor: 93 bytes, lines 342-345
342
343     <noscript
344       ><iframe
345         src="https://www.googletagmanager.com/ns.html?id=
345GTM-MF9VVZX
vendor: 135 bytes, lines 345-351
345"
346         height="0"
347         width="0"
348         style="display:none;visibility:hidden"
349       ></iframe
350     ></noscript>
351     
351<!-- End Google Tag Manager (noscript) -->
352 
353     
354 
355     <div class="header-wrapper">
356       
357       <div id="shopify-section-NotifBar" class="shopify-section m-0">
358 
359 <style>
360   #notification {z-index: 99;width: 100%;transition: top 0.2s ease-in-out;}
361   #notification.promo-up {top: -48px!important;}
362   .promo-bg {width: 100%;padding: 6px 0;background-color: #242424;}
363   .notification__message p {margin: 0;color: #000000;font-size: 14px!important;}
364   .notification__message p a {text-decoration: underline;color: #ffffff;}
365   @media (max-width: 991px){
366     .notification__message p {font-size: 14px!important;}
367   }
368 </style>
369 <input id="clearCookie" class="hide" type="button" value="Delete Cookie" />
370 <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">
371   <div class="page-width notification__inner ">
372     
373     
374     <div class="notification__message text-center">
375       <p><a href="https://collegeofnepal.com/" title="PUBTOGEL">Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal</a></p>
376     </div>
377   </div>
378 </div>
379 
380 
381 
382 
383 </div>
384       <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"/>
385 
386 
387 <header style="background-image: url(https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg); background-attachment: fixed;">
388   <div class="container">
389     <div class="header-container row justify-content-between pl-lg-0 pr-lg-0">
390         <a href="https://collegeofnepal.com/">
391         <img src="https://kucingair.com/fotobaka/logopub.png" alt="logo-PUBTOGEL" style="width: 190px;"></a>
392       <link href="https://harvestcakes.id/imagecd/logo.png" rel="shortcut icon" type="image/x-icon" />
393         <div id="menu-hamburger" class="d-lg-none">
394           <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="16" height="10" viewBox="0 0 16 10" fill="none">
395   <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"/>
396 </svg>
397 
398         <a href="/"><svg xmlns="https://kucingair.com/fotobaka/logopub.png" viewBox="0 0 854 78.29">
399   <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>
400 </svg>
401 </a>
402       </div>
403 
404       <div class="header-icon-right header-icons col-3">
405         <div class="icon icon-account-header d-none d-lg-block">
406           <a href="https://collegeofnepal.com/">
407             <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="20" height="21" viewBox="0 0 20 21" fill="none">
408   <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"/>
409   <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"/>
410 </svg>
411 
412           </a>
413         </div>
414         <div class="icon icon-wishlist-header">
415           <a href="https://collegeofnepal.com/">
416             <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
417   <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.
41711233C11.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"/>
418 </svg>
419 
420             <span class="wishlist-count d-none">0</span>
421           </a>
422         </div>
423         <div class="icon icon-cart-header">
424           <a href="https://collegeofnepal.com/">
425             <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="22" height="21" viewBox="0 0 22 21" fill="none">
426   <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"/>
427   <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"/>
428 </svg>
429 
430           </a>
431         </div>
432       </div>
433     </div>
434   </div>
435 </header>
436 
437 <nav class="nav-header" style="background-color: #242424;">
438   <div class="nav-account-mobile row m-0 d-lg-none">
439     <div class="col-6 welcome-cust p-0">
440       
441         <h1 class="logo">
442     <a href="https://collegeofnepal.com/">
443         <img src="https://kucingair.com/fotobaka/logopub.png" alt="PUBTOGEL" style="max-height:60px;">
444     </a>
445 </h1>
446 
447       
448     </div>
449     
450       <div class="col-6 login-register text-right p-0">
451         <a href="https://lingkaransetan.com/pub/d7/">Log In</a> | <a href="https://lingkaransetan.com/pub/d7/">Sign Up</a>
452       </div>
453   </div>
454   <ul class="nav-menu container">
455     
456       <li class="nav-menu container">
457         <a href="https://collegeofnepal.com/">
458           <span style="color: #ffffff;">PUBTOGEL</span>
459         
460     
461       <li class=" nav-menu container">
462         <a href="https://collegeofnepal.com/">
463           <span style="color: #ffffff;">SITUS TOTO</span>
464           
465     
466       <li class=" nav-menu container">
467         <a href="https://collegeofnepal.com/">
468           <span style="color: #ffffff;">TOTO TOGEL</span>
469     
470       <li class=" nav-menu container">
471         <a href="https://collegeofnepal.com/">
472           <span style="color: #ffffff;">TOGEL 4D</span>
473 
474       <li class=" nav-menu container">
475         <a href="https://collegeofnepal.com/">
476           <span style="color: #ffffff;">SITUS TOGEL</span>
477 
478       <li class=" nav-menu container">
479         <a href="https://collegeofnepal.com/">
480           <span style="color: #ffffff;">TOGEL ONLINE</span>
481       
482 <div class="overlay-nav">
483   <!-- Mobile Close Button in Overlay -->
484   <button id="nav-close" class="nav-close-btn d-lg-none">
485     <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="https://kucingair.com/fotobaka/logopub.png">
486       <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
487     </svg>
488   </button>
489 </div>
490 
491 
491<script>
492   if ($(window).width() < 992) {
493     // Level 1 menu accordion (main menu items)
494     $(".nav-menu .nav-menu container > a").click(function(e){
495       e.preventDefault()
496       const parentLi = $(this).parent()
497       const isCurrentlyOpen = parentLi.hasClass("menu-open")
498       
499       // Close all other open menus (accordion behavior)
500       $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open")
501       $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp()
502       
503       // Toggle current menu
504       if (isCurrentlyOpen) {
505         parentLi.removeClass("menu-open")
506         $(this).next(".megamenu").slideUp()
507       } else {
508         parentLi.addClass("menu-open")
509         $(this).next(".megamenu").slideDown()
510       }
511     })
512 
513     // Level 2 menu accordion (submenu items with grandchildren)
514     $(document).on('click', '.dropdown-menu .has-submenu > a', function(e){
515       e.preventDefault()
516       const parentLi = $(this).parent()
517       const isCurrentlyOpen = parentLi.hasClass("submenu-open")
518       const grandchild = $(this).next(".grandchild")
519       
520       // Close all other open submenus in the same dropdown (accordion behavior)
521       parentLi.siblings('.has-submenu').removeClass("submenu-open")
522       parentLi.siblings('.has-submenu').find('.grandchild').slideUp()
523       parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)')
524       
525       // Toggle current submenu
526       if (isCurrentlyOpen) {
527         parentLi.removeClass("submenu-open")
528         grandchild.slideUp()
529         $(this).find('.chevron-right').css('transform', 'rotate(0deg)')
530       } else {
531         parentLi.addClass("submenu-open")
532         grandchild.slideDown()
533         $(this).find('.chevron-right').css('transform', 'rotate(90deg)')
534       }
535     })
536 
537     $("#menu-hamburger").click(function(e){
538       e.preventDefault()
539       $("body").toggleClass("nav_open")
540     })
541     
542     // Handle close button click
543     $("#nav-close").click(function(e){
544       e.preventDefault()
545       $("body").removeClass("nav_open")
546       // Close all open menus when close button is clicked
547       $(".nav-menu .nav-menu container").removeClass("menu-open")
548       $(".nav-menu .megamenu").slideUp()
549       $(".dropdown-menu .has-submenu").removeClass("submenu-open")
550       $(".dropdown-menu .grandchild").slideUp()
551       $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)')
552     })
553   }
554 
555   $(".overlay-nav").click(function(e){
556       e.preventDefault()
557       $("body").removeClass("nav_open")
558       // Close all open menus when overlay is clicked
559       $(".nav-menu .nav-menu container").removeClass("menu-open")
560       $(".nav-menu .megamenu").slideUp()
561       $(".dropdown-menu .has-submenu").removeClass("submenu-open")
562       $(".dropdown-menu .grandchild").slideUp()
563       $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)')
564   })
565 </script>
565
566 
567 
568 </div>
569 
570       <div id="shopify-section-search-popup" class="shopify-section m-0"><style>
571   #search-trigger {
572     cursor: pointer;
573   }
574   #search-popup {
575     display: none;
576     position: fixed;
577     left: 0;
578     width: 100%;
579     top: 0;
580     height: 100%;
581     justify-content: center;
582     z-index: 9999;
583     background: rgb(196 196 196 / 30%);
584   }
585   #search-input {
586     align-self: center;
587     width: 100%;
588     height: 80px;
589     position: absolute;
590     top: 0;
591     border-bottom: 0.5px solid #A3A3A3;
592     background-color: #fff;
593   }
594   #search-input * {
595     align-self: center;
596   }
597   #search-type {
598     width: 100%;
599     border: none;
600     padding-right: 20px;
601     padding-left: 20px;
602     font-size: 16px;
603     color: #757575;
604   }
605   #search-btn {
606     font-size: 16px;
607     font-weight: 500;
608   }
609   #search-result {
610     min-height: 490px;
611     width: 100%;
612     padding-top: 80px;
613   }
614   #search-result .container {
615     background-color: #fff;
616     padding: 20px 40px;
617   }
618   body.search-popup-open {
619   /* .search-popup-open */
620     overflow: hidden;
621   }
622   .search-popup-open #loc_delivery {
623     display: none
624   }
625   .search-header svg {
626     display: none;
627     cursor: pointer;
628   }
629   .wrapper-search-popup {
630     max-height: calc(100vh - 150px);
631     overflow-y: auto;
632     overflow-x: hidden;
633   }
634 
635   .group-recommend {
636     padding: 20px 40px;
637   }
638 
639   .resultsearch {
640     display: none;
641   }
642   .results { padding: 20px 40px }
643   .resultsearch label {
644     font-weight: 600;
645     padding-bottom: 20px;
646     display: block;
647     margin-bottom: 20px;
648     border-bottom: 1px solid #AAAAAA;
649   }
650 
651   ul.result_product {
652     max-height: 300px;
653     overflow: auto;
654   }
655 
656   .group-promotion ul {
657     margin: 0;
658   }
659   .group-promotion li {
660     list-style: none;
661     margin-bottom: 12px;
662   }
663   .group-promotion li a {
664     color: inherit;
665   }
666 
667   .group-recent {
668     position: relative;
669     padding: 20px 40px;
670   }
671   .group-recent ul {
672     margin: 0;
673   }
674   .group-recent li {
675     list-style: none;
676     display: inline-block;
677     margin-right: 60px;
678   }
679   .group-recent li a {
680     color: inherit;
681   }
682 
683   .last-search svg {
684     width: 20px;
685     vertical-align: middle;
686   }
687   ul.last-search a {
688     vertical-align: middle;
689     padding: 0 10px;
690   }
691   ul.last-search li span {
692     cursor: pointer;
693   }
694   .delete-all-history {
695     position: absolute;
696     top: 25px;
697     right: 40px;
698     text-decoration: underline;
699     color: #e11d1d;
700     cursor: pointer;
701     font-size: 12px;
702   }
703 
704   form.search.search-modal__form {
705     position: relative;
706   }
707 
708   button.search__button svg {
709     width: 25px;
710     color: #495057;
711     fill: #757582;
712   }
713 
714   button.search__button.field__button {
715     position: absolute;
716     top: 50%;
717     margin-top: -12px;
718   }
719 
720   .close-search {
721     display: none;
722     position: absolute;
723     right: 65px;
724     top: 10px;
725     cursor: pointer;
726   }
727 
728   .site-overlay {
729     position: fixed;
730     top: 0;
731     width: 100vw;
732     height: 100vh;
733     z-index: 1000;
734     background: #0000005c;
735     visibility: hidden;
736     opacity: 0;
737     pointer-events: none;
738     transition: all .3s linear;
739     display: block !important;
740   }
741 
742   .search-popup-open .site-overlay {
743     opacity: 1;
744     visibility: visible;
745     pointer-events: all;
746     z-index: -1;
747     cursor: pointer;
748   }
749 
750   @media (min-width: 991px) {
751     .group-recent ul {
752       column-count: 3;
753     }
754     .group-promotion li a {
755       font-size: 12px;
756       font-weight: 400;
757     }
758     .group-recent li a {
759       font-size: 12px;
760       font-weight: 400;
761     }
762   }
763 
764   .moreresult {
765     padding: 10px 40px;
766     border-top: 1px solid #AAAAAA;
767   }
768   .moreresult * {
769     align-self: center;
770   }
771   .moreresult p {
772     margin: 0;
773     font-size: 12px !important;
774   }
775   .moreresult svg {
776     width: 13px;
777   }
778 
779   @media (max-width: 992px) {
780     .icon-key-mobile {
781         height: auto!important;
782         width: 10px!important;
783     }
784     body.grid-view.search-popup-open .products {
785       -ms-flex: 0 0 100%!important;
786       flex: 0 0 100%!important;
787       max-width: 100%!important;
788     }
789     button.search__button svg {
790       width: 20px;
791     }
792     #search-result {
793       padding-left: 0;
794       padding-right: 0;
795     }
796     #search-result {
797       padding-top: 55px;
798     }
799     #search-input {
800       height: 55px;
801     }
802     .group-recommend {
803       padding: 20px;
804     }
805     #search-input .container {
806       padding: 0 20px;
807     }
808     #search-type {
809       font-size: 14px;
810     }
811     #search-btn {
812       font-size: 12px;
813       text-decoration: underline;
814     }
815     .results {
816       padding: 20px;
817     }
818     .group-recommend h3 {
819       font-size: 16px;
820     }
821     .products .card-body {
822       padding: 8px 0px 10px;
823     }
824     .moreresult {
825       padding: 10px 20px;
826     }
827   }
828 </style>
829  <style type="text/css">
830         div.advertisement-placeholder {
831             text-align: center;
832             padding-bottom: 20px;
833             display: flex;
834             flex-direction: column;
835             justify-content: center;
836         }
837         div.advertisement-text p {
838             margin: 0;
839             font-family: Open Sans;
840             font-style: normal;
841             font-weight: normal;
842             font-size: 10px;
843             line-height: 20px;
844             color: #999999;
845         }
846         div.advertisement-banner {
847             margin: 0px auto;
848         }
849         div#div-gpt-ad-billboard-placeholder {
850             width: 996px;
851             margin: 0 auto;
852             background: #F5F5F5;
853             padding-bottom: unset !important;
854             min-height: 200px;
855         }
856         div#div-gpt-ad-lb-placeholder {
857             background: #F5F5F5;
858             padding-bottom: unset !important;
859             min-height: 280px;
860         }
861         .faq-section{
862             max-width:1200px;
863             margin:50px auto;
864             padding:40px 20px;
865             position:relative;
866             background-color: rgba(0, 0, 0, 0.1);
867             backdrop-filter: blur(25px);
868             border-radius: 20px;
869             }
870         
871         .faq-section::before{
872             content:"";
873             position:absolute;
874             top:0;left:50%;
875             transform:translateX(-50%);
876             width:80%;
877             height:2px;
878             background:linear-gradient(90deg,transparent,#1da39c,transparent)
879             }
880             
881         .faq-section h2{
882             text-align:center;
883             font-size:34px;font-weight:700;
884             margin-bottom:50px;
885             background: linear-gradient(135deg, #1da39c, #1da39c, #1da39c);
886             -webkit-background-clip:text;
887             -webkit-text-fill-color:transparent;
888             background-clip:text;
889             font-family:"Poppins",sans-serif;letter-spacing:1px
890         }
891         
892         .faq-container{
893             display:flex;
894             flex-direction:column;
895             gap:25px
896         }
897         
898         .faq-item{
899             background:linear-gradient(145deg,#0a0a0a,#1a1a1a);
900             border:2px solid #ff0000;
901             border-radius:20px;overflow:hidden;
902             transition:all .4s ease;box-shadow:0 5px 20px rgba(0,0,0,0.5)
903         }
904         
905         .faq-item:hover{
906             border-color:#ff0000;
907             transform:translateX(10px);
908             box-shadow:0 12px 35px rgba(253, 4, 4, 0.25)
909         }
910 
911         .faq-question{width:100%;
912             padding:28px 35px;background:transparent;
913             color:#ffffff;
914             font-size:18px;
915             font-weight:600;
916             text-align:left;
917             border:none;cursor:pointer;
918             display:flex;
919             justify-content:space-between;
920             align-items:center;
921             font-family:"Poppins",sans-serif;
922             transition:all .3s ease
923         }
924         
925         .faq-question:hover{
926             color:#1da39c
927         }
928         
929         .faq-question::after{
930             content:'+';
931             font-size:32px;
932             font-weight:300;
933             transition:all .4s ease;
934             color:#1da39c;
935             width:40px;
936             height:40px;
937             display:flex;
938             align-items:center;
939             justify-content:center;
940             border:2px solid #ff0000;border-radius:50%;
941             background:rgba(0, 0, 0, 0.1)
942         }
943         
944         .faq-item.active .faq-question::after{
945             transform:rotate(135deg);
946             background:linear-gradient(135deg,#ff0000,#ff0000);
947             color:#000;border-color:transparent
948         }
949         
950         .faq-answer{
951             max-height:0;
952             overflow:hidden;
953             transition:max-height .5s ease,padding .5s ease;
954             background:linear-gradient(180deg,rgba(253,228,4,0.05),transparent);
955             padding:0 35px
956         }
957         
958         .faq-item.active .faq-answer{
959             max-height:800px;padding:30px 35px;
960             border-top:1px solid rgba(253, 4, 4, 0.3)
961         }
962         
963         .faq-answer p{
964             color:#e0e0e0;
965             font-size:16px;
966             line-height:2;
967             margin:0;
968             font-family:"Poppins",sans-serif
969         }
970 
971         @media
972             (max-width:768px)
973         {
974         
975         .faq-section
976             {padding:30px 15px}
977         
978         .faq-section h2
979             {font-size:26px}
980         
981         .faq-question
982             {font-size:16px;
983             padding:22px 25px}
984         
985         .faq-question::after
986             {width:35px;
987             height:35px;
988             font-size:28px}
989         
990         .faq-answer
991             {padding:0 25px}
992         
993         .faq-item.active .faq-answer
994             {padding:25px}
995         
996         .faq-item:hover
997             {transform:translateX(5px)}
998             }
999     </style>
1000 <div id="search-popup">
1001   <div id="search-input" class="row">
1002     <div class="container w-100">
1003       <form
1004         action="/search"
1005         method="get"
1006         role="search"
1007         class="search search-modal__form d-flex justify-content-between"
1008       >
1009         <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="20" height="20" viewBox="0 0 20 20" fill="none">
1010   <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"/>
1011 </svg>
1012 
1013         <input type="hidden" name="type" value="product">
1014         <input
1015           type="text"
1016           id="search-type"
1017           name="q"
1018           class="search-popup"
1019           placeholder="Gifts that linger: Uncover treasures for cherished moments."
1020         >
1021         <div class="close-search"><svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
1022   <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"/>
1023 </svg>
1024 </div>
1025         <button id="search-btn">Search</button>
1026       </form>
1027     </div>
1028   </div>
1029   <div id="search-result" class="container m-auto">
1030     <div class="container p-0">
1031       <div class="group-promotion">
1032         <div class="resultsearch">
1033           <div class="row results">
1034             <div class="col-12 col-lg-6 mb-3 mb-lg-0">
1035               <label>SUGGESTIONS</label>
1036               <ul class="result_collection"></ul>
1037             </div>
1038             <div class="col-12 col-lg-6">
1039               <label>PRODUCTS</label>
1040               <ul class="result_product"></ul>
1041             </div>
1042           </div>
1043           <div class="d-flex justify-content-between moreresult m-0">
1044             <p>Search for<span></span></p>
1045             <svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.png" width="32" height="32" viewBox="0 0 32 32">
1046 <title>icon-arrow-right</title>
1047 <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>
1048 </svg>
1049           </div>
1050         </div>
1051       </div>
1052       <div class="group-recent hide">
1053         <h3>RECENT SEARCH</h3>
1054         <span class="delete-all-history">Hapus riwayat</span>
1055         <ul class="last-search"></ul>
1056       </div>
1057       <div class="group-recommend">
1058         <h3>YOU MAY ALSO LIKE</h3>
1059         
1060         
1061           <div class="row popup-recommend c-products-grid infinite-case product-multi-">
1062             <div class="swiper-wrapper justify-content-between" style="margin-left:1px;">
1063               
1064                 
1065                   <div class="swiper-slide card">
1066                     
1067 
1068 
1069 
1070 <div class="products" data-lazy="false">
1071   <div class="bg-products">
1072     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake">
1073       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1074   <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
10746 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"/>
1075 </svg>
1076 
1077     </div>
1078     <a href="/products/mid-autumn-of-love-mooncake">
1079       
1080       <div class="product-card-img-container p-0 position-relative">
1081         
1082         <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">
1083       </div>
1084       <div class="card-body product-card-info">
1085         <h5 class="h5 mb-0">
1086           Mid Autumn of Love Mooncake
1087         </h5>
1088         <div class="product-card-price">
1089           
1090           <div class="product-price-sale">
1091             <s class="product-card-price-before card-money">Rp 588.000</s>
1092             <span class="product-card-discount small">	
1093               (-40%)
1094             </span> 	
1095           </div>
1096           
1097           
1098           
1099           <div class="price-discount">
1100             <h4 class="product-card-price-after card-money">Rp 348.000</h4>
1101           </div>
1102           
1103           
1104           
1105           
1106           
1107         </div>
1108         
1109       </div>
1110     </a>
1111   </div>
1112   
1113 </div>
1114 
1115                   </div>
1116                 
1117               
1118                 
1119                   <div class="swiper-slide card">
1120                     
1121 
1122 
1123 
1124 <div class="products" data-lazy="false">
1125   <div class="bg-products">
1126     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake">
1127       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1128   <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.
112811233C11.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"/>
1129 </svg>
1130 
1131     </div>
1132     <a href="/products/mid-autumn-of-joy-mooncake">
1133       
1134       <div class="product-card-img-container p-0 position-relative">
1135         
1136         <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">
1137       </div>
1138       <div class="card-body product-card-info">
1139         <h5 class="h5 mb-0">
1140           Mid Autumn of Joy Mooncake
1141         </h5>
1142         <div class="product-card-price">
1143           
1144           <div class="product-price-sale">
1145             <s class="product-card-price-before card-money">Rp 888.000</s>
1146             <span class="product-card-discount small">	
1147               (-33%)
1148             </span> 	
1149           </div>
1150           
1151           
1152           
1153           <div class="price-discount">
1154             <h4 class="product-card-price-after card-money">Rp 588.000</h4>
1155           </div>
1156           
1157           
1158           
1159           
1160           
1161         </div>
1162         
1163       </div>
1164     </a>
1165   </div>
1166   
1167 </div>
1168 
1169                   </div>
1170                 
1171               
1172                 
1173                   <div class="swiper-slide card">
1174                     
1175 
1176 
1177 
1178 <div class="products" data-lazy="false">
1179   <div class="bg-products">
1180     <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake">
1181       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1182   <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.
118211233C11.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"/>
1183 </svg>
1184 
1185     </div>
1186     <a href="/products/mid-autumn-of-fortune-mooncake">
1187       
1188       <div class="product-card-img-container p-0 position-relative">
1189         
1190         <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">
1191       </div>
1192       <div class="card-body product-card-info">
1193         <h5 class="h5 mb-0">
1194           Mid Autumn of Fortune Mooncake
1195         </h5>
1196         <div class="product-card-price">
1197           
1198           <div class="product-price-sale">
1199             <s class="product-card-price-before card-money">Rp 1.188.000</s>
1200             <span class="product-card-discount small">	
1201               (-33%)
1202             </span> 	
1203           </div>
1204           
1205           
1206           
1207           <div class="price-discount">
1208             <h4 class="product-card-price-after card-money">Rp 788.000</h4>
1209           </div>
1210           
1211           
1212           
1213           
1214           
1215         </div>
1216         
1217       </div>
1218     </a>
1219   </div>
1220   
1221 </div>
1222 
1223                   </div>
1224                 
1225               
1226                 
1227                   <div class="swiper-slide card">
1228                     
1229 
1230 
1231 
1232 <div class="products" data-lazy="false">
1233   <div class="bg-products">
1234     <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake">
1235       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1236   <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.
123611233C11.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"/>
1237 </svg>
1238 
1239     </div>
1240     <a href="/products/mid-autumn-festival-mooncake">
1241       
1242       <div class="product-card-img-container p-0 position-relative">
1243         
1244         <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">
1245       </div>
1246       <div class="card-body product-card-info">
1247         <h5 class="h5 mb-0">
1248           Mid Autumn Festival Mooncake
1249         </h5>
1250         <div class="product-card-price">
1251           
1252           <div class="product-price-sale">
1253             <s class="product-card-price-before card-money">Rp 1.288.000</s>
1254             <span class="product-card-discount small">	
1255               (-23%)
1256             </span> 	
1257           </div>
1258           
1259           
1260           
1261           <div class="price-discount">
1262             <h4 class="product-card-price-after card-money">Rp 988.000</h4>
1263           </div>
1264           
1265           
1266           
1267           
1268           
1269         </div>
1270         
1271       </div>
1272     </a>
1273   </div>
1274   
1275 </div>
1276 
1277                   </div>
1278                 
1279               
1280                 
1281                   <div class="swiper-slide card">
1282                     
1283 
1284 
1285 
1286 <div class="products" data-lazy="false">
1287   <div class="bg-products">
1288     <div class="wishlist-toggle" data-product-handle="the-jade-bouquet">
1289       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1290   <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.
129011233C11.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"/>
1291 </svg>
1292 
1293     </div>
1294     <a href="/products/the-jade-bouquet">
1295       
1296       <div class="product-card-img-container p-0 position-relative">
1297         
1298         <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">
1299       </div>
1300       <div class="card-body product-card-info">
1301         <h5 class="h5 mb-0">
1302           The Jade Bouquet
1303         </h5>
1304         <div class="product-card-price">
1305           
1306           <div class="product-price-sale">
1307             <s class="product-card-price-before card-money">Rp 435.000</s>
1308             <span class="product-card-discount small">	
1309               (-34%)
1310             </span> 	
1311           </div>
1312           
1313           
1314           
1315           <div class="price-discount">
1316             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1317           </div>
1318           
1319           
1320           
1321           
1322           
1323         </div>
1324         
1325       </div>
1326     </a>
1327   </div>
1328   
1329 </div>
1330 
1331                   </div>
1332                 
1333               
1334                 
1335                   <div class="swiper-slide card">
1336                     
1337 
1338 
1339 
1340 <div class="products" data-lazy="false">
1341   <div class="bg-products">
1342     <div class="wishlist-toggle" data-product-handle="the-selena-bouquet">
1343       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1344   <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.
134411233C11.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"/>
1345 </svg>
1346 
1347     </div>
1348     <a href="/products/the-selena-bouquet">
1349       
1350       <div class="product-card-img-container p-0 position-relative">
1351         
1352         <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">
1353       </div>
1354       <div class="card-body product-card-info">
1355         <h5 class="h5 mb-0">
1356           The Selena Bouquet
1357         </h5>
1358         <div class="product-card-price">
1359           
1360           <div class="product-price-sale">
1361             <s class="product-card-price-before card-money">Rp 335.000</s>
1362             <span class="product-card-discount small">	
1363               (-29%)
1364             </span> 	
1365           </div>
1366           
1367           
1368           
1369           <div class="price-discount">
1370             <h4 class="product-card-price-after card-money">Rp 235.000</h4>
1371           </div>
1372           
1373           
1374           
1375           
1376           
1377         </div>
1378         
1379       </div>
1380     </a>
1381   </div>
1382   
1383 </div>
1384 
1385                   </div>
1386                 
1387               
1388                 
1389                   <div class="swiper-slide card">
1390                     
1391 
1392 
1393 
1394 <div class="products" data-lazy="false">
1395   <div class="bg-products">
1396     <div class="wishlist-toggle" data-product-handle="the-viola-bouquet">
1397       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1398   <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.
139811233C11.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"/>
1399 </svg>
1400 
1401     </div>
1402     <a href="/products/the-viola-bouquet">
1403       
1404       <div class="product-card-img-container p-0 position-relative">
1405         
1406         <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">
1407       </div>
1408       <div class="card-body product-card-info">
1409         <h5 class="h5 mb-0">
1410           The Viola Bouquet
1411         </h5>
1412         <div class="product-card-price">
1413           
1414           <div class="product-price-sale">
1415             <s class="product-card-price-before card-money">Rp 385.000</s>
1416             <span class="product-card-discount small">	
1417               (-25%)
1418             </span> 	
1419           </div>
1420           
1421           
1422           
1423           <div class="price-discount">
1424             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1425           </div>
1426           
1427           
1428           
1429           
1430           
1431         </div>
1432         
1433       </div>
1434     </a>
1435   </div>
1436   
1437 </div>
1438 
1439                   </div>
1440                 
1441               
1442                 
1443                   <div class="swiper-slide card">
1444                     
1445 
1446 
1447 
1448 <div class="products" data-lazy="false">
1449   <div class="bg-products">
1450     <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet">
1451       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1452   <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.
145211233C11.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"/>
1453 </svg>
1454 
1455     </div>
1456     <a href="/products/the-minerva-bouquet">
1457       
1458       <div class="product-card-img-container p-0 position-relative">
1459         
1460         <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">
1461       </div>
1462       <div class="card-body product-card-info">
1463         <h5 class="h5 mb-0">
1464           The Minerva Bouquet
1465         </h5>
1466         <div class="product-card-price">
1467           
1468           <div class="product-price-sale">
1469             <s class="product-card-price-before card-money">Rp 385.000</s>
1470             <span class="product-card-discount small">	
1471               (-25%)
1472             </span> 	
1473           </div>
1474           
1475           
1476           
1477           <div class="price-discount">
1478             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1479           </div>
1480           
1481           
1482           
1483           
1484           
1485         </div>
1486         
1487       </div>
1488     </a>
1489   </div>
1490   
1491 </div>
1492 
1493                   </div>
1494                 
1495               
1496                 
1497                   <div class="swiper-slide card">
1498                     
1499 
1500 
1501 
1502 <div class="products" data-lazy="false">
1503   <div class="bg-products">
1504     <div class="wishlist-toggle" data-product-handle="congraduations-bouquet">
1505       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1506   <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.
150611233C11.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"/>
1507 </svg>
1508 
1509     </div>
1510     <a href="/products/congraduations-bouquet">
1511       
1512       <div class="product-card-img-container p-0 position-relative">
1513         
1514         <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">
1515       </div>
1516       <div class="card-body product-card-info">
1517         <h5 class="h5 mb-0">
1518           Congraduations Bouquet
1519         </h5>
1520         <div class="product-card-price">
1521           
1522           <div class="product-price-sale">
1523             <s class="product-card-price-before card-money">Rp 380.000</s>
1524             <span class="product-card-discount small">	
1525               (-25%)
1526             </span> 	
1527           </div>
1528           
1529           
1530           
1531           <div class="price-discount">
1532             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1533           </div>
1534           
1535           
1536           
1537           
1538           
1539         </div>
1540         
1541       </div>
1542     </a>
1543   </div>
1544   
1545 </div>
1546 
1547                   </div>
1548                 
1549               
1550                 
1551                   <div class="swiper-slide card">
1552                     
1553 
1554 
1555 
1556 <div class="products" data-lazy="false">
1557   <div class="bg-products">
1558     <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet">
1559       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="21" viewBox="0 0 24 21" fill="none">
1560   <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.
156011233C11.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"/>
1561 </svg>
1562 
1563     </div>
1564     <a href="/products/grad-gorgeous-bouquet">
1565       
1566       <div class="product-card-img-container p-0 position-relative">
1567         
1568         <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">
1569       </div>
1570       <div class="card-body product-card-info">
1571         <h5 class="h5 mb-0">
1572           Grad & Gorgeous Bouquet
1573         </h5>
1574         <div class="product-card-price">
1575           
1576           <div class="product-price-sale">
1577             <s class="product-card-price-before card-money">Rp 380.000</s>
1578             <span class="product-card-discount small">	
1579               (-25%)
1580             </span> 	
1581           </div>
1582           
1583           
1584           
1585           <div class="price-discount">
1586             <h4 class="product-card-price-after card-money">Rp 285.000</h4>
1587           </div>
1588           
1589           
1590           
1591           
1592           
1593         </div>
1594         
1595       </div>
1596     </a>
1597   </div>
1598   
1599 </div>
1600 
1601                   </div>
1602                 
1603               
1604             </div>
1605           </div>
1606         
1607       </div>
1608     </div>
1609   </div>
1610 
1611   <div class="site-overlay" style="display: none"></div>
1612 </div>
1613 
1613<script>
1614   
1615   var swiper = new Swiper('.popup-recommend', {
1616       slidesPerView : 4, 
1617       spaceBetween: 30,
1618       lazy: true ,                            
1619       speed: 300,
1620       breakpoints: {
1621         // when window width is <= 576px
1622         576: {
1623             slidesPerView: 2,
1624               spaceBetween: 10,
1625             freeMode: true,
1626             resistance : true,
1627             resistanceRatio : 0,
1628             freeModeMomentumRatio : 0.45,
1629             freeModeMomentumVelocityRatio : 1.5
1630         },
1631         768: {
1632               slidesPerView: 2,
1633               spaceBetween: 10
1634             },
1635         992: {
1636               slidesPerView: 3,
1637               spaceBetween: 20
1638         }
1639       }
1640   });
1641 
1642   const searchContainer = $("#search-popup")
1643   const searchInput = $(".search-popup")
1644   const result_collection = $('.result_collection')
1645   const result_product = $('.result_product')
1646   const resultsearch = $('.resultsearch')
1647   const resultrecommend = $(".group-recommend")
1648   const moreresult = $(".moreresult")
1649 
1650   searchInput.keyup(function(){
1651     const input = $(this).val()
1652     moreresult.find("p span").text(` �${input}�`)
1653     if(input.length > 2) {
1654       $(".close-search").show()
1655       const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}`
1656       $.ajax({
1657         type: 'GET',
1658         url,
1659         beforeSend: function() {
1660             // setting a timeout
1661             // $(placeholder).addClass('loading');
1662         },
1663         success: function(response) {
1664             resultsearch.show()
1665             resultrecommend.hide()
1666             result_collection.html("")
1667             result_product.html("")
1668             const collections = response.resources.results.collections
1669             const products = response.resources.results.products
1670             let collection_length = collections.length
1671             let product_length = products.length
1672             // if(collections.length > 5) {
1673             //   collection_length = 5
1674             // }
1675             // if(products.length > 5) {
1676             //   product_length = 5
1677             // }
1678             for(let i=0;i<collection_length;i++){
1679               const title = collections[i].title
1680               const url = collections[i].url
1681               let html_collection
1682               if(!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) {
1683                 html_collection = `
1684                 <li class="item" data-title="${title}">
1685                   <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a>
1686                 </li>
1687                 `
1688               }
1689               result_collection.append(html_collection)
1690             }
1691             for(let i=0;i<product_length;i++){
1692               const title = products[i].title
1693               const url = products[i].url
1694               const image = products[i].featured_image.url
1695               const vendor = products[i].vendor
1696               let html_product
1697               if(vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')){
1698                 html_product = `
1699                 <li class="item" data-vendor="${vendor}">
1700                   <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}">
1701                     <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"><span>${title}</span>
1702                   </a>
1703                 </li>
1704                 `
1705               }
1706               result_product.append(html_product)
1707             }
1708         },
1709         error: function(xhr) { // if error occured
1710             alert("Error occured.please try again");
1711         },
1712         complete: function(response) {
1713             // $(placeholder).removeClass('loading');
1714         },
1715         dataType: 'JSON'
1716       });
1717     } else {
1718       result_collection.html("")
1719       result_product.html("")
1720       
1721       resultsearch.hide()
1722       resultrecommend.show()
1723     }
1724   })
1725 
1726   moreresult.click(function(){
1727     $("#search-btn").trigger("click");
1728   })
1729 
1730   $(".close-search").click(function(){
1731     $(this).hide()
1732     searchInput.val("")
1733     searchInput.focus()
1734     resultsearch.hide()
1735     resultrecommend.show()
1736   })
1737 
1738   function setCookie(name,value,days) {
1739     var expires = "";
1740     if (days) {
1741       var date = new Date();
1742       date.setTime(date.getTime() + (days*24*60*60*1000));
1743       expires = "; expires=" + date.toUTCString();
1744     }
1745     document.cookie = name + "=" + (value || "")  + expires + "; path=/";
1746   }
1747   function getCookie(name) {
1748     var nameEQ = name + "=";
1749     var ca = document.cookie.split(';');
1750     for(var i=0;i < ca.length;i++) {
1751       var c = ca[i];
1752       while (c.charAt(0)==' ') c = c.substring(1,c.length);
1753       if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
1754     }
1755     return null;
1756   }
1757   let last_search_name = []
1758   let last_search_url = []
1759   $(".group-recent").hide()
1760   if(getCookie("last_search_name") != null && getCookie("last_search_url") != null){
1761     if(getCookie("last_search_name") != "" && getCookie("last_search_url") != ""){
1762       $(".group-recent").show()
1763       last_search_name = getCookie("last_search_name");
1764       last_search_url = getCookie("last_search_url");
1765       const arrName = last_search_name.substring(1).split(',').reverse()
1766       const arrUrl = last_search_url.substring(1).split(',').reverse()
1767       console.log(arrName, 'Array Name')
1768       console.log(arrUrl, 'Array Url')
1769       let length = arrName.length
1770       if(arrName.length > 5) {
1771         length = 5
1772       }
1773       for(let n=0;n<length;n++){
1774         let html2 = `<li><svg viewBox="0 0 24 24" xmlns="https://kucingair.com/fotobaka/logopub.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]}">
1774${arrName[n]}</a><span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span></li>`
1775         $(".group-recent ul").append(html2)
1776       }
1777     }
1778   }
1779   console.log(last_search_name, 'Name')
1780   console.log(last_search_url, 'url')
1781   
1782   resultsearch.delegate(".item a", "click", function(){
1783     let name = [last_search_name]
1784     let url = [last_search_url]
1785     name.push($(this).attr('data-title'))
1786     url.push($(this).attr('data-url'))
1787     setCookie("last_search_name",name,7);
1788     setCookie("last_search_url",url,7);
1789   })
1790   
1791   $(".delete-all-history").click(function() {
1792     setCookie("last_search_name",null,0);
1793     setCookie("last_search_url",null,0);
1794     $(".last-search").hide();
1795     setTimeout(function(){
1796       location.reload();
1797     }, 500);
1798   })
1799   
1800   $("#search-trigger").click(function(){
1801     search_open()
1802   })
1803   $(".icon-search-mobile").click(function(){
1804     search_open()
1805   })
1806   $(".search-header svg").click(function(){
1807     search_close()
1808   })
1809   $(".icon-key-mobile").click(function(){
1810     search_close()
1811   })
1812 
1813   function search_open() {
1814     $("body").addClass("search-popup-open")
1815     $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide()
1816     $("#search-popup, .search-header svg, .icon-key-mobile").show()
1817     $(".search-popup").focus()
1818     $('.popup-recommend')[0].swiper.update();
1819   }
1820   function search_close() {
1821     $("body").removeClass("search-popup-open")
1822     $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show()
1823     $("#search-popup, .search-header svg, .icon-key-mobile").hide()
1824     searchInput.val("")
1825     resultsearch.hide()
1826     resultrecommend.show()
1827   }
1828 
1829   $(".site-overlay").click(function(){
1830     search_close()
1831   })
1832 </script>
1832
1833 
1834 </div>
1835     </div>
1836 
1837     <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #000000;">
1838       <main class="main-content pt-0" role="main">
1839         
1840           <div id="breadcrumbProduct" class="d-none d-lg-block">
1841             <style>
1842   #breadcrumbProduct {
1843     padding: 20px 0;
1844   }
1845   #breadcrumbProduct ul {
1846       display: flex;
1847       padding: 0;
1848       list-style: none;
1849       margin: 0;
1850       gap: 12px;
1851   }
1852   #breadcrumbProduct ul li {
1853     text-transform: uppercase;
1854     margin: 0;
1855     font-size: 12px;
1856 }
1857   #breadcrumbProduct ul li a {
1858     color: #757575;
1859   }
1860 
1861   #breadcrumbProduct ul li svg {
1862     width: 10px;
1863     height: 10px;
1864     padding: 0;
1865     color: #757575;
1866     vertical-align: middle;
1867   }
1868 </style>
1869 <div class="container" style="color: #ffffff;">
1870   <ul role="navigation" aria-label="breadcrumbs">
1871     <li><a href="https://collegeofnepal.com/" style="color: #ffffff;">PUBTOGEL</a></li>
1872     <li><svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="7" height="10" viewBox="0 0 7 10" fill="none">
1873     <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"/>
1874 </svg></li>
1875       <li>SITUS TOTO</li>
1876       <li>TOTO TOGEL</li>
1877       <li>SITUS TOGEL</li>
1878       <li>Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal</li>
1879     
1880   </ul>
1881 </div>
1882 
1883           </div>
1884         
1885 
1885<script type="application/ld+json">
1886 {
1887   "@context": "https://schema.org",
1888   "@type": "Product",
1889   "name": "Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal",
1890   "image": "https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg",
1891   "description": "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!",
1892   "brand": {
1893     "@type": "Brand",
1894     "name": "PUBTOGEL"
1895   },
1896   "sku": "PUBTOGEL",
1897   "mpn": "PUBTOGEL",
1898   "url": "https://collegeofnepal.com/",
1899   "offers": {
1900     "@type": "Offer",
1901     "url": "https://collegeofnepal.com/",
1902     "priceCurrency": "USD",
1903     "price": "10.00",
1904     "priceValidUntil": "2025-12-25",
1905     "itemCondition": "https://schema.org/NewCondition",
1906     "availability": "https://schema.org/InStock",
1907     "seller": {
1908       "@type": "Organization",
1909       "name": "PUBTOGEL"
1910     }
1911   },
1912   "aggregateRating": {
1913     "@type": "AggregateRating",
1914     "ratingValue": "5.0",
1915     "reviewCount": 858
1916   },
1917   "review": [
1918     {
1919       "@type": "Review",
1920       "reviewRating": {
1921         "@type": "Rating",
1922         "ratingValue": "5",
1923         "bestRating": "5"
1924       },
1925       "author": {
1926         "@type": "Person",
1927         "name": "juandi"
1928       }
1929     },
1930     {
1931       "@type": "Review",
1932       "reviewRating": {
1933         "@type": "Rating",
1934         "ratingValue": "5",
1935         "bestRating": "5"
1936       },
1937       "author": {
1938         "@type": "Person",
1939         "name": "situmorang"
1940       }
1941     }
1942   ]
1943 }
1944 </script>
1944<script type="application/ld+json">
1945 {
1946   "@context": "https://schema.org",
1947   "@type": "BreadcrumbList",
1948   "itemListElement": [
1949     {
1950       "@type": "ListItem",
1951       "position": 1,
1952       "name": "PUBTOGEL",
1953       "item": "https://collegeofnepal.com/"
1954     },
1955     {
1956       "@type": "ListItem",
1957       "position": 2,
1958       "name": "SITUS TOTO",
1959       "item": "https://collegeofnepal.com/"
1960     },
1961     {
1962       "@type": "ListItem",
1963       "position": 3,
1964       "name": "TOTO TOGEL",
1965       "item": "https://collegeofnepal.com/"
1966     },
1967     {
1968       "@type": "ListItem",
1969       "position": 4,
1970       "name": "TOGEL 4D",
1971       "item": "https://collegeofnepal.com/"
1972     },
1973     {
1974       "@type": "ListItem",
1975       "position": 5,
1976       "name": "SITUS TOGEL",
1977       "item": "https://collegeofnepal.com/"
1978     },
1979     {
1980       "@type": "ListItem",
1981       "position": 6,
1982       "name": "TOGEL ONLINE",
1983       "item": "https://collegeofnepal.com/"
1984     },
1985     {
1986       "@type": "ListItem",
1987       "position": 7,
1988       "name": "SITUS TOTO TOGEL",
1989       "item": "https://collegeofnepal.com/"
1990     },
1991     {
1992       "@type": "ListItem",
1993       "position": 8,
1994       "name": "Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal",
1995       "item": "https://collegeofnepal.com/"
1996     }
1997   ]
1998 }
1999 </script>
1999
2000 
2000<script type="application/ld+json" id="faq-schema">
2001{
2002  "@context": "https://schema.org",
2003  "@type": "FAQPage",
2004  "mainEntity": [
2005    {
2006      "@type": "Question",
2007      "name": "Mengapa akses ke PUBTOGEL tidak pernah terblokir meskipun ada kebijakan pemblokiran internet positif?",
2008      "acceptedAnswer": {
2009        "@type": "Answer",
2010        "text": "PUBTOGEL secara berkala dan konsisten menyediakan link alternatif resmi yang selalu diperbarui dan mudah diakses. Link-link ini menjamin anggota dapat login dan bermain tanpa hambatan, memastikan pengalaman bermain yang lancar meskipun ada pemblokiran."
2011      }
2012    },
2013    {
2014      "@type": "Question",
2015      "name": "Apa keunggulan utama yang membedakan PUBTOGEL dari bandar togel online lainnya?",
2016      "acceptedAnswer": {
2017        "@type": "Answer",
2018        "text": "Keunggulan utamanya terletak pada diskon dan hadiah pembayaran (prize) yang paling kompetitif dan besar di pasar. PUBTOGEL dikenal menawarkan diskon pemasangan yang tinggi dan struktur hadiah 4D, 3D, dan 2D yang jauh lebih menguntungkan bagi para pemainnya."
2019      }
2020    },
2021    {
2022      "@type": "Question",
2023      "name": "Bagaimana PUBTOGEL menjamin keamanan data pribadi dan transaksi jutaan member aktifnya?",
2024      "acceptedAnswer": {
2025        "@type": "Answer",
2026        "text": "PUBTOGEL menggunakan sistem enkripsi data canggih berstandar internasional (seperti SSL 128-bit) dan server berteknologi tinggi untuk melindungi informasi pribadi. Semua transaksi deposit dan withdraw diproses melalui gerbang pembayaran terpercaya dengan pengawasan 24 jam."
2027      }
2028    },
2029    {
2030      "@type": "Question",
2031      "name": "Sebutkan jenis pasaran toto togel resmi apa saja yang populer dan tersedia di PUBTOGEL?",
2032      "acceptedAnswer": {
2033        "@type": "Answer",
2034        "text": "Pasaran paling populer dan resmi yang tersedia meliputi Togel Singapore (SGP), Togel Hong Kong (HK), dan Togel Sydney (SDY). Selain itu, ada banyak pasaran internasional resmi lainnya yang disediakan dengan hasil result yang dijamin sah."
2035      }
2036    },
2037    {
2038      "@type": "Question",
2039      "name": "Apa yang dimaksud dengan layanan Customer Service (CS) 24 jam PUBTOGEL dan bagaimana cara menghubungi mereka?",
2040      "acceptedAnswer": {
2041        "@type": "Answer",
2042        "text": "Layanan CS 24 jam berarti tim profesional siap membantu member kapan saja, 7 hari seminggu, untuk mengatasi kendala login, transaksi, atau pertanyaan umum. Mereka dapat dihubungi melalui Live Chat, WhatsApp, atau Line yang tersedia langsung di situs resmi."
2043      }
2044    }
2045  ]
2046}
2047</script>
2047
2048 
2048<script type="application/ld+json">
2049 {
2050   "@context": "https://schema.org",
2051   "@type": "Organization",
2052   "name": "PUBTOGEL",
2053   "url": "https://collegeofnepal.com/",
2054   "logo": "https://kucingair.com/fotobaka/logopub.png",
2055   "sameAs": [
2056     "https://www.facebook.com/PUBTOGEL",
2057     "https://twitter.com/PUBTOGEL",
2058     "https://www.instagram.com/PUBTOGEL"
2059   ],
2060   "contactPoint": {
2061     "@type": "ContactPoint",
2062     "telephone": "+62-8946-113-4615",
2063     "contactType": "customer support",
2064     "areaServed": "ID",
2065     "availableLanguage": ["Indonesian", "English"]
2066   }
2067 }
2068 </script>
2068
2069 
2070 
2070<script type="application/ld+json">
2071 {
2072   "@context": "https://schema.org",
2073   "@type": "VideoObject",
2074   "name": "Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal",
2075   "description": "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!",
2076   "thumbnailUrl": [
2077     "https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg",
2078     "https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2079   ],
2080   "uploadDate": "2025-09-28T04:19:10-04:00",
2081   "duration": "PT168",
2082   "contentUrl": "https://collegeofnepal.com/"
2083 }
2084 </script>
2084
2085 
2086 
2086<script type="application/ld+json">
2087 {
2088   "@context": "https://schema.org",
2089   "@type": "BreadcrumbList",
2090   "itemListElement": [
2091     {
2092       "@type": "ListItem",
2093       "position": 1,
2094       "name": "Home",
2095       "item": "https://collegeofnepal.com/"
2096     }
2097   ]
2098 }
2099 </script>
2099
2100 
2101 
2101<script type="application/ld+json">
2102 {
2103   "@context": "https://schema.org",
2104   "@graph": [
2105     {
2106       "@type": "Organization",
2107       "@id": "https://collegeofnepal.com/#org",
2108       "name": "PUBTOGEL",
2109       "url": "https://collegeofnepal.com/",
2110       "logo": "https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2111     },
2112     {
2113       "@type": "WebSite",
2114       "@id": "https://collegeofnepal.com/#website",
2115       "url": "https://collegeofnepal.com/",
2116       "name": "PUBTOGEL",
2117       "publisher": { "@id": "https://collegeofnepal.com/#org" },
2118       "inLanguage": "id-ID",
2119       "potentialAction": {
2120         "@type": "SearchAction",
2121         "target": "https://collegeofnepal.com/?s={search_term_string}",
2122         "query-input": "required name=search_term_string"
2123       }
2124     },
2125     {
2126       "@type": "SoftwareApplication",
2127       "@id": "https://collegeofnepal.com/#app",
2128       "name": "PUBTOGEL",
2129       "applicationCategory": "GameApplication",
2130       "operatingSystem": "Android, iOS, Windows",
2131       "offers": { "@type": "Offer", "price": "0", "priceCurrency": "IDR" },
2132       "aggregateRating": { "@type": "AggregateRating", "ratingValue": 4.9, "ratingCount": 62595 }
2133     }
2134   ]
2135 }
2136 </script>
2136
2137         
2138 <div id="shopify-section-Product" class="shopify-section product-section mt-0"><link href="https://asset-jko.b-cdn.net/footer-warna.css" rel="stylesheet" type="text/css" media="all" />
2139 
2140 
2141 <style>
2142     .bg-card {
2143     background-color: #000000;
2144 }
2145     </style>
2146 
2147 <!-- /templates/product.liquid -->
2148 
2149 
2150 <!-- <div itemscope itemtype="http://schema.org/Product"> -->
2151 
2152 
2153 <div class="product-standing-flower" data-product-type="flowerBoard">
2154   <meta itemprop="url" content="https://collegeofnepal.com/">
2155   <meta itemprop="image" content="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
2156 
2157   
2158   
2159   <input id="data-sku" type="hidden" value="OBVSTF1086">
2160   <div class="product-single" style="background-image: url(https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg); background-attachment: fixed;">
2161     <div id="product-top" class="container">
2162       <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;">
2163         <div id="product-image" class="col-lg-7 text-center">
2164           <div class="product-image">
2165             <div class="row no-gutters">
2166   
2167   <div id="product-featured-image" class="row w-100">
2168     
2169       <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block">
2170         
2171         <div class="swiper-container gallery-thumbs" style="min-height: 500px">
2172           <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx">
2173 
2174                   <li class="swiper-slide" data-type="image">
2175                     <a
2176                       href="files/Blossom-Shine-WM.jpg"
2177                       data-standard="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2178                       data-image="files/Blossom-Shine-WM.jpg"
2179                       data-position="1"
2180                       class="product-single__thumbnail"
2181                     >
2182                       <img
2183                         class="lazyload w-100"
2184                         src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2185                         alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2186                         width=""
2187                         height=""
2188                       >
2189                     </a>
2190                   </li>
2191                 
2192               
2193             
2194 
2195                   <li class="swiper-slide" data-type="image">
2196                     <a
2197                       href="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2198                       data-standard="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2199                       data-image="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2200                       data-position="2"
2201                       class="product-single__thumbnail"
2202                     >
2203                       <img
2204                         class="lazyload w-100"
2205                         src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2206                         alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2207                         width=""
2208                         height=""
2209                       >
2210                     </a>
2211                   </li>
2212                 
2213               
2214             
2215 
2216                   <li class="swiper-slide" data-type="image">
2217                     <a
2218                       href="files/Blossom-Shine_3-WM.jpg"
2219                       data-standard="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2220                       data-image="files/Blossom-Shine_3-WM.jpg"
2221                       data-position="3"
2222                       class="product-single__thumbnail"
2223                     >
2224                       <img
2225                         class="lazyload w-100"
2226                         src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2227                         alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2228                         width=""
2229                         height=""
2230                       >
2231                     </a>
2232                   </li>
2233                 
2234               
2235             
2236 
2237                   <li class="swiper-slide" data-type="image">
2238                     <a
2239                       href="files/Blossom-Shine_4.jpg"
2240                       data-standard="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2241                       data-image="files/Blossom-Shine_4.jpg"
2242                       data-position="4"
2243                       class="product-single__thumbnail"
2244                     >
2245                       <img
2246                         class="lazyload w-100"
2247                         src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2248                         alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2249                         width=""
2250                         height=""
2251                       >
2252                     </a>
2253                   </li>
2254                 
2255               
2256             
2257           </ul>
2258         </div>
2259         
2260       </div>
2261     
2262     <div
2263       id="featured-image-product"
2264       class="col-lg-10 col-12 d-none d-lg-block"
2265     >
2266       <div class="swiper-container gallery-top">
2267         <div class="swiper-slide product-single__image">
2268           
2269 <div class="product-single__photos slider slider-for" id="ProductPhoto">
2270   
2271 
2272   <div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails">
2273     <a href="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg">
2274       <img
2275         src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2276         alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2277         id="ProductPhotoImg"
2278         class="lazyload"
2279       >
2280       
2281     </a>
2282   </div>
2283 </div>
2284 
2285         </div>
2286         <div class="swiper-slide product-single__video" style="display: none">
2287           <video
2288             src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4"
2289             playsinline
2290             loop
2291             muted
2292           ></video>
2293         </div>
2294       </div>
2295     </div>
2296   </div>
2297 
2298   <div id="featured-image-product2" class="col-12 d-lg-none">
2299     <div class="swiper-container gallery-mobile">
2300       <ul class="swiper-wrapper">
2301 <li class="swiper-slide img">
2302               
2303                 <img
2304                   class="swiper-lazy"
2305                   src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2306                   data-src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2307                   alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2308                   width=""
2309                   height=""
2310                 >
2311               
2312             </li>
2313           
2314         
2315 <li class="swiper-slide img">
2316               
2317                 <img
2318                   class="swiper-lazy"
2319                   src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2320                   data-src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2321                   alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2322                   width=""
2323                   height=""
2324                 >
2325               
2326             </li>
2327           
2328         
2329 <li class="swiper-slide img">
2330               
2331                 <img
2332                   class="swiper-lazy"
2333                   src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2334                   data-src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2335                   alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2336                   width=""
2337                   height=""
2338                 >
2339               
2340             </li>
2341           
2342         
2343 <li class="swiper-slide img">
2344               
2345                 <img
2346                   class="swiper-lazy"
2347                   src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2348                   data-src="https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg"
2349                   alt="Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal"
2350                   width=""
2351                   height=""
2352                 >
2353               
2354             </li>
2355           
2356         
2357       </ul>
2358       
2359         <div class="swiper-button-prev"><svg class="icon icon-chevron-left" xmlns="https://kucingair.com/fotobaka/logopub.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>
2360         <div class="swiper-button-next"><svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="7" height="10" viewB
2360ox="0 0 7 10" fill="none">
2361     <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"/>
2362 </svg></div>
2363 
2364         <!-- Add Pagination -->
2365         <div class="swiper-pagination"></div>
2366       
2367     </div>
2368   </div>
2369 
2370   <div class="product-m-pageleb-video col-12 text-center d-lg-none">
2371     <!-- product video -->
2372     <style>
2373       .view-video{display:block; margin:auto; padding:5px 10px;font-size:16px;font-weight:bold;border:2px solid #ffffff;background:#fff;}
2374       .view-video .icon-play{fill:#ffffff;vertical-align: middle;}
2375       .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;}
2376       .close-video{position:absolute;right:9px; top:8%;z-index:2;padding:5px;}
2377       .close-video .icon{width:30px;height:30px;}
2378       /*responsive iframe */
2379       .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);}
2380       .video-container iframe {position: absolute;top:60%;left: 0;width: 100%;height: 100%;}
2381 
2382       .youtube {
2383         background-color: #000;
2384         margin-bottom: 30px;
2385         position: relative;
2386         padding-top: 56.25%;
2387         overflow: hidden;
2388         cursor: pointer;
2389         width: 100%;
2390       }
2391       .swiper-slide .youtube {
2392         max-width: 480px;
2393       }
2394       .youtube img {
2395         width: 100%;
2396         top: -16.82%;
2397         left: 0;
2398         opacity: 0.7;
2399       }
2400       .youtube .play-button {
2401         width: 90px;
2402         height: 60px;
2403         background-color: #333;
2404         box-shadow: 0 0 30px rgba( 0,0,0,0.6 );
2405         z-index: 1;
2406         opacity: 0.8;
2407         border-radius: 6px;
2408       }
2409       .youtube .play-button:before {
2410         content: "";
2411         border-style: solid;
2412         border-width: 15px 0 15px 26.0px;
2413         border-color: transparent transparent transparent #fff;
2414       }
2415       .youtube img,
2416       .youtube .play-button {
2417         cursor: pointer;
2418       }
2419       .youtube img,
2420       .youtube iframe,
2421       .youtube .play-button,
2422       .youtube .play-button:before {
2423         position: absolute;
2424       }
2425       .youtube .play-button,
2426       .youtube .play-button:before {
2427         top: 50%;
2428         left: 50%;
2429         transform: translate3d( -50%, -50%, 0 );
2430       }
2431       .youtube iframe {
2432         height: 100%;
2433         width: 100%;
2434         top: 0;
2435         left: 0;
2436       }
2437     </style>
2438 
2439     
2440   </div>
2441 </div>
2442 
2443 <div class="product-desc-add position-relative d-none d-lg-block m-0">
2444 
2445 </div>
2446 
2447 
2447<script>
2448   if ($(window).width() < 991) {
2449     var direction = 'horizontal'
2450   } else {
2451     var direction = 'vertical'
2452     $(".gallery-thumbs").height($("#ProductPhotoImg").height())
2453   }
2454   var swiper = new Swiper('.gallery-thumbs', {
2455     
2456     direction,
2457     slidesPerView: 4.5,
2458     spaceBetween: 12,
2459     navigation: {
2460       nextEl: '.swiper-button-next',
2461       prevEl: '.swiper-button-prev',
2462     }
2463   });
2464   
2465   var swiper = new Swiper('.gallery-mobile', {
2466     //loop: true,
2467     lazy: true,
2468     speed: 300,
2469     resistance : true,
2470     resistanceRatio : 0,
2471     freeModeMomentumRatio : 0.45,
2472     freeModeMomentumVelocityRatio : 1.5,
2473     navigation: {
2474       nextEl: '.swiper-button-next',
2475       prevEl: '.swiper-button-prev',
2476     },
2477     pagination: {
2478       el: '.swiper-pagination'
2479     },
2480     useCSS3Transforms: false,
2481     loop: false,
2482     on: {
2483       init: function () {
2484         console.log('swiper initialized');
2485         var currentVideo =  $("[data-swiper-slide-index=" + this.realIndex + "]").find("video");
2486         currentVideo.trigger('play');
2487       },
2488     },
2489   });
2490 
2491   /* GET ALL VIDEOS */
2492   var sliderVideos = $(".swiper-slide video");
2493   
2494   /* SWIPER API - Event will be fired after animation to other slide (next or previous) */
2495   swiper.on('slideChange', function () {
2496     console.log('slide changed');
2497     /* stop all videos  */
2498     sliderVideos.each(function( index ) {
2499       this.currentTime = 0;
2500     });
2501   
2502     /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */
2503     var prevVideo =  $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video");
2504     var currentVideo =  $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video");
2505     prevVideo.trigger('stop');
2506     currentVideo.trigger('play');
2507   });
2508   
2509 
2510   $("[data-video]").click(function(){
2511     const file = $(this).data("video")
2512     $(".product-single__video").show()
2513     $(".product-single__image").hide()
2514     $(".product-single__video").find("video").attr("src", file)
2515     $(".product-single__video").find("video")[0].play();
2516   })
2517   $("[data-image]").click(function(){
2518     $(".product-single__video").hide()
2519     $(".product-single__image").show()
2520     $(".product-single__video").find("video")[0].pause();
2521   })
2522 
2523   $("#product-image .swiper-slide").each(function(){
2524     let width = $(this).width()
2525     $(this).height(width)
2526   })
2527 
2528   $(window).resize(function() {
2529     $("#product-image .swiper-slide").each(function(){
2530       let width = $(this).width()
2531       $(this).height(width)
2532     })
2533   })
2534 </script>
2534
2535 
2536           </div>
2537 
2538   
2539     <div class="grid__item_product-info mb-3">
2540       <div class="c-pdp-product-info">
2541         <ul class="c-pdp-product-info__service c-pdp-product-info__service--active">
2542           
2543             <li>Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!</li>
2544           
2545           
2546           
2547           
2548         </ul>
2549       </div>
2550     </div>
2551   
2552 
2553 
2554 
2555 
2556 <style>
2557   .c-pdp-product-info__service--active {
2558     font-size: 12px;
2559     padding-left: 10px;
2560     text-align: left;
2561     max-width: 550px;
2562     margin: auto;
2563   }
2564   .c-pdp-product-info__service--active li {
2565     list-style: disc;
2566   }
2567   .c-pdp-product-info {
2568     background-color: #f5f5f5;
2569     padding: 12px;
2570     margin: 0;
2571   }
2572   .freeship em {
2573     font-style: italic;
2574     font-size: 12px !important;
2575   }
2576 
2577 
2578 </style>
2579 
2580 
2580<script>
2581   $(document).ready(function(){
2582     if ( $(".c-pdp-product-info__service li").length == 1 ) {
2583       $(".c-pdp-product-info__service").addClass("no-bullet");
2584       $(".c-pdp-product-info__service li").addClass("no-bullets");
2585     }
2586   });
2587 </script>
2587
2588 
2589   
2590 
2591 
2592 
2593   
2594 
2595   
2596 
2597 
2598             
2599           
2600         </div>
2601         <div id="product-meta" class="col-lg-5 p-0">
2602           <div class="product-meta">
2603             <style>
2604   .product-meta--review {margin-top:10px}
2605   .freeship * {font-size: 14px !important;font-style: normal;}
2606 </style>
2607 <h1 itemprop="name" class="mb-2" style="color: rgb(25, 180, 173)); font-weight: bold;">Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal</h1>
2608 
2609 <div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
2610   <meta itemprop="priceCurrency" content="IDR">
2611 
2612   <link itemprop="availability" href="https://schema.org/InStock">
2613   
2613<script
2614     type="text/javascript"
2615     src="//platform-api.sharethis.com/js/sharethis.js#property=5acdc0aa3ef3c0001396fd50&product=custom-share-buttons"
2616     async="async"
2617   ></script>
2617
2618   
2619 
2620   
2621 
2622   <span class="visually-hidden">Translation missing: en.products.general.regular_price</span>
2623   
2624     <span class="visually-hidden">Translation missing: en.products.general.sale_price</span>
2625   
2626   <div class="row no-gutters mb-3">
2627     <span
2628       id="ProductPrice"
2629       class="h2 ProductPrice"
2630       itemprop="price"
2631       content="835000" style="color: #ffffff;"
2632     >
2633       Rp 10.000
2634     </span>
2635     <div class="discount-product-detail">
2636       <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0">
2637         Rp 100.000
2638       </p>
2639       <span class=" tag-discount">
2640         
2641           
2642           <span id="newDiscount" class="product-tag persentase-discount hide"> 
2643       (90%)
2644       </span><br>
2645         
2646       </span>
2647     </div>
2648   </div>
2649 
2650   <div class="row no-gutters meta-sds">
2651     <div class="col-12 mb-2 mb-lg-0 stock-info">
2652       
2653       
2654       <span
2655         id="ProductStock-Product"
2656         class="product-single__stock mb-2 hide"
2657       >
2658         
2659           
2660             
2661               
2662               Barang dikirim pada 
2663             
2664           
2665         
2666       </span>
2667 
2668       <style>
2669     .short-desc-desktop {
2670         margin-bottom: 2rem;
2671         color: white;
2672     }
2673     .short-desc ul li:nth-child(n + 4) {
2674         display: none;
2675     }
2676     .short-desc ul li.showList:nth-child(n + 4) {
2677         display: list-item;
2678     }
2679     label.more {
2680         display: none;
2681     }
2682     label.more.showMe {
2683         display: block;
2684         font-size: 12px;
2685         text-transform: uppercase;
2686         font-weight: 700;
2687         cursor: pointer;
2688     }
2689 </style>
2690 
2691     <div class="short-desc-desktop d-none d-lg-block">
2692         <div class="short-desc">
2693            
2694 <p>Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!</p>
2695         </div>
2696         <label class="more">Show More ?</label>
2697     </div><br>
2698 
2699 
2700 
2700<script>
2701     var liCount;
2702     $(document).ready(function () {
2703         $(".short-desc ul").each(function() {
2704             liCount = $(this).children("li").length;
2705             if (liCount > 3) {
2706                 $(this).parent(".short-desc").next(".more").addClass("showMe");
2707             }
2708         });
2709 
2710         $(".more").click(function () {
2711             //$(".short-desc").find("li").addClass("showList");
2712             // $(this).hide();
2713             $("#product-desc").find("ul").show()
2714             $('html, body').animate({
2715                 scrollTop: $("#product-desc").offset().top - 250
2716             }, 2000);
2717             $("#product-desc").css("height","auto");
2718             $("#more_content").remove();
2719             $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>")
2720         });
2721     });
2722 </script>
2722
2723 
2724       
2725     </div>
2726   </div>
2727 
2728   <div id="purchaseProduct">
2729   
2730   
2731 
2732 
2733 <style>
2734   .variant-metafield {
2735     display: block!important;
2736     width: 1px;
2737     padding: 0;
2738     border-color: #fff;
2739   }
2740   .select2-results__option[aria-disabled] {
2741     display: none;
2742   }
2743 
2744   .towel-bordir {
2745     width: 100%;
2746     display: flex;
2747     align-items: center;
2748     justify-content: space-around;
2749   }
2750 </style>
2751 
2752 
2753 
2754 
2755 
2755<script>
2756   
2757   
2758 </script>
2758
2759 
2760 
2761 
2762 
2763 
2764 
2765 <select
2766   name="id[]"
2767   id="productSelect"
2768   class="product-single__variants ignore hide hide"
2769 >
2770   
2771     
2772       
2773       <option
2774         
2775           selected="selected"
2776         
2777         data-sku="OBVSTF1086"
2778         value="44083045826775"
2779       >
2780         Default Title
2781       </option>
2782 
2783     
2784   
2785 </select>
2786 
2787 
2787<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="text/javascript"></script>
2787
2788 
2789 
2789<script>
2790   $('.size-chart-open-popup').magnificPopup({
2791     type:'inline',
2792     midClick: true
2793   });
2794 </script>
2794
2795 
2796   
2797   
2798   
2799   <div class="upload-image-preview">
2800     
2801     
2802     
2803     
2804     
2805     <style>
2806   .file-dnd * {
2807     margin: 0;
2808     padding: 0;
2809     box-sizing: border-box;
2810   }
2811   .file-dnd {
2812     width: 100%;
2813     height: 250px;
2814     border: 1px solid #ddd;
2815     border-radius: 10px;
2816     padding: 15px;
2817     display: flex;
2818     flex-direction: column;
2819     gap: 10px;
2820     /* box-shadow: 0px 2px 10px 2px rgba(0,0,0,0.05); */
2821     margin: auto;
2822   }
2823   .file-dnd input {
2824     display: none;
2825   }
2826   .file-dnd .before-upload {
2827     border: 1px dashed #888;
2828     flex: 1;
2829     border-radius: 5px;
2830     display: flex;
2831     justify-content: center;
2832     align-items: center;
2833     text-align: center;
2834     cursor: pointer;
2835   }
2836   .file-dnd .before-upload > div {
2837     display: flex;
2838     flex-direction: column;
2839     align-items: center;
2840     gap: 8px;
2841   }
2842   .file-dnd .before-upload > div h4 {
2843     width: 150px;
2844   }
2845   .file-dnd .before-upload > div p {
2846     font-size: 12px !important;
2847     color: #555;
2848   }
2849   .file-dnd.active .before-upload {
2850     border: 1px solid #5750d9;
2851     background-color: #f5f5ff;
2852   }
2853   .file-dnd .after-upload {
2854     position: relative;
2855     display: none;
2856   }
2857   .file-dnd .after-upload img {
2858     width: 100%;
2859     border-radius: 5px;
2860     max-height: 180px;
2861     object-fit: contain;
2862     display: block;
2863   }
2864   .file-dnd .after-upload .clear-btn {
2865     position: absolute;
2866     top: 10px;
2867     right: 10px;
2868     background: rgba(0, 0, 0, 0.5);
2869     width: 15px;
2870     height: 15px;
2871     text-align: center;
2872     line-height: 15px;
2873     border-radius: 50%;
2874     color: #fff;
2875     cursor: pointer;
2876     font-size: 14px;
2877   }
2878 </style>
2879 
2880 <div
2881   class="file-dnd mb-3"
2882   
2883     style="display: none"
2884   
2885 >
2886   <label for="upload-photo">Upload your Photo:</label>
2887   <input type="file" id="upload-photo" accept="image/*">
2888   <input type="hidden" data-properties="Photo">
2889   <div class="before-upload">
2890     <div>
2891       <svg id="surface1" xmlns="https://kucingair.com/fotobaka/logopub.png" width="33.053" height="41.719" viewBox="0 0 33.053 41.719">
2892   <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>
2893   <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>
2894   <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>
2895 </svg>
2896 
2897       <h4>Drag & Drop Photo file or Browse</h4>
2898       <p>Supports: JPEG, PNG, GIF, TIFF</p>
2899     </div>
2900   </div>
2901   <div class="after-upload">
2902     <div class="clear-btn">&times;</div>
2903     <img src="" width="" height="">
2904   </div>
2905 </div>
2906 
2906<script>
2907   function applyDndFile(el) {
2908     const parent = document.querySelector(".file-dnd")
2909     const beforeUploadEl = el.querySelector(".before-upload")
2910     const afterUploadEl = el.querySelector(".after-upload")
2911     const inputFile = el.querySelector("input[type=file]")
2912     const imagePreview = el.querySelector(".after-upload img")
2913     const clearBtn = el.querySelector(".after-upload .clear-btn")
2914     const inputProps = parent.querySelector("[data-properties]");
2915 
2916     async function upload(name, uri, type) {
2917       try {
2918         const filename = name.split('.')[0]
2919         let formData = new FormData(); 
2920         formData.append("file", uri);
2921         const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, {
2922           method: "POST", 
2923           body: formData
2924         })
2925         if(response) {
2926           const res = await response.json()
2927           return res
2928         }
2929       } catch(err){
2930         console.log(err)
2931       }
2932     }
2933 
2934     function showImagePreview(img) {
2935       if(img){
2936         const blobUrl = URL.createObjectURL(img)
2937         imagePreview.src = blobUrl
2938         afterUploadEl.style.display = "block"
2939         beforeUploadEl.style.display = "none"
2940       }
2941     }
2942 
2943     beforeUploadEl.addEventListener("click", (e) => {
2944       e.preventDefault()
2945       inputFile.click()
2946     })
2947 
2948     inputFile.addEventListener("change", async (e) => {
2949       e.preventDefault()
2950       showImagePreview(e.target.files[0])
2951       var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type)
2952       inputProps.value = uploadData?.url
2953     })
2954 
2955     clearBtn.addEventListener("click", (e) => {
2956       afterUploadEl.style.display = "none"
2957       beforeUploadEl.style.display = "flex"
2958       inputProps.value = ""
2959     })
2960 
2961     beforeUploadEl.addEventListener("dragover", (e) => {
2962       e.preventDefault()
2963       el.classList.add("active")
2964     })
2965 
2966     beforeUploadEl.addEventListener("dragleave", (e) => {
2967       e.preventDefault()
2968       el.classList.remove("active")
2969     })
2970 
2971     beforeUploadEl.addEventListener("drop", async (e) => {
2972       e.preventDefault()
2973       el.classList.remove("active")
2974       showImagePreview(e.dataTransfer.files[0])
2975       var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type)
2976       console.log(uploadData)
2977       inputProps.value = uploadData?.url
2978     })
2979   }
2980 
2981   applyDndFile(document.querySelector(".file-dnd"))
2982 
2983   $(document).ready(function(){
2984     $(".variant-swatch").change(function(){
2985       const v = $(this).val().toLowerCase()
2986       const list = ["photo", "custom one side", "custom two side", "small", "big"]
2987       if(list.some(item => v.includes(item))) return $(".file-dnd").show()
2988       $(".file-dnd").hide()
2989       $(".file-dnd").find("[data-properties]").val("")
2990       $(".after-upload").hide()
2991       $(".before-upload").css("display", "flex")
2992     })
2993   })
2994 </script>
2994
2995 
2996   </div>
2997   
2998     
2999     <div class="delivery-city mb-4">
3000         <a href="https://lingkaransetan.com/pub/d7/">
3001        <center><img src="https://i.gyazo.com/4781BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX.gif" alt="logo-daftar" style="width: 260px; margin-top: -20px;"></center></a><br>
3002   <h4 class="fw-600 text-uppercase mb-15" style="color: rgb(44, 182, 170);">? Terbang Melintasi Internet, Bukan Tersandung di Jaringan! Pubtogel: Navigasi Cerdas, Kehidupan Online Tanpa Batas.</h4>
3003   <div class="row justify-content-between m-0">
3004     <select id="cities" class="form-control select-search" required>
3005       <option value="">Dunia digital bergerak cepat, begitu pula Anda. Dengan Pubtogel, setiap klik adalah langkah maju yang mulus, setiap pencarian adalah penemuan instan. Optimalkan waktu Anda, maksimalkan pengalaman online Anda.</option>
3006     </select>
3007   </div>
3008 </div>
3009 
3010 <style>
3011   @media (max-width: 768px) {
3012     .select2-search__field {
3013       pointer-events: none !important;
3014     }
3015     
3016     .select2-search {
3017       display: none !important;
3018     }
3019   }
3020 </style>
3021 
3022 
3022<script>
3023   $(document).ready(function() {
3024     // Check if mobile
3025     if (window.innerWidth <= 768) {
3026       // When cities select2 opens on mobile, remove focus from search
3027       $('#cities').on('select2:open', function() {
3028         setTimeout(function() {
3029           $('.select2-search__field').blur();
3030           $('.select2-search__field').prop('readonly', true);
3031         }, 100);
3032       });
3033     }
3034   });
3035 </script>
3035
3036 
3037  <style>
3038 .icon-img-footer {
3039     width: 80px; 
3040     padding: 0px 5px;
3041 }
3042 @media (min-width: 768px) {
3043     .icon-img-footer {
3044         width: 120px; 
3045     }
3046 }
3047 @media (min-width: 992px) {
3048     .icon-img-footer {
3049         width: 120px; 
3050     }
3051 }
3052 
3053 
3054 </style>
3055   <div id="row-delivery-date" class="row m-0 mb-3">
3056     <h4 class="fw-600 text-uppercase col-12 p-0 mb-15" style="color: rgb(26, 195, 201);">ATUR TANGGAL BERMAINMU UNTUK MENCIPTAKAN PELUANG KEMENANGAN LEBIH TINGGI</h4>
3057     <div id="deliveryDate" class="m-0"></div>
3058     <div id="deliveryDateFull">
3059       <div class="">
3060         <input
3061           type="text"
3062           id="full-date"
3063           class="date-full calendarbutton btn steps-btn btn-date-time mb-0"
3064           value="Full Calendar"
3065         >
3066         <label for="full-date"><svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.png" width="32" height="32" viewBox="0 0 32 32">
3067 <title>icon-arrow-right</title>
3068 <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>
3069 </svg></label>
3070       </div>
3071       <button class="btnChangeDeliveryDate hide">Change Delivery Date</button>
3072     </div>
3073     <div class="form-group p-0">
3074       <input type="text" id="propDeliveryDate" required class="hide">
3075     </div>
3076   </div>
3077   
3078   
3079     <div id="row-delivery-time" class="row m-0 mb-3">
3080       <h4 class="text-center fw-600 text-uppercase col-12 mb-15">
3081     !! MARSHA !!
3082 </h4>
3083       <div id="deliveryTime" class="d-flex w-100 m-0"></div>
3084       <div class="form-group p-0">
3085         <input type="text" id="propDeliveryTime" class="hide" required>
3086       </div>
3087     </div>
3088   
3089 
3090 
3091   
3092   
3093   <div id="personalizeBtn">
3094     
3095     
3096     
3097     
3098     <button
3099       class="btn text-uppercase w-100 fw-400"
3100       
3101       
3102       
3103     >
3104       
3105         customize your flower board
3106       
3107     </button>
3108     <div class="button-share-wishlist d-flex justify-content-around mt-3">
3109       <div class="button-share text-center">
3110         <p id="shareButton" class="d-flex gap-2"><span>PUBTOGEL</span><svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="15" height="13" viewBox="0 0 15 13" fill="none">
3111   <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"/>
3112 </svg>
3113 </p>
3114       </div>
3115       <div class="button-wishlist text-center">
3116         <p id="wishButton" class="d-flex gap-2 wishlist-toggle" data-product-handle="blossom-shine"><span>Wishlist</span><svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="16" height="15" viewBox="0 0 16 15" fill="none">
3117   <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"/>
3118 </svg>
3119 <!--
3120   <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="34" height="30" viewBox="0 0 34 30" fill="none">
3121   <path d="M32.8333 9.23082C32.8333 4.51916 29.0142 0.699158 24.3025 0.699158C21.2 0.699158 
312118.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"/>
3122   </svg>
3123 -->
3124 </p>
3125       </div>
3126     </div>
3127   </div>
3128 </div>
3129 <div class="purchasePopup purchasePopupSpotify" style="display: none;">
3130   <div class="purchaseArea">
3131     <div class="sectionPurchase sectionPurchaseSpotify">
3132       <div class="wrapperPurchase">
3133         <div class="headerPurchase">
3134           <h3>personalize spotify photo print</h3>
3135           <a class="close-purchase-popup">
3136             <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
3137               <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>
3138             </svg>
3139           </a>
3140         </div>
3141         <div class="contentPurchase">
3142           <div class="spotifyAddons"></div>
3143         </div>
3144 
3145         <div class="purchase-button btn-addon row m-0" style="display: none;">
3146           <div class="col-12 col-lg-2 text-left mb-2 p-0">
3147             <button class="back-purchase-button back-addon text-uppercase">
3148               <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://kucingair.com/fotobaka/logopub.png">
3149                 <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>
3150               </svg>
3151               <span>Back</span>
3152             </button>
3153           </div>
3154           <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;">
3155             <button class="btn next-purchase-button next-addon text-uppercase">
3156               <span>continue without add-ons</span>
3157             </button>
3158           </div>
3159         </div>
3160       </div>
3161     </div>
3162   </div>
3163 </div>
3164 
3165 <style>
3166   #PBarNextFrameWrapper {
3167     display: none;
3168   }
3169   #backgroundPopup {
3170     display: none;
3171     position: fixed;
3172     _position: absolute;
3173     height: 100%;
3174     width: 100%;
3175     top: 0;
3176     left: 0;
3177     background: rgb(117 117 117 / 24%);
3178     z-index: 1;
3179   }
3180   .sectionPurchase {
3181     height: 100%;
3182     position: relative;
3183     max-width: 1344px;
3184     background-color: #fff;
3185     padding: 0;
3186     overflow: hidden; /* Changed from auto to hidden */
3187     display: flex;
3188     flex-direction: column;
3189   }
3190   .sectionPurchase.purchaseAddonSpotify {
3191     max-width: 1070px!important;
3192     max-height: 765px!important;
3193   }
3194   .sectionPurchaseBoard {
3195     max-width: 872px!important;
3196     max-height: 821px!important;
3197   }
3198   .purchaseAddonSpotify .btn-action {
3199     position: absolute;
3200     bottom: 0;
3201     left: 0;
3202     width: 100%;
3203     display: flex;
3204     gap: 10px;
3205   }
3206   .wrapperPurchase {
3207     position: relative;
3208     height: 100%;
3209     display: flex;
3210     flex-direction: column;
3211   }
3212   
3213   /* New styles for scrollable content and sticky button */
3214   .purchase-content {
3215     flex: 1;
3216     overflow-y: auto;
3217     overflow-x: hidden;
3218     padding: 20px;
3219   }
3220   
3221   .purchase-button-wrapper {
3222     position: sticky;
3223     bottom: 0;
3224     background-color: #fff;
3225     border-top: 1px solid #e0e0e0;
3226     padding: 15px 0;
3227     margin-top: auto;
3228     z-index: 10;
3229   }
3230   
3231   .purchasePopup {
3232     display: none;
3233     position: fixed;
3234     background: rgb(117 117 117 / 24%);
3235     z-index: 999;
3236     padding: 40px;
3237     font-size: 13px;
3238     top: 0;
3239     left: 0;
3240     width: 100%;
3241     height: 100%;
3242   }
3243   .popupPurchaseClose{
3244     font-size:14px;
3245     line-height:14px;
3246     right:45px;
3247     top:45px;
3248     position:absolute;
3249     color:#6fa5fd;
3250     font-weight:700;
3251     display:block;
3252     cursor: pointer;
3253   }
3254 
3255   .headerPurchase {
3256     margin-bottom: 30px;
3257     display: flex;
3258     justify-content: space-between;
3259   }
3260 
3261   .headerPurchase h3 {
3262     font-size: 16px;
3263     text-transform: uppercase;
3264   }
3265 
3266   .sectionPurchaseBoard .headerPurchase {
3267     margin-bottom: 15px;
3268   }
3269 
3270   .sectionPurchaseBoard .formAddressPurchase {
3271     padding-top: 0;
3272   }
3273 
3274   .purchaseArea {
3275     position: relative;
3276     height: 100%;
3277   }
3278 
3279   .purchaseArea h4 {
3280     width: 100%;
3281     font-size: 12px;
3282     font-weight: 600;
3283     margin-bottom: 10px;
3284     text-transform: uppercase;
3285   }
3286 
3287   .menuPurchase {
3288     margin-bottom: 30px;
3289   }
3290 
3291   .menuPurchase ul {
3292     list-style-type: none;
3293     margin: 0;
3294   }
3295 
3296   .menuPurchase ul li {
3297     display: inline-block;
3298     border: 1px solid #ffffff;
3299     padding: 5px 20px;
3300     margin-right: 5px;
3301     margin-bottom: 10px;
3302     font-size: 12px;
3303     font-weight: 400;
3304   }
3305 
3306   .menuPurchase ul li:hover, .menuPurchase ul li.selected {
3307     background-color: #ffffff;
3308     color: #ffffff;
3309   }
3310 
3311   .contentPurchase h5 {
3312       font-size: 12px;
3313       margin-bottom: 10px;
3314       font-weight: 400;
3315       overflow: hidden;
3316   }
3317 
3318   /* Card */
3319 
3320   #itemCards {
3321     max-height: 430px;
3322     overflow: auto;
3323   }
3324 
3325   .item-cards {
3326       width: 100%;
3327   }
3328   .item-card.selected {
3329       border: 1px solid #ffffff;
3330   }
3331   .item-card:hover {
3332       border: 1px solid #C4C4C4;
3333   }
3334   .item-cards .item-card {
3335     position: relative;
3336     width: calc(33% - 10px);
3337     max-width: calc(33% - 10px);
3338     flex: 0 0 calc(33% - 10px);
3339     margin-bottom: 20px;
3340   }
3341   .item-cards .item-card label,
3342   .item-addons .item-addon label {
3343       position: absolute;
3344       left: 0;
3345       width: 100%;
3346       height: 100%;
3347   }
3348   .item-cards .item-card .card-image img,
3349   .item-addons .item-addon .card-image img {
3350       display: block;
3351       width: 100%;
3352   }
3353   .item-card .card-meta,
3354   .item-addon .card-meta {
3355       padding: 10px 5px 5px;
3356   }
3357   .item-card.selected .card-meta,
3358   .item-addon.selected .card-meta,
3359   .item-card.selected .card-qty {
3360       background-color: #ffffff;
3361       color: #fff;
3362       visibility: visible!important;
3363   }
3364   .item-card:hover .card-meta,
3365   .item-addon:hover .card-meta,
3366   .item-card:hover .card-qty {
3367       background-color: #C4C4C4;
3368       color: #fff;
3369       visibility: visible!important;
3370   }
3371   .item-cards .item-card p,
3372   .item-addons .item-addon p {
3373     font-size: 12px !important;
3374     margin: 0;
3375     font-weight: 600;
3376   }
3377   .item-card .card-meta input,
3378   .item-addon .card-meta input {
3379       display: none;
3380   }
3381   .item-cards .item-card h5,
3382   .item-addons .item-addon h5 {
3383     text-transform: uppercase;
3384     max-height: 35px;
3385   }
3386 
3387   @media (max-width: 768px) {
3388     .item-cards .item-card {
3389         width: calc(50% - 10px);
3390         max-width: calc(50% - 10px);
3391         flex: 0 0 calc(50% - 10px);
3392         margin-bottom: 0;
3393     }
3394   }
3395 
3396   .card-qty {
3397     display: flex;
3398     padding: 5px;
3399     visibility: hidden;
3400     background-color: #fff !important;
3401     z-index: 999;
3402   }
3403   .card-qty a {
3404     border-width: 1px;
3405     width: 30%;
3406     cursor: pointer;
3407     text-align: center;
3408     align-self: center;
3409     height: 28px;
3410     display: block;
3411     position: relative;
3412   }
3413   .card-qty a svg {
3414     position: absolute;
3415     top: 50%;
3416     left: 50%;
3417     transform: translate(-50%, -50%);
3418     text-align: center;
3419   }
3420   input.btn-qty {
3421     border-width: 0px;
3422     border-radius: 0;
3423     background-color: #fff;
3424     -webkit-appearance: none;
3425     box-shadow: none !important;
3426     -webkit-box-shadow: none !important;
3427     -moz-box-shadow: none!important;
3428     width: 40%;
3429     border-left: 1px solid #c4c4c4;
3430     border-right: 1px solid #c4c4c4;
3431     padding: 0;
3432   }
3433 
3434   .sectionPurchaseBoard #itemAddons .item-card {
3435     width: calc(20% - 15px);
3436     max-width: calc(20% - 15px);
3437     flex: 0 0 calc(20% - 15px);
3438   }
3439 
3440   .purchase-button {
3441     width: 100%;
3442     padding: 0; /* Reset padding as it's now handled by wrapper */
3443     margin: 0;
3444   }
3445 
3446   .sectionPurchaseBoard .purchase-button {
3447     margin-top: 0 !important; /* Reset margin */
3448   }
3449 
3450   .back-purchase-button, .back-spotify {
3451       width: 139px;
3452       border: 1px solid;
3453       height: 43px;
3454   }
3455   .purchase-button .btn {
3456     width: 297px;
3457     height: 43px;
3458     background-color: #ffffff;
3459     color: #ffffff;
3460   }
3461   .purchase-button .btn[disabled] {
3462     background-color: #EEEEEE;
3463   }
3464   .back-purchase-button svg, .back-spotify svg {
3465     align-self: center;
3466     vertical-align: middle;
3467     margin-right: 10px;
3468   }
3469 
3470   #purchaseProduct .row .error {
3471     font-size: 12px !important;
3472     color: orange;
3473     margin-top: 5px;
3474   }
3475 
3476   .reviewCardPurchase {
3477     max-width: 448px;
3478     float: right;
3479   }
3480 
3481   .addonsPurchase .addon-item {display: flex;justify-content: space-between;}
3482   .addon-item * {align-self: center;font-size: 12px;}
3483   .addon-itm-title {width: 360px;}
3484   .addon-itm-line-price {color: #757575;width: 80px;justify-content: space-between;display: flex;}
3485 
3486   .propsAddonSpotify p {
3487     margin: 0;
3488     display: flex;
3489     font-size: 12px !important;
3490     margin-bottom: 5px;
3491   }
3492   .propsAddonSpotify p span:first-child {
3493     text-transform: uppercase;
3494     font-weight: 600;
3495     -ms-flex: 0 0 150px;
3496     flex: 0 0 150px;
3497     max-width: 150px;
3498   }
3499 
3500   .addonsPurchase .addons {
3501     max-height: 250px;
3502     overflow: auto;
3503   }
3504 
3505   .btn .loading:after {
3506     content: "";
3507     display: inline-block;
3508     width: 20px;
3509     height: 20px;
3510     padding: 3px;
3511     aspect-ratio: 1;
3512     border-radius: 50%;
3513     background: #FFFFFF;
3514     --_m: conic-gradient(#0000 10%, #ffffff), linear-gradient(#ffffff 0 0) content-box;
3515     -webkit-mask: var(--_m);
3516     mask: var(--_m);
3517     -webkit-mask-composite: source-out;
3518     mask-composite: subtract;
3519     animation: l3 1s infinite linear;
3520     margin: auto;
3521     vertical-align: middle;
3522     margin-left: 10px;
3523   }
3524 
3525   #qrcode img, #qrcode canvas {
3526     width: 50px;
3527     position: absolute;
3528     top: 12px;
3529     left: 16px;
3530   }
3531 
3532   .t-preview {
3533     position: absolute;
3534     top: 17px;
3535     left: 75px;
3536   }
3537   .t-preview p {
3538     margin: 0;
3539     font-size: 12px !important;
3540   }
3541   .t-preview .h3 {
3542     font-size: 16px !important;
3543     margin-bottom: 5px;
3544     font-weight: 600;
3545   }
3546   .scanCard {
3547     width: 100%;
3548     border: 1px solid;
3549     height: 76px;
3550     background-color: #fff;
3551   }
3552   .scanCard > div > img {
3553     position: absolute;
3554     right: 0;
3555     width: 55px;
3556   }
3557 
3558   @keyframes l3 {
3559     100% {
3560       transform: rotate(1turn);
3561     }
3562   }
3563 
3564   @media (min-width: 991px) {
3565     .sectionPurchase {
3566       height: 100%;
3567       position: relative;
3568       max-width: 1344px;
3569       background-color: #fff;
3570       top: 50%;
3571       left: 50%;
3572       transform: translate(-50%, -50%);
3573     }
3574     .headerPurchase h3 {
3575       font-size: 20px;
3576     }
3577     .purchaseArea h4 {
3578       font-size: 16px;
3579     }
3580 
3581     .menuPurchase ul li {
3582         font-size: 16px;
3583     }
3584     
3585     .contentPurchase {
3586       margin-bottom: 30px;
3587     }
3588     .contentPurchase h5 {
3589       font-size: 16px;
3590     }
3591 
3592     .item-cards .item-card p,
3593     .item-addons .item-addon p {
3594       font-size: 16px !important;
3595     }
3596 
3597     .cards {
3598       float: right;
3599       width: 400px;
3600     }
3601 
3602     .item-cards .item-card {
3603       width: calc(25% - 30px);
3604       max-width: calc(25% - 30px);
3605       flex: 0 0 calc(25% - 30px);
3606     }
3607 
3608       #itemAddons .item-card {
3609         position: relative;
3610         width: calc(16% - 40px);
3611         max-width: calc(16% - 40px);
3612         flex: 0 0 calc(16% - 40px);
3613       }
3614       
3615     .purchase-button-wrapper {
3616         padding: 10px 20px;
3617     }
3618   }
3619 
3620   @media (max-width: 1200px) {
3621     .item-cards .item-card {
3622       width: calc(33% - 30px);
3623       max-width: calc(33% - 30px);
3624       flex: 0 0 calc(33% - 30px);
3625     }
3626   }
3627 
3628   @media (max-width: 992px) {
3629     .purchasePopup {
3630       padding: 0;
3631     }
3632     .item-cards .item-card h5,
3633     .item-addons .item-addon h5 {
3634       max-height: 30px;
3635     }
3636 
3637     .back-purchase-button, .back-spotify, .next-purchase-button {
3638         width: 100%;
3639     }
3640     .addon-itm-title {
3641       width: 300px;
3642     }
3643     .addon-itm-line-price {
3644       margin-right: 10px;
3645     }
3646     .t-preview {
3647       top: 10px;
3648     }
3649 
3650     .card-qty a {
3651       height: 15px;
3652     }
3653     
3654     .purchase-button-wrapper {
3655       padding: 15px;
3656     }
3657   }
3658 
3659   @media (max-width: 576px) {
3660     .purchase-button .btn {
3661         width: 100%!important;
3662     }
3663     .purchase-button > .col-12 {
3664       padding-left: 0;
3665       padding-right: 0;
3666     }
3667   }
3668 </style>
3669 
3670 
3671 <div class="purchasePopup">
3672   <div class="purchaseArea">
3673     
3674       <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard">
3675         <div class="wrapperPurchase">
3676           <div class="purchase-content">
3677             <div class="headerPurchase">
3678   <h3 class="text-uppercase">
3679     
3680       customize your flower board
3681     
3682   </h3>
3683   <a class="close-purchase-popup">
3684   <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
3685     <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"/>
3686   </svg>
3687 </a>
3688 
3689 </div>
3690 <div class="contentPurchase">
3691   <div class="row">
3692     
3693       <div class="col-12">
3694         
3695 
3696 <style>
3697   
3698   
3699   .customize-papan .group-field-1 .input-field {float: left;width: 100%;height: 317px;background-color: #E5E5EA;}
3700   .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;}
3701   
3702   .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;}
3703   .customize-papan .btn-upload-papan svg {width: 21px;height: 25px;display: block;align-self: center;margin: auto;margin-bottom: 12px;}
3704   .svgLogoPapan {position: absolute;width: 100%;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;}
3705   .svgLogoPapan p {color: #8E8E93; margin: 0;}
3706   .svgLogoPapan p span {font-size: 12px;color: #FF0E00;}
3707   .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;}
3708   #suggest-messages {position: absolute;bottom: 5px;left: 5px;}
3709   #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;}
3710   .case-occasion .nice-select:after {border-bottom: 2px solid #333;border-right: 2px solid #333;right: 20px;top: 42%;width: 10px;height: 10px;}
3711   .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;}
3712   .customize-papan .input-field .limit {position: absolute;right: 15px;top: 0;color: #757575;}
3713 
3714   @media (min-width: 991px) {
3715     .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);}
3716     .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);}
3717   }
3718 </style>
3719 
3720 <input type="hidden" data-properties="penerima" value="-">
3721 <div class="customize-papan">
3722   <div class="container">
3723     <div class="field-papan group-field-1 form-group">
3724       <div class="input-field">
3725         <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.
3726 (Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea>
3727         <p class="limit">0/100</p>
3728         <div id="suggest-messages">
3729           <a id="show_note_papan1" href="#">
3730             <div class="suggest-message" id="note_btn_div1">
3731               <span class="promo-code-link" id="note_btn_papan1">Contoh Kata WEDDING</span>
3732             </div>
3733           </a>
3734           <a id="show_note_papan2" href="#">
3735             <div class="suggest-message" id="note_btn_div2">
3736               <span class="promo-code-link" id="note_btn_papan2">Contoh Kata SELAMAT</span>
3737             </div>
3738           </a>
3739           <a id="show_note_papan3" href="#">
3740             <div class="suggest-message" id="note_btn_div3">
3741               <span class="promo-code-link" id="note_btn_papan3">Contoh Kata DUKA CITA</span>
3742             </div>
3743           </a>
3744         </div>
3745       </div>
3746     </div>
3747     <div class="hide">
3748       <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;">
3749       <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1">
3750     </div>
3751     <div class="hide">
3752       <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;">
3753       <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2">
3754     </div>
3755     <div class="hide">
3756       <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;">
3757       <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3">
3758     </div>
3759     <div class="field-papan group-field-2 form-group">
3760       
3761       <label for="logoPapan" onclick="" class="input-field field-logo">
3762         
3763         
3764         
3765         <div class="btn-upload-papan w-100">
3766           <xml version="1.0" encoding="UTF-8">
3767           <img src="" style="display:none">
3768           <div class="svgLogoPapan">
3769             <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="22" height="26" viewBox="0 0 22 26" fill="none">
3770               <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black"/>
3771             </svg>
3772             <p>Upload Logo <span>*optional</span></p>
3773           </div>
3774        </div>
3775         
3776       </label>
3777       
3778       <input
3779         type="hidden"
3780         data-properties="papan-logo"
3781         value=""
3782       >
3783       <input
3784         type="file"
3785         id="logoPapan"
3786         accept="image/*"
3787         style="position: absolute;width: 1px;height: 1px;padding: 0"
3788       >
3789       
3790       <div class="input-field">
3791         <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35"/>
3792         <p class="limit">0/35</p>
3793       </div>
3794       
3795     </div>
3796     
3797   </div>
3798 </div>
3799       </div>
3800     
3801   </div>
3802 </div>
3803 
3804           </div>
3805           <div class="purchase-button-wrapper">
3806             <div class="purchase-button btn-card row m-0">
3807   <div class="col-12 col-lg-2 text-left mb-2 p-0">
3808     
3809   </div>
3810   <div class="btn-next-card col-12 col-lg-10 text-right">
3811     
3812     
3813     <button
3814       
3815         
3816       
3817       class="btn next-purchase-button text-uppercase"
3818       
3819         disabled
3820       
3821     >
3822       <span>save your flower board</span>
3823     </button>
3824   </div>
3825 </div>
3826 
3827           </div>
3828         </div>
3829       </div>
3830     
3831     
3832     
3833       <div
3834         class="sectionPurchase sectionPurchaseBoard hide"
3835         data-section="address"
3836       >
3837         <div class="wrapperPurchase">
3838           <div class="purchase-content">
3839             <div class="headerPurchase">
3840   <h3>
3841     Complete Your Order
3842   </h3>
3843   <a class="close-purchase-popup">
3844   <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
3845     <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"/>
3846   </svg>
3847 </a>
3848 
3849 </div>
3850 <div class="contentPurchase">
3851   <div class="row">
3852     <div class="col-12 position-relative">
3853       <div class="addressPurchase">
3854         
3855           <h4 class="text-uppercase">recipient delivery address</h4>
3856           <p>Share the delivery address to send your heartfelt blooms straight to their door.</p>
3857         
3858         <div class="formAddressPurchase row">
3859           <div class="col-12">
3860             <form>
3861               <div class="form-group row mb-2 mb-lg-4">
3862                 <div class="col-6 position-relative">
3863                   <input id="first_name" type="text" class="form-control input__field" placeholder="" required>
3864                   <label for="first_name" class="input__label">First Name<span>*</span></label>
3865                 </div>
3866                 <div class="col-6 position-relative">
3867                   <input id="last_name" type="text" class="form-control input__field" placeholder="" required>
3868                   <label for="last_name" class="input__label">Last Name<span>*</span></label>
3869                 </div>
3870                 <input type="hidden" data-properties="nama-penerima">
3871               </div>
3872               
3873                 <h4 class="text-uppercase">how you want to input your address</h4>
3874                 <div class="form-group row mb-2 mb-lg-4 form-address-upload">
3875                   <div class="col-6 position-relative">
3876                     <label class="address-manualy">
3877                       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="18" height="17" viewBox="0 0 18 17" fill="none">
3878   <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
38781216 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
38785 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"/>
3879 </svg>
3880 <span>Input Address Manually</span>
3881                     </label>
3882                   </div>
3883                   <div class="col-6 position-relative">
3884                     <label for="address-upload" class="address-upload">
3885                       <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="12" height="13" viewBox="0 0 12 13" fill="none">
3886   <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"/>
3887 </svg>
3888 <span>Upload Address Picture</span>
3889                     </label>
3890                     <input
3891                       id="address-upload"
3892                       type="file"
3893                       accept="image/png, image/jpeg"
3894                       style="position: absolute; padding: 0;width: 1px;height: 1px"
3895                     >
3896                     <input type="hidden" class="props-address-upload" data-properties="foto-alamat">
3897                   </div>
3898                 </div>
3899                 <img width="150" height="" src="" class="photo-address" style="display: none;">
3900               
3901               <div class="form-group row position-relative mb-2 mb-lg-4 form-address">
3902                 <div class="col-12">
3903                   <textarea
3904                     id="delivery_address"
3905                     data-properties="alamat-penerima"
3906                     class="form-control input__field col-12"
3907                     placeholder=""
3908                     required
3909                   ></textarea>
3910                   <label for="delivery_address" class="input__label">Delivery Address<span>*</span></label>
3911                   
3912                 </div>
3913               </div>
3914               <div class="form-group row mb-2 mb-lg-4 form-address">
3915                 <div class="col-6 position-relative">
3916                   <input
3917                     id="recipient_number"
3918                     type="text"
3919                     data-properties="telepon-penerima"
3920                     class="form-control input__field"
3921                     placeholder=""
3922                     required
3923                   >
3924                   <label for="recipient_number" class="input__label">Recipient number<span>*</span></label>
3925                 </div>
3926                 <div class="col-6 position-relative">
3927                   <input
3928                     id="company"
3929                     type="text"
3930                     data-properties="company"
3931                     class="form-control input__field"
3932                     placeholder=""
3933                   >
3934                   <label for="company" class="input__label">Company (Optional)</label>
3935                 </div>
3936               </div>
3937               <div class="form-group row mb-2 mb-lg-4 form-address">
3938                 <div class="col-6 position-relative">
3939                   <input
3940                     id="province"
3941                     type="text"
3942                     class="form-control input__field"
3943                     placeholder=""
3944                     value="Jakarta"
3945                     data-properties="province"
3946                   >
3947                   <label for="province" class="input__label">Province</label>
3948                 </div>
3949                 <div class="col-6 position-relative">
3950                   <select id="zip" class="form-control select-search" required></select>
3951                 </div>
3952               </div>
3953             </form>
3954           </div>
3955         </div>
3956       </div>
3957       <div class="addonsPurchase">
3958         <h4 class="text-uppercase">add-ons</h4>
3959         <div class="addons">
3960           <p>No Add-Ons</p>
3961           <!--
3962             <button class="add-addon">
3963               <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="12" height="12" viewBox="0 0 12 12" fill="none">
3964                 <path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/>
3965               </svg>
3966               <span>Enhance my moment with Add-ons</span>
3967             </button>
3968           -->
3969         </div>
3970       </div>
3971     </div>
3972     
3973   </div>
3974 </div>
3975 
3976 
3976<script>
3977 document.addEventListener('DOMContentLoaded', function() {
3978   // Detect iOS
3979   var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream;
3980   
3981   if (isIOS) {
3982     document.querySelector('.formAddressPurchase').classList.add('ios');
3983     
3984     // iOS specific fixes
3985     var inputs = document.querySelectorAll('.formAddressPurchase .input__field');
3986     
3987     inputs.forEach(function(input) {
3988       // Force enable touch events on iOS
3989       input.style.webkitUserSelect = 'text';
3990       input.style.webkitTouchCallout = 'default';
3991       input.style.pointerEvents = 'auto';
3992       input.style.touchAction = 'manipulation';
3993       
3994       // Add explicit touch event listeners for iOS
3995       input.addEventListener('touchstart', function(e) {
3996         e.stopPropagation();
3997         this.focus();
3998       }, { passive: false });
3999       
4000       input.addEventListener('touchend', function(e) {
4001         e.preventDefault();
4002         e.stopPropagation();
4003         this.focus();
4004         this.click();
4005       }, { passive: false });
4006       
4007       // Force focus on tap for iOS
4008       input.addEventListener('click', function(e) {
4009         e.stopPropagation();
4010         if (document.activeElement !== this) {
4011           this.focus();
4012         }
4013       });
4014     });
4015     
4016     // Fix for label overlapping on iOS
4017     var labels = document.querySelectorAll('.formAddressPurchase .input__label');
4018     labels.forEach(function(label) {
4019       label.style.pointerEvents = 'none';
4020       label.addEventListener('touchstart', function(e) {
4021         e.preventDefault();
4022         var input = this.parentNode.querySelector('.input__field');
4023         if (input) {
4024           input.focus();
4025         }
4026       });
4027     });
4028   }
4029   
4030   // Handle input state for all browsers, especially iOS
4031   var inputs = document.querySelectorAll('.input__field');
4032   
4033   inputs.forEach(function(input) {
4034     // Handle input events
4035     input.addEventListener('input', function() {
4036       if (this.value.trim() !== '') {
4037         this.classList.add('has-value');
4038       } else {
4039         this.classList.remove('has-value');
4040       }
4041     });
4042     
4043     // Handle focus
4044     input.addEventListener('focus', function() {
4045       this.classList.add('focused');
4046       // iOS specific: ensure input is visible
4047       if (isIOS) {
4048         setTimeout(function() {
4049           input.scrollIntoView({ behavior: 'smooth', block: 'center' });
4050         }, 300);
4051       }
4052     });
4053     
4054     // Handle blur
4055     input.addEventListener('blur', function() {
4056       this.classList.remove('focused');
4057       if (this.value.trim() !== '') {
4058         this.classList.add('has-value');
4059       } else {
4060         this.classList.remove('has-value');
4061       }
4062     });
4063     
4064     // Initial check for pre-filled values
4065     if (input.value.trim() !== '') {
4066       input.classList.add('has-value');
4067     }
4068   });
4069   
4070   // Additional iOS fixes
4071   if (isIOS) {
4072     // Prevent iOS Safari from adding default styling
4073     document.addEventListener('touchstart', function() {}, { passive: true });
4074     
4075     // Fix viewport issues on iOS
4076     var viewport = document.querySelector('meta[name=viewport]');
4077     if (viewport) {
4078       viewport.setAttribute('content', 
4079         'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no'
4080       );
4081     }
4082   }
4083 });
4084 </script>
4084
4085           </div>
4086           <div class="purchase-button-wrapper">
4087             <div class="purchase-button btn-address row m-0">
4088   <div class="col-12 col-lg-2 text-left mb-2 p-0">
4089     
4090       <button class="back-purchase-button back-address text-uppercase">
4091         <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://kucingair.com/fotobaka/logopub.png">
4092           <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"/>
4093         </svg>
4094         <span>Back</span>
4095       </button>
4096     
4097   </div>
4098   <div class="btn-next-card col-12 col-lg-10 text-right">
4099     
4100       <!--
4101         <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0">
4102           <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="https://kucingair.com/fotobaka/logopub.png">
4103             <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"/>
4104           </svg>
4105           <span>Back</span>
4106         </button>
4107       -->
4108     
4109     
4110     <button
4111       
4112         id="addtocart-card"
4113       
4114       class="btn  next-address text-uppercase"
4115       
4116     >
4117       <span>add to cart</span>
4118     </button>
4119   </div>
4120 </div>
4121 
4122           </div>
4123         </div>
4124       </div>
4125     
4126   </div>
4127 </div>
4128 <div id="backgroundPopup"></div>
4129 
4130 
4131 
4132 <input
4133   data-index="1"
4134   type="hidden"
4135   id="properties-delivery-date"
4136   name="properties[Delivery Date]"
4137   value="-"
4138 >
4139 <input
4140   data-index="2"
4141   type="hidden"
4142   id="properties-delivery-time"
4143   name="properties[Delivery Time]"
4144   value="-"
4145 >
4146 <input
4147   data-index="4"
4148   type="hidden"
4149   id="properties-nama-penerima"
4150   name="properties[Nama Penerima]"
4151   value="-"
4152 >
4153 <input
4154   data-index="5"
4155   type="hidden"
4156   id="properties-alamat-penerima"
4157   name="properties[Alamat Penerima]"
4158   value="-"
4159 >
4160 <input
4161   data-index="6"
4162   type="hidden"
4163   id="properties-kodepos"
4164   name="properties[Kodepos]"
4165   value="-"
4166 >
4167 <input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]">
4168 
4169   
4170     <input
4171       data-index="8"
4172       type="hidden"
4173       id="properties-kartu-nama-penerima"
4174       name="properties[Kartu Nama Penerima]"
4175       value="-"
4176     >
4177   
4178   <textarea
4179     data-index="9"
4180     type="hidden"
4181     id="properties-kartu-pesan"
4182     name="properties[Kartu Pesan]"
4183     style="display: none"
4184   >-</textarea>
4185 
4186 
4187 
4188   <input
4189     data-index="10"
4190     type="hidden"
4191     id="properties-kartu-nama-pengirim"
4192     name="properties[Kartu Nama Pengirim]"
4193     value="-"
4194   >
4195 
4196 
4197 
4198   
4199   
4200 
4201 
4202 
4203 
4204 
4205 
4206 
4207 
4208 
4209 
4210 
4211 
4212 
4213 <!-- Additional Shipping -->
4214 <input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]">
4215 <input
4216   type="hidden"
4217   id="properties-kota-pengiriman-country"
4218   name="properties[Country]"
4219   value="Indonesia"
4220 >
4221 <input type="hidden" id="properties-shipping" name="properties[Shipping]">
4222 
4223 <input type="hidden" id="properties-time" name="properties[Time]">
4224 <input type="hidden" id="properties-card" name="properties[Card]">
4225 <input type="hidden" id="properties-addons" name="properties[Addons]">
4226 
4227 <input
4228   type="hidden"
4229   id="properties-company"
4230   name="properties[Company]"
4231   value=""
4232 >
4233 
4233<script>
4234   
4235   $(document).ready(function(){
4236     
4237     var text_max_papan1=150;
4238     var msg_text_papan1="";
4239     $('#kartu-ucapan-ucapan').keyup(function(){
4240       var text_length_papan1=$('#kartu-ucapan-ucapan').val().length;
4241       var msg_text_papan1=$('#kartu-ucapan-ucapan').val();
4242     });
4243 
4244     var notes_papan1 = [
4245       
4246       [0,"Happy Wedding (nama & nama)."],[1,"Congratulations lovebirds (nama & nama)."],[2,"Selamat berbahagia (nama & nama)."],[3,"Selamat menempuh hidup baru (nama & nama)."]
4247       
4248     ];
4249     $('#show_note_papan1').click(function(event){
4250       event.preventDefault();
4251       var idx_papan1=parseInt($('#note_id_papan1').val());
4252       if(isNaN(idx_papan1)){
4253         idx_papan1=0;
4254       }else{
4255         idx_papan1++;
4256         idx_papan1=idx_papan1%notes_papan1.length;
4257       }
4258       var note_papan1=notes_papan1[idx_papan1][1];
4259       $('#note_id_papan1').val(idx_papan1);
4260       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1);
4261       $('#msgDelivery').val(note_papan1);
4262 
4263       var text_length_papan1=$('#kartu-ucapan-papan').val().length;
4264       var idx_2_papan1=parseInt($('#note_btn_id_papan1').val());
4265       if(isNaN(idx_2_papan1)){
4266         idx_2_papan1=0;
4267       }else{
4268         idx_2_papan1++;
4269         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4270       }
4271       $('#note_btn_id_papan1').val(idx_2_papan1);
4272       //var note_btn=note_btn_text[idx_2][1];
4273       //$('#note_btn').text(note_btn);
4274     });
4275 
4276     var text_max_papan2=150;
4277     var msg_text_papan2="";
4278     $('#kartu-ucapan-ucapan').keyup(function(){
4279       var text_length_papan2=$('#kartu-ucapan-ucapan').val().length;
4280       var msg_text_papan2=$('#kartu-ucapan-ucapan').val();
4281     });
4282 
4283     var notes_papan2 = [
4284       
4285       [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)."]
4286       
4287     ];
4288     $('#show_note_papan2').click(function(event){
4289       event.preventDefault();
4290       var idx_papan2=parseInt($('#note_id_papan2').val());
4291       if(isNaN(idx_papan2)){
4292         idx_papan2=0;
4293       }else{
4294         idx_papan2++;
4295         idx_papan2=idx_papan2%notes_papan2.length;
4296       }
4297       var note_papan2=notes_papan2[idx_papan2][1];
4298       $('#note_id_papan2').val(idx_papan2);
4299       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2);
4300       $('#msgDelivery').val(note_papan2);
4301       var text_length_papan2=$('#kartu-ucapan-papan').val().length;
4302       var idx_2_papan2=parseInt($('#note_btn_id_papan2').val());
4303       if(isNaN(idx_2_papan2)){
4304         idx_2_papan2=0;
4305       }else{
4306         idx_2_papan2++;
4307         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4308       }
4309       $('#note_btn_id_papan2').val(idx_2_papan2);
4310       //var note_btn=note_btn_text[idx_2][1];
4311       //$('#note_btn').text(note_btn);
4312     });
4313 
4314     var text_max_papan3=150;
4315     var msg_text_papan3="";
4316     $('#kartu-ucapan-ucapan').keyup(function(){
4317       var text_length_papan3=$('#kartu-ucapan-ucapan').val().length;
4318       var msg_text_papan3=$('#kartu-ucapan-ucapan').val();
4319     });
4320 
4321     var notes_papan3 = [
4322       
4323       [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)."]
4324       
4325     ];
4326     $('#show_note_papan3').click(function(event){
4327       event.preventDefault();
4328       var idx_papan3=parseInt($('#note_id_papan3').val());
4329       if(isNaN(idx_papan3)){
4330         idx_papan3=0;
4331       }else{
4332         idx_papan3++;
4333         idx_papan3=idx_papan3%notes_papan3.length;
4334       }
4335       var note_papan3=notes_papan3[idx_papan3][1];
4336       $('#note_id_papan3').val(idx_papan3);
4337       $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3);
4338       $('#msgDelivery').val(note_papan3);
4339       var text_length_papan3=$('#kartu-ucapan-papan').val().length;
4340       var idx_2_papan3=parseInt($('#note_btn_id_papan3').val());
4341       if(isNaN(idx_2_papan3)){
4342         idx_2_papan3=0;
4343       }else{
4344         idx_2_papan3++;
4345         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4346       }
4347       $('#note_btn_id_papan3').val(idx_2_papan3);
4348       //var note_btn=note_btn_text[idx_2][1];
4349       //$('#note_btn').text(note_btn);
4350     });
4351 
4352     var text_max_papan4=150;
4353     var msg_text_papan4="";
4354     $('#kartu-ucapan-ucapan').keyup(function(){
4355       var text_length_papan4=$('#kartu-ucapan-ucapan').val().length;
4356       var msg_text_papan4=$('#kartu-ucapan-ucapan').val();
4357     });
4358 
4359     $('#show_note_papan4').click(function(event){
4360       var notes_papan4 = [
4361         [0,"Here�s to you�steadier, stronger and better every day."],
4362         [1,"Warmest wishes for a speedy recovery!"],
4363         [2,"Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."],
4364         [3,"Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."]
4365       ];
4366       event.preventDefault();
4367       var idx_papan4=parseInt($('#note_id_papan4').val());
4368       console.log(idx_papan4, 'idx_papan4')
4369       if(isNaN(idx_papan4)){
4370         idx_papan4=0;
4371       }else{
4372         idx_papan4++;
4373         idx_papan4=idx_papan4%notes_papan4.length;
4374       }
4375       var note_papan4=notes_papan4[idx_papan4][1];
4376       $('#note_id_papan4').val(idx_papan4);
4377       $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4);
4378       console.log(note_papan4, 'note_papan4')
4379       var text_length_papan4=$('#kartu-ucapan-papan').val().length;
4380       var idx_2_papan4=parseInt($('#note_btn_id_papan4').val());
4381       if(isNaN(idx_2_papan4)){
4382         idx_2_papan4=0;
4383       }else{
4384         idx_2_papan4++;
4385         //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length;
4386       }
4387       $('#note_btn_id_papan4').val(idx_2_papan4);
4388     });
4389 
4390     /*
4391     $("#jenisPapan").change(function(){
4392       $( "select option:selected").each(function(){
4393         if($(this).attr("value")=="Happy Wedding"){
4394           $("#suggest-messages a").hide();
4395           $("#show_note_papan1").show();
4396           $("#kartu-ucapan-papan").val("");
4397         }
4398         if($(this).attr("value")=="Congratulations"){
4399           $("#suggest-messages a").hide();
4400           $("#show_note_papan2").show();
4401           $("#kartu-ucapan-papan").val("");
4402         }
4403         if($(this).attr("value")=="Duka Cita"){
4404           $("#suggest-messages a").hide();
4405           $("#show_note_papan3").show();
4406           $("#kartu-ucapan-papan").val("");
4407         }
4408       });
4409     }).change();
4410     */
4411 
4412     
4413 
4414     
4415 
4416     $(".variant-metafield").each(function(){
4417       const t = $(this)
4418       const id = t.attr("id")
4419       const target = $(`[data-select=${id}]`)
4420       t.on('select2:selecting', function(e) {
4421         const data = e.params.args.data
4422         target.val(data.text)
4423       });
4424     })
4425   })
4426 </script>
4426
4427 
4428 <div id="popupCart">
4429   <div class="container">
4430     <div class="wrapperPopupCart">
4431       <div class="headerPopupCart">
4432         <div class="d-flex pl-5 pr-5 p-4">
4433           <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="16" height="12" viewBox="0 0 16 12" fill="none">
4434             <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"/>
4435           </svg>
4436           <span>item added to your cart</span>
4437         </div>
4438         <a class="close-purchase-popup">
4439   <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="18" height="18" viewBox="0 0 18 18" fill="none">
4440     <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"/>
4441   </svg>
4442 </a>
4443 
4444       </div>
4445       <div class="contentPopupCart">
4446         <div class="pl-5 pr-5 p-4">
4447           <div class="itemContent row m-0 justify-content-between">
4448             <div class="col-2 align-self-center">
4449               
4450               <img
4451                 class="d-block"
4452                 width="80"
4453                 src="//outerbloom.com/cdn/shop/files/Blossom-Shine-WM_80x.jpg?v=1695788426"
4454               >
4455             </div>
4456             <div class="col-10 align-self-center">
4457               <div class="row pl-3">
4458                 <div class="col-12 col-lg-7">
4459                   <span class="titleCartPopup text-uppercase">Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal</span>
4460                 </div>
4461                 <div class="d-flex justify-content-end col-12 col-lg-5">
4462                   <span class="deleteCartPopup hide">Delete</span>
4463                   <span class="lineCartPrice align-self-center">Rp 10.000</span>
4464                 </div>
4465               </div>
4466             </div>
4467           </div>
4468           <div class="itemProperties">
4469             
4470               <div class="propDeliver">
4471                 <h4>delivery option detail</h4>
4472                 <p>
4473                   <span>delivery city</span>
4474                   <span class="propDeliveryCity">jakarta</span>
4475                 </p>
4476                 <p>
4477                   <span>delivery date</span>
4478                   <span class="propDeliveryDate">24/03/2025</span>
4479                 </p>
4480                 <p>
4481                   <span>delivery time</span>
4482                   <span class="propDeliveryTime">Afternoon | 13:00 - 18:00</span>
4483                 </p>
4484               </div>
4485               <div class="propAddress">
4486                 <h4>delivery option detail</h4>
4487                 <p>
4488                   <span>RECIPIENT NAME</span>
4489                   <span class="propDeliveryName">jane doe</span>
4490                 </p>
4491                 <p>
4492                   <span>delivery address</span>
4493                   <span class="propDeliveryAddress"
4494                     >Jl. Gatot Subroto No. 25, RT.2/RW.4, Kuningan Barat, Kecamatan Mampang Prapatan, Kota Jakarta
4495                     Selatan, Daerah Khusus Ibukota Jakarta 12710, Indonesia</span
4496                   >
4497                 </p>
4498                 <p>
4499                   <span>recipient phone number</span>
4500                   <span class="propDeliveryPhone">(+62) 812-3456-7890</span>
4501                 </p>
4502                 <p>
4503                   <span>PROVINCE</span>
4504                   <span class="propDeliveryProv">Jakarta</span>
4505                 </p>
4506                 <p>
4507                   <span>postal code</span>
4508                   <span class="propDeliveryZip">12710</span>
4509                 </p>
4510                 
4511                 
4512               </div>
4513             
4514           </div>
4515           <div class="itemAddonCart">
4516             <div class="toggleAddonCart d-flex justify-content-between">
4517               <h4>add-ons (0)</h4>
4518               <svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="5" height="9" viewBox="0 0 5 9" fill="none">
4519                 <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"/>
4520               </svg>
4521             </div>
4522             <div class="wrapperItemAddonCart"></div>
4523           </div>
4524           
4525         </div>
4526       </div>
4527       <div class="footerPopupCart">
4528         <div class="row m-0 pl-5 pr-5 p-4">
4529           <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a>
4530           <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a>
4531           <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a>
4532         </div>
4533       </div>
4534     </div>
4535   </div>
4536 </div>
4537 
4538 
4539 
4539<script>
4540   const shareButton = document.getElementById('shareButton');
4541 
4542   shareButton.addEventListener('click', () => {
4543     if (navigator.share) {
4544       navigator.share({
4545         title: "Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal",
4546         url: "/products/blossom-shine",
4547         text: 'Check out this page!'
4548       })
4549       .then(() => console.log('Successful share'))
4550       .catch((error) => console.log('Error sharing', error));
4551     } else {
4552       alert('Web Share API is not supported in this browser.');
4553     }
4554   });
4555 
4556   // Inventory validation function
4557   function checkInventoryStatus() {
4558     const productSelect = document.getElementById('productSelect');
4559     const purchaseButton = document.querySelector('#personalizeBtn button');
4560     
4561     if (!productSelect || !purchaseButton) return;
4562 
4563     const selectedVariantId = productSelect.value;
4564     
4565     // Get variant data from Shopify
4566     fetch(`/products/blossom-shine.js`)
4567       .then(response => response.json())
4568       .then(product => {
4569         const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId);
4570         
4571         if (selectedVariant) {
4572           const isOutOfStock = selectedVariant.inventory_quantity <= 0 && 
4573                                selectedVariant.inventory_management === 'shopify' && 
4574                                selectedVariant.inventory_policy !== 'continue';
4575           
4576           if (isOutOfStock) {
4577             purchaseButton.disabled = true;
4578             purchaseButton.textContent = 'Out of Stock';
4579             purchaseButton.setAttribute('data-out-of-stock', 'true');
4580             purchaseButton.style.backgroundColor = '#cccccc';
4581             purchaseButton.style.cursor = 'not-allowed';
4582           } else {
4583             // Check if button was disabled due to other conditions
4584             
4585             
4586             
4587             
4588             
4589             
4590             
4591             
4592             const isOtherDisabled = false || true || false;
4593             
4594             if (!isOtherDisabled) {
4595               purchaseButton.disabled = false;
4596               purchaseButton.textContent = 'customize your flower board';
4597               purchaseButton.removeAttribute('data-out-of-stock');
4598               purchaseButton.style.backgroundColor = '';
4599               purchaseButton.style.cursor = '';
4600             }
4601           }
4602         }
4603       })
4604       .catch(error => {
4605         console.error('Error checking inventory:', error);
4606       });
4607   }
4608 
4609   // Check inventory on page load
4610   document.addEventListener('DOMContentLoaded', function() {
4611     checkInventoryStatus();
4612     
4613     // Listen for variant changes
4614     const productSelect = document.getElementById('productSelect');
4615     if (productSelect) {
4616       productSelect.addEventListener('change', checkInventoryStatus);
4617     }
4618   });
4619 
4620   // Prevent form submission if out of stock
4621   document.addEventListener('click', function(e) {
4622     if (e.target.matches('button[data-out-of-stock="true"]')) {
4623       e.preventDefault();
4624       e.stopPropagation();
4625       alert('This product is currently out of stock and cannot be purchased.');
4626       return false;
4627     }
4628   });
4629 </script>
4629
4630 
4631 
4632   
4633 </div>
4634 
4635           </div>
4636         </div>
4637       </div>
4638     </div>
4639     <div id="product-bottom">
4640       
4641         <div class="product-description rte bg-card col-12 py-3 px-0 m-0" itemprop="description">
4642           <div class="container">
4643             
4644 
4645 
4646 
4647 
4648     <div class="short-desc-mobile d-block d-lg-none mb-3">
4649         <div class="short-desc">
4650             <ul>
4651 <li><strong>Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!</strong></li>
4652         </div>
4653         <label class="more-mobile">Show More ?</label>
4654     </div>
4655 
4656 <style>
4657 .animated-title {
4658     text-align: center;
4659     font-weight: bold;
4660     color: #079c02;
4661     font-size: 28px;
4662     position: relative;
4663     animation: glow 2s infinite alternate, moveUpDown 3s infinite;
4664 }
4665 
4666 /* Efek glow / bercahaya hijau */
4667 @keyframes glow {
4668     0% { text-shadow: 0 0 5px #079c02; color: #079c02; }
4669     50% { text-shadow: 0 0 20px #00ff55; color: #12d12b; }
4670     100% { text-shadow: 0 0 10px #1bff00; color: #079c02; }
4671 }
4672 
4673 /* Efek gerakan naik turun */
4674 @keyframes moveUpDown {
4675     0% { transform: translateY(0px); }
4676     50% { transform: translateY(-5px); }
4677     100% { transform: translateY(0px); }
4678 }
4679 </style>
4680 
4681 
4681<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
4681
4682 
4682<script>
4683   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});
4684 
4685   const productType = $("[data-product-type]").data("product-type")
4686   const productDate = Date.parse(new Date())
4687   
4688   const shop = 'outerbloom1.myshopify.com'
4689   const host = 'https://app.asmaraku.com'
4690   // const host = 'http://localhost:5001'
4691 
4692   const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec"
4693   
4694   const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ')
4695 
4696   $("#properties-time").val(new Date().getTime())
4697 
4698   const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent);
4699 
4700   if(!isIOS) {
4701     $("#full-date").attr("type", "button")
4702   }
4703 
4704   let dateTime = new Date();
4705   let today = dateTime.getDate();
4706   let day = dateTime.getDay();
4707   let hour = dateTime.getHours();
4708   let min = dateTime.getMinutes();
4709   let timeOfDay = hour + (min / 100);
4710 
4711   async function getFetch(url) {
4712     const response = await fetch(url);
4713     let status = false
4714     let result
4715     if(response.ok) {
4716       status = true
4717       result = await response.json();
4718     }
4719     return {
4720       status,
4721       data: result
4722     }
4723   }
4724 
4725   
4726 
4727   function setCookie(cname, cvalue, exMins) {
4728     var d = new Date();
4729     d.setTime(d.getTime() + (exMins*60*1000));
4730     var expires = "expires="+d.toUTCString();  
4731     document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
4732   }
4733 
4734   function getCookie(cname) {
4735     let name = cname + "=";
4736     let decodedCookie = decodeURIComponent(document.cookie);
4737     let ca = decodedCookie.split(';');
4738     for(let i = 0; i <ca.length; i++) {
4739       let c = ca[i];
4740       while (c.charAt(0) == ' ') {
4741         c = c.substring(1);
4742       }
4743       if (c.indexOf(name) == 0) {
4744         return c.substring(name.length, c.length);
4745       }
4746     }
4747     return "";
4748   }
4749 
4750   async function renderDate() {
4751     let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8144957800663&v=${Date.now()}`);
4752     console.log(dataDate, 'renderDate')
4753     const data = dataDate?.data
4754     const date = data.date
4755     const time = data.time
4756 
4757     console.log(date, 'DATE')
4758 
4759     const weekday = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"];
4760     const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
4761     const htmlDate = []
4762     for(let i = 0;i < date.length;i++) {
4763       const full = date[i].date
4764       const d = new Date(date[i].date);
4765       const day = weekday[d.getDay()];
4766       const dt = d.getDate();
4767       const mt = monthly[d.getMonth()];
4768       const yr = d.getFullYear();
4769       const isDate = Boolean(date[i].isEnabled)
4770       const cutoffpagi = date[i].cutoff?.pagi
4771       const cutoffsiang = date[i].cutoff?.siang
4772       const cutoffMalam = date[i].cutoff?.Malam
4773       var html = `
4774         <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'}>
4775           ${dt === today ?
4776             `Today<span>${dt < 10 ? '0' + dt : dt}</span>` :
4777             `${day}<span>${dt < 10 ? '0' + dt : dt}</span>`
4778           }
4779         </button>
4780       `
4781       htmlDate.push(html)
4782     }
4783     const htmlTime = []
4784     for(var i = 0;i < time.length;i++) {
4785       const timeText = time[i].text
4786       const timeTime = time[i].time
4787       const timeEnabled = time[i].isEnabled
4788       var html = `
4789           <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button>
4790         `
4791       htmlTime.push(html)
4792     }
4793     const deliveryDate = document.getElementById("deliveryDate");
4794     if(deliveryDate) {
4795       deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join(''))
4796       $("#deliveryTime").html(htmlTime)
4797       if(productType !== '') {
4798         console.log("clarity event " + productType + ' calendaring')
4799         window.clarity("event", `${productType} calendaringSchedule`)
4800         // window.clarity("set", productType, `calendaringSchedule - ${productDate}`)
4801       }
4802     }
4803   }
4804 
4805   async function getProvince(city) {
4806     let { data: { province } } = await getFetch(`${host}/api/shipping/address/province?city=${city}`);
4807     console.log(province, 'province')
4808     $("#province").val(province)
4809   }
4810 
4811   async function renderAddress() {
4812     let current
4813     if(getCookie("location_delivery")){
4814       current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1)
4815     }
4816     let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8144957800663`);
4817     console.log(address)
4818     const data = address?.data?.city
4819     const htmlAddress = []
4820     const grouping = []
4821     for(let i = 0;i < data?.length;i++) {
4822       if(data[i]){
4823         if(data[i]?.group) {
4824           grouping.push(data[i].group)
4825         }
4826         const price = rupiah.format(data[i]?.rate)
4827         let promo = '(Promo Free Delivery)'
4828         if(data[i]?.name === 'Jakarta - PickUp ASHTA'){
4829           promo = '(at SCBD, Ashta)'
4830         } else if(data[i]?.name === 'Jakarta - PickUp ITC'){
4831           promo = '(at Kuningan, ITC Kuningan)'
4832         } else if(data[i]?.name === 'BSD - PickUp'){
4833           promo = '(at Goldfinch Gading Serpong)'
4834         } else if(data[i]?.name === 'Kota Lainnya'){
4835           promo = ''
4836         }
4837         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>`)
4838       }
4839     }
4840     
4841     const deliveryCity = document.getElementById("cities");
4842     if(deliveryCity) {
4843       deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join(''))
4844       if(!isIOS) {
4845         $(deliveryCity).select2();
4846       }
4847     }
4848   }
4849 
4850   async function renderZip(v, v2, v3) {
4851     const deliveryZip = document.getElementById("zip");
4852     if(v === '') {
4853       return
4854     }
4855     let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`);
4856     let zip = dataZip?.data?.zip
4857     console.log(zip)
4858     let htmlZip = []
4859     for(let i = 0; i < zip?.length;i++) {
4860       htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`)
4861     }
4862     deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join(''))
4863   }
4864 
4865   renderDate()
4866   renderAddress()
4867 
4868   let rupiah = new Intl.NumberFormat('id-ID', {
4869     style: 'currency',
4870     currency: 'IDR',
4871     maximumFractionDigits: 0, 
4872     minimumFractionDigits: 0
4873   });
4874 
4875   async function insertCard(data) {
4876     const response = await fetch(`${host}/api/card/new`, {
4877         method: "POST",
4878         headers: {
4879           'Content-Type': 'application/json',
4880         },
4881         body: data
4882     })
4883     const result = await response.json()
4884     let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1]
4885     $("#greetingCard").attr("data-index", rowIndex)
4886     return result
4887   }
4888     
4889   async function updateCard(data){
4890     const rowIndex = $("#greetingCard").data("index")
4891     const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, {
4892         method: "PUT",
4893         headers: {
4894           'Content-Type': 'application/json',
4895         },
4896         body: data
4897     })
4898     return response
4899   }
4900     
4901   function bytesToSize(bytes) {
4902     var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p'];
4903     for (var i = 0; i < sizes.length; i++) {
4904       if (bytes <= 1024) {
4905         return bytes + ' ' + sizes[i];
4906       } else {
4907         bytes = parseFloat(bytes / 1024).toFixed(2)
4908       }
4909     }
4910     return bytes + ' P';
4911   }
4912 
4913   async function uploadMedia(uri, type) {
4914     nameq = $("#properties-nama-penerima").val()
4915     dear = $("#properties-kartu-nama-penerima").val()
4916     card = $("[data-properties=ucapan]").val()
4917     sender = $("#properties-kartu-nama-pengirim").val()
4918     photo = $("#properties-photo").val()
4919     video = $("#properties-video").val()
4920     status = "Product"
4921         
4922     const name = qrID
4923     let formData = new FormData(); 
4924     formData.append("file", uri);
4925     const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
4926       method: "POST", 
4927       body: formData
4928     })
4929     const result = await response.json();
4930     if(result) {
4931       const url = result.url
4932       if(type === 'image/jpeg') {
4933         $("#properties-photo").val(url)
4934         $(".preview-image").show()
4935         $(".remove-image").show()
4936         photo = url
4937       } else {
4938         $("#properties-video").val(url)
4939         $("#label-input-video span").text("Change File")
4940         $(".case-qrcode-preview p").text("Scan here for a secret message")
4941         $(".remove-media").show()
4942         $("#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>`)
4943         $("[for=input-video]").hide()
4944         video = url
4945       }
4946       $(".case-video-preview").show()
4947       $(".steps-card-preview").removeClass("loading")
4948       // updateCard(nameq, dear, card, sender, photo, video, status)
4949 
4950       $(".nextBtn").attr("disabled", false)
4951     }
4952   }
4953 
4954   function randomString(length, chars) {
4955     var result = '';
4956     for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))];
4957     return result;
4958   }
4959 
4960   function getNoteCity(fulldate) {
4961     const h_1 = new Date(new Date().setDate(new Date().getDate() + 1))
4962     const weekday = ["Min","Sen","Sel","Rab","Kam","Jum","Sab"];
4963     const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];
4964     const d = new Date(h_1);
4965     const day = weekday[d.getDay()];
4966     const dt = d.getDate();
4967     const mt = monthly[d.getMonth()];
4968     const yr = d.getFullYear();
4969     const p = $("#cities").parent(".form-group")
4970   }
4971 
4972   function disabledSameDay() {
4973     let btnFirst = $("#deliveryDate").find("button:first-child")
4974     let getDay = new Date().getDay();
4975 
4976     
4977       
4978       if(getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5){
4979         if(hour >= 14.00){
4980           btnFirst.attr("disabled", true)
4981         }
4982       } else if(getDay == 6){
4983         if(hour >= 16.00){
4984           btnFirst.attr("disabled", true)
4985         }
4986       } else if(getDay == 0){
4987         if(hour >= 16.00){
4988           btnFirst.attr("disabled", true)
4989         }
4990       }
4991       
4992     
4993   }
4994 
4995   function disabledays(date) {
4996     let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate();
4997     //if u have to disable a list of day
4998     let removeDays
4999     
5000     
5001     
5002         removeDays = ["2025-2-13", "2025-2-14"];
5003     
5004     if ($.inArray(ymd, removeDays) >= 0) {
5005       return [false];
5006     } else {
5007       let day = date.getDay();
5008       if(day == 0 && date.getDate() == 13 && date.getMonth() == 1){
5009           return [(day == 0),  ''];
5010       }
5011       
5012       if(day == 0){
5013         return [(day == 0),  ''];
5014       }
5015       
5016       
5017       return [(day != 0),  ''];
5018     }
5019   }
5020 
5021   /* Indonesian initialisation for the jQuery UI date picker plugin. */
5022   /* Written by Deden Fathurahman ([email protected]). */
5023   ( function( factory ) {
5024     if ( typeof define === "function" && define.amd ) {
5025 
5026       // AMD. Register as an anonymous module.
5027       define( [ "../widgets/datepicker" ], factory );
5028     } else {
5029 
5030       // Browser globals
5031       factory( jQuery.datepicker );
5032     }
5033   }( function( datepicker ) {
5034 
5035   datepicker.regional.id = {
5036     closeText: "Tutup",
5037     prevText: "&#x3C;mundur",
5038     nextText: "maju&#x3E;",
5039     currentText: "Today",
5040     monthNames: [ "January","February","March","April","May","Juny",
5041                   "July","August","September","October","November","December" ],
5042     monthNamesShort: [ "Jan","Feb","Mar","Apr","May","Jun",
5043                       "Jul","Agu","Sep","Oct","Nov","Dec" ],
5044     dayNames: [ "Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu" ],
5045     dayNamesShort: [ "Sun","Mon","Tue","Wed","Thu","Fri","Sat" ],
5046     dayNamesMin: [ "Mg","Sn","Sl","Rb","Km","jm","Sb" ],
5047     weekHeader: "Mg",
5048     dateFormat: "D, dd M",
5049     firstDay: 0,
5050     isRTL: false,
5051     showMonthAfterYear: false,
5052     yearSuffix: "" };
5053   datepicker.setDefaults( datepicker.regional.id );
5054 
5055   return datepicker.regional.id;
5056 
5057 } ) );
5058 
5059   function loadPopup() {
5060     $("#backgroundPopup").fadeIn("slow");
5061     $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow");
5062     const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first()
5063     if(firstSection.hasClass("purchasePersonalize")) {
5064       if(productType !== '') {
5065         console.log("clarity event " + productType + ' personalize')
5066         window.clarity("event", `${productType} cardPersonalization`)
5067         // window.clarity("set", productType, `cardPersonalization - ${productDate}`)
5068       }
5069     } else if (firstSection.hasClass("sectionPurchaseBoard")) {
5070         console.log("clarity event " + productType + ' personalizeBoard')
5071         window.clarity("event", `${productType} personalizeBoard`)
5072         // window.clarity("set", productType, `personalizeBoard - ${productDate}`)
5073     }
5074     firstSection.removeClass("hide")
5075     
5076     // Auto-trigger addon loading when addon section becomes visible
5077     setTimeout(function() {
5078       const addonSection = $(".purchaseAddon")
5079       if(addonSection.length > 0 && !addonSection.hasClass("hide")) {
5080         if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
5081           $("[data-addon=upsell-all]").trigger("click")
5082         }
5083       }
5084     }, 200)
5085   }
5086 
5087   function disablePopup() {
5088     $("#backgroundPopup").fadeOut("slow");
5089     $(".purchasePopup").fadeOut("slow");
5090     $("#popupCart").fadeOut("slow");
5091   }
5092 
5093     function scrollTo(parent, div, dur) {
5094       $(parent).animate({
5095         scrollTop: $(div).offset().top
5096       }, dur);
5097     }
5098 
5099   function loadPopupPersonalize() {
5100     const div = "#purchaseProduct"
5101     const p = "html, body, .product-meta"
5102     $("p.error").remove()
5103     loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all")
5104     const isCity = $("#cities[required]")
5105     const isDate = $("#propDeliveryDate[required]")
5106     const isTime = $("#propDeliveryTime[required]")
5107     // loadPopup()
5108     if(isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') {
5109       loadPopup()
5110     }
5111     if(isCity.val() == '') {
5112       isCity.parent(".row").append("<p class='error'>Choose delivery city</p>")
5113       scrollTo(p, div, 500)
5114     }
5115     if(isDate.val() == '') {
5116       isDate.parents(".row").append("<p class='error'>Choose delivery date</p>")
5117       scrollTo(p, div, 500)
5118     }
5119     if(isTime.val() == '') {
5120       isTime.parents(".row").append("<p class='error'>Choose delivery time</p>")
5121       scrollTo(p, div, 500)
5122     }
5123   }
5124 
5125   function quantityCounter() {
5126     $(document).on("click", ".item-card.selected .q_up", function () {
5127       var C = $(this).attr("data-id"),
5128           S =
5129               parseInt(
5130                   $(this)
5131                       .siblings(".quantity-cart-" + C)
5132                       .val()
5133               ) + 1;
5134       $(this).attr("data-quantity", S),
5135           $(this)
5136               .siblings(".quantity-cart-" + C)
5137               .val(S);
5138     }),
5139     $(document).on("click", ".item-card.selected .q_down", function () {
5140         var C = $(this).attr("data-id"),
5141             S = parseInt(
5142                 $(this)
5143                     .siblings(".quantity-cart-" + C)
5144                     .val()
5145             );
5146         0 < S && $(this).attr("data-quantity", S - 1),
5147             0 < S &&
5148                 $(this)
5149                     .siblings(".quantity-cart-" + C)
5150                     .val(S - 1);
5151     });
5152   }
5153 
5154   quantityCounter()
5155 
5156   const itemAddon = $(".item-card").length
5157   const nofree = $(".nofree").length
5158 
5159   const upsell = ''
5160   
5161   if(nofree === itemAddon) {
5162       // $("#itemAddons").html("<p>No Items available</p>")
5163   }
5164 
5165   $("#itemAddons .item-card").each(function(e){
5166       $("#itemAddons").attr("data-length", e)
5167   })
5168 
5169   $("[data-addon]").click(function(){
5170       
5171       
5172       
5173       const t = $(this)
5174       
5175       const data = t.data("addon")
5176       
5177       $("[data-addon]").removeClass("selected")
5178       t.addClass("selected")
5179       $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status){
5180           const products = data.products
5181           const html = []
5182           for(let i = 0; i < products.length; i++) {
5183               const id = products[i].id
5184               const variantId = products[i].variants[0].id
5185               const img = products[i].images[0].src
5186               let img2 = img.split('.jpg')[0]
5187               const title = products[i].title
5188               const price = products[i].variants[0].price
5189               const tags = products[i].tags
5190               const qty = products[i].variants[0].available
5191               let type_upsell = ''
5192               if(tags.includes('upsell-item-standing')) {
5193                   type_upsell = 'standing'
5194               }
5195               console.log(type_upsell)
5196               if(type_upsell !== '') {
5197                   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}">
5198                       
5199                           <div class="card-image">
5200                               <img src="${img2}_150x.jpg" alt="${title}" width="" height="" />
5201                           </div>
5202                           <div class="card-meta">
5203                               <h5>${title}</h5>
5204                               <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p>
5205                               <input id="card-${variantId}" type="hidden" name="" value="${variantId}">
5206                           </div>
5207                           <div class="card-qty">
5208                               <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a>  
5209                               <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}
5209" value="0" data-price=${price} name="quantity">
5210                               <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="12" height="13" viewBox="0 0 12 13" fill="none">
5211 <path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/>
5212 </svg></a>   
5213                           </div>
5214                       </div>`
5215                   html.push(body)
5216               }
5217           }
5218           $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html)
5219           $("#itemAddons").attr("data-length", products.length)
5220           // $('#itemAddons')[0].swiper.update();
5221       });
5222   })
5223 
5224   async function isAddon(){
5225     let ids = []
5226     $("#itemAddons .item-card.selected").each(function(i, e){
5227       const id = $(this).data("id")
5228       ids.push(id)
5229     })
5230     console.log(ids)
5231     return ids
5232   }
5233   
5234   $("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function(){
5235     const t = $(this).parent()
5236     const id = t.data("id")
5237     const btn =  t.parents(".purchaseAddon").find(".next-purchase-button")
5238     t.toggleClass("selected");
5239     //$(this).next("input").toggleAttr('name', 'id[]');
5240     if (t.hasClass('selected')) {
5241         t.find("input").val(1)
5242         t.find("input").attr('name', 'id[]');
5243     } else {
5244         t.find("input").val(0)
5245         t.find("input").removeAttr('name');
5246     }
5247     $("#properties-addons").val(addons)
5248     const is = await isAddon()
5249     if(is.length === 0) {
5250       btn.text("continue without add-ons")
5251       return
5252     }
5253     if(is.includes(8835692069079)) {
5254       btn.text("personalize acrylic frame")
5255     } else {
5256       btn.text("Continue")
5257     }
5258       
5259   })
5260 
5261   async function myAddon(data) {
5262     const c = $(".addonsPurchase .addons")
5263     let items = []
5264     
5265     const spotifyAddons = $(".spotifyAddons").find("[data-index]")
5266     // if(spotifyAddons.length > 0) {
5267     //   $(spotifyAddons).each(function(i, e){
5268     //     const spotifyLink = $(this).find(".spotifyLink").val()
5269     //     const spotifySong = $(this).find(".spotifySong").val()
5270     //     const spotifyArtist = $(this).find(".spotifyArtist").val()
5271     //     const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val()
5272     //     if(spotifyLink !== '') {
5273     //       spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1">
5274     //         <div class="addon-itm-img">
5275     //           <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"/>
5276     //         </div>
5277     //         <div class="addon-itm-title">
5278     //           <span>[US] Outerbloom Acrylic Frame 4R</span>
5279     //         </div>
5280     //         <div class="addon-itm-line-total">
5281     //           <span>Rp 99.000</span>
5282     //         </div>
5283     //       </div>
5284     //       <div class="propsAddonSpotify row m-0">
5285     //         <div class="col-12 col-lg-2"></div>
5286     //           <div class="col-12 col-lg-10">
5287     //             <p>
5288     //               <span>spotify link</span>
5289     //               <span class="spotifyLinkAddon">${spotifyLink}</span>
5290     //             </p>
5291     //             <p>
5292     //               <span>uploaded photo</span>
5293     //               <span class="spotifyFotoAddon">${spotifyFotoAddon}</span>
5294     //             </p>
5295     //             <p>
5296     //               <span>song / playlist name</span>
5297     //               <span class="spotifySongAddon">${spotifySong}</span>
5298     //             </p>
5299     //             <p>
5300     //               <span>artist name</span>
5301     //               <span class="spotifyArtistAddon">${spotifyArtist}</span>
5302     //             </p>
5303     //           </div>
5304     //       </div>`
5305     //       items.push(spotifyAddon)
5306     //     }
5307     //   })
5308     // }
5309     for(let i = 0; i < data.length; i++) {
5310       if(data[i].title !== '[US] Outerbloom Acrylic Frame 4R' ) {
5311         const img = data[i].image
5312         const title = data[i].title
5313         const qty = data[i].qty
5314         const price = data[i].price
5315         const total = Number(qty) * Number(price)
5316         let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}">
5317               <div class="addon-itm-img">
5318                 <img src="${img}" alt="" width="70"/>
5319               </div>
5320               <div class="addon-itm-title">
5321                 <span>${title}</span>
5322               </div>
5323               <div class="addon-itm-line-price">
5324                 <span>${rupiah.format(price)}</span>
5325                 ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`}
5326               </div>
5327               <div class="addon-itm-line-total">
5328                 <span>${rupiah.format(total)}</span>
5329               </div>
5330             </div>`
5331           items.push(addons)
5332       }
5333     }
5334     c.html(items)
5335     const parent = $(".purchaseAddon")
5336     const next = parent.next(".sectionPurchase")
5337     parent.addClass("hide")
5338     next.removeClass("hide")
5339     // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart")
5340     // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`)
5341   }
5342 
5343   async function listAddon() {
5344     const data = $("#itemAddons").find(".selected")
5345     let ids = []
5346     $(data).each(function(){
5347       const id = $(this).data("variant")
5348       const image = $(this).find(".card-image img").attr("src")
5349       const title = $(this).find(".card-meta h5").text()
5350       const qty = $(this).find(".card-qty input").val()
5351       const price = $(this).find(".card-qty input").data("price")
5352       ids.push({
5353         id: Number(id),
5354         image,
5355         title,
5356         qty,
5357         price
5358       })
5359     })
5360     myAddon(ids)
5361   }
5362 
5363   async function customSpotify(idx, length, type){
5364     let isCard = false
5365     
5366     let p = $(".purchasePopupSpotify")
5367     const preLink = $(".spotifyLinkFirst").val()
5368     $("[data-index]").hide()
5369     p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`)
5370     p.find(".regulerAddons, .purchase-button").hide()
5371     p.find(".spotifyAddons").show()
5372     
5373     const data = await trackUrl(preLink)
5374     
5375     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://kucingair.com/fotobaka/logopub.png" width="13" height="11" viewB
5375ox="0 0 13 11" fill="none">
5376 <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"/>
5377 </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://kucingair.com/fotobaka/logopub.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://kucingair.com/fotobaka/logopub.png" width="13" height="11" viewB
5377ox="0 0 13 11" fill="none">
5378 <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"/>
5379 </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>`
5380     // console.log(html)
5381     
5382     $(".spotifyAddons").append(html)
5383     
5384     $(`[data-index=${idx}]`).show()
5385     
5386     if (preLink !== '') {
5387       $(".btn-action .btn").attr("disabled", false)
5388     } else {
5389       $(".btn-action .btn").attr("disabled", true)
5390     }
5391 
5392     return html
5393     
5394   }
5395 
5396   $(".spotifyLinkFirst").keyup(async function(){
5397     const v = $(this).val()
5398     if(v.includes('spotify:user:spotify')) {
5399       const correct = v.split('user:spotify:')[1]
5400       console.log(correct, 'BNER')
5401       $(this).val(correct)
5402       return
5403     }
5404     if(v.includes("spotify:") || v.includes("https://open.spotify.com/")){
5405       const data = await trackUrl(v)
5406       if(!data || !data.status) {
5407         $(this).parent().addClass("error")
5408         // $(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>`)
5409         $("#personalizeBtnSpotify .btn").attr("disabled", true)
5410         return
5411       }
5412       $(this).parent().removeClass("error")
5413       // $(this).parent().remove("txt-error")
5414       $("#personalizeBtnSpotify .btn").attr("disabled", false)
5415     } else {
5416       $("#personalizeBtnSpotify .btn").attr("disabled", true)
5417     }
5418   })
5419 
5420   $(".purchaseAddon").delegate(".next-addon", "click", function(){
5421     const parent = $(this).parents(".purchaseAddon")
5422     const next = parent.next(".sectionPurchase")
5423     if(next.hasClass("purchaseAddress")) {
5424       if(productType !== '') {
5425         console.log("clarity event " + productType + ' purchaseDelivery')
5426         window.clarity("event", `${productType} purchaseDelivery`)
5427         // window.clarity("set", productType, `purchaseDelivery - ${productDate}`)
5428       }
5429     }
5430     const data = $("#itemAddons").find(".selected")
5431     const length = $(".quantity-cart-46067682607319").val()
5432     const checked = data.length;
5433     if(checked > 0) {
5434       if(length > 0) {
5435         $(".purchaseAddon").addClass("purchaseAddonSpotify")
5436         customSpotify(1, length, 'addon')
5437       } else {
5438         listAddon()
5439       }
5440     } else {
5441       parent.addClass("hide")
5442       next.removeClass("hide")
5443     }
5444   })
5445 
5446   $("#personalizeBtnSpotify .btn").click(async function(){
5447     const isCity = $("#cities[required]")
5448     const isDate = $("#propDeliveryDate[required]")
5449     if((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) {
5450       alert('Please choose Delivery City & Delivery Date')
5451       return
5452     }
5453     const data = await customSpotify(1, 1, 'product')
5454     if(data) {
5455       $("#backgroundPopup").fadeIn("slow");
5456       $(".purchasePopupSpotify").fadeIn("slow");
5457 
5458       if(productType !== '') {
5459         console.log("clarity event " + productType + ' spotify')
5460         window.clarity("event", `${productType} spotify`)
5461         // window.clarity("set", productType, `purchaseDelivery - ${productDate}`)
5462       }
5463     }
5464   })
5465 
5466   function formatBytes(bytes, decimals = 2) {
5467     if (!+bytes) return '0 Bytes'
5468 
5469     const k = 1024
5470     const dm = decimals < 0 ? 0 : decimals
5471     const sizes = ['B', 'KB', 'MB']
5472 
5473     const i = Math.floor(Math.log(bytes) / Math.log(k))
5474 
5475     return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}`
5476   }
5477 
5478   async function trackUrl(link){
5479     try {
5480       let trackId = link.split('/').pop().split('?')[0];
5481       let type = ''
5482       if(link.includes("spotify:")) {
5483         const uri = link.split('spotify:')[1]
5484         trackId = uri.split(':')[1]
5485         type = uri.split(':')[0] + 's'
5486       } else {
5487         if(link.match('track')){
5488           type = 'tracks'
5489         } else if(link.match('playlist')) {
5490           type = 'playlists'
5491         } else if(link.match('artist')) {
5492           type = 'artists'
5493         } else if(link.match('album')) {
5494           type = 'albums'
5495         }
5496       }
5497       console.log(`${host}/api/spotify/${type}/${trackId}`)
5498       const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`)
5499       console.log(data, 'DATA')
5500       const song = data?.data?.name
5501       const artist = data?.data?.artist
5502       return {
5503         song, artist, type, trackId, status: data.status
5504       }
5505     } catch(err) {
5506       console.log(err)
5507     }
5508   }
5509 
5510   $(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function(){
5511     const parent = $(this).parents("[data-index]")
5512     const preview = parent.find(".previewImage")
5513     const file = $(this)[0].files[0];
5514     if (file) {
5515         const reader = new FileReader();
5516         reader.onload = async function(e) {
5517           parent.find(".uploadResult label").hide()
5518           parent.find(".uploadedResult").remove()
5519           parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between">
5520           <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>
5521           <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;">
5521<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="https://kucingair.com/fotobaka/logopub.png">
5522   <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 />
5523 </svg>
5524 </span></div></div>`)
5525           parent.find(".frameImageUploaded svg").hide()
5526           parent.find(".frameImage").addClass("uploaded")
5527           preview.attr("src", e.target.result);
5528           preview.show();
5529           let formData = new FormData(); 
5530           formData.append("file", file);
5531           const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, {
5532             method: "POST", 
5533             body: formData
5534           })
5535           const result = await response.json();
5536           if(result){
5537             parent.find(".resultPhotoSpotify").val(result.url)
5538           }
5539         }
5540         
5541         reader.readAsDataURL(file);
5542     } else {
5543         preview.hide();
5544     }
5545   });
5546 
5547   $(".spotifyAddons").delegate(".uploadResult", "click", function(){
5548     $(this).next("input[type=file]").trigger("click")
5549   })
5550 
5551   $(".spotifyAddons").delegate(".changeUpload", "click", function(){
5552     $(this).parents("input[type=file]").trigger("click")
5553   })
5554 
5555   $(".spotifyAddons").delegate(".removeUpload", "click", function(){
5556     const parent = $(this).parents("[data-index]")
5557     parent.find(".uploadPhotoSpotify").val("")
5558     parent.find(".uploadResult label").show()
5559     parent.find(".uploadedResult").remove()
5560     parent.find(".frameImageUploaded svg").show()
5561     parent.find(".previewImage").hide()
5562     parent.find(".frameImage").removeClass("uploaded")
5563   })
5564 
5565   $(".spotifyAddons").delegate("label.checkbox", "click", function(){
5566     const parent = $(this).parents("[data-index]")
5567     parent.toggleClass("checked")
5568   })
5569 
5570   $(".spotifyAddons").delegate(".spotifyLink", "change", async function(){
5571     const parent = $(this).parents("[data-index]")
5572     const link = $(this).val()
5573     const data = await trackUrl(link)
5574 
5575     console.log(data)
5576 
5577     if(data.song) {
5578       parent.find(".spotifySong").val(data.song)
5579       parent.find(".spotifyData").find("h3").text(data.song)
5580     }
5581     if(data.artist) {
5582       parent.find(".spotifyArtist").val(data.artist)
5583       parent.find(".spotifyData").find("p").text(data.artist)
5584     }
5585     parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`)
5586     // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M
5587     if (data.status === true) {
5588       parent.find(".btn-action .btn").attr("disabled", false)
5589     } else {
5590       parent.find(".btn-action .btn").attr("disabled", true)
5591     }
5592   })
5593   
5594   $(".spotifyAddons").delegate(".spotifySong", "keyup", async function(){
5595     const parent = $(this).parents("[data-index]")
5596     const v = $(this).val()
5597     parent.find(".spotifyData h3").text(v)
5598   })
5599 
5600   $(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function(){
5601     const parent = $(this).parents("[data-index]")
5602     const v = $(this).val()
5603     parent.find(".spotifyData p").text(v)
5604   })
5605 
5606   $(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function(){
5607     const parent = $(this).parents("[data-index]")
5608     const length = parent.data("length")
5609     const index = parent.data("index")
5610     const indexNext = Number(index) + 1
5611     customSpotify(indexNext, length, 'addon')
5612   })
5613 
5614   
5615   $(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function(){
5616     const parent = $(this).parents(".purchaseAddon")
5617     const next = parent.next(".sectionPurchase")
5618     parent.addClass("hide")
5619     next.removeClass("hide")
5620     next.find(".purchase-button").show()
5621     listAddon()
5622   })
5623 
5624   $(".spotifyAddons").delegate(".back-spotify", "click", async function(){
5625     const t = $(this).parents("[data-index]")
5626     const parent = $(this).parents(".sectionPurchase")
5627     const current = t.data("index")
5628     const prevCurrent = Number(current) - 1
5629     if(current == 1) {
5630       parent.removeClass("purchaseAddonSpotify")
5631       parent.find(".purchase-button").show()
5632       parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!")
5633       $(".spotifyAddons").empty()
5634       $(".regulerAddons").show()
5635       return
5636     }
5637     t.hide()
5638     t.prev("[data-index]").show()
5639     t.remove()
5640     parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`)
5641   })
5642 
5643   $("#personalizeBtn .btn").click(async function() {
5644     loadPopupPersonalize()
5645   });
5646 
5647   $(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function(){
5648     $(".sectionPurchaseSpotify").hide()
5649     loadPopupPersonalize()
5650   })
5651 
5652   $(".close-purchase-popup").click(function() {
5653       disablePopup();
5654   });
5655   $("#backgroundPopup").click(function() {
5656       // disablePopup();
5657   });
5658 
5659   $("#popupCart .close-purchase-popup").click(function() {
5660       location.reload()
5661   });
5662 
5663   $('#popupCart').on('hide.bs.modal', function (e) {
5664     location.reload()
5665   })
5666 
5667   $(".next-card").click(function(){
5668     const parent = $(this).parents(".sectionPurchase")
5669     const next = parent.next(".sectionPurchase")
5670     parent.addClass("hide")
5671     next.removeClass("hide")
5672   })
5673 
5674   $(".back-purchase-button").click(function(){
5675     const parent = $(this).parents(".sectionPurchase")
5676     const prev = parent.prev(".sectionPurchase")
5677     parent.addClass("hide")
5678     prev.removeClass("hide")
5679   })
5680   
5681   $(document).keypress(function(e) {
5682       if (e.keyCode == 27 && popupStatus == 1) {
5683           disablePopup();
5684       }
5685   });
5686   
5687   const parentImg = $(".case-img-preview")
5688   const parentVid = $(".case-video-preview")
5689   
5690   function readURL(input) {
5691     if (input.files && input.files[0]) {
5692       let reader = new FileReader();
5693 
5694       let type = 'image/jpeg'
5695       const size = input.files[0].size
5696       if(input.files[0].type.match('video/')){
5697         type = 'video/mp4'
5698         if(size > 15728640) {
5699           alert('File size exceeds maximum limit 15 MB')
5700           return
5701         }
5702       } else {
5703         if(size > 5242880) {
5704           alert('File size exceeds maximum limit 5 MB')
5705           return
5706         }
5707       }
5708 
5709       reader.onload = function (e) {
5710         $(".nextBtn").attr("disabled", true)
5711         if(type === 'image/jpeg') {
5712           
5713             $('.placeholder-image').hide();
5714             $('.preview-image').show()
5715             $('.preview-image').attr('src', e.target.result);
5716           
5717         } else {
5718           // parentVid.find(".ajax-loader").show();
5719           $(".steps-card-preview").addClass("loading")
5720         }
5721       }
5722 
5723       
5724 
5725       reader.readAsDataURL(input.files[0]);
5726     }
5727   }
5728 
5729   async function readURLPapan(input) {
5730     if (input.files && input.files[0]) {
5731       let reader = new FileReader();
5732 
5733       reader.onload = function (e) {
5734         $('.btn-upload-papan').siblings('label').hide();
5735         $('.btn-upload-papan img').attr('src', e.target.result);
5736         $('.btn-upload-papan img').show();
5737         $('.svgLogoPapan').hide();
5738       }
5739       
5740       const type = 'image/jpeg'
5741       const name = `logo-8144957800663-${Date.parse(new Date())}`
5742 
5743       let formData = new FormData(); 
5744       formData.append("file", input.files[0]);
5745       const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
5746         method: "POST", 
5747         body: formData
5748       })
5749       const result = await response.json();
5750       if(result) {
5751         const url = result.url
5752         $("[data-properties=papan-logo]").val(url)
5753       }
5754 
5755       reader.readAsDataURL(input.files[0]);
5756     }
5757   }
5758 
5759   async function readURLAddress(input) {
5760     console.log(input, 'readURLAddress')
5761     if (input.files && input.files[0]) {
5762       let reader = new FileReader();
5763 
5764       reader.onload = function (e) {
5765         $('.photo-address').attr('src', e.target.result);
5766         $('.photo-address').show();
5767       }
5768       
5769       const type = 'image/jpeg'
5770       const name = input.files[0].name?.split('.')[0]
5771 
5772       let formData = new FormData(); 
5773       formData.append("file", input.files[0]);
5774       const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, {
5775         method: "POST", 
5776         body: formData
5777       })
5778       const result = await response.json();
5779 
5780       reader.readAsDataURL(input.files[0]);
5781 
5782       return result
5783     }
5784   }
5785 
5786   
5787 
5788   
5789   async function addToCartUang() {
5790     var productAddOnId1 = 42122101162199;
5791     var productAddOnId2 = 42122101194967;
5792     var product_id = 8144957800663
5793     const data = {
5794       items: [
5795           {
5796               quantity: $("#Quantity-" + productAddOnId1).val(),
5797               id: productAddOnId1,
5798               "properties": { "Time": $("#properties-time").val() }
5799           },
5800           {
5801               quantity: $("#Quantity-" + productAddOnId2).val(),
5802               id: productAddOnId2,
5803               "properties": { "Time": $("#properties-time").val() }
5804           }
5805       ]
5806     }
5807     await fetch(window.Shopify.routes.root + 'cart/add.js', {
5808       method: 'POST',
5809       headers: {
5810         'Content-Type': 'application/json'
5811       },
5812       body: JSON.stringify(data)
5813     })
5814     .then(response => {
5815       console.error('Sukses Buket Uang:', response);
5816       $(".form-flower").submit()
5817     })
5818     .catch((error) => {
5819       console.error('Error Buket Uang:', error);
5820       $(".form-flower").submit()
5821     });
5822   }
5823   
5824   async function saveCard(){
5825     let isCard = true
5826     const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : ''
5827     const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : ''
5828     const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : ''
5829     const foto = $("#properties-photo").val()
5830     const video = $("#properties-video").val()
5831     const data = JSON.stringify({
5832       "id": qrID, 
5833       "penerima": $("#properties-nama-penerima").val(), 
5834       "kartu_penerima": kartu_penerima, 
5835       "kartu_ucapan": kartu_ucapan, 
5836       "kartu_pengirim": kartu_pengirim, 
5837       "foto": foto,
5838       "video": video, 
5839       "productId": "8144957800663", 
5840       "order_name": "", 
5841       "status": "Cart"
5842     })
5843 
5844     
5845   }
5846 
5847   async function additem(items){
5848     try {
5849       let formData = items
5850       if(items?.length) {
5851         formData = {
5852            'items': items
5853         };
5854       }
5855   
5856       const add = await fetch(window.Shopify.routes.root + 'cart/add.js', {
5857         method: 'POST',
5858         headers: {
5859           'Content-Type': 'application/json',
5860           'X-Requested-With':'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */
5861         },
5862         body: JSON.stringify(formData)
5863       })
5864   
5865       const data = await add.json();
5866       return data
5867     } catch(err){
5868       console.log('Error additem', err)
5869     }
5870   }
5871 
5872   async function addons(){
5873     let items = []
5874     $(".addon-item").each(function(){
5875       const p = $(this)
5876       const props = p.next(".propsAddonSpotify")
5877       const id = $(this).data("id")
5878       const quantity = $(this).data("qty")
5879       const propId = $("#properties-time").val()
5880       let properties = {}
5881       if(id === 46067682607319) {
5882         const link = props.find(".spotifyLinkAddon").text()
5883         const photo = props.find(".spotifyFotoAddon").text()
5884         const song = props.find(".spotifySongAddon").text()
5885         const artist = props.find(".spotifyArtistAddon").text()
5886         properties = {
5887           id: propId,
5888           "Spotify Link": link !== '' ? link : '-',
5889           "Spotify Photo": photo !== '' ? photo : '-',
5890           "Spotify Song": song !== '' ? song : '-',
5891           "Spotify Artist": artist !== '' ? artist : '-',
5892           type: 'addon'
5893         }
5894       } else {
5895         properties = { 
5896           "id": propId, 
5897           "type": "addon"
5898         }
5899       }
5900       items.push({
5901         id, 
5902         quantity, 
5903         properties
5904       })
5905     })
5906     return items
5907   }
5908 
5909   async function propItems() {
5910     let props = {}
5911     $("[data-properties]").each(function(e){
5912       let elementType = this.tagName;
5913       const k = $(this).data("properties")
5914       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') {
5915         const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val();
5916         if(v !== '') {
5917           props[k] = v?.replace(/[\s\n]/g, '');
5918         }
5919       }
5920     })
5921     return props
5922   }
5923 
5924   async function showPopupCart(items){
5925     if(productType !== '') {
5926       console.log("clarity event " + productType + ' completeOrder')
5927       window.clarity("event", `${productType} completeOrder`)
5928       // window.clarity("set", productType, `completeOrder - ${productDate}`)
5929     }
5930     $("#popupCart").show()
5931     
5932       $(".propDeliveryCity").text($("#cities").val())
5933       $(".propDeliveryDate").text($("#propDeliveryDate").val())
5934       $(".propDeliveryTime").text($("#propDeliveryTime").val())
5935       $(".propDeliveryName").text($("[data-properties=nama-penerima]").val())
5936       $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val())
5937       $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val())
5938       $(".propDeliveryProv").text($("#province").val())
5939       $(".propDeliveryZip").text($("#zip").val())
5940       
5941     
5942 
5943     const addons = []
5944     if(items && items.length > 0) {
5945       for(let i = 1; i < items.length; i++) {
5946         const spotifyLink = items[i].properties['Spotify Link']
5947         const spotifyPhoto = items[i].properties['Spotify Photo']
5948         const spotifySong = items[i].properties['Spotify Song']
5949         const spotifyArtist = items[i].properties['Spotify Artist']
5950         const price = items[i].price / 100
5951         const props = spotifyLink ? `<div class="propsAddonCart row m-0">
5952                   <div class="col-12 col-lg-2"></div>
5953                   <div class="col-12 col-lg-10">
5954                     <p>
5955                       <span>spotify link</span>
5956                       <span>${spotifyLink}</span>
5957                     </p>
5958                     <p>
5959                       <span>Upload Photo</span>
5960                       <span>${spotifyPhoto}</span>
5961                     </p>
5962                     <p>
5963                       <span>song / playlist name</span>
5964                       <span>${spotifySong}</span>
5965                     </p>
5966                     <p>
5967                       <span>artist name</span>
5968                       <span>${spotifyArtist}</span>
5969                     </p>
5970                   </div>
5971                 </div>` : '';
5972         addons.push(`<div class="row m-0">
5973                   <div class="imgAddonCart col-2">
5974                     <img
5975                       width="43"
5976                       src="${items[i].image}"
5977                       alt=""
5978                     >
5979                   </div>
5980                   <div class="imgAddonTitlePrice col-10 align-self-center">
5981                     <div class="row justify-content-between m-0">
5982                       <div class="col-12 col-lg-8">
5983                         <h5>${items[i].title}</h5>
5984                       </div>
5985                       <div class="col-12 col-lg-4 text-lg-right">
5986                         <span>${rupiah.format(price)}</span>
5987                       </div>
5988                     </div>
5989                   </div>
5990                 </div>${props}`)
5991       }
5992     }
5993     // console.log(addons)
5994     if(addons.length === 0) {
5995       $(".itemAddonCart").hide()
5996       return
5997     }
5998     $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`)
5999     $(".wrapperItemAddonCart").html(addons)
6000   }
6001 
6002   const money = (money) => {
6003       return new Intl.NumberFormat('id-ID',
6004           { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 }
6005       ).format(money);
6006   }
6007 
6008   async function showNoteMoney() {
6009     let qty50k = $("[data-properties='Uang 50k']").val()
6010     let qty100k = $("[data-properties='Uang 100k']").val()
6011     const total50k = Number(qty50k) * 50000
6012     const total100k = Number(qty100k) * 100000
6013     const total_all = total50k + total100k
6014     $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`)
6015     $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`)
6016     $(".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://lingkaransetan.com/pub/d7/" target="_blank" style="text-decoration: underline;
6016 color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`)
6017   }
6018 
6019   async function removeImage() {
6020     const data = JSON.stringify({
6021       "ID": $("#properties-properties-qrId").val(), 
6022       "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 
6023       "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 
6024       "Kartu Ucapan": $("[data-properties=ucapan]").val(), 
6025       "Nama Penerima": $("#properties-nama-penerima").val(), 
6026       "Order Number":"",
6027       "Status":"Product", 
6028       "Foto": "", 
6029       "Media": $("#properties-video").val(), 
6030       "Image": "8144957800663"
6031     })
6032     const remove = updateCard(data)
6033     if(remove) {
6034       $(this).hide()
6035       $("#properties-photo").val("-")
6036       $(".placeholder-image").show()
6037       $(".preview-image").attr("src", "")
6038     }
6039   }
6040 
6041   async function removeVideo() {
6042     const data = JSON.stringify({
6043       "ID": $("#properties-properties-qrId").val(), 
6044       "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 
6045       "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 
6046       "Kartu Ucapan": $("[data-properties=ucapan]").val(), 
6047       "Nama Penerima": $("#properties-nama-penerima").val(), 
6048       "Order Number":"",
6049       "Status":"Product", 
6050       "Foto": $("#properties-photo").val(), 
6051       "Media": "", 
6052       "Image": "8144957800663"
6053     })
6054     const remove = updateCard(data)
6055     if(remove) {
6056       $("#properties-video").val("-")
6057       $(this).find("img").hide()
6058       $(this).hide()
6059       $(this).prev("p").text("Add video to make it more special (optional)")
6060       $("#label-input-video").show()
6061       $("#label-input-video span").text("Upload Video")
6062       $(".case-video-preview p span").remove()
6063     }
6064   }
6065 
6066   async function loadItemOccasion(t, occasion) {
6067     const name = occasion?.replace('greeting-card-', '')
6068     $("#kartu-ucapan").val("")
6069     $("[data-occassion]").removeClass("selected")
6070     $("[data-properties=ucapan]").val("")
6071     $("#save-card").attr("disabled", true)
6072     t.addClass("selected")
6073     $("#show_note").attr("data-card-occassion", name)
6074     $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status){
6075         const products = data.products
6076         const html = []
6077         for(let i = 0; i < products.length; i++) {
6078             const id = products[i].id
6079             const variantId = products[i].variants[0].id
6080             const img = products[i].images[0].src
6081             const title = products[i].title
6082             const price = products[i].variants[0].price
6083             const qty = products[i].variants[0].inventory_quantity
6084             const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}>
6085                 <label for="card-${variantId}"></label>
6086                     <div class="card-image">
6087                         <img src="${img}" alt="${title}" width="" height="" />
6088                     </div>
6089                     <div class="card-meta text-center">
6090                         <h5>${title}</h5>
6091                         <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p>
6092                         <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}">
6093                     </div>
6094                 </div>`
6095             html.push(body)
6096         }
6097         const withoutCard = `<div class="item-card item-without-card">
6098                 <label for="card-0"></label>
6099                     <div class="card-image">
6100                         <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" />
6101                     </div>
6102                     <div class="card-meta text-center">
6103                         <h5>
6103Send without a greeting card</h5>
6104                         <input id="card-0" type="radio" name="id" value="" data-price="">
6105                     </div>
6106                 </div>`
6107         $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join(""))
6108     });
6109   }
6110         
6111   $(document).ready(function(){
6112 
6113     // Observer to auto-trigger addon loading when addon section becomes visible
6114     const addonObserver = new MutationObserver(function(mutations) {
6115       mutations.forEach(function(mutation) {
6116         const target = $(mutation.target)
6117         if(target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') {
6118           if(!target.hasClass('hide')) {
6119             // Addon section just became visible, ensure items are loaded
6120             setTimeout(function() {
6121               if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6122                 console.log("Auto-triggering addon load...")
6123                 $("[data-addon=upsell-all]").trigger("click")
6124               }
6125             }, 150)
6126           }
6127         }
6128       })
6129     })
6130     
6131     // Start observing addon section
6132     const addonSection = document.querySelector('.purchaseAddon')
6133     if(addonSection) {
6134       addonObserver.observe(addonSection, { 
6135         attributes: true, 
6136         attributeFilter: ['class'] 
6137       })
6138     }
6139 
6140     $(".purchasePopup").delegate("#addtocart-card", "click", async function(){
6141     
6142     $(this).find("span").addClass("loading")
6143     let isValid = true
6144     $(".formAddressPurchase [required]").each(function(){
6145       const t = $(this)
6146       const input = t.val()
6147       const p = t.parent()
6148       if(input === '') {
6149         p.addClass("error")
6150         isValid = false
6151       }
6152     })
6153 
6154     if(!isValid) {
6155       $(this).find("span").removeClass("loading")
6156       return
6157     }
6158     
6159     let items = []
6160     const mainProps = {
6161       
6162         "Delivery Date": $("#propDeliveryDate").val(),
6163         "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-' ,
6164         "Kota Pengiriman": $("#cities").val(),
6165         "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-' ,
6166         "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-' ,
6167         "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-' ,
6168         "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-' ,
6169       
6170       
6171         "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-' ,
6172         "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-' ,
6173         "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-' ,
6174         "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-' ,
6175         "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-' ,
6176       
6177       
6178       "Province": $("#province").val() !== '' ? $("#province").val() : '-' ,
6179       "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-' ,
6180       "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-' ,
6181       "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-' ,
6182       "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-',
6183       "type": 'product'
6184     }
6185     const props = await propItems()
6186     properties = {...mainProps, ...props };
6187     const id = $("#productSelect").find('option:selected').val()
6188     console.log(id, 'main ID')
6189     const mainItem = {
6190       id: Number(id),
6191       quantity: 1,
6192       properties
6193     }
6194     items.push(mainItem)
6195     const cardId = $("#itemCards").find(".selected input").val()
6196     const cardItem = {
6197       id: Number(cardId),
6198       quantity: 1,
6199       properties: { "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', type: 'card' }
6200     }
6201     console.log(cardId, 'cardId')
6202     if(cardId) {
6203       items.push(cardItem)
6204     }
6205     const addon = await addons()
6206     if(addon) {
6207       for(let i = 0;
6207 i < addon.length; i++){
6208         items.push({
6209           id: addon[i].id,
6210           quantity: addon[i].quantity,
6211           properties: addon[i].properties
6212         })
6213       }
6214     }
6215     const addItems = await additem(items)
6216     console.log(addItems.items, 'add items')
6217     if(addItems) {
6218       $(this).find("span").removeClass("loading")
6219       disablePopup()
6220       showPopupCart(addItems.items)
6221       
6222       localStorage.setItem("items", JSON.stringify(addItems.items))
6223     }
6224   })
6225   
6226   $("#addtocart-cart .btn").click(async function(){
6227     const id = $("#productSelect").find('option:selected').val()
6228     const mainProps = {
6229       id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 
6230       type: 'product'
6231     }
6232     const props = await propItems()
6233     const properties = { ...mainProps, ...props };
6234     const items = {
6235       id: Number(id),
6236       quantity: 1,
6237       properties
6238     }
6239     const addItems = await additem(items)
6240     if(addItems) {
6241       showPopupCart(addItems.items)
6242       localStorage.setItem("items", JSON.stringify(addItems))
6243     }
6244   })
6245 
6246   $(".formAddressPurchase [required]").change(function(){
6247     const t = $(this)
6248     const p = t.parent()
6249     const v = t.val()
6250     if(v !== '') {
6251       p.removeClass("error")
6252     }
6253   })
6254 
6255   $("#save-card").click(async function(){
6256     const parent = $(this).parents(".sectionPurchase")
6257     const next = parent.next(".sectionPurchase")
6258     $(this).find("span").addClass("loading")
6259     const card = await saveCard()
6260     console.log(card, 'ssaveCCC')
6261     if(card?.status === 200 || card?.status === 201) {
6262       $(".scanCard").removeClass("hide")
6263       $(this).find("span").removeClass("loading")
6264       parent.addClass("hide")
6265       next.removeClass("hide")
6266       if(next.hasClass("purchaseAddon")) {
6267         $("[data-addon=upsell-all]").click()
6268         console.log("clarity event addons")
6269         window.clarity("event", `${productType} add-ons`)
6270         // Ensure addon items are loaded when entering addon popup
6271         setTimeout(function() {
6272           if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6273             $("[data-addon=upsell-all]").trigger("click")
6274           }
6275         }, 100)
6276       }
6277       if(next.hasClass("purchaseAddress")) {
6278         $("#zip").select2()
6279       }
6280     }
6281   })
6282 
6283   $("#skip-card").click(async function(){
6284     $("#greetingCard [data-properties]").val("")
6285     $("#properties-photo").val("")
6286     $("#properties-video").val("")
6287     const parent = $(this).parents(".sectionPurchase")
6288     const next = parent.next(".sectionPurchase")
6289     parent.addClass("hide")
6290     next.removeClass("hide")
6291     // $("#itemCards").html("")
6292     removeImage()
6293     removeVideo()
6294     if(next.hasClass("purchaseAddon")) {
6295       $("[data-addon='upsell-all']").click()
6296       console.log("clarity event addons")
6297       window.clarity("event", `${productType} add-ons`)
6298       // Ensure addon items are loaded when entering addon popup
6299       setTimeout(function() {
6300         if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) {
6301           $("[data-addon='upsell-all']").trigger("click")
6302         }
6303       }, 100)
6304     }
6305     if(next.hasClass("purchaseAddress")) {
6306       $("#zip").select2()
6307     }
6308   })
6309 
6310   $("#msgCard").click(async function(){
6311       $(this).parent().addClass("loading")
6312       let occasion = $(".selected[data-occassion]").data("occassion")
6313       occasion = occasion?.replace("greeting-card-", "")
6314       const { data } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`);
6315       const d = data?.data
6316       for(let i = 0; i < d.length; i++) {
6317         const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1);
6318         const greeting = d[num]?.Greeting
6319         $(".greetingCard textarea").val(greeting)
6320         $(this).parent().removeClass("loading")
6321       }
6322       $("#save-card").attr("disabled", false)
6323     })
6324 
6325   $(".sectionPurchaseBoard .next-purchase-button").click(function(){
6326     const parent = $(this).parents(".sectionPurchase")
6327     const next = parent.next(".sectionPurchase")
6328     parent.addClass("hide")
6329     next.removeClass("hide")
6330   })
6331 
6332   $("#editCard").click(function(){
6333     $(".custom-card").show()
6334     $(".preview-card").hide()
6335   })
6336 
6337   $("#first_name, #last_name").change(function(){
6338     const v = $(this).val()
6339     const first_name = $("#first_name").val()
6340     const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : ''
6341     $("[data-properties=nama-penerima]").val(first_name+last_name)
6342   })
6343 
6344   $("[data-occassion]").click(function(){
6345       const t = $(this)
6346       const p = t.parents(".sectionPurchase")
6347       // $(".greetingCard").addClass("disabled")
6348       const occasion = t.data("occassion")
6349       loadItemOccasion(t, occasion)
6350   })
6351 
6352   $("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function(){
6353       const id = $(this).parent(".item-card").data("id")
6354       const t = $(this).parent(".item-card")
6355       const target = t.find("input")
6356       const v = $('.item-card input[type="radio"]:checked').val();
6357       $("#itemCards .item-card").removeClass("selected")
6358       t.addClass("selected")
6359       $("#itemCards .item-card").find("input").attr("name", "")
6360       if(target.length > 0) {
6361           target.attr("name", "id[]")
6362           $("#properties-card").val(id)
6363           $(".greetingCard").removeClass("disabled")
6364           $("#skip-card").attr("disabled", false)
6365       } else {
6366           $("#properties-card").val("")
6367       }
6368   })
6369 
6370   $("#itemCards").delegate(".item-without-card label", "click", function(){
6371     const parent = $(this).parents(".sectionPurchase")
6372     const next = parent.next(".sectionPurchase")
6373     $(".greetingCard").addClass("disabled")
6374     parent.addClass("hide")
6375     next.removeClass("hide")
6376     $("[data-addon=upsell-all]").click()
6377     $("#zip").select2()
6378   })
6379 
6380   $("[data-properties=ucapan]").keyup(function(){
6381     const v = $(this).val()
6382     const p = $(this).parents(".sectionPurchase")
6383     $(".purchaseAddress").find(".greetingCard textarea").val(v)
6384     if(v.length > 3) {
6385       p.find(".next-purchase-button").attr("disabled", false)
6386     } else {
6387       p.find(".next-purchase-button").attr("disabled", true)
6388     }
6389   })
6390 
6391   $("[data-properties=penerima]").keyup(function(){
6392     const v = $(this).val()
6393     $(".purchaseAddress").find("[data-properties=penerima]").val(v)
6394   })
6395 
6396   $("[data-properties=pengirim]").keyup(function(){
6397     const v = $(this).val()
6398     $(".purchaseAddress").find("[data-properties=pengirim]").val(v)
6399   })
6400 
6401   $(document).click(function(e){
6402 
6403      if($(e.target).closest('.wrapperPopupCart').length != 0) return false;
6404      // $('#popupCart').fadeOut('slow');
6405     // location.reload()
6406   });
6407 
6408   $(".toggleAddonCart").click(function(){
6409     const p = $(this).parent(".itemAddonCart")
6410     p.toggleClass("open")
6411   })
6412 
6413   $(".btnViewCart").click(function(){
6414     window.location.href = "https://outerbloom.com/cart";
6415   })
6416 
6417   $(".btnViewCheckout").click(async function(){
6418     $(this).find("span").addClass("loading")
6419     let zip = $("#zip").val()
6420     const first_name = $("#first_name").val()
6421     const last_name = $("#last_name").val()
6422     const company = $("#company").val() !== '' ? $("#company").val() : ''
6423     const address1 = $("#delivery_address").val()
6424     const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : ''
6425     zip = zip && zip !== '' ? zip?.split(' - ')[0] : ''
6426     const phone = $("#recipient_number").val()
6427     const city = $("#cities").val()
6428     const province = $("#province").val()
6429     const country = 'Indonesia'
6430     const ver = Date.parse(new Date())
6431     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}`
6432 
6433     const clear = await fetch(`/cart/clear.js`, {method: 'POST'})
6434     if(clear.status === 200) {
6435       const savedItem = window.localStorage.getItem("items");
6436       const items = JSON.parse(savedItem)
6437       const addItems = await additem(items)
6438       console.log(addItems, 'new addItems')
6439       if(addItems) {
6440         window.location.href = `https://outerbloom.com/checkout?${params}`;
6441       }
6442     }
6443   })
6444 
6445   $(".btnContinueShopping").click(function(){
6446     window.location.href = "https://outerbloom.com/";
6447   })
6448 
6449     if (isIOS) {
6450       $(".empty-state-card").click(function(){
6451         $("#input-foto").trigger("click")
6452       })
6453       $(".btn-upload-image").click(function(){
6454         $("#input-foto").trigger("click")
6455       })
6456       $("[for=input-video]").click(function(){
6457         $("#input-video").trigger("click")
6458       })
6459       $(".btn-upload-papan").click(function(){
6460         $("#logoPapan").trigger("click")
6461       })
6462     }
6463   
6464     $("[data-properties]").each(function(){
6465       const select = $(this).parents(".form-group").find("select")
6466       $(this).change(function(){
6467         const name = $(this).data("properties")
6468         const v = $(this).val()
6469         if (name == 'telepon-penerima') {
6470           let phone = v.replace(/[^0-9]/g, '')
6471           $(this).val(phone);
6472           $("#properties-telepon-penerima").val(phone)
6473           $('.iti__search-input').val('-') 
6474         } else {
6475           $("#properties-" + name).val(v)
6476         }
6477       })
6478       select.on("change", function(){
6479         const name = $(this).data("properties")
6480         const v = $(this).val()
6481         $("#properties-" + name).val(v)
6482       })
6483     })
6484 
6485     $("#show_note").click(function(){
6486       nameq = $("#properties-nama-penerima").val()
6487       dear = $("#properties-kartu-nama-penerima").val()
6488       card = $("[data-properties=ucapan]").val()
6489       sender = $("#properties-kartu-nama-pengirim").val()
6490       photo = $("#properties-photo").val()
6491       video = $("#properties-video").val()
6492       updateCard(nameq, dear, card, sender, photo, video, status)
6493     })
6494 
6495     $(".remove-image").click(function(e){
6496       e.preventDefault()
6497       $(this).find("img").show()
6498       removeImage()
6499     })
6500 
6501     $(".remove-media").click(function(e){
6502       e.preventDefault()
6503       $(this).find("img").show()
6504       removeVideo()
6505     })
6506 
6507     
6508 
6509     $("[data-delivery_method]").click(function(e){
6510       e.preventDefault()
6511       const t = $(this)
6512       const data = t.data("delivery_method")
6513       $("[data-delivery_method]").removeClass("selected")
6514       t.addClass("selected")
6515       $("#cities").val("")
6516       $("#properties-delivery-date").val("-")
6517       $("#deliveryDate button").removeClass("selected")
6518       $("#full-date").val("Full Calendar ?")
6519       $("#propDeliveryDate").val("")
6520       const step3 = $("#step-3")
6521       if(data.match('PickUp')) {
6522         $(".selfpickup-point").show()
6523         step3.find("[data-finished=false]").hide()
6524         $("#panel-4").hide()
6525         step3.find("[data-finished=true]").show()
6526         $("#cities").attr("required", false)
6527         $("#form-group-city").hide()
6528         $("#row-delivery-time").hide()
6529         $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-")
6530         $("#propDeliveryTime").attr("required", false)
6531         // $("#deliveryDate").find("button:first-child").addClass("stop")
6532         $(".form-selfpickup").show()
6533         $(".form-delivery").hide()
6534         $(".form-delivery").find("input, textarea, select").val("")
6535         $(".form-delivery").find("input, textarea, select").attr("required", false)
6536         $("#properties-shipping").val("0")
6537         $("#noteDeliveryDate").hide()
6538         $(".form-delivery .form-control").attr("required", false)
6539         $("#stepNav4").hide()
6540         
6541         $("#deliveryDate").find("button:nth-child(1)").addClass("stop")
6542         
6543         
6544         
6545         if(timeOfDay >= 16.01){
6546           $("#deliveryDate").find("button:nth-child(2)").addClass("stop")
6547         }
6548       } else {
6549         
6550         
6551         $("#deliveryDate").find("button:nth-child(1)").removeClass("stop")
6552         step3.find("[data-finished=false]").show()
6553         $("#panel-4").show()
6554         step3.find("[data-finished=true]").hide()
6555         $("#cities").attr("required", true)
6556         $(".selfpickup-point").hide()
6557         $("#form-group-city").show()
6558         $("#cities").val('').trigger('change');
6559         $("#properties-kota-pengiriman").val("-")
6560         
6561         $("#row-delivery-date, #row-delivery-time").show()
6562         $("#propDeliveryDate, #propDeliveryTime").attr("required", true)
6563         $("#deliveryDate").find("button").removeClass("stop")
6564         $(".form-selfpickup").hide()
6565         $(".form-delivery").show()
6566         $(".form-delivery").find("input, textarea, select").attr("required", true)
6567         $(".form-delivery [data-properties]").attr("readonly", false)
6568         $("#properties-kodepos").val("-")
6569         $("#properties-alamat-penerima").val("-")
6570         $(".form-delivery .form-control").attr("required", true)
6571         $(this).parents(".setup-content").attr("id", "step-1")
6572         
6573         $("#stepNav4").show()
6574       }
6575     })
6576 
6577     $("[name=selfpickup]").click(function(){
6578         const p = $(this).parents(".row-pickup")
6579         const pickupCity = $("input[name='selfpickup']:checked").val();
6580         const pickupAddress = $("input[name='selfpickup']:checked").data("address");
6581         const pickupZip = $("input[name='selfpickup']:checked").data("zip");
6582 
6583         $(".row-pickup").removeClass("selected")
6584         p.addClass("selected")
6585         
6586         $("#properties-kota-pengiriman").val(pickupCity)
6587         $("#province").val("Jakarta")
6588         $("#properties-alamat-penerima").val(pickupAddress)
6589         $("#properties-kodepos").val(pickupZip)
6590     })
6591 
6592     $("#cities").change(function(e){
6593       e.preventDefault()
6594       $(this).parent(".row").find("p.error").remove()
6595       $("#full-date").val("Full Calendar")
6596       $("#deliveryDate, #deliveryDateFull label ").show()
6597       $("#deliveryDateFull").removeClass("filled")
6598       $(".btnChangeDeliveryDate").addClass("hide")
6599       $("#full-date").prop('disabled', false);
6600       $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success")
6601       $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true)
6602       const step3 = $("#step-3")
6603       $("#cityNote").remove()
6604       $("#noteDeliveryDate").hide()
6605       $("#noteDeliveryDate").empty()
6606       let v = $(this).val()
6607       let v2 = $('option:selected', this).attr('data-city');
6608       let v3 = $('option:selected', this).attr('data-province');
6609       let price = $('option:selected', this).attr('data-price');
6610       $("#country").val(v)
6611       $("#properties-kota-pengiriman").val(v)
6612       $("#properties-shipping").val(price)
6613       $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected")
6614       $("#properties-delivery-date, #properties-delivery-time").val("-")
6615       $("#propDeliveryDate, #propDeliveryTime").val("")
6616       let note = $('option:selected', this).attr('data-note');
6617       if(v === 'Kota Lainnya') {
6618         $("#noteDeliveryDate").show()
6619         $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.")
6620         $("#zip").attr("required", false)
6621         $("#zip").hide()
6622         $("#propDeliveryDate, #propDeliveryTime").attr("required", false)
6623         $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-")
6624         $("#row-delivery-date, #row-delivery-time").hide()
6625         $("#properties-shipping").val("")
6626         // $(this).parents(".setup-content").attr("id", "step-2")
6627         
6628       } else {
6629         $("#noteDeliveryDate").hide()
6630         $("#zip").attr("required", true)
6631         $("#zip").show()
6632         $("#row-delivery-date, #row-delivery-time").show()
6633         $("#propDeliveryDate, #propDeliveryTime").attr("required", true)
6634         $("#deliveryDate").find("button").removeClass("stop")
6635         // $(this).parents(".setup-content").attr("id", "step-1")
6636         
6637       }
6638       
6639       
6640       
6641       // if(v !== 'Jakarta') {
6642       //   $("[data-type=upsell]").hide()
6643       // } else {
6644       //   $("[data-type=upsell]").show()
6645       // }
6646       // $('.collection-addons')[0].swiper.update();
6647       
6648       
6649       getProvince(v)
6650       $("#zip").html(`<option value="">Choose Postal Code</option>`)
6651       renderZip(v, v2, v3)
6652       
6653       disabledSameDay()
6654       
6655 
6656       if(v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') {
6657         
6658         $("#cardOccasion, #navAddon, .collection-addons").hide()
6659         
6660         $("[data-addon=giftcard]").show()
6661         $("[data-addon=giftcard]").click()
6662         $("#itemAddons").show()
6663         $("#flower-step").addClass("nonjadetabek")
6664       } else {
6665         $("#cardOccasion, #navAddon, .collection-addons").show()
6666         $("[data-addon=all]").click()
6667         $("#flower-step").removeClass("nonjadetabek")
6668       }
6669       
6670         if(v !== '') {
6671           $("#personalizeBtn .btn").attr("disabled", false)
6672         } else {
6673           $("#personalizeBtn .btn").attr("disabled", true)
6674         }
6675       
6676     })
6677 
6678     $("#zip").change(function(e){
6679       let v = $(this).val()
6680       var city = $("#cities").find('option:selected');
6681       $("#properties-kodepos").val(v)
6682       if(city === 'Kota Lainnya') {
6683         $(this).attr("required", true)
6684         $("#recipient-address").val("")
6685       }
6686     })
6687 
6688     
6689       var minDate = +7
6690       
6691     
6692 
6693     $("#full-date").datepicker({
6694       minDate,
6695       dateFormat: 'Mdd_yy', //Nop22_2021,
6696       
6697       beforeShowDay: disabledays,
6698       
6699       onSelect: function (date) {
6700         $("#deliveryDate, #deliveryDateFull label ").hide()
6701         $("#deliveryDateFull").addClass("filled")
6702         $(".btnChangeDeliveryDate").removeClass("hide")
6703         $("#full-date").prop('disabled', true);
6704         $('#propDeliveryDate, #properties-delivery-date').val('Kirim_'+date);
6705         $(".date-full").addClass("selected")
6706         $(".date-single, .calendar-group").removeClass("selected")
6707         $("#propDeliveryTime").val('')
6708         $("#properties-delivery-time").val('-')
6709         $(".time-single").removeClass("selected")
6710         
6711         
6712       }
6713     });
6714 
6715     $(".btnChangeDeliveryDate").click(function(){
6716         $("#deliveryDate, #deliveryDateFull label ").show()
6717         $("#deliveryDateFull").removeClass("filled")
6718         $(".btnChangeDeliveryDate").addClass("hide")
6719         $("#full-date").prop('disabled', false);
6720     })
6721   
6722     $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e){
6723       e.preventDefault()
6724       $(this).parents("#row-delivery-date").find("p.error").remove()
6725       const fulldate = $(this).data("fulldate")
6726       const day = $(this).data("day")
6727       const date = $(this).data("date")
6728       const month = $(this).data("month")
6729       const year = $(this).data("year")
6730       const off_pagi = $(this).data("offpagi")
6731       const off_siang = $(this).data("offsiang")
6732       const off_Malam = $(this).data("offMalam")
6733       $(".calendarbutton").removeClass("selected")
6734       $(this).addClass("selected")
6735       $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`)
6736       $("#propDeliveryTime").val('')
6737       $("#properties-delivery-time").val('-')
6738       $(".calendarbutton2").removeClass("selected")
6739       $("#full-date").val("Full Calendar")
6740 
6741       
6742       if(off_pagi && timeOfDay > off_pagi) {
6743         $("[data-time=Morning]").attr("disabled", true)
6744       } else {
6745         $("[data-time=Morning]").attr("disabled", false)
6746       }
6747       if(off_siang && timeOfDay > off_siang) {
6748         $("[data-time=Afternoon]").attr("disabled", true)
6749       } else {
6750         $("[data-time=Afternoon]").attr("disabled", false)
6751       }
6752       
6753 
6754       
6755     })
6756     
6757     if(today === 14 && timeOfDay > 17.00) {
6758       $("#deliveryDate button:first-child").attr("disabled", true)
6759     }
6760   
6761     $("#deliveryTime").delegate(".calendarbutton2", "click", function(e){
6762       e.preventDefault()
6763       const time = $(this).data("time")
6764       const date = $("#propDeliveryDate").val()
6765       if(date == '') {
6766         return alert('Silakan pilih tanggal terlebih dahulu')
6767       }
6768       $(".calendarbutton2").removeClass("selected")
6769       $(this).addClass("selected")
6770       $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`)
6771     })
6772       
6773     $('textarea.has-limit, input.has-limit').keyup(function () {
6774       max = this.getAttribute("maxlength");
6775       let len = $(this).val().length;
6776       let limit = $(this).siblings(".limit");
6777       if (len > max) {
6778         alert('you have reached the limit');
6779       } else {
6780         limit.text(`${len}/${max}`);
6781       }
6782     });
6783     
6784     $("#button-action-step .btn").click(function(){
6785       $(this).find("span").text("Processing...");
6786     });
6787 
6788     $(".finishBtn").on('click', function() {
6789       $(this).addClass("is-adding");
6790       // $(this).click();
6791     });
6792 
6793     $('.setup-panel .nav-item a.btn-success').trigger('click');
6794 
6795     $("#button-action .btn").click(function(){
6796       $("#flower-step").addClass("block");
6797       $("#button-action").hide();
6798     });
6799         
6800     $(".close-how-order").click(function(){
6801       $("#flower-step").removeClass("block");
6802       $("#button-action").show();
6803     });
6804 
6805     $("#input-foto, #input-video").change(function(e){
6806       readURL(this);
6807     });
6808 
6809     $("#logoPapan").change(function(){
6810       readURLPapan(this);
6811     });
6812 
6813     $("#address-upload").change(async function(){
6814       const upload_address = await readURLAddress(this)
6815       if(upload_address) {
6816         const url = upload_address.url
6817         $(".props-address-upload").val(url)
6818         $(".form-address").addClass("address-uploaded")
6819         $(".form-address-upload").addClass("uploaded")
6820 
6821         $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false)
6822       }
6823     })
6824 
6825     $(".address-manualy").click(function(){
6826       $(".form-address-upload").removeClass("uploaded");
6827       $(".photo-address").hide();
6828       $(".form-address").removeClass("address-uploaded")
6829       $("#formAddressPurchase").find(".form-control").attr("required", true)
6830     });
6831 
6832     $(".case-video-preview").delegate(".replace-video", "click", function(){
6833       $("#input-video").trigger("click")
6834     })
6835 
6836     $('.date-single').click(function(e) {
6837       e.preventDefault();
6838       $('.date-single').removeClass('selected');
6839       $('#full-date').removeClass('selected');
6840       $(this).addClass('selected');
6841       $('#full-date').html('Full' + '<br/>' + 'Calendar');
6842     });
6843     $('#full-date').click(function(e){
6844       e.preventDefault();
6845       $('.date-single').removeClass('selected');
6846       $(this).addClass('selected');
6847     });
6848     
6849     // $("tr").each(function(){
6850     //   if($(this).text().match('SKU')) {
6851     //     $(".sku-product").html($(this).parents("table").html())
6852     //   }
6853     // })
6854     
6855     $("#product-image").scroll(function(){
6856       $(".desc-add").each(function(){
6857         const img = $(this).find("img")
6858         const src = img.data("src")
6859         img.attr("src", src)
6860       })
6861     })
6862 
6863     $(".product-fixed").hide()
6864     
6865     let target = $("#personalizeBtn")
6866     
6867 
6868     $(".product-meta").scroll(function() {
6869         if ($(window).scrollTop() >= target.offset().top ) {
6870             $(".product-fixed").addClass("show")
6871         } else {
6872           $(".product-fixed").removeClass("show")
6873         }
6874     });
6875 
6876     $(window).scroll(function() {
6877         if ($(window).scrollTop() >= target.offset().top ) {
6878             $(".product-fixed").addClass("show")
6879         } else {
6880           $(".product-fixed").removeClass("show")
6881         }
6882     });
6883   });
6884 </script>
6884
6885 
6886   
6886<script>
6887     //
6888   </script>
6888
6889 
6890 
6890<script>
6891   $(document).ready(function(){
6892     $('table tr td').each(function(){
6893       var texto = $(this).text();
6894       var nextto = $(this).next("td");
6895       var sku = $("#data-sku").val()
6896       if(texto == 'SKU'){
6897         nextto.text(sku)
6898       }
6899     });
6900     
6901     $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan");
6902     $(".stamped-summary-actions-newreview").text("Tulis Review");
6903     $("#tab-questions").text("Pertanyaan");
6904     
6905     $(".freeship .icon").click(function(){
6906       $(".fs-content").slideToggle();
6907       $(this).parents(".freeship").toggleClass("expand");
6908     });
6909     
6910     var $easyzoom = $('.easyzoom').easyZoom();
6911     // Setup thumbnails example
6912     var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom');
6913     $('.thumbnails').on('click', 'a', function(e) {
6914       var $this = $(this);
6915       e.preventDefault();
6916       // Use EasyZoom's `swap` method
6917       api1.swap($this.data('standard'), $this.attr('href'));
6918     });
6919 
6920     $('#playerID').click(function(){
6921       var videoURL = $('#VdoID').attr('src'),
6922           dataplay = $('#VdoID').attr('data-play');
6923 
6924       //for check autoplay
6925       //if not set autoplay=1
6926       if(dataplay == 0 ){
6927         $('#VdoID').attr('src',videoURL+'?autoplay=1');
6928         $('#VdoID').attr('data-play',1);
6929       }
6930       else{
6931         var videoURL = $('#VdoID').attr('src');
6932         videoURL = videoURL.replace("?autoplay=1", "");
6933         $('#VdoID').prop('src','');
6934         $('#VdoID').prop('src',videoURL);
6935 
6936         $('#VdoID').attr('data-play',0);
6937       }
6938 
6939     });
6940     
6941     $(".product-photo-thumb-video").click(function(e){
6942       e.preventDefault();
6943 
6944       var newEmbed = $(this).attr('href');
6945       $("#featured-image-product").addClass("img-video");
6946       $("#ProductPhotoImg").hide();
6947       $("#featured-image-product .video").show();
6948       $("#featured-image-product iframe").attr('src', newEmbed);
6949       $("#VdoID")[0].src += "&autoplay=1";
6950     });
6951     $(".product-single__thumbnail").click(function(evt){
6952       evt.preventDefault();
6953       $("#featured-image-product").removeClass("img-video");
6954       $("#ProductPhotoImg").show();
6955       $("#featured-image-product .video").hide();
6956       $("#featured-image-product iframe").attr('src', '');
6957     });
6958     
6959     if($('#product-meta .short-desc > div').length >= 1){
6960       //console.log('div detected')
6961       var replacer = $('#product-meta .short-desc > div').contents();
6962       $('#product-meta .short-desc > div').replaceWith(replacer);
6963 
6964       var cAssured =  $('.c-assured').detach();
6965       cAssured.insertAfter('.meta-sds .stock-info');
6966     }
6967 
6968     
6969     
6970     $(".heading-toggle").click(function(){
6971       $(this).parent().toggleClass("open")
6972       
6973     });
6974   });
6975 </script>
6975
6976 
6977 
6978   
6978<script type="application/json" id="ProductJson-Product">
6979         
6980         {"id":8144957800663,"title":"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eJACKTOTO telah berhasil menjadi pusat hiburan situs toto penyedia game togel 4d ekslusif hari ini. Join now dengan menekan tombol join now yang telah disediakan untuk menikmati keseruan dan keuntungannya setiap hari."}
6981   </script>
6981
6982   
6983     
6983<script type="application/json" id="VariantJson-Product">
6984       [
6985         
6986           {
6987              "incoming": false,
6988              "next_incoming_date": null
6989           }
6990         
6991       ]
6992     </script>
6992
6993   
6994 
6995 
6996 
6997 </div>
6998 
6999 
7000 
7000<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
7000
7001 <style>
7002     .stamped-review-header-title,
7003     .stamped-review-header .author,
7004     .stamped-review-content-body,
7005     .stamped-sort-select,
7006     .stamped-review-header .verified-badge[data-type=buyer]:after,
7007     .stamped-review-header-byline,
7008     .stamped-review-reply-body {font-size: 14px!important;font-family: 'Barlow',sans-serif!important;}
7009     .stamped-review {margin-bottom: 0;}
7010     .stamped-review-body {padding-left: 65px;}
7011     .stamped-review:first-child {padding-top: 25px;}
7012     .stamped-review-content {clear: none;}
7013     .stamped-review-reply {margin: 15px 0 0 65px;background: #f2f2f2;border-left: none;}
7014     .stamped-review-reply-body {padding-left: 65px;}
7015     .stamped-review-header .author {text-transform: capitalize;}
7016     .stamped-questions .stamped-review-content {padding-left: 65px;}
7017 
7018     .stamped-pagination {margin: 20px 0 0;}
7019     .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;}
7020     .stamped-pagination li a {color: #121212;padding: 13px 18px;vertical-align: middle;display: block;}
7021     .stamped-pagination li.active a {background-color: #ddd;font-weight: 400;}
7022     .stamped-pagination li:hover a {background: #ddd;}
7023     .stamped-pagination .next {border-right: 1px solid #ccc;}
7024     .stamped-pagination li:first-child {border-top-left-radius: 5px;border-bottom-left-radius: 5px;}
7025     .stamped-pagination li:last-child {border-top-right-radius: 5px;border-bottom-right-radius: 5px;}
7026 
7027     #stamped-pagination-question span.page {display: inline-block;border: 1px solid #ccc;width: 47px;}
7028     #stamped-pagination-question span {font-size: 14px;}
7029     #stamped-pagination-question .page.active {padding: 12px;font-weight: 400;background: #ddd;}
7030     #stamped-pagination-question a, #stamped-pagination-question .page.active {color: #121212;padding: 13px 18px;vertical-align: middle;display: inline-block;}
7031     .stamped-pagination-deco {color: #121212;padding: 13px 18px;width: 47px;vertical-align: middle;display: inline-block;border: 1px solid #ccc;padding: 12px;}
7032     .stamped-pagination-prev, .stamped-pagination-next {position: inherit;}
7033     .stamped-pagination-prev a, .stamped-pagination-next a {width: auto!important;border: 1px solid #ccc;}
7034 
7035     @media (max-width: 480px){
7036       .stamped-review-reply {margin-left: 0!important;}
7037       select.stamped-sort-select {font-size: 13px!important;}
7038     }
7039 
7040   #product-reviews .stamped-summary-ratings, #product-reviews .stamped-summary-actions, .stamped-content {
7041       display: block !important;
7042   }
7043 </style>
7044 
7044<script>
7045     var selectCallback = function(variant, selector) {
7046       timber.productPage({
7047         money_format: "Rp {{amount_no_decimals}}",
7048         variant: variant,
7049         selector: selector
7050       });
7051     };
7052 
7053     jQuery(function($) {
7054       new Shopify.OptionSelectors('productSelect', {
7055         product:
7056 
7057 
7058 
7059 
7060 
7061 {"id":8144957800663,"title":"Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eJACKTOTO telah berhasil menjadi pusat hiburan situs toto penyedia game togel 4d ekslusif hari ini. Join now dengan menekan tombol join now yang telah disediakan untuk menikmati keseruan dan keuntungannya setiap hari."},
7062         onVariantSelected: selectCallback,
7063         enableHistoryState: true
7064       });
7065 
7066       // Add label if only one product option and it isn't 'Title'. Could be 'Size'.
7067       
7068 
7069       // Hide selectors if we only have 1 variant and its title contains 'Default'.
7070       
7071         $('.selector-wrapper').hide();
7072       
7073     });
7074 </script>
7074
7075 
7076 
7077 
7078   
7078<script type="application/ld+json">
7079     {
7080     "@context": "http://schema.org",
7081     "@type": "Product",
7082 "offers": {
7083 "@type": "Offer",
7084 "availability":"https://schema.org/InStock",
7085 "price": 835000,
7086 "priceValidUntil": "05-10-2025",
7087 "priceCurrency": "IDR",
7088 "url": "https://collegeofnepal.com/"
7089 },
7090 "brand": {
7091 "@type": "Brand",
7092 "name": "Outerbloom Florist"
7093 },
7094 "sku": "8144957800663",
7095 "gtin13": "Jawa",
7096 "name": "Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal",
7097 "description": "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!",
7098 "category": "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!",
7099 "url": "https://collegeofnepal.com/",
7100 "image": {
7101 "@type": "ImageObject",
7102 "url": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426",
7103 "image": "https://outerbloom.com/cdn/shop/files/Blossom-Shine-WM_small.jpg?v=1695788426",
7104 "name": "Pubtogel: Navigasi Online Anti-Ribet | Kecepatan & Kenyamanan Maksimal",
7105 "width": 1024,
7106 "height": 1024
7107 }
7108     }
7109   </script>
7109
7110 
7111 
7112 
7113 
7114         
7115 
7115<script id="bss-ltap-hide-price" type="text/javascript" >
7116 !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)}))}
7116)),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)}
7116)),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()}
7116if("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)}
7116if(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");
7116c&&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
7116-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");
7116i&&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
7116--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
7116opify.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");
7116e.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=
7116o.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");
7116if(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();
7116let 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()}]);
7117 </script>
7117
7118 
7119       </main>
7120       
7121       <div id="shopify-section-newsletter" class="shopify-section"><br>
7122   <style>
7123     #shopify-section-newsletter {
7124       background: url(https://res.cloudinary.com/dxghajqr1/image/upload/v1761891407/PUB_SLIDER_2-min_pvnpbb.jpg);
7125       background-attachment: fixed;
7126       margin-bottom: 0;
7127     }
7128     input:-webkit-autofill,
7129     input:-webkit-autofill:hover,
7130     input:-webkit-autofill:active,
7131     input:-webkit-autofill:focus {
7132       -webkit-box-shadow:0 0 0 50px white inset;
7133       -webkit-text-fill-color: #ffffff;
7134     }
7135     .section-newsletter {
7136       max-width: 800px;
7137       margin: auto;
7138       padding: 50px 0;
7139     }
7140     .section-newsletter h2 {
7141       font-weight: 700;
7142       font-size: 24px;
7143     }
7144     .section-newsletter input[type="email"] {
7145       width: 100%;
7146       text-align: center;
7147       border: none;
7148       border-bottom: 1px solid #ffffff;
7149       font-size: 16px;
7150       color: #757575;
7151       background-color: #eeeeee;
7152     }
7153     .section-newsletter .row label {
7154       font-size: 14px;
7155       cursor: pointer;
7156     }
7157     .section-newsletter .radio-inline input {
7158       width: auto;
7159     }
7160     .section-newsletter .btn {
7161       width: 130px;
7162       border: 1px solid #ffffff;
7163       box-shadow: none;
7164       font-size: 16px;
7165       font-weight: 500;
7166       text-transform: uppercase;
7167     }
7168     .section-newsletter form {
7169       margin: 30px 0 60px;
7170     }
7171     .section-newsletter input[type="radio"] {
7172       position: absolute;
7173       width: 1px;
7174       height: 1px;
7175     }
7176     .section-newsletter [type="radio"]:checked + label, .section-newsletter [type="radio"]:not(:checked) + label {
7177       position: relative;
7178       padding-left: 28px;
7179       cursor: pointer;
7180       line-height: 20px;
7181       display: inline-block;
7182       color: #666;
7183     }
7184     .section-newsletter [type="radio"]:checked + label:before, .section-newsletter [type="radio"]:not(:checked) + label:before {
7185       content: '';
7186       position: absolute;
7187       left: 0;
7188       top: 0;
7189       width: 18px;
7190       height: 18px;
7191       border: 1px solid #ddd;
7192       border-radius: 100%;
7193       background: #fff;
7194     }
7195     .section-newsletter [type="radio"]:checked + label:after, .section-newsletter [type="radio"]:not(:checked) + label:after {
7196       content: '';
7197       width: 12px;
7198       height: 12px;
7199       background: #ffffff;
7200       position: absolute;
7201       top: 3px;
7202       left: 3px;
7203       border-radius: 100%;
7204       -webkit-transition: all 0.2s ease;
7205       transition: all 0.2s ease;
7206     }
7207     .section-newsletter [type="radio"]:not(:checked) + label:after {
7208       opacity: 0;
7209       -webkit-transform: scale(0);
7210       transform: scale(0);
7211     }
7212     .opt-newsletter {display:none;}
7213     .footer-newsletter p, .footer-newsletter p a {
7214       color: #757575;
7215     }
7216     @media (max-width:991px){
7217       .section-newsletter h2 {
7218         font-size: 32px;
7219       }
7220       .section-newsletter input {
7221         width: 300px;
7222         font-size: 14px;
7223       }
7224       .section-newsletter {
7225         padding: 50px 20px;
7226       }
7227     }
7228     @media (max-width: 480px){
7229       .section-newsletter input[type="email"] {font-size: 16px;}
7230     }
7231   </style>
7232  <style>
7233 .icon-img-footer {
7234     width: 80px; 
7235     padding: 0px 5px;
7236 }
7237 @media (min-width: 768px) {
7238     .icon-img-footer {
7239         width: 120px; 
7240     }
7241 }
7242 @media (min-width: 992px) {
7243     .icon-img-footer {
7244         width: 120px; 
7245     }
7246 }
7247 
7248   .button-login-daftar {
7249                         display: grid;
7250                         grid-template-columns: repeat(2, 1fr);
7251                         font-weight: 700;
7252                     }
7253                     .button-login-daftar a {
7254                         text-align: center;
7255                     }
7256                     .login,
7257                     .register {
7258                         color: #fff;
7259                         padding: 15px 10px;
7260                         font-size: 23px;
7261                     }
7262                     .login,
7263                     .login-button {
7264                         background: linear-gradient(to bottom,#ff0000 0,#ff0000 100%);
7265                         border: 2px solid #ffffff;
7266                     }
7267                     .register,
7268                     .register-button {
7269                         background: linear-gradient(to bottom,#ff0000 0,#ff0000 100%);
7270                         border: 2px solid #ffffff;
7271                     }
7272 
7273 
7274 
7275 </style>
7276 
7277 <!-- wp:html -->
7278  
7278<script>
7279         document.addEventListener('DOMContentLoaded',
7280             function(){const faqItems=document.querySelectorAll('.faq-item');
7281             faqItems.forEach(item=>{const question=item.querySelector('.faq-question');
7282             question.addEventListener('click',
7283             ()=>{const isActive=item.classList.contains('active');
7284             faqItems.forEach(otherItem=>{otherItem.classList.remove('active')});
7285             if(!isActive){item.classList.add('active')}})})});
7286         </script>
7286
7287 
7288 
7289             <div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1">
7290             </div>
7291<div class="faq-section">
7292    <h2>FAQ PUBTOGEL</h2>
7293<div class="faq-container">
7294
7295  <div class="faq-item">
7296    <button class="faq-question">Kenapa PUBTOGEL gak pernah kena blokir dan selalu bisa diakses?<span></span></button>
7297    <div class="faq-answer">
7298      <p>Apakah Anda sering merasa frustrasi dengan loading yang lambat, antarmuka yang membingungkan, atau link yang mati saat menjelajah internet? Sebagai pengguna online aktif, waktu Anda terlalu berharga untuk dihabiskan dalam labirin digital yang rumit. Bayangkan semua energi yang terbuang karena navigasi yang tidak efisien. Sudah saatnya ada perubahan!</p>
7299    </div>
7300  </div>
7301
7302  <div class="faq-item">
7303    <button class="faq-question">Apa yang bikin PUBTOGEL dipercaya sebagai bandar togel aman & pasti bayar?<span></span></button>
7304    <div class="faq-answer">
7305      <p><div class='card'><h3>Navigasi Secepat Kilat</h3><p>Ucapkan selamat tinggal pada buffering dan loading yang lambat. Pubtogel dirancang untuk kecepatan maksimal, membawa Anda ke tujuan digital tanpa jeda.</p></div><div class='card'><h3>Antarmuka Super Simpel</h3><p>Tidak perlu lagi pusing dengan layout yang rumit. Desain Pubtogel yang intuitif memastikan Anda menemukan apa yang dicari dengan mudah, bahkan untuk pengguna awam sekalipun.</p></div><div class='card'><h3>Aman & Terpercaya</h3><p>Jelajahi internet dengan tenang. Pubtogel tidak hanya cepat, tetapi juga menjaga keamanan data Anda dan memastikan koneksi yang stabil setiap saat.</p></div>
7306</p>
7307    </div>
7308  </div>
7309
7310  <div class="faq-item">
7311    <button class="faq-question">Beneran bisa jepe 10 juta cuma modal bet 100 di PUBTOGEL?<span></span></button>
7312    <div class="faq-answer">
7313      <p><div class='card'><p>"Sebelum pakai Pubtogel, browsing itu rasanya kayak jalan di lumpur. Sekarang? Langsung ngebut! Sangat merekomendasikan untuk siapa pun yang sering online."</p><strong>Andi S., Digital Marketer</strong></div><div class='card'><p>"Saya sering pindah-pindah tab dan aplikasi, Pubtogel bikin semuanya seamless. Nggak ada lagi 'mana tadi link-nya?' atau loading lama. Produktivitas saya naik drastis!"</p><strong>Dewi P., Content Creator</strong></div></p>
7314    </div>
7315  </div>
7316
7317  <div class="faq-item">
7318    <button class="faq-question">Pasaran apa aja yang tersedia di PUBTOGEL?<span></span></button>
7319    <div class="faq-answer">
7320      <p>Siap Merasakan Revolusi Navigasi Online?</p>
7321    </div>
7322  </div>
7323
7324  <div class="faq-item">
7325    <button class="faq-question">Jangan biarkan navigasi yang lambat menghambat potensi Anda. Bergabunglah dengan ribuan pengguna cerdas lainnya!<span></span></button>
7326    <div class="faq-answer">
7327      <p> <a href='https://collegeofnepal.com/' class='btn'>Jelajahi Dunia Online dengan Mulus Sekarang!</a></p>
7328    </div>
7329  </div>
7330
7331</div>
7332
7333
7334</div>
7335 <div class="overlay overlay-cart"></div>
7336 <div id="CartDrawer" class="drawer drawer--right">
7337   <div class="drawer__header pl-2 pr-2">
7338     <div class="drawer__icon-cart display-table-cell">
7339       <a href="/cart" class="">
7340         <svg class="icon icon-cart" version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.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.
7340005-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>
7341       </a>
7342     </div>
7343     <div class="drawer__title h4">Keranjang Belanja</div>
7344     <div class="drawer__close js-drawer-close">
7345       <button type="button">
7346         <svg class="icon icon-close" version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.png" width="32" height="32" viewBox="0 0 32 32">
7347 <title>icon-close</title>
7348 <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>
7349 </svg>
7350       </button>
7351     </div>
7352   </div>
7353   <div id="CartContainer" class="p-2"></div>
7354 </div>
7355 
7356 
7356<script>
7357       
7358     </script>
7358
7359       
7359<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer></script>
7359
7360       <!-- /snippets/ajax-cart-template.liquid -->
7361 
7362   
7362<script id="CartTemplate" type="text/template">
7363   
7364     <form action="/cart" method="post" novalidate class="cart ajaxcart">
7365       <div class="ajaxcart__inner" {{ cart.item_count }}>
7366         {{#items}}
7367         <div class="ajaxcart__product">
7368           <div class="ajaxcart__row" data-line="{{line}}">
7369             <div class="grid">
7370               <div class="grid__item one-quarter">
7371                 <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a>
7372               </div>
7373               <div class="grid__item three-quarters">
7374                 <p class="d-block mb-3">
7375                   <a class="h4 d-block mb-2" href="{{url}}" class="ajaxcart__product-name">{{name}}</a>
7376                   {{#if variation}}
7377                     <span class="ajaxcart__product-meta p">{{variation}}</span>
7378                   {{/if}}
7379                   {{#properties}}
7380                     {{#each this}}
7381                       {{#if this}}
7382                         <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span>
7383                       {{/if}}
7384                     {{/each}}
7385                   {{/properties}}
7386                   
7387                 </p>
7388                 <div class="grid--full display-table">
7389                   <div class="grid__item display-table-cell one-half">
7390                     <div class="ajaxcart__qty">
7391                       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}">
7392                         <svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.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>
7393                         <span class="visually-hidden">Kurangi jumlah barang</span>
7394                       </button>
7395                       <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]*">
7396                       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}">
7397                         <svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.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>
7398                         <span class="visually-hidden">Tambahkan jumlah barang</span>
7399                       </button>
7400                     </div>
7401                   </div>
7402                   <div class="grid__item display-table-cell one-half text-right">
7403                     {{#if discountsApplied}}
7404                       <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small>
7405                       <br><span class="h4">{{{linePrice}}}</span>
7406                     {{else}}
7407                       <span class="h4">{{{linePrice}}}</span>
7408                     {{/if}}
7409                     </div>
7410                   </div>
7411                   {{#if discountsApplied}}
7412                     <div class="grid--full display-table">
7413                       <div class="grid__item text-right">
7414                         {{#each discounts}}
7415                           <small class="ajaxcart-item__discount">{{ this.title }}</small><br>
7416                         {{/each}}
7417                       </div>
7418                     </div>
7419                   {{/if}}
7420                   </div>
7421                 </div>
7422               </div>
7423             </div>
7424           </div>
7425         </div>
7426         {{/items}}
7427       </div>
7428       <div class="ajaxcart__footer">
7429         <div class="grid--full cart-subtotal py-2">
7430             <p>Subtotal</p>
7431             <h3 class="primary">{{{totalPrice}}}</h3>
7432           {{#if totalCartDiscount}}
7433             <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p>
7434           {{/if}}
7435         </div>
7436         
7437         <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a>
7438         
7439         <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p>
7440       </div>
7441     </form>
7442   
7443   </script>
7443
7444   
7444<script id="AjaxQty" type="text/template">
7445   
7446     <div class="ajaxcart__qty">
7447       <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}">
7448         <svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="24" viewBox="0 0 32 32">
7449             <title>icon-minus</title>
7450             <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>
7451         </svg>
7452         <span class="visually-hidden">Kurangi jumlah barang</span>
7453           </button>
7454               <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*">
7455           <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}">
7456         <svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.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>
7457         <span class="visually-hidden">Tambahkan jumlah barang</span>
7458       </button>
7459     </div>
7460   
7461   </script>
7461
7462   
7462<script id="JsQty" type="text/template">
7463   
7464     <div class="js-qty mx-auto mt-2">
7465       <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}">
7466         <svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.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>
7467         <span class="visually-hidden">Kurangi jumlah barang</span>
7468       </button>
7469       <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}">
7470       <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}">
7471         <svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.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>
7472         <span class="visually-hidden">Tambahkan jumlah barang</span>
7473       </button>
7474     </div>
7475   
7476   </script>
7476
7477 
7478 <style>
7479   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button,
7480   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button,
7481   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button {display: none;}
7482   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input,
7483   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,
7484   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;opacity: 0.5;}
7485   #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input,
7486   #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input,
7487   #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;}
7488 </style>
7489       
7489<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX" defer></script>
7489
7490       
7490<script>
7491         jQuery(function($) {
7492           ajaxCart.init({
7493             formSelector: '#AddToCartForm',
7494             cartContainer: '#CartContainer',
7495             addToCartSelector: '#AddToCartXX',
7496             cartCountSelector: '#CartCount, #CartCount2',
7497             cartCostSelector: '#CartCost',
7498             moneyFormat: "Rp {{amount_no_decimals}}"
7499           });
7500           });
7501 
7502           jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) {
7503             // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM
7504             timber.RightDrawer.open();
7505           });
7506       </script>
7506
7507     
7508 
7509 
7510 
7511 <style>
7512   /** Search AutoComplete **/
7513   .resultsearch .ui-menu-item[data-cat="Collection"],
7514   .resultsearch .ui-menu-item[data-cat="Collection"] {display: none;}
7515   .resultsearch .ui-widget.ui-widget-content {
7516     width: 100%;
7517     top: 48px;
7518     border: none;
7519     box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3);
7520   }
7521   .resultsearch .ui-menu-item {text-align: left;}
7522   .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;}
7523   .ui-state-active {
7524     border: none!important;
7525     background-color: #fafafa!important;
7526     color: #000!important;
7527   }
7528   .ui-menu-item a[data-cat="Collection"] {padding: 5px 12px;}
7529   .ui-menu .ui-menu-item {line-height: normal;}
7530 </style>
7531 
7531<script>
7532 $(window).load(function(){
7533 
7534   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;}
7535 
7536   $.widget("custom.catcomplete", $.ui.autocomplete, {
7537     _renderMenu: function (ul, items) {
7538       // have search reults split up in categories
7539       var that = this,
7540           currentCategory = "";
7541       $.each(items, function (index, item) {
7542         if (item.category != currentCategory) {
7543           ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>");
7544           currentCategory = item.category;
7545         }
7546         that._renderItemData(ul, item);
7547       });
7548     }
7549   });
7550 
7551   // higlight searched for term
7552   $.ui.autocomplete.prototype._renderItem = function( ul, item ) {
7553     var term = this.element.val(),
7554         html = item.label.replace( term, "<b>$&</b>" );
7555     return $( "<li>" )
7556     .append(format(item))
7557     .appendTo( ul );
7558   };
7559 
7560 
7561   var data = [
7562       { label: "< Rp 500.000", category: "Collection", url: "/collections/rp-500-000", images: " ", price: " " },{ label: "> Rp 1.000.000", category: "Collection", url: "/collections/rp-1-000-000", images: " ", price: " " },{ label: "Acrylic Jewelry Box", category: "Collection", url: "/collections/acrylic-jewelry-box", images: " ", price: " " },{ label: "Ajmal", category: "Collection", url: "/collections/ajmal", images: " ", price: " " },{ label: "Alamat Rumah Duka", category: "Collection", url: "/collections/rumah-duka", images: " ", price: " " },{ label: "Anggrek Bulan", category: "Collection", url: "/collections/anggrek-bulan", images: " ", price: " " },{ label: "Anniversary Gift", category: "Collection", url: "/collections/kado-anniversary", images: " ", price: " " },{ label: "Aquarius ?? 20Jan - 18Feb", category: "Collection", url: "/collections/kado-untuk-zodiak-aquarius", images: " ", price: " " },{ label: "Aries ?? 21March - 19April", category: "Collection", url: "/collections/kado-untuk-zodiak-aries", images: " ", price: " " },{ label: "Armaf", category: "Collection", url: "/collections/armaf", images: " ", price: " " },{ label: "Aromatherapy Diffuser", category: "Collection", url: "/collections/aromatherapy-diffuser", images: " ", price: " " },{ label: "Artisan Soap", category: "Collection", url: "/collections/artisan-soap", images: " ", price: " " },{ label: "Artisan Tea", category: "Collection", url: "/collections/artisan-tea", images: " ", price: " " },{ label: "AsmaraKu", category: "Collection", url: "/collections/asmaraku", images: " ", price: " " },{ label: "Atkinsons", category: "Collection", url: "/collections/atkinsons", images: " ", price: " " },{ label: "Autumn by Outerbloom", category: "Collection", url: "/collections/autumn-by-outerbloom", images: " ", price: " " },{ label: "Autumn by Outerbloom Chinese New Year", category: "Collection", url: "/collections/autumn-by-outerbloom-chinese-new-year", images: " ", price: " " },{ label: "Autumn by Outerbloom Christmas", category: "Collection", url: "/collections/autumn-by-outerbloom-christmas", images: " ", price: " " },{ label: "Autumn by Outerbloom Luar Jadetabek", category: "Collection", url: "/collections/autumn-by-outerbloom-luar-jadetabek", images: " ", price: " " },{ label: "Autumn by Outerbloom Ramadan", category: "Collection", url: "/collections/autumn-by-outerbloom-ramadan", images: " ", price: " " },{ label: "Autumn Pop", category: "Collection", url: "/collections/autumn-pop", images: " ", price: " " },{ label: "Bachelorette", category: "Collection", url: "/collections/bachelorette", images: " ", price: " " },{ label: "Bag Newborn Hampers", category: "Collection", url: "/collections/bag-newborn-hampers", images: " ", price: " " },{ label: "Balon", category: "Collection", url: "/collections/balon", images: " ", price: " " },{ label: "Beauty Package", category: "Collection", url: "/collections/beauty-package", images: " ", price: " " },{ label: "Best Deal", category: "Collection", url: "/collections/best-deal", images: " ", price: " " },{ label: "Best Seller", category: "Collection", url: "/collections/best-seller", images: " ", price: " " },{ label: "Best Valentine's Deals", category: "Collection", url: "/collections/bes-valentines-deals", images: " ", price: " " },{ label: "Best Value Newborn Hampers Collection", category: "Collection", url: "/collections/best-value-newborn-hampers-collection", images: " ", price: " " },{ label: "Black Tea", category: "Collection", url: "/collections/black-tea", images: " ", price: " " },{ label: "Blessing Hampers", category: "Collection", url: "/collections/blessing-hampers", images: " ", price: " " },{ label: "Bloom Box", category: "Collection", url: "/collections/bloom-box", images: " ", price: " " },{ label: "Bloomcard", category: "Collection", url: "/collections/bloomcard", images: " ", price: " " },{ label: "Boutonniere", category: "Collection", url: "/collections/boutonniere", images: " ", price: " " },{ label: "Bracelet", category: "Collection", url: "/collections/gelang", images: " ", price: " " },{ label: "Buket Bunga Bali", category: "Collection", url: "/collections/buket-bunga-bali", images: " ", price: " " },{ label: "Buket Bunga Bandung", category: "Collection", url: "/collections/buket-bunga-bandung", images: " ", price: " " },{ label: "Buket Bunga Batam", category: "Collection", url: "/collections/buket-bunga-batam", images: " ", price: " " },{ label: "Buket Bunga Demak", category: "Collection", url: "/collections/buket-bunga-demak", images: " ", price: " " },{ label: "Buket Bunga Fresh", category: "Collection", url: "/collections/buket-bunga", images: " ", price: " " },{ label: "Buket Bunga Jepara", category: "Collection", url: "/collections/buket-bunga-jepara", images: " ", price: " " },{ label: "Buket Bunga Medan", category: "Collection", url: "/collections/buket-bunga-medan", images: " ", price: " " },{ label: "Buket Bunga Nusantara", category: "Collection", url: "/collections/buket-bunga-nusantara", images: " ", price: " " },{ label: "Buket Bunga Semarang", category: "Collection", url: "/collections/buket-bunga-semarang", images: " ", price: " " },{ label: "Buket Bunga Sidoarjo", category: "Collection", url: "/collections/buket-bunga-sidoarjo", images: " ", price: " " },{ label: "Buket Bunga Surabaya", category: "Collection", url: "/collections/buket-bunga-surabaya", images: " ", price: " " },{ label: "Buket Bunga Tangerang", category: "Collection", url: "/collections/buket-bunga-tangerang", images: " ", price: " " },{ label: "Buket Bunga Uang", category: "Collection", url: "/collections/buket-bunga-uang", images: " ", price: " " },{ label: "Buket Bunga Valentine", category: "Collection", url: "/collections/buket-bunga-valentine", images: " ", price: " " },{ label: "Buket Bunga Yogyakarta", category: "Collection", url: "/collections/buket-bunga-jogja", images: " ", price: " " },{ label: "Bunga Anggrek Bali", category: "Collection", url: "/collections/bunga-anggrek-bali", images: " ", price: " " },{ label: "Bunga Anggrek Bandung", category: "Collection", url: "/collections/bunga-anggrek-bandung", images: " ", price: " " },{ label: "Bunga Anggrek Surabaya", category: "Collection", url: "/collections/bunga-anggrek-surabaya", images: " ", price: " " },{ label: "Bunga Anniversary", category: "Collection", url: "/collections/bunga-anniversary", images: " ", price: " " },{ label: "Bunga Artificial", category: "Collection", url: "/collections/bunga-artificial", images: " ", price: " " },{ label: "Bunga Buket", category: "Collection", url: "/collections/bunga-buket", images: " ", price: " " },{ label: "Bunga Carnations Bali", category: "Collection", url: "/collections/bunga-carnations-bali", images: " ", price: " " },{ label: "Bunga Carnations Bandung", category: "Collection", url: "/collections/bunga-carnations-bandung", images: " ", price: " " },{ label: "Bunga Carnations Surabaya", category: "Collection", url: "/collections/bunga-carnations-surabaya", images: " ", price: " " },{ label: "Bunga Daisy Bali", category: "Collection", url: "/collections/bunga-daisy-bali", images: " ", price: " " },{ label: "Bunga Daisy Bandung", category: "Collection", url: "/collections/bunga-daisy-bandung", images: " ", price: " " },{ label: "Bunga Daisy Surabaya", category: "Collection", url: "/collections/bunga-daisy-surabaya", images: " ", price: " " },{ label: "Bunga Gerbera Bali", category: "Collection", url: "/collections/bunga-gerbera-bali", images: " ", price: " " },{ label: "Bunga Gerbera Bandung", category: "Collection", url: "/collections/bunga-gerbera-bandung", images: " ", price: " " },{ label: "Bunga Gerbera Surabaya", category: "Collection", url: "/collections/bunga-gerbera-surabaya", images: " ", price: " " },{ label: "Bunga Imlek", category: "Collection", url: "/collections/rangkaian-bunga-tahun-baru-imlek", images: " ", price: " " },{ label: "Bunga Lebaran", category: "Collection", url: "/collections/rangkaian-bunga-lebaran", images: " ", price: " " },{ label: "Bunga Lily Bali", category: "Collection", url: "/collections/bunga-lily-bali", images: " ", price: " " },{ label: "Bunga Lily Bandung", category: "Collection", url: "/collections/bunga-lily-bandung", images: " ", price: " " },{ label: "Bunga Lily Surabaya", category: "Collection", url: "/collections/bunga-lily-surabaya", images: " ", price: " " },{ label: "Bunga Matahari Bali", category: "Collection", url: "/collections/bunga-matahari-bali", images: " ", price: " " },{ label: "Bunga Matahari Bandung", category: "Collection", url: "/collections/bunga-matahari-bandung", images: " ", price: " " },{ label: "Bunga Matahari Surabaya", category: "Collection", url: "/collections/bunga-matahari-surabaya", images: " ", price: " " },{ label: "Bunga Mawar Bali", category: "Collection", url: "/collections/bunga-mawar-bali", images: " ", price: " " },{ label: "Bunga Mawar Bandung", category: "Collection", url: "/collections/bunga-mawar-bandung", images: " ", price: " " },{ label: "Bunga Mawar Surabaya", category: "Collection", url: "/collections/bunga-mawar-surabaya", images: " ", price: " " },{ label: "Bunga Meja", category: "Collection", url: "/collections/bunga-meja", images: " ", price: " " },{ label: "Bunga Meja Bali", category: "Collection", url: "/collections/bunga-meja-bali", images: " ", price: " " },{ label: "Bunga Meja Bandung", category: "Collection", url: "/collections/bunga-meja-bandung", images: " ", price: " " },{ label: "Bunga Meja Batam", category: "Collection", url: "/collections/bunga-meja-batam", images: " ", price: " " },{ label: "Bunga Meja Jepara", category: "Collection", url: "/collections/bunga-meja-jepara", images: " ", price: " " },{ label: "Bunga Meja Medan", category: "Collection", url: "/collections/bunga-meja-medan", images: " ", price: " " },{ label: "Bunga Meja Semarang", category: "Collection", url: "/collections/bunga-meja-semarang", images: " ", price: " " },{ label: "Bunga Meja Sidoarjo", category: "Collection", url: "/collections/bunga-meja-sidoarjo", images: " ", price: " " },{ label: "Bunga Meja Surabaya", category: "Collection", url: "/collections/bunga-meja-surabaya", images: " ", price: " " },{ label: "Bunga Meja Tangerang", category: "Collection", url: "/collections/bunga-meja-tangerang", images: " ", price: " " },{ label: "Bunga Meja Yogyakarta", category: "Collection", url: "/collections/bunga-meja-jogja", images: " ", price: " " },{ label: "Bunga Modern Pastel Bali", category: "Collection", url: "/collections/bunga-modern-pastel-bali", images: " ", price: " " },{ label: "Bunga Modern Pastel Bandung", category: "Collection", url: "/collections/bunga-modern-pastel-bandung", images: " ", price: " " },{ label: "Bunga Modern Pastel Medan", category: "Collection", url: "/collections/bunga-modern-pastel-medan", images: " ", price: " " },{ label: "Bunga Modern Pastel Semarang", category: "Collection", url: "/collections/bunga-modern-pastel-semarang", images: " ", price: " " },{ label: "Bunga Modern Pastel Surabaya", category: "Collection", url: "/collections/bunga-modern-pastel-surabaya", images: " ", price: " " },{ label: "Bunga Modern Pastel Yogyakarta", category: "Collection", url: "/collections/bunga-modern-pastel-yogyakarta", images: " ", price: " " },{ label: "Bunga Natal", category: "Collection", url: "/collections/rangkaian-bunga-christmas", images: " ", price: " " },{ label: "Bunga Papan", category: "Collection", url: "/collections/bunga-papan", images: " ", price: " " },{ label: "Bunga Pernikahan", category: "Collection", url: "/collections/bunga-pernikahan", images: " ", price: " " },{ label: "Bunga Plastik", category: "Collection", url: "/collections/bunga-plastik", images: " ", price: " " },{ label: "Bunga Tulip", category: "Collection", url: "/collections/bunga-tulip", images: " ", price: " " },{ label: "Bunga Ulang Tahun", category: "Collection", url: "/collections/bunga-ulang-tahun", images: " ", price: " " },{ label: "Bunga Wisuda", category: "Collection", url: "/collections/karangan-bunga-wisuda", images: " ", price: " " },{ label: "Cake", category: "Collection", url: "/collections/kue", images: " ", price: " " },{ label: "Cake", category: "Collection", url: "/collections/cake", images: " ", price: " " },{ label: "Cake Sameday Delivery", category: "Collection", url: "/collections/cake-sameday-delivery", images: " ", price: " " },{ label: "Cake, Hampers & Gifts", category: "Collection", url: "/collections/cake-hampers", images: " ", price: " " },{ label: "Cancer ?? 22June - 22July", category: "Collection", url: "/collections/kado-untuk-zodiak-cancer", images: " ", price: " " },{ label: "Capricorn ?? 21Dec - 19Jan", category: "Collection", url: "/collections/kado-untuk-zodiak-capricorn", images: " ", price: " " },{ label: "Care Packages", category: "Collection", url: "/collections/toko-parcel-murah", images: " ", price: " " },{ label: "Care Packages (Keluarga, Sahabat, Karyawan)", category: "Collection", url: "/collections/sehat-bebas-corona", images: " ", price: " " },{ label: "Carnations", category: "Collection", url: "/collections/bunga-anyelir", images: " ", price: " " },{ label: "Celebration", category: "Collection", url: "/collections/celebration", images: " ", price: " " },{ label: "Chl�a Paperie", category: "Collection", url: "/collections/chlea-paperie", images: " ", price: " " },{ label: "Chocodot", category: "Collection", url: "/collections/chocodot", images: " ", price: " " },{ label: "Christmas", category: "Collection", url: "/collections/christmas", images: " ", price: " " },{ label: "Classic Cake", category: "Collection", url: "/collections/classic-cake", images: " ", price: " " },{ label: "Classic CNY Hampers", category: "Collection", url: "/collections/classic-cny-hampers", images: " ", price: " " },{ label: "Classic CNY Hampers Luar Jabodetabek", category: "Collection", url: "/collections/classic-cny-hampers-luar-jabodetabek", images: " ", price: " " },{ label: "Classic Hampers", category: "Collection", url: "/collections/classic-hampers", images: " ", price: " " },{ label: "Classic Hampers Luar Jadetabek", category: "Collection", url: "/collections/classic-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Classic Style Flowers", category: "Collection", url: "/collections/classic-style-flowers", images: " ", price: " " },{ label: "Cokelat", category: "Collection", url: "/collections/permen-coklat", images: " ", price: " " },{ label: "Collection List", category: "Collection", url: "/collections/collection-list", images: " ", price: " " },{ label: "Condolences", category: "Collection", url: "/collections/axa-condolences", images: " ", price: " " },{ label: "Congratulations", category: "Collection", url: "/collections/rangkaian-bunga-ucapan-selamat", images: " ", price: " " },{ label: "Corporate Gifts", category: "Collection", url: "/collections/corporate-gifts", images: " ", price: " " },{ label: "Corporate Hampers", category: "Collection", url: "/collections/corporate-hampers", images: " ", price: " " },{ label: "Couple Gift", category: "Collection", url: "/collections/couple-gift", images: " ", price: " " },{ label: "Craft Sweetbox Newborn
7562", 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: " " }
7562,{ 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: " " }
7562,{ 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: " " }
7562,{ 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
7562dal", 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-
7562hampers", 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
7562o-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: " " }
7562,{ 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: " " }
7562,{ 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: " " }
7562,{ 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: " " }
7562,{ 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: " " }
7562,{ 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: " " }
7562,{ 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: " " }
7562,{ 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: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan!", category: "Collection", url: "/collections/standing-flower", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! Bali", category: "Collection", url: "/collections/standing-flower-bali", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! Bandung", category: "Collection", url: "/collections/standing-flower-bandung", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! Congratulations", category: "Collection", url: "/collections/standing-flower-congratulations", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! Demak", category: "Collection", url: "/collections/standing-flower-demak", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! Jepara", category: "Collection", url: "/collections/standing-flower-jepara", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! Semarang", category: "Collection", url: "/collections/standing-flower-semarang", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! Sidoarjo", category: "Collection", url: "/collections/standing-flower-sidoarjo", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! Surabaya", category: "Collection", url: "/collections/standing-flower-surabaya", images: " ", price: " " },{ label: "Lelah dengan navigasi yang lambat dan rumit? Pubtogel hadir sebagai solusi cerdas untuk pengguna online aktif. Rasakan kecepatan, keamanan, dan kemudahan akses ke dunia digital Anda. Jelajahi lebih jauh, tanpa hambatan! 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",
7562 url: "/collections/the-palace", images: " ", price: " " },{ label: "Ties", category: "Collection", url: "/collections/dasi", images: " ", price: " " },{ label: "Tisane", category: "Collection", url: "/collections/tisane", images: " ", price: " " },{ label: "Toko Bunga Aceh", category: "Collection", url: "/collections/toko-bunga-aceh", images: " ", price: " " },{ label: "Toko Bunga Ambon", category: "Collection", url: "/collections/toko-bunga-ambon", images: " ", price: " " },{ label: "Toko Bunga Atambua", category: "Collection", url: "/collections/toko-bunga-atambua", images: " ", price: " " },{ label: "Toko Bunga Bali", category: "Collection", url: "/collections/toko-bunga-bali", images: " ", price: " " },{ label: "Toko Bunga Balikpapan", category: "Collection", url: "/collections/toko-bunga-balikpapan", images: " ", price: " " },{ label: "Toko Bunga Bandar Lampung", category: "Collection", url: "/collections/toko-bunga-bandar-lampung", images: " ", price: " " },{ label: "Toko Bunga Bandung", category: "Collection", url: "/collections/toko-bunga-bandung", images: " ", price: " " },{ label: "Toko Bunga Bandung Barat", category: "Collection", url: "/collections/toko-bunga-bandung-barat", images: " ", price: " " },{ label: "Toko Bunga Banjarmasin", category: "Collection", url: "/collections/toko-bunga-banjarmasin", images: " ", price: " " },{ label: "Toko Bunga Banten", category: "Collection", url: "/collections/toko-bunga-banten", images: " ", price: " " },{ label: "Toko Bunga Banyumas", category: "Collection", url: "/collections/toko-bunga-banyumas", images: " ", price: " " },{ label: "Toko Bunga Banyuwangi", category: "Collection", url: "/collections/toko-bunga-banyuwangi", images: " ", price: " " },{ label: "Toko Bunga Batam", category: "Collection", url: "/collections/toko-bunga-batam", images: " ", price: " " },{ label: "Toko Bunga Baubau", category: "Collection", url: "/collections/toko-bunga-baubau", images: " ", price: " " },{ label: "Toko Bunga Bekasi", category: "Collection", url: "/collections/toko-bunga-bekasi", images: " ", price: " " },{ label: "Toko Bunga Bengkalis", category: "Collection", url: "/collections/toko-bunga-bengkalis", images: " ", price: " " },{ label: "Toko Bunga Bengkayang", category: "Collection", url: "/collections/toko-bunga-bengkayang", images: " ", price: " " },{ label: "Toko Bunga Binjai", category: "Collection", url: "/collections/toko-bunga-binjai", images: " ", price: " " },{ label: "Toko Bunga Bintaro", category: "Collection", url: "/collections/toko-bunga-bintaro", images: " ", price: " " },{ label: "Toko Bunga Blitar", category: "Collection", url: "/collections/toko-bunga-blitar", images: " ", price: " " },{ label: "Toko Bunga Blora", category: "Collection", url: "/collections/toko-bunga-blora", images: " ", price: " " },{ label: "Toko Bunga Bogor", category: "Collection", url: "/collections/toko-bunga-bogor", images: " ", price: " " },{ label: "Toko Bunga Bojonegoro", category: "Collection", url: "/collections/toko-bunga-bojonegoro", images: " ", price: " " },{ label: "Toko Bunga Boyolali", category: "Collection", url: "/collections/toko-bunga-boyolali", images: " ", price: " " },{ label: "Toko Bunga Brebes", category: "Collection", url: "/collections/toko-bunga-brebes", images: " ", price: " " },{ label: "Toko Bunga Bukittinggi", category: "Collection", url: "/collections/toko-bunga-bukittinggi", images: " ", price: " " },{ label: "Toko Bunga Buleleng", category: "Collection", url: "/collections/toko-bunga-buleleng", images: " ", price: " " },{ label: "Toko Bunga Cakung", category: "Collection", url: "/collections/toko-bunga-cakung", images: " ", price: " " },{ label: "Toko Bunga Cawang", category: "Collection", url: "/collections/toko-bunga-cawang", images: " ", price: " " },{ label: "Toko Bunga Cempaka Putih", category: "Collection", url: "/collections/toko-bunga-cempaka-putih", images: " ", price: " " },{ label: "Toko Bunga Cengkareng", category: "Collection", url: "/collections/toko-bunga-cengkareng", images: " ", price: " " },{ label: "Toko Bunga Ciamis", category: "Collection", url: "/collections/toko-bunga-ciamis", images: " ", price: " " }
7562,{ label: "Toko Bunga Cianjur", category: "Collection", url: "/collections/toko-bunga-cianjur", images: " ", price: " " },{ label: "Toko Bunga Cibinong", category: "Collection", url: "/collections/toko-bunga-cibinong", images: " ", price: " " },{ label: "Toko Bunga Cibubur", category: "Collection", url: "/collections/toko-bunga-cibubur", images: " ", price: " " },{ label: "Toko Bunga Cijantung", category: "Collection", url: "/collections/toko-bunga-cijantung", images: " ", price: " " },{ label: "Toko Bunga Cikarang", category: "Collection", url: "/collections/toko-bunga-cikarang", images: " ", price: " " },{ label: "Toko Bunga Cikini", category: "Collection", url: "/collections/toko-bunga-cikini", images: " ", price: " " },{ label: "Toko Bunga Cilacap", category: "Collection", url: "/collections/toko-bunga-cilacap", images: " ", price: " " },{ label: "Toko Bunga Cilandak", category: "Collection", url: "/collections/toko-bunga-cilandak", images: " ", price: " " },{ label: "Toko Bunga Cileunyi", category: "Collection", url: "/collections/toko-bunga-cileunyi", images: " ", price: " " },{ label: "Toko Bunga Ciracas", category: "Collection", url: "/collections/toko-bunga-ciracas", images: " ", price: " " },{ label: "Toko Bunga Cirebon", category: "Collection", url: "/collections/toko-bunga-cirebon", images: " ", price: " " },{ label: "Toko Bunga Ciwidey", category: "Collection", url: "/collections/toko-bunga-ciwidey", images: " ", price: " " },{ label: "Toko Bunga Danau Toba", category: "Collection", url: "/collections/toko-bunga-danau-toba", images: " ", price: " " },{ label: "Toko Bunga Demak", category: "Collection", url: "/collections/toko-bunga-demak", images: " ", price: " " },{ label: "Toko Bunga Denpasar", category: "Collection", url: "/collections/toko-bunga-denpasar", images: " ", price: " " },{ label: "Toko Bunga Depok", category: "Collection", url: "/collections/toko-bunga-depok", images: " ", price: " " },{ label: "Toko Bunga Duren Sawit", category: "Collection", url: "/collections/toko-bunga-duren-sawit", images: " ", price: " " },{ label: "Toko Bunga Garut", category: "Collection", url: "/collections/toko-bunga-garut", images: " ", price: " " },{ label: "Toko Bunga Gianyar", category: "Collection", url: "/collections/toko-bunga-gianyar", images: " ", price: " " },{ label: "Toko Bunga Gowa", category: "Collection", url: "/collections/toko-bunga-gowa", images: " ", price: " " },{ label: "Toko Bunga Gresik", category: "Collection", url: "/collections/toko-bunga-gresik", images: " ", price: " " },{ label: "Toko Bunga Grobogan", category: "Collection", url: "/collections/toko-bunga-grobogan", images: " ", price: " " },{ label: "Toko Bunga Grogol", category: "Collection", url: "/collections/toko-bunga-grogol", images: " ", price: " " },{ label: "Toko Bunga Gunungkidul", category: "Collection", url: "/collections/toko-bunga-gunungkidul", images: " ", price: " " },{ label: "Toko Bunga Indramayu", category: "Collection", url: "/collections/toko-bunga-indramayu", images: " ", price: " " },{ label: "Toko Bunga Jakarta", category: "Collection", url: "/collections/toko-bunga-jakarta", images: " ", price: " " },{ label: "Toko Bunga Jakarta Barat", category: "Collection", url: "/collections/toko-bunga-jakarta-barat", images: " ", price: " " },{ label: "Toko Bunga Jakarta Pusat", category: "Collection", url: "/collections/toko-bunga-jakarta-pusat", images: " ", price: " " },{ label: "Toko Bunga Jakarta Selatan", category: "Collection", url: "/collections/toko-bunga-jakarta-selatan", images: " ", price: " " },{ label: "Toko Bunga Jakarta Timur", category: "Collection", url: "/collections/toko-bunga-jakarta-timur", images: " ", price: " " },{ label: "Toko Bunga Jakarta Utara", category: "Collection", url: "/collections/toko-bunga-jakarta-utara", images: " ", price: " " },{ label: "Toko Bunga Jambi", category: "Collection", url: "/collections/toko-bunga-jambi", images: " ", price: " " },{ label: "Toko Bunga Jatinegara", category: "Collection", url: "/collections/toko-bunga-jatinegara", images: " ", price: " " },{ label: "Toko Bunga Jawa & Bali", category: "Collection", url: "/collections/toko-bunga-jawa-bali", images: " ", price: " " },{ label: "Toko Bunga Jayapura", category: "Collection", url: "/collections/toko-bunga-jayapura", images: " ", price: " " },{ label: "Toko Bunga Jelambar - Florist Onine 24 Jam", category: "Collection", url: "/collections/toko-bunga-jelambar", images: " ", price: " " },{ label: "Toko Bunga Jember", category: "Collection", url: "/collections/toko-bunga-jember", images: " ", price: " " },{ label: "Toko Bunga Jembrana", category: "Collection", url: "/collections/toko-bunga-jembrana", images: " ", price: " " },{ label: "Toko Bunga Jepara", category: "Collection", url: "/collections/toko-bunga-jepara", images: " ", price: " " },{ label: "Toko Bunga Joglo", category: "Collection", url: "/collections/toko-bunga-joglo", images: " ", price: " " },{ label: "Toko Bunga Jombang", category: "Collection", url: "/collections/toko-bunga-jombang", images: " ", price: " " },{ label: "Toko Bunga Kalibata", category: "Collection", url: "/collections/toko-bunga-kalibata", images: " ", price: " " },{ label: "Toko Bunga Kalimantan", category: "Collection", url: "/collections/toko-bunga-kalimantan", images: " ", price: " " },{ label: "Toko Bunga Kalisari Semarang", category: "Collection", url: "/collections/toko-bunga-kalisari-semarang", images: " ", price: " " },{ label: "Toko Bunga Kampung Baru", category: "Collection", url: "/collections/toko-bunga-kampung-baru", images: " ", price: " " },{ label: "Toko Bunga Kapuas", category: "Collection", url: "/collections/toko-bunga-kapuas", images: " ", price: " " },{ label: "Toko Bunga Karanganyar", category: "Collection", url: "/collections/toko-bunga-karanganyar", images: " ", price: " " },{ label: "Toko Bunga Karangasem", category: "Collection", url: "/collections/toko-bunga-karangasem", images: " ", price: " " },{ label: "Toko Bunga Karawang", category: "Collection", url: "/collections/toko-bunga-karawang", images: " ", price: " " },{ label: "Toko Bunga Kartosuro", category: "Collection", url: "/collections/toko-bunga-kartosuro", images: " ", price: " " },{ label: "Toko Bunga Kayoon Surabaya", category: "Collection", url: "/collections/toko-bunga-kayoon-surabaya", images: " ", price: " " },{ label: "Toko Bunga Kebayoran Baru", category: "Collection", url: "/collections/toko-bunga-kebayoran-baru", images: " ", price: " " },{ label: "Toko Bunga Kebon Jeruk", category: "Collection", url: "/collections/toko-bunga-kebon-jeruk", images: " ", price: " " },{ label: "Toko Bunga Kebumen", category: "Collection", url: "/collections/toko-bunga-kebumen", images: " ", price: " " },{ label: "Toko Bunga Kediri", category: "Collection", url: "/collections/toko-bunga-kediri", images: " ", price: " " },{ label: "Toko Bunga Kelapa Gading", category: "Collection", url: "/collections/toko-bunga-kelapa-gading", images: " ", price: " " },{ label: "Toko Bunga Kemayoran", category: "Collection", url: "/collections/toko-bunga-kemayoran", images: " ", price: " " },{ label: "Toko Bunga Kendal", category: "Collection", url: "/collections/toko-bunga-ken
7562dal", 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: " " },
7563       { 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/OBVBUQDgwqVE-6aMBLYLbQv6i5N5y7bC5SajqSjHPzt8UJUqbZ8a-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" }
7563,{ 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/OUQDgwqVE-6aMBLYLbQv6i5N5y7bC5SajqSjHPzt8UJUqbZ8a-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/JKTWUQDgwqVE-6aMBLYLbQv6i5N5y7bC5SajqSjHPzt8UJUqbZ8a.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" }
7563,{ 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" }
7564   ];
7565 
7566              
7567         $( ".header-input-search" ).catcomplete({
7568          appendTo: ".searchResult",source: function(request, response) {
7569             var results = $.ui.autocomplete.filter(data, request.term);
7570             var predicate = function () {
7571                 var counter = { Collection: 0, Produk: 0 };
7572             var fn = function(item) {counter[item.category] += 1;return (counter[item.category] <= 5);}
7573             return fn
7574             }();
7575             response(results.filter(predicate));
7576           },
7577           minLength:1,
7578            //results are clickable
7579           select: function( event, ui ) {window.location = ui.item.url;}
7580 });
7581 $( ".header-input-search2" ).catcomplete({
7582         appendTo: ".searchResult2",
7583                    source: function(request, response) {
7584                     var results = $.ui.autocomplete.filter(data, request.term);
7585                     var predicate = function () {
7586                         var counter = { Collection: 0, Produk: 0 };
7587               var fn = function(item) {
7588               counter[item.category] += 1;
7589   return (counter[item.category] <= 5);
7590 }
7591                return fn
7592                }();
7593 response(results.filter(predicate));
7594 },
7595   minLength:1,
7596         //results are clickable
7597         select: function( event, ui ) {
7598           window.location = ui.item.url;
7599         }
7600 });
7601 });
7602 </script>
7602
7603 
7604     
7604<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer></script>
7604
7605 
7605<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer></script>
7605
7606 
7607 
7607<script>
7608   ( function() {
7609     var youtube = document.querySelectorAll( ".youtube" );
7610     for (var i = 0; i < youtube.length; i++) {
7611       var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault_1x.jpg";
7612       var datasource = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg";
7613       var image = new Image();
7614       image.src = source;
7615       image.setAttribute("data-src", datasource);
7616       image.classList.add("swiper-lazy");
7617       image.addEventListener( "load", function() {
7618         youtube[ i ].appendChild( image );
7619       }( i ) );
7620       youtube[i].addEventListener( "click", function() {
7621         var iframe = document.createElement( "iframe" );
7622         iframe.setAttribute( "width", "480" );
7623         iframe.setAttribute( "height", "480" );
7624         iframe.setAttribute( "frameborder", "0" );
7625         iframe.setAttribute( "allowfullscreen", "" );
7626         iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" );
7627         this.innerHTML = "";
7628         this.appendChild( iframe );
7629       } );
7630     };
7631 
7632   } )();
7633 
7634   /* Lazy Load */
7635   const mainLazyLoad = new LazyLoad({threshold:400});
7636   $(document).ready(function(){
7637 
7638     $("selectxxx").addClass("needsclick");
7639     FastClick.attach(document.body);
7640     
7641     var $customSelects = $('.select-search');
7642     $customSelects.select2({
7643       templateResult: function(result, container) {
7644         if (!result.id) {
7645           return result.text;
7646         }
7647         container.className += ' needsclick';
7648         return result.text;
7649       }
7650     });
7651     $customSelects.each(function(index, el){$(el).data('select2').$container.find('*').addClass('needsclick');});
7652     $(document).on('select2:open', () => {
7653       document.querySelector('.select2-search__field').focus();
7654     });
7655     
7656 
7657     $(".overlay").click(function(){
7658       $(".js-drawer-close").click();
7659     });
7660     $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function(){
7661       $("html").toggleClass("nav_open");
7662     });
7663     
7664     $('.swatch-element label').on('click', function(){
7665       var srcImg = $(this).data('src');
7666       $('#thumb-image-product .product-single__thumbnail').each(function(){
7667         if ($(this).attr("href") == srcImg) {
7668           $(this).trigger('click');
7669         }
7670       });
7671     });
7672     var defaultValue = $(".swatch input:checked").val()
7673     
7674     $('#purchaseProduct .swatch [type=radio]').change(function() {
7675       var optionIndex = $(this).closest('.swatch').attr('data-option-index');
7676       var optionValue = $(this).val();
7677       console.log(optionIndex, optionValue)
7678       var value = parseInt(optionValue.split(' ')[0])
7679       $(this)
7680       .closest('#purchaseProduct')
7681       .find('.single-option-selector')
7682       .eq(optionIndex)
7683       .val(optionValue)
7684       .trigger('change');
7685       
7686     });
7687     
7688   });
7689   $(document).ready(function(){
7690     $(".nav-search a").click(function(e){
7691       e.preventDefault();
7692       $(".icon-navsearch").toggle();
7693       $(".icon-navclose").toggle();
7694       $(".site-nav__item > .site-nav__link").toggle();
7695       $(".open-search").toggle();
7696       $(".open-search input").focus();
7697     });
7698     $(".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'>");
7699     if ($(window).width() < 768) {
7700       $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>");
7701       $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>");
7702       $(".bg-products .label-tag.free-valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-valentine_150x.png?v=1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX' alt='Icon Free Valentine'>");
7703     } else {
7704       $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>");
7705       $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>");
7706       $(".bg-products .label-tag.free-valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-valentine_200x.png?v=1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX' alt='Icon Free Valentine'>");
7707     }
7708     $(".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'>");
7709     $(".bg-products .label-tag.mothersday").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/mothers-day_70x.png?v=1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX' alt='Icon Mothers day'>");
7710   });
7711 </script>
7711
7712 
7713 
7714     
7715     
7716     
7717     
7718 
7719     
7719<script type="text/javascript">
7720       var wishlistpage = 0;
7721        
7722        var quickShop_money_format="<span class='money'>"+"Rp {{amount_no_decimals}}"+"</span>";
7723     </script>
7723
7724     
7725       <!-- Remove duplicate wishlist.js reference -->
7726       <style>
7727   .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)}}
7728 </style>
7729 
7730 <div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog">
7731   <div class="modal-dialog" role="document">
7732     <div class="modal-content">        
7733       <div class="modal-body">Your Wishlist is empty!</div>
7734       <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>          
7735     </div>
7736   </div>
7737 </div> 
7738 
7739 <div class="wishlist-model">
7740   <div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true">
7741     <div class="modal-dialog white-modal">
7742       <div class="modal-content">
7743         <div class="modal-header">
7744           <button type="button" class="close" data-dismiss="modal" aria-label="Close">
7745             <svg class="icon icon-close" version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.png" width="32" height="32" viewBox="0 0 32 32">
7746 <title>icon-close</title>
7747 <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>
7748 </svg>
7749           </button>
7750         </div>
7751         <div class="modal-body">
7752           <div class="wishlist-left">
7753             <div class="wishlist-note">
7754               <span class="cirle"><svg version="1.1" xmlns="https://kucingair.com/fotobaka/logopub.png" width="32" height="32" viewBox="0 0 32 32">
7755 <title>icon-check</title>
7756 <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>
7757 </svg></span>
7758               Product added to <a href="/pages/wish-list">Wishlist</a>
7759             </div>
7760             <div class="wishlist-product">
7761               <div class="product-left">
7762                 <div class="wishlist-image"></div>
7763               </div>
7764               <div class="product-right">
7765                 <div class="wishlist-name"></div>
7766                 <div class="wishlist-price"></div>
7767               </div>
7768             </div>
7769           </div>
7770           <div class="wishlist-right">
7771             <div class="wishlist-cart">
7772               <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data">                  
7773                 <div class="others-bottom">
7774                   <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a>
7775                   <button type="submit" name="add" id="AddToCart" class="btn btn-cta">
7776                     <span id="AddToCartText" class="">Beli Sekarang</span>
7777                   </button>
7778                 </div>
7779                 <div id="wishlist-variants-container" class="variants-wrapper"></div> 
7780                 <div class="quantity-content">
7781                   <label>QTY</label>
7782                   <input type="number" size="5" class="" name="quantity" value="1" />
7783                 </div>
7784               </form> 
7785             </div>
7786           </div>
7787         </div>
7788       </div>
7789     </div>
7790   </div>
7791 </div>
7792 
7793     
7794     <style>
7795        .stamped-badge[data-rating="0.0"]{display: none !Important;}
7796        
7797         div[data-load-type="continue"] ul.stamped-pagination li.next a, div[data-widget-load-type="continue"] ul.stamped-pagination li.next a {
7798           border-radius: 0px;
7799       }
7800           .stamped-review-body {
7801           padding-left: 0px !important;
7802       }
7803           #product-reviews .stamped-header:after {
7804             display:none !Important;
7805           }
7806       #stamped-main-widget .stamped-container, .stamped-badge-caption,#stamped-reviews-widget {
7807           font-family:inherit !important;
7808       }
7809     </style>
7810 
7811     
7812 
7813 <div id='stamped-rewards-init' class='stamped-rewards-init'
7814   data-key-public=''
7815 
7816 ></div>
7817 
7818     
7818<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer></script>
7818
7819     <!-- Remove duplicate jQuery reference and load wishlist script properly -->
7820     
7820<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer></script>
7820
7821 
7822     
7822<script>
7823       function myInit(){ StampedFn.init({ apiKey: 'pubkey-hCS8DHE9QbBHhHN89WXFkuJ0Y3422D', sId: '23462' }); }
7824     </script>
7824
7825     
7825<script async onload="myInit()" type="text/javascript" src="https://cdn1.stamped.io/files/widget.min.js"></script>
7825<style>
7826   .jss59 {
7827     background-color: rgba(0, 0, 0, 0.6);
7828   }
7829   .MuiBackdrop-root {
7830     top: 0;
7831     left: 0;
7832     right: 0;
7833     bottom: 0;
7834     display: flex;
7835     z-index: -1;
7836     position: fixed;
7837     align-items: center;
7838     justify-content: center;
7839     background-color: rgba(0, 0, 0, 0.5);
7840     -webkit-tap-highlight-color: transparent;
7841   }
7842   .MuiDialog-scrollPaper {
7843     display: flex;
7844     align-items: center;
7845     justify-content: center;
7846   }
7847   .MuiDialog-container {
7848     height: 100%;
7849     outline: 0;
7850   }
7851   .MuiPaper-elevation24 {
7852     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);
7853   }
7854   .MuiDialog-paper {
7855     margin: 32px;
7856     position: relative;
7857     overflow-y: auto;
7858   }
7859   .MuiDialog-paperScrollPaper {
7860     display: flex;
7861     max-height: calc(100% - 64px);
7862     flex-direction: column;
7863   }
7864   .MuiDialog-paperWidthSm {
7865     max-width: 600px;
7866   }
7867   #location-lock-dialog {
7868     top: 20%;
7869     left: 0;
7870     right: 0;
7871     width: 30%;
7872     margin: 0px auto;
7873     display: block;
7874     padding: 30px;
7875     z-index: 99999;
7876     position: fixed;
7877     font-size: 14px;
7878     background: rgb(0, 0, 0);
7879     box-shadow: rgba(11, 11, 12, 0.2) 2px 4px 5px 0px;
7880     text-align: center;
7881     font-family: Roboto, Arial, sans-serif;
7882     line-height: 1;
7883     border-radius: 8px;
7884     -webkit-font-smoothing: subpixel-antialiased;
7885   }
7886   .MuiButtonBase-root {
7887     color: inherit;
7888     border: 0;
7889     cursor: pointer;
7890     margin: 0;
7891     display: inline-flex;
7892     outline: 0;
7893     padding: 0;
7894     position: relative;
7895     align-items: center;
7896     user-select: none;
7897     border-radius: 0;
7898     vertical-align: middle;
7899     -moz-appearance: none;
7900     justify-content: center;
7901     text-decoration: none;
7902     background-color: transparent;
7903     -webkit-appearance: none;
7904     -webkit-tap-highlight-color: transparent;
7905   }
7906   .MuiIconButton-root {
7907     flex: 0 0 auto;
7908     color: rgba(0, 0, 0, 0.54);
7909     padding: 12px;
7910     overflow: visible;
7911     font-size: 1.5rem;
7912     text-align: center;
7913     transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
7914     border-radius: 50%;
7915   }
7916   .MuiIconButton-label {
7917     width: 100%;
7918     display: flex;
7919     align-items: inherit;
7920     justify-content: inherit;
7921   }
7922   .MuiSvgIcon-root {
7923     fill: currentColor;
7924     width: 1em;
7925     height: 1em;
7926     display: inline-block;
7927     font-size: 1.5rem;
7928     transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
7929     flex-shrink: 0;
7930     user-select: none;
7931   }
7932   .MuiTouchRipple-root {
7933     top: 0;
7934     left: 0;
7935     right: 0;
7936     bottom: 0;
7937     z-index: 0;
7938     overflow: hidden;
7939     position: absolute;
7940     border-radius: inherit;
7941     pointer-events: none;
7942   }
7943   .jss36 {
7944     color: #222222;
7945     font-size: 24px;
7946     font-family: Roboto, Arial, sans-serif;
7947     font-weight: 500;
7948   }
7949   .jss37 {
7950     color: #555555;
7951     padding: 10px 0px 0px;
7952     font-size: 14px;
7953   }
7954   .MuiFormGroup-root {
7955     display: flex;
7956     flex-wrap: wrap;
7957     flex-direction: column;
7958   }
7959   .MuiFormGroup-row {
7960     flex-direction: row;
7961   }
7962   .jss63 {
7963     width: 85%;
7964     margin: 15px auto;
7965     display: flex;
7966     padding: 11px 0px 0px;
7967     justify-content: space-evenly;
7968   }
7969   .MuiFormControlLabel-root {
7970     cursor: pointer;
7971     display: inline-flex;
7972     align-items: center;
7973     margin-left: -11px;
7974     margin-right: 16px;
7975     vertical-align: middle;
7976     -webkit-tap-highlight-color: transparent;
7977   }
7978   .jss70 {
7979     margin: 0;
7980   }
7981   .MuiButtonBase-root {
7982     color: inherit;
7983     border: 0;
7984     cursor: pointer;
7985     margin: 0;
7986     display: inline-flex;
7987     outline: 0;
7988     padding: 0;
7989     position: relative;
7990     align-items: center;
7991     user-select: none;
7992     border-radius: 0;
7993     vertical-align: middle;
7994     -moz-appearance: none;
7995     justify-content: center;
7996     text-decoration: none;
7997     background-color: transparent;
7998     -webkit-appearance: none;
7999     -webkit-tap-highlight-color: transparent;
8000   }
8001   .MuiIconButton-root {
8002     flex: 0 0 auto;
8003     color: rgba(0, 0, 0, 0.54);
8004     padding: 12px;
8005     overflow: visible;
8006     font-size: 1.5rem;
8007     text-align: center;
8008     transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
8009     border-radius: 50%;
8010   }
8011   .MuiIconButton-colorSecondary {
8012     color: #f50057;
8013   }
8014   .jss71 {
8015     padding: 9px;
8016   }
8017   .MuiRadio-root {
8018     color: rgba(0, 0, 0, 0.54);
8019   }
8020   .jss64 {
8021     padding: 2px;
8022   }
8023   .MuiRadio-colorSecondary.Mui-checked {
8024     color: #f50057;
8025   }
8026   .MuiIconButton-label {
8027     width: 100%;
8028     display: flex;
8029     align-items: inherit;
8030     justify-content: inherit;
8031   }
8032   .MuiTypography-root {
8033     margin: 0;
8034   }
8035   .MuiTypography-body1 {
8036     font-size: 18px;
8037     font-family: Roboto,sans-serif;
8038     font-weight: 400;
8039     line-height: 1.5;
8040   }
8041   .location-popup_area-block__sp9Ws {
8042     display: -moz-box;
8043     display: flex;
8044     -moz-box-orient: vertical;
8045     -moz-box-direction: normal;
8046     flex-direction: column;
8047     -moz-box-pack: center;
8048     justify-content: center;
8049     position: relative;
8050     margin: 10px 10% 0;
8051   }
8052   .location-popup_pin-search-box__3l5mJ {
8053     width: 100%;
8054     display: -moz-box;
8055     display: flex;
8056     -moz-box-align: center;
8057     align-items: center;
8058   }
8059   .location-popup_place-icon-city__1XAX5, .location-popup_place-icon__jSG0Q {
8060     position: absolute;
8061     z-index: 999;
8062   }
8063   .location-popup_place-icon__jSG0Q {
8064     color: #ffffff;
8065     padding-left: 8px;
8066   }
8067   .location-popup_place-icon__jSG0Q svg {
8068     width: 18px;
8069     height: 18px;
8070   }
8071   .location-popup_cancel-icon__FHujU {
8072     color: #fff;
8073     right: 10px;
8074     width: 16px;
8075     cursor: pointer;
8076     height: 16px;
8077     display: none;
8078     padding: 5px;
8079     position: absolute;
8080     background: #999;
8081     text-align: center;
8082     border-radius: 50%;
8083   }
8084   .location-popup_pin-search-box__3l5mJ>div>select {
8085 /*     -webkit-box-shadow: 0 0 10px #ffffff;
8086     box-shadow: 0 0 10px #ffffff; */
8087     text-transform: capitalize;
8088     border: 1px solid #ffffff;
8089     color: #ffffff;
8090     width: 100%;
8091     margin: 0;
8092     display: -moz-box;
8093     display: flex;
8094     padding: 0 30px;
8095     -webkit-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8096     -moz-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8097     animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite;
8098     font-size: 16px;
8099     border-radius: 4px;
8100     height: 44px;
8101     moz-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;
8102     webkit-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite;
8103   }
8104   .MuiButtonBase-root {
8105     color: inherit;
8106     border: 0;
8107     cursor: pointer;
8108     margin: 0;
8109     display: inline-flex;
8110     outline: 0;
8111     padding: 0;
8112     position: relative;
8113     align-items: center;
8114     user-select: none;
8115     border-radius: 0;
8116     vertical-align: middle;
8117     -moz-appearance: none;
8118     justify-content: center;
8119     text-decoration: none;
8120     background-color: transparent;
8121     -webkit-appearance: none;
8122     -webkit-tap-highlight-color: transparent;
8123   }
8124   .MuiButton-root {
8125     color: rgba(0, 0, 0, 0.87);
8126     padding: 6px 16px;
8127     font-size: 0.875rem;
8128     min-width: 64px;
8129     box-sizing: border-box;
8130     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;
8131     font-family: Roboto,sans-serif;
8132     font-weight: 500;
8133     line-height: 1.75;
8134     border-radius: 4px;
8135     text-transform: uppercase;
8136   }
8137   .MuiButton-contained {
8138     color: rgba(0, 0, 0, 0.87);
8139     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);
8140     background-color: #e0e0e0;
8141   }
8142   .MuiButtonBase-root.Mui-disabled {
8143     cursor: default;
8144     pointer-events: none;
8145   }
8146   .MuiButton-label {
8147     width: 100%;
8148     display: inherit;
8149     align-items: inherit;
8150     justify-content: inherit;
8151   }
8152   .cartButton_login_content__2j1f7 {
8153     display: -moz-box;
8154     display: flex;
8155     text-align: center;
8156     z-index: 9;
8157     font-size: 18px;
8158     font-weight: 500;
8159     color: #fff;
8160   }
8161   
8162   .jss35 {
8163     top: 5px;
8164     right: 5px;
8165     padding: 4px;
8166     position: absolute;
8167     border-radius: 50%;
8168   }
8169   .jss67 {
8170     cursor: pointer;
8171     font-size: 15px;
8172     line-height: 1.3;
8173     padding-left: 5px;
8174   }
8175   .jss69 {
8176     color: #222222;
8177   }
8178   .jss80 {
8179     color: #fff;
8180     width: 100%;
8181     height: 52px;
8182     padding: 11px 16px;
8183     font-size: 18px;
8184     min-width: 88px;
8185     min-height: 36px;
8186     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;
8187     font-weight: 500;
8188     line-weight: 1em;
8189     border-radius: 4px;
8190     text-transform: uppercase;
8191     background-color: #E87325;
8192   }
8193   @media (min-width: 991px){
8194     .cartButton_login_content__2j1f7 {
8195         font-weight: 500;
8196     }
8197   }
8198 
8199   @media (max-width: 992px) {
8200     #location-lock-dialog {
8201       width: 100%;
8202       top: auto;
8203       bottom: 0;
8204       padding-left: 0;
8205       padding-right: 0;
8206     }
8207     .MuiFormGroup-row {
8208       display: block
8209     }
8210     .MuiIconButton-label input {
8211       margin: 0;
8212     }
8213   }
8214 </style>
8215 <div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;">
8216   <div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div>
8217   <div tabindex="0" data-test="sentinelStart"></div>
8218   <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;">
8219     <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog">
8220       <div class="jss31 undefined" id="location-lock-dialog">
8221         <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close">
8222           <span class="MuiIconButton-label">
8223             <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true">
8224               <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>
8225             </svg>
8226           </span>
8227           <span class="MuiTouchRipple-root"></span>
8228         </button>
8229         <div>
8230           <div class="jss36">Select Delivery Location</div>
8231           <div class="jss37">Select a delivery location to see product availability</div>
8232         </div>
8233         <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup">
8234           <label for="jabodetabek" class="MuiFormControlLabel-root jss45">
8235             <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false">
8236               <span class="MuiIconButton-label">
8237                 <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location">
8238                 <span class="jss41"></span>
8239               </span>
8240               <span class="MuiTouchRipple-root"></span>
8241             </span>
8242             <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1">
8243               <span class="jss67 jss69">Jabodetabek</span>
8244             </span>
8245           </label>
8246           <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45">
8247             <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false">
8248               <span class="MuiIconButton-label">
8249                 <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location">
8250                 <span class="jss40"></span>
8251               </span>
8252               <span class="MuiTouchRipple-root"></span>
8253             </span>
8254             <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1">
8255               <span class="jss67 jss68">Outside Jabodetabek</span>
8256             </span>
8257           </label>
8258         </div>
8259         <div>
8260           <div class="MuiGrid-root location-popup_area-block__sp9Ws">
8261             <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false">
8262               <div class="MuiGrid-root location-popup_place-icon__jSG0Q">
8263                 <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>
8264               </div>
8265               <div class="MuiGrid-root location-popup_cancel-icon__FHujU false">
8266                 <i class="material-icons location-popup_clear-pin__s1dRc">close</i>
8267               </div>
8268               <div style="width: 100%;">
8269                 <select id="choose-location" class="form-control">
8270                   <option value="">Choose Location</option>
8271                   <option value="jakarta">Jakarta</option>
8272                   <option value="bogor">Bogor</option>
8273                   <option value="depok">Depok</option>
8274                   <option value="tangerang">Tangerang</option>
8275                   <option value="bekasi">Bekasi</option>
8276                 </select>
8277               </div>
8278             </div>
8279           </div>
8280         </div>
8281         <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="">
8282           <span class="MuiButton-label">
8283             <span class=""></span>
8284             <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span>
8285           </span>
8286         </button>
8287       </div>
8288     </div>
8289   </div>
8290   <div tabindex="0" data-test="sentinelEnd"></div>
8291 </div>
8292 
8293 
8293<script>
8294   const jabodetabek = [
8295     {
8296       "code": "jakarta",
8297       "city": "jakarta",
8298       "zip": []
8299     },
8300     {
8301       "code": "bogor",
8302       "city": "bogor",
8303       "zip": []
8304     },
8305     {
8306       "code": "depok",
8307       "city": "depok",
8308       "zip": []
8309     },
8310     {
8311       "code": "tangerang",
8312       "city": "tangerang",
8313       "zip": []
8314     },
8315     {
8316       "code": "bekasi",
8317       "city": "bekasi",
8318       "zip": []
8319     }
8320   ]
8321   let cityNonJabodetabek = [
8322     
8323     
8324     
8325     
8326     
8327     
8328     
8329     
8330     
8331     
8332     
8333     
8334     
8335     
8336     
8337     
8338     
8339     
8340     
8341     
8342     
8343     
8344     
8345     
8346     
8347     
8348     
8349     
8350     
8351     
8352     
8353     
8354     
8355     
8356     
8357     
8358     
8359     
8360     
8361     
8362     
8363     
8364     
8365     
8366     
8367     
8368     
8369     
8370     
8371     
8372     
8373     
8374     
8375     
8376     
8377     
8378     
8379     
8380     
8381     
8382     
8383     
8384     
8385     
8386     
8387     
8388     
8389     
8390     
8391     
8392     
8393     
8394     
8395     
8396     
8397     
8398     
8399     
8400     
8401     
8402     
8403     
8404     
8405     
8406     
8407     
8408     
8409     
8410     
8411     
8412     
8413     
8414     
8415     
8416     
8417     
8418     
8419     
8420     
8421     
8422     
8423     
8424     
8425     
8426     
8427     
8428     
8429     
8430     
8431     
8432     
8433     
8434     
8435     
8436     
8437     
8438     
8439     
8440     
8441     
8442     
8443     
8444     
8445     
8446     
8447     
8448     
8449     
8450     
8451     
8452     
8453     
8454     
8455     
8456     
8457     
8458     
8459     
8460     
8461     
8462     
8463     
8464     
8465     
8466     
8467     
8468     
8469     
8470     
8471     
8472     
8473     
8474     
8475     
8476     
8477     
8478     
8479     
8480     
8481     
8482     
8483     
8484     
8485     
8486     
8487     
8488     
8489     
8490     
8491     
8492     
8493     
8494     
8495     
8496     
8497     
8498     
8499     
8500     
8501     
8502     
8503     
8504     
8505     
8506     
8507     
8508     
8509     
8510     
8511     
8512     
8513     
8514     
8515     
8516     
8517     
8518     
8519     
8520     
8521     
8522     
8523     
8524     
8525     
8526     
8527     
8528     
8529     
8530     
8531     
8532     
8533     
8534     
8535     
8536     
8537     
8538     
8539     
8540     
8541     
8542     
8543     
8544     
8545     
8546     
8547     
8548     
8549     
8550     
8551     
8552     
8553     
8554     
8555     
8556     
8557     
8558     
8559     
8560     
8561     
8562     
8563     
8564     
8565     
8566     
8567     
8568     
8569     
8570     
8571     
8572     
8573     
8574     
8575     
8576     
8577     
8578     
8579     
8580     
8581     
8582     
8583     
8584     
8585     
8586     
8587     
8588     
8589     
8590     
8591     
8592     
8593     
8594     
8595     
8596     
8597     
8598     
8599     
8600     
8601     
8602     
8603     
8604     
8605     
8606     
8607     
8608     
8609     
8610     
8611     
8612     
8613     
8614     
8615     
8616     
8617     
8618     
8619     
8620     
8621     
8622     
8623     
8624     
8625     
8626     
8627     
8628     
8629     
8630     
8631     
8632     
8633     
8634     
8635     
8636     
8637     
8638     
8639     
8640     
8641     
8642     
8643     
8644     
8645     
8646     
8647     
8648     
8649     
8650     
8651     
8652     
8653     
8654     
8655     
8656     
8657     
8658     
8659     
8660     
8661     
8662     
8663     
8664     
8665     
8666     
8667     
8668     
8669     
8670     
8671     
8672     
8673     
8674     
8675     
8676     
8677     
8678     
8679     
8680     
8681     
8682     
8683     
8684     
8685     
8686     
8687     
8688     
8689     
8690     
8691     
8692     
8693     
8694     
8695     
8696     
8697     
8698     
8699     
8700     
8701     
8702     
8703     
8704     
8705     
8706     
8707     
8708     
8709     
8710     
8711     
8712     
8713     
8714     
8715     
8716     
8717     
8718     
8719     
8720     
8721     
8722     
8723     
8724     
8725     
8726     
8727     
8728     
8729     
8730     
8731     
8732     
8733     
8734     
8735     
8736     
8737     
8738     
8739     
8740     
8741     
8742     
8743     
8744     
8745     
8746     
8747     
8748     
8749     
8750     
8751     
8752     
8753     
8754     
8755     
8756     
8757     
8758     
8759     
8760     
8761     
8762     
8763     
8764     
8765     
8766     
8767     
8768     
8769     
8770     
8771     
8772     
8773     
8774     
8775     
8776     
8777     
8778     
8779     
8780     
8781     
8782     
8783     
8784     
8785     
8786     
8787     
8788     
8789     
8790     
8791     
8792     
8793     
8794     
8795     
8796     
8797     
8798     
8799     
8800     
8801     
8802     
8803     
8804     
8805     
8806     
8807     
8808     
8809     
8810     
8811     
8812     
8813     
8814     
8815     
8816     
8817     
8818     
8819     
8820     
8821     
8822     
8823     
8824     
8825     
8826     
8827     
8828     
8829     
8830     
8831     
8832     
8833     
8834     
8835     
8836     
8837     
8838     
8839     
8840     
8841     
8842     
8843     
8844     
8845     
8846     
8847     
8848     
8849     
8850     
8851     
8852     
8853     
8854     
8855     
8856     
8857     
8858     
8859     
8860     
8861     
8862     
8863     
8864     
8865     
8866     
8867     
8868     
8869     
8870     
8871     
8872     
8873     
8874     
8875     
8876     
8877     
8878     
8879     
8880     
8881     
8882     
8883     
8884     
8885     
8886     
8887     
8888     
8889     
8890     
8891     
8892     
8893     
8894     
8895     
8896     
8897     
8898     
8899     
8900     
8901     
8902     
8903     
8904     
8905     
8906     
8907     
8908     
8909     
8910     
8911     
8912     
8913     
8914     
8915     
8916     
8917     
8918     
8919     
8920     
8921     
8922     
8923     
8924     
8925     
8926     
8927     
8928     
8929     
8930     
8931     
8932     
8933     
8934     
8935     
8936     
8937     
8938     
8939     
8940     
8941     
8942     
8943     
8944     
8945     
8946     
8947     
8948     
8949     
8950     
8951     
8952     
8953     
8954     
8955     
8956     
8957     
8958     
8959     
8960     
8961     
8962     
8963     
8964     
8965     
8966     
8967     
8968     
8969     
8970     
8971     
8972     
8973     
8974     
8975     
8976     
8977     
8978     
8979     
8980     
8981     
8982     
8983     
8984     
8985     
8986     
8987     
8988     
8989     
8990     
8991     
8992     
8993     
8994     
8995     
8996     
8997     
8998     
8999     
9000     
9001     
9002     
9003     
9004     
9005     
9006     
9007     
9008     
9009     
9010     
9011     
9012     
9013     
9014     
9015     
9016     
9017     
9018     
9019     
9020     
9021     
9022     
9023     
9024     
9025     
9026     
9027     
9028     
9029     
9030     
9031     
9032     
9033     
9034     
9035     
9036     
9037     
9038     
9039     
9040     
9041     
9042     
9043     
9044     
9045     
9046     
9047     
9048     
9049     
9050     
9051     
9052     
9053     
9054     
9055     
9056     
9057     
9058     
9059     
9060     
9061     
9062     
9063     
9064     
9065     
9066     
9067     
9068     
9069     
9070     
9071     
9072     
9073     
9074     
9075     
9076     
9077     
9078     
9079     
9080     
9081     
9082     
9083     
9084     
9085     
9086     
9087     
9088     
9089     
9090     
9091     
9092     
9093     
9094     
9095     
9096     
9097     
9098     
9099     
9100     
9101     
9102     
9103     
9104     
9105     
9106     
9107     
9108     
9109     
9110     
9111     
9112     
9113     
9114     
9115     
9116     
9117     
9118     
9119     
9120     
9121     
9122     
9123     
9124     
9125     
9126     
9127     
9128     
9129     
9130     
9131     
9132     
9133     
9134     
9135     
9136     
9137     
9138     
9139     
9140     
9141     
9142     
9143     
9144     
9145     
9146     
9147     
9148     
9149     
9150     
9151     
9152     
9153     
9154     
9155     
9156     
9157     
9158     
9159     
9160     
9161     
9162     
9163     
9164     
9165     
9166     
9167     
9168     
9169     
9170     
9171     
9172     
9173     
9174     
9175     
9176     
9177     
9178     
9179     
9180     
9181     
9182     
9183     
9184     
9185     
9186     
9187     
9188     
9189     
9190     
9191     
9192     
9193     
9194     
9195     
9196     
9197     
9198     
9199     
9200     
9201     
9202     
9203     
9204     
9205     
9206     
9207     
9208     
9209     
9210     
9211     
9212     
9213     
9214     
9215     
9216     
9217     
9218     
9219     
9220     
9221     
9222     
9223     
9224     
9225     
9226     
9227     
9228     
9229     
9230     
9231     
9232     
9233     
9234     
9235     
9236     
9237     
9238     
9239     
9240     
9241     
9242     
9243     
9244     
9245     
9246     
9247     
9248     
9249     
9250     
9251     
9252     
9253     
9254     
9255     
9256     
9257     
9258     
9259     
9260     
9261     
9262     
9263     
9264     
9265     
9266     
9267     
9268     
9269     
9270     
9271     
9272     
9273     
9274     
9275     
9276     
9277     
9278     
9279     
9280     
9281     
9282     
9283     
9284     
9285     
9286     
9287     
9288     
9289     
9290     
9291     
9292     
9293     
9294     
9295     
9296     
9297     
9298     
9299     
9300     
9301     
9302     
9303     
9304     
9305     
9306     
9307     
9308     
9309     
9310     
9311     
9312     
9313     
9314     
9315     
9316     
9317     
9318     
9319     
9320     
9321     
9322     
9323     
9324     
9325     
9326     
9327     
9328     
9329     
9330     
9331     
9332     
9333     
9334     
9335     
9336     
9337     
9338     
9339     
9340     
9341     
9342     
9343     
9344     
9345     
9346     
9347     
9348     
9349     
9350     
9351     
9352     
9353     
9354     
9355     
9356     
9357     
9358     
9359     
9360     
9361     
9362     
9363     
9364     
9365     
9366     
9367     
9368     
9369     
9370     
9371     
9372     
9373     
9374     
9375     
9376     
9377     
9378     
9379     
9380     
9381     
9382     
9383     
9384     
9385     
9386     
9387     
9388     
9389     
9390     
9391     
9392     
9393     
9394     
9395     
9396     
9397     
9398     
9399     
9400     
9401     
9402     
9403     
9404     
9405     
9406     
9407     
9408     
9409     
9410     
9411     
9412     
9413     
9414     
9415     
9416     
9417     
9418     
9419     
9420     
9421     
9422     
9423     
9424     
9425     
9426     
9427     
9428     
9429     
9430     
9431     
9432     
9433     
9434     
9435     
9436     
9437     
9438     
9439     
9440     
9441     
9442     
9443     
9444     
9445     
9446     
9447     
9448     
9449     
9450     
9451     
9452     
9453     
9454     
9455     
9456     
9457     
9458     
9459     
9460     
9461     
9462     
9463     
9464     
9465     
9466     
9467     
9468     
9469     
9470     
9471     
9472     
9473     
9474     
9475     
9476     
9477     
9478     
9479     
9480     
9481     
9482     
9483     
9484     
9485     
9486     
9487     
9488     
9489     
9490     
9491     
9492     
9493     
9494     
9495     "pengiriman_aceh",
9496     
9497     
9498     
9499     
9500     
9501     "pengiriman_ambon",
9502     
9503     
9504     
9505     
9506     
9507     "pengiriman_atambua",
9508     
9509     
9510     
9511     
9512     
9513     "pengiriman_badung",
9514     
9515     
9516     
9517     
9518     
9519     "pengiriman_bali",
9520     
9521     
9522     
9523     
9524     
9525     "pengiriman_balikpapan",
9526     
9527     
9528     
9529     
9530     
9531     "pengiriman_bandar lampung",
9532     
9533     
9534     
9535     
9536     
9537     "pengiriman_bandung",
9538     
9539     
9540     
9541     
9542     
9543     "pengiriman_bandung barat",
9544     
9545     
9546     
9547     
9548     
9549     "pengiriman_banjarmasin",
9550     
9551     
9552     
9553     
9554     
9555     "pengiriman_banyumas",
9556     
9557     
9558     
9559     
9560     
9561     "pengiriman_banyuwangi",
9562     
9563     
9564     
9565     
9566     
9567     "pengiriman_batam",
9568     
9569     
9570     
9571     
9572     
9573     
9574     
9575     
9576     
9577     "pengiriman_biak",
9578     
9579     
9580     
9581     
9582     
9583     "pengiriman_binjai",
9584     
9585     
9586     
9587     
9588     
9589     "pengiriman_blitar",
9590     
9591     
9592     
9593     
9594     
9595     "pengiriman_blora",
9596     
9597     
9598     
9599     
9600     
9601     
9602     
9603     
9604     
9605     "pengiriman_bojonegoro",
9606     
9607     
9608     
9609     
9610     
9611     "pengiriman_boyolali",
9612     
9613     
9614     
9615     
9616     
9617     "pengiriman_bukittinggi",
9618     
9619     
9620     
9621     
9622     
9623     "pengiriman_buleleng",
9624     
9625     
9626     
9627     
9628     
9629     "pengiriman_ciamis",
9630     
9631     
9632     
9633     
9634     
9635     "pengiriman_cianjur",
9636     
9637     
9638     
9639     
9640     
9641     "pengiriman_cibinong",
9642     
9643     
9644     
9645     
9646     
9647     "pengiriman_cikarang",
9648     
9649     
9650     
9651     
9652     
9653     "pengiriman_cikupa",
9654     
9655     
9656     
9657     
9658     
9659     "pengiriman_cilacap",
9660     
9661     
9662     
9663     
9664     
9665     "pengiriman_cileunyi",
9666     
9667     
9668     
9669     
9670     
9671     "pengiriman_cimahi",
9672     
9673     
9674     
9675     
9676     
9677     "pengiriman_cirebon",
9678     
9679     
9680     
9681     
9682     
9683     "pengiriman_ciwidey",
9684     
9685     
9686     
9687     
9688     
9689     "pengiriman_deli serdang",
9690     
9691     
9692     
9693     
9694     
9695     "pengiriman_demak",
9696     
9697     
9698     
9699     
9700     
9701     "pengiriman_denpasar",
9702     
9703     
9704     
9705     
9706     
9707     
9708     
9709     
9710     
9711     "pengiriman_garut",
9712     
9713     
9714     
9715     
9716     
9717     "pengiriman_gianyar",
9718     
9719     
9720     
9721     
9722     
9723     "pengiriman_gresik",
9724     
9725     
9726     
9727     
9728     
9729     "pengiriman_gunung kidul",
9730     
9731     
9732     
9733     
9734     
9735     
9736     
9737     
9738     
9739     "pengiriman_jambi",
9740     
9741     
9742     
9743     
9744     
9745     "pengiriman_jayapura",
9746     
9747     
9748     
9749     
9750     
9751     "pengiriman_jember",
9752     
9753     
9754     
9755     
9756     
9757     "pengiriman_jepara",
9758     
9759     
9760     
9761     
9762     
9763     "pengiriman_jombang",
9764     
9765     
9766     
9767     
9768     
9769     "pengiriman_karanganyar",
9770     
9771     
9772     
9773     
9774     
9775     "pengiriman_karawang",
9776     
9777     
9778     
9779     
9780     
9781     "pengiriman_karo",
9782     
9783     
9784     
9785     
9786     
9787     "pengiriman_kebumen",
9788     
9789     
9790     
9791     
9792     
9793     "pengiriman_kediri",
9794     
9795     
9796     
9797     
9798     
9799     "pengiriman_keerom",
9800     
9801     
9802     
9803     
9804     
9805     "pengiriman_kendal",
9806     
9807     
9808     
9809     
9810     
9811     "pengiriman_klaten",
9812     
9813     
9814     
9815     
9816     
9817     
9818     
9819     
9820     
9821     "pengiriman_kudus",
9822     
9823     
9824     
9825     
9826     
9827     "pengiriman_kupang",
9828     
9829     
9830     
9831     
9832     
9833     "pengiriman_lainnya",
9834     
9835     
9836     
9837     
9838     
9839     "pengiriman_lamongan",
9840     
9841     
9842     
9843     
9844     
9845     "pengiriman_lampung",
9846     
9847     
9848     
9849     
9850     
9851     "pengiriman_lampung barat",
9852     
9853     
9854     
9855     
9856     
9857     "pengiriman_lembang",
9858     
9859     
9860     
9861     
9862     
9863     "pengiriman_lombok",
9864     
9865     
9866     
9867     
9868     
9869     "pengiriman_lumajang",
9870     
9871     
9872     
9873     
9874     
9875     "pengiriman_madiun",
9876     
9877     
9878     
9879     
9880     
9881     "pengiriman_magelang",
9882     
9883     
9884     
9885     
9886     
9887     "pengiriman_majalengka",
9888     
9889     
9890     
9891     
9892     
9893     "pengiriman_makassar",
9894     
9895     
9896     
9897     
9898     
9899     "pengiriman_malang",
9900     
9901     
9902     
9903     
9904     
9905     "pengiriman_manado",
9906     
9907     
9908     
9909     
9910     
9911     "pengiriman_medan",
9912     
9913     
9914     
9915     
9916     
9917     "pengiriman_mengwi",
9918     
9919     
9920     
9921     
9922     
9923     "pengiriman_mojokerto",
9924     
9925     
9926     
9927     
9928     
9929     "pengiriman_nganjuk",
9930     
9931     
9932     
9933     
9934     
9935     "pengiriman_ngawi",
9936     
9937     
9938     
9939     
9940     
9941     "pengiriman_padang",
9942     
9943     
9944     
9945     
9946     
9947     "pengiriman_palembang",
9948     
9949     
9950     
9951     
9952     
9953     "pengiriman_pasuruan",
9954     
9955     
9956     
9957     
9958     
9959     "pengiriman_pati",
9960     
9961     
9962     
9963     
9964     
9965     "pengiriman_pekalongan",
9966     
9967     
9968     
9969     
9970     
9971     "pengiriman_pekanbaru",
9972     
9973     
9974     
9975     
9976     
9977     "pengiriman_pemalang",
9978     
9979     
9980     
9981     
9982     
9983     "pengiriman_ponorogo",
9984     
9985     
9986     
9987     
9988     
9989     "pengiriman_pontianak",
9990     
9991     
9992     
9993     
9994     
9995     "pengiriman_probolinggo",
9996     
9997     
9998     
9999     
10000     
10001     "pengiriman_purbalingga",
10002     
10003     
10004     
10005     
10006     
10007     "pengiriman_purwakarta",
10008     
10009     
10010     
10011     
10012     
10013     "pengiriman_purwokerto",
10014     
10015     
10016     
10017     
10018     
10019     "pengiriman_rembang",
10020     
10021     
10022     
10023     
10024     
10025     "pengiriman_riau",
10026     
10027     
10028     
10029     
10030     
10031     "pengiriman_salatiga",
10032     
10033     
10034     
10035     
10036     
10037     "pengiriman_samarinda",
10038     
10039     
10040     
10041     
10042     
10043     "pengiriman_semarang",
10044     
10045     
10046     
10047     
10048     
10049     "pengiriman_sentani",
10050     
10051     
10052     
10053     
10054     
10055     "pengiriman_serang",
10056     
10057     
10058     
10059     
10060     
10061     "pengiriman_sidoarjo",
10062     
10063     
10064     
10065     
10066     
10067     "pengiriman_singkawang",
10068     
10069     
10070     
10071     
10072     
10073     "pengiriman_sragen",
10074     
10075     
10076     
10077     
10078     
10079     "pengiriman_subang",
10080     
10081     
10082     
10083     
10084     
10085     "pengiriman_sukabumi",
10086     
10087     
10088     
10089     
10090     
10091     "pengiriman_sumbawa",
10092     
10093     
10094     
10095     
10096     
10097     "pengiriman_surabaya",
10098     
10099     
10100     
10101     
10102     
10103     "pengiriman_surakarta solo",
10104     
10105     
10106     
10107     
10108     
10109     
10110     
10111     
10112     
10113     "pengiriman_tasikmalaya",
10114     
10115     
10116     
10117     
10118     
10119     "pengiriman_tegal",
10120     
10121     
10122     
10123     
10124     
10125     "pengiriman_timika",
10126     
10127     
10128     
10129     
10130     
10131     "pengiriman_wamena",
10132     
10133     
10134     
10135     
10136     
10137     "pengiriman_wiyung",
10138     
10139     
10140     
10141     
10142     
10143     "pengiriman_wonokromo",
10144     
10145     
10146     
10147     
10148     
10149     "pengiriman_yogyakarta",
10150     
10151     
10152     
10153     
10154     
10155     
10156     
10157     
10158     
10159     
10160     
10161     
10162     
10163     
10164     
10165     
10166     
10167     
10168     
10169     
10170     
10171     
10172     
10173     
10174     
10175     
10176     
10177     
10178     
10179     
10180     
10181     
10182     
10183     
10184     
10185     
10186     
10187     
10188     
10189     
10190     
10191     
10192     
10193     
10194     
10195     
10196     
10197     
10198     
10199     
10200     
10201     
10202     
10203     
10204     
10205     
10206     
10207     
10208     
10209     
10210     
10211     
10212     
10213     
10214     
10215     
10216     
10217     
10218     
10219     
10220     
10221     
10222     
10223     
10224     
10225     
10226     
10227     
10228     
10229     
10230     
10231     
10232     
10233     
10234     
10235     
10236     
10237     
10238     
10239     
10240     
10241     
10242     
10243     
10244     
10245     
10246     
10247     
10248     
10249     
10250     
10251     
10252     
10253     
10254     
10255     
10256     
10257     
10258     
10259     
10260     
10261     
10262     
10263     
10264     
10265     
10266     
10267     
10268     
10269     
10270     
10271     
10272     
10273     
10274     
10275     
10276     
10277     
10278     
10279     
10280     
10281     
10282     
10283     
10284     
10285     
10286     
10287     
10288     
10289     
10290     
10291     
10292     
10293     
10294     
10295     
10296     
10297     
10298     
10299     
10300     
10301     
10302     
10303     
10304     
10305     
10306     
10307     
10308     
10309     
10310     
10311     
10312     
10313     
10314     
10315     
10316     
10317     
10318     
10319     
10320     
10321     
10322     
10323     
10324     
10325     
10326     
10327     
10328     
10329     
10330     
10331     
10332     
10333     
10334     
10335     
10336     
10337     
10338     
10339     
10340     
10341     
10342     
10343     
10344     
10345     
10346     
10347     
10348     
10349     
10350     
10351     
10352     
10353     
10354     
10355     
10356     
10357     
10358     
10359     
10360     
10361     
10362     
10363     
10364     
10365     
10366     
10367     
10368     
10369     
10370     
10371     
10372     
10373     
10374     
10375     
10376     
10377     
10378     
10379     
10380     
10381     
10382     
10383     
10384     
10385     
10386     
10387     
10388     
10389     
10390     
10391     
10392     
10393     
10394     
10395     
10396     
10397     
10398     
10399     
10400     
10401     
10402     
10403     
10404     
10405     
10406     
10407     
10408     
10409     
10410     
10411     
10412     
10413     
10414     
10415     
10416     
10417     
10418     
10419     
10420     
10421     
10422     
10423     
10424     
10425     
10426     
10427     
10428     
10429     
10430     
10431     
10432     
10433     
10434     
10435     
10436     
10437     
10438     
10439     
10440     
10441     
10442     
10443     
10444     
10445     
10446     
10447     
10448     
10449     
10450     
10451     
10452     
10453     
10454     
10455     
10456     
10457     
10458     
10459     
10460     
10461     
10462     
10463     
10464     
10465     
10466     
10467     
10468     
10469     
10470     
10471     
10472     
10473     
10474     
10475     
10476     
10477     
10478     
10479     
10480     
10481     
10482     
10483     
10484     
10485     
10486     
10487     
10488     
10489     
10490     
10491     
10492     
10493     
10494     
10495     
10496     
10497     
10498     
10499     
10500     
10501     
10502     
10503     
10504     
10505     
10506     
10507     
10508     
10509     
10510     
10511     
10512     
10513     
10514     
10515     
10516     
10517     
10518     
10519     
10520     
10521     
10522     
10523     
10524     
10525     
10526     
10527     
10528     
10529     
10530     
10531     
10532     
10533     
10534     
10535     
10536     
10537     
10538     
10539     
10540     
10541     
10542     
10543     
10544     
10545     
10546     
10547     
10548     
10549     
10550     
10551     
10552     
10553     
10554     
10555     
10556     
10557     
10558     
10559     
10560     
10561     
10562     
10563     
10564     
10565     
10566     
10567     
10568     
10569     
10570     
10571     
10572     
10573     
10574     
10575     
10576     
10577     
10578     
10579     
10580     
10581     
10582     
10583     
10584     
10585     
10586     
10587     
10588     
10589     
10590     
10591     
10592     
10593     
10594     
10595     
10596     
10597     
10598     
10599     
10600     
10601     
10602     
10603     
10604     
10605     
10606     
10607     
10608     
10609     
10610     
10611     
10612     
10613     
10614     
10615     
10616     
10617     
10618     
10619     
10620     
10621     
10622     
10623     
10624     
10625     
10626     
10627     
10628     
10629     
10630     
10631     
10632     
10633     
10634     
10635     
10636     
10637     
10638     
10639     
10640     
10641     
10642     
10643     
10644     
10645     
10646     
10647     
10648     
10649     
10650     
10651     
10652     
10653     
10654     
10655     
10656     
10657     
10658     
10659     
10660     
10661     
10662     
10663     
10664     
10665     
10666     
10667     
10668     
10669     
10670     
10671     
10672     
10673     
10674     
10675     
10676     
10677     
10678     
10679     
10680     
10681     
10682     
10683     
10684     
10685     
10686     
10687     
10688     
10689     
10690     
10691     
10692     
10693     
10694     
10695     
10696     
10697     
10698     
10699     
10700     
10701     
10702     
10703     
10704     
10705     
10706     
10707     
10708     
10709     
10710     
10711     
10712     
10713     
10714     
10715     
10716     
10717     
10718     
10719     
10720     
10721     
10722     
10723     
10724     
10725     
10726     
10727     
10728     
10729     
10730     
10731     
10732     
10733     
10734     
10735     
10736     
10737     
10738     
10739     
10740     
10741     
10742     
10743     
10744     
10745     
10746     
10747     
10748     
10749     
10750     
10751     
10752     
10753     
10754     
10755     
10756     
10757     
10758     
10759   ]
10760   console.log(cityNonJabodetabek)
10761   let non_jabodetabek = []
10762   for(var i=0;i<cityNonJabodetabek.length;i++) {
10763     const obj = {
10764       "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ','-'),
10765       "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ','-'),
10766       "zip": []
10767     }
10768     non_jabodetabek.push(obj)
10769   }
10770   let current_location = getCookie("location_delivery")
10771   $("[name=location]").change(function(){
10772     let v = $(this).val()
10773     let option = []
10774     if(v == 'Jabodetabek') {
10775       for(var i=0;i<jabodetabek.length;i++) {
10776         const jabodetabekHtml = `<option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>`
10777         option.push(jabodetabekHtml)
10778       }
10779       $("#choose-location").html(`<option value="">Choose Location</option>${option}`)
10780     } else {
10781       for(var i=0;i<non_jabodetabek.length;i++) {
10782         const nonjabodetabekHtml = `<option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>`
10783         option.push(nonjabodetabekHtml)
10784       }
10785       $("#choose-location").html(`<option value="">Choose Location</option>${option}`)
10786     }
10787   })
10788 
10789   $("#location-lock-submit").click(function(e){
10790     let select = $("#choose-location")
10791     let value = select.val().toLowerCase()
10792     console.log(value)
10793     if(select.val() == "") {
10794       return alert("Choose Your Location")
10795       e.preventDefault()
10796     }
10797     setCookie("location_delivery",value,1000000);
10798     
10799     location.reload();
10800     
10801   })
10802 
10803   $("#close-popup-delivery").click(function(){
10804     $(".MuiDialog-root").hide()
10805     if(!current_location){
10806       setCookie("location_delivery","jakarta",1000000);
10807       $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta")
10808     }
10809   })
10810   $("#loc_delivery, #loc_delivery_mobile").click(function(){
10811     $(".MuiDialog-root").show()
10812   })
10813 
10814   
10815   if(!current_location){
10816     
10817   } else {
10818     $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location)
10819     console.log(current_location)
10820     $("#choose-location").each(function(){
10821       if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi'){
10822         $("#jabodetabek").trigger("click")
10823       } else {
10824         $("#non-jabodetabek").trigger("click")
10825       }
10826       $("#choose-location").find("option[value="+current_location+"]").attr("selected", "selected")
10827     })
10828   }
10829 
10830   // 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'){
10831   //   $("#timeMalam").attr("disabled", false)
10832   // } else {
10833   //   $("#timeMalam").attr("disabled", true)
10834   // }
10835 
10836   if(current_location && current_location != 'jakarta') {
10837     $("#self-pickup").attr("disabled", true)
10838   }
10839 
10840   function setCookie(name,value,days) {
10841     var expires = "";
10842     if (days) {
10843       var date = new Date();
10844       date.setTime(date.getTime() + (days*24*60*60*1000));
10845       expires = "; expires=" + date.toUTCString();
10846     }
10847     document.cookie = name + "=" + (value || "")  + expires + "; path=/";
10848   }
10849   function getCookie(name) {
10850     var nameEQ = name + "=";
10851     var ca = document.cookie.split(';');
10852     for(var i=0;i < ca.length;i++) {
10853       var c = ca[i];
10854       while (c.charAt(0)==' ') c = c.substring(1,c.length);
10855       if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
10856     }
10857     return null;
10858   }
10859 </script>
10859
10860 <!-- One Tap -->
10861     
10861<script>
10862       console.log("Outerbloom...");
10863     </script>
10863
10864   <div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block">
10865 
10866 
10867 
10868 
10869 
10870 
10871 
10872 
10873 
10874 
10875 
10876 
10877 
10878 
10879 
10880 
10881 
10882 
10883 
10884 
10885 
10886 
10887 
10888 
10889 
10890 
10891 
10892 
10893 
10894 
10895 
10896 
10897 
10898 
10899 
10900 
10901 
10902 
10903 
10904 
10905 
10906 
10907 
10908 
10909 
10910 
10911 <link rel="stylesheet" href="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.css" />
10912 
10912<script src="https://cdn1.bitbybit.studio/bitbybit/static/bitChat_widget/widget.js" defer></script>
10912
10913 
10913<script>
10914   const widgetConfig = {
10915     id: "clz7897za002cz7otleaz0d3d",
10916     showQuickResponse: false,
10917     quickResponsesData: [],
10918     themeColor: "#ffffff",
10919     widgetText: "",
10920     radiusType: "circle",
10921     widgetIconType: "whatsapp",
10922     position: "right",
10923     storeLogo: "",
10924     storeName: "Outerbloom",
10925     storeDescription: "",
10926     size: "small",
10927     showCard: false,
10928     widgetColorType: "solid",
10929     widgetColor1: "#008069",
10930     widgetColor2: "#008069",
10931     social: {
10932       socialOrders: ["instagram","tiktok","facebook","x","youtube","linkedin","email"],
10933       values: {
10934         instagram: {
10935           enabled: false,
10936           value: "",
10937         },
10938         facebook: {
10939           enabled: false,
10940           value: "",
10941         },
10942         email: {
10943           enabled: false,
10944           value: "",
10945         },
10946         x: {
10947           enabled: false,
10948           value: "",
10949         },
10950         tiktok: {
10951           enabled: false,
10952           value: "",
10953         },
10954         linkedin: {
10955           enabled: false,
10956           value: "",
10957         },
10958         youtube: {
10959           enabled: false,
10960           value: "",
10961         },
10962       },
10963     },
10964   };
10965 
10966   function initializeWidget() {
10967     if (typeof BBBWidget !== 'undefined') {
10968       BBBWidget.init(widgetConfig);
10969     } else {
10970       setTimeout(initializeWidget, 100);
10971     }
10972   }
10973 
10974   initializeWidget();</script>
10974
10975 
10976 
10977 </div><div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block">
10978 
10979 
10980 <div style="position: fixed; bottom: 0; right: 0"></div>
10981 
10982 
10982<script>
10983 console.info("bitlogin extension version: v2.5.7");
10984 
10985 const googleScript = document.createElement("script");
10986 googleScript.setAttribute("src", "https://accounts.google.com/gsi/client");
10987 document.head.append(googleScript);
10988 
10989 const bitLoginBaseUrl = "https://api.bitbybit.studio";
10990 const apiUrl = `${bitLoginBaseUrl}/bitlogin/api`;
10991 
10992 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"}};
10993 const config = [];
10994 const redirectUrl = appearance.redirectLink;
10995 
10996 let locationCacheSet = false;
10997 let errorLocation = false;
10998 let oneTapSet = false;
10999 
11000 let bitloginCache = {
11001   appearance: appearance,
11002   config: config
11003 };
11004 
11005 let isInitializing = false;
11006 const queue = [];
11007 
11008 // Add CSS for the popup
11009 const popupStyles = document.createElement('style');
11010 popupStyles.textContent = `
11011   /* Styles for login popup */
11012   .bitlogin-popup-overlay {
11013     position: fixed;
11014     top: 0;
11015     left: 0;
11016     width: 100%;
11017     height: 100%;
11018     background: rgba(0, 0, 0, 0.45);
11019     backdrop-filter: blur(4px);
11020     display: flex;
11021     align-items: center;
11022     justify-content: center;
11023     opacity: 0;
11024     transition: opacity 0.3s ease-in-out;
11025     z-index: 999999;
11026   }
11027   
11028   .bitlogin-popup-overlay.visible {
11029     opacity: 1;
11030   }
11031   
11032   .bitlogin-popup {
11033     background: #FFFFFF;
11034     box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
11035     border-radius: 16px;
11036     width: 100%;
11037     max-width: 560px;
11038     display: flex;
11039     overflow: hidden;
11040     position: relative;
11041     opacity: 0;
11042     transform: translateY(20px) scale(0.98);
11043     transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
11044   }
11045   
11046   .bitlogin-popup.visible {
11047     opacity: 1;
11048     transform: translateY(0) scale(1);
11049   }
11050   
11051   .bitlogin-popup-with-image {
11052     max-width: 640px;
11053   }
11054   
11055   .bitlogin-popup-right-image {
11056     flex-direction: row-reverse;
11057   }
11058   
11059   .bitlogin-popup-image {
11060     object-fit: cover;
11061     width: 50%;
11062     height: auto;
11063   }
11064   
11065   .bitlogin-popup-content {
11066     padding: 32px;
11067     position: relative;
11068     width: 50%;
11069   }
11070   
11071   .bitlogin-popup-close {
11072     position: absolute;
11073     top: 16px;
11074     right: 16px;
11075     background: white;
11076     border: none;
11077     width: 30px;
11078     height: 30px;
11079     display: flex;
11080     align-items: center;
11081     justify-content: center;
11082     cursor: pointer;
11083     transition: background-color 0.2s;
11084     color: inherit;
11085     padding: 0;
11086   }
11087   
11088   .bitlogin-popup-close:hover {
11089     background-color: #e5e5e5;
11090   }
11091   
11092   .bitlogin-popup-buttons {
11093     display: flex;
11094     flex-direction: column;
11095     gap: 12px;
11096     margin-top: 24px;
11097   }
11098   
11099   /* Button styles within popup - override width for popup buttons */
11100   .bitlogin-popup-buttons #google-login,
11101   .bitlogin-popup-buttons #facebook-login,
11102   .bitlogin-popup-buttons #apple-login,
11103   .bitlogin-popup-buttons #whatsapp-login,
11104   .bitlogin-popup-buttons #microsoft-login,
11105   .bitlogin-popup-buttons #twitter-login,
11106   .bitlogin-popup-buttons #amazon-login,
11107   .bitlogin-popup-buttons #instagram-login,
11108   .bitlogin-popup-buttons #magic-link-login,
11109   .bitlogin-popup-buttons #mobile-app-login {
11110     width: 100% !important;
11111     font-family: inherit !important;
11112   }
11113   
11114   .bitlogin-popup-footer {
11115     margin-top: 32px;
11116     text-align: center;
11117     font-size: 14px;
11118     opacity: 0.6;
11119   }
11120   
11121   /* Modern Typography */
11122   .bitlogin-popup h2 {
11123     margin-top: 12px;
11124     font-size: 21px !important;
11125     line-height: 1.2 !important;
11126     font-weight: 700 !important;
11127     letter-spacing: -0.02em !important;
11128     margin-bottom: 16px !important;
11129   }
11130   
11131   .bitlogin-popup-header {
11132     position: relative;
11133     margin-bottom: 24px;
11134   }
11135   
11136   /* Modern gradient accent */
11137   .bitlogin-popup-content > div {
11138     font-size: 16px !important;
11139     line-height: 1.2 !important;
11140     opacity: 0.85 !important;
11141   }
11142   
11143   /* Enhanced button interactions */
11144   .bitlogin-popup-buttons button {
11145     position: relative;
11146     overflow: hidden;
11147   }
11148   
11149   @keyframes ripple {
11150     0% {
11151       transform: scale(0, 0);
11152       opacity: 0.5;
11153     }
11154     100% {
11155       transform: scale(100, 100);
11156       opacity: 0;
11157     }
11158   }
11159   
11160   /* Responsive adjustments */
11161   @media (max-width: 640px) {
11162     .bitlogin-popup {
11163       max-width: 90%;
11164       width: 90%;
11165       margin: 0 16px;
11166     }
11167     
11168     .bitlogin-popup-with-image {
11169       flex-direction: column !important;
11170     }
11171     
11172     .bitlogin-popup-image {
11173       width: 100%;
11174       height: 180px;
11175     }
11176     
11177     .bitlogin-popup-content {
11178       padding: 24px;
11179     }
11180     
11181     .bitlogin-popup h2 {
11182       font-size: 24px !important;
11183     }
11184   }
11185 `;
11186 
11187 document.head.appendChild(popupStyles);
11188 
11189 // Add fonts link for different font options
11190 const fontsLink = document.createElement('link');
11191 fontsLink.rel = 'stylesheet';
11192 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';
11193 document.head.appendChild(fontsLink);
11194 
11195 (async () => {
11196   try {
11197     let host = window.location.host;
11198     if (host === "admin.shopify.com") {
11199       host = `${window.location.pathname.split("/")[2]}.myshopify.com`;
11200     }
11201 
11202     const urlSearchParams = new URLSearchParams(window.location.search);
11203     const checkoutUrl = urlSearchParams.get("checkout_url");
11204 
11205     async function init({ inputRef, index }) {
11206       if (isInitializing) {
11207         queue.push(() => init({ inputRef, index }));
11208         return;
11209       }
11210 
11211       isInitializing = true;
11212 
11213       try {
11214         let bitLoginSectionRoot = document.querySelector(
11215           `.bitlogin-root[data-index="${index}"]`
11216         );
11217 
11218         const formRef = inputRef?.closest(
11219           "form:not([action='/account/recover'])"
11220         );
11221 
11222         if (formRef && !bitLoginSectionRoot) {
11223           await getLocation();
11224 
11225           bitLoginSectionRoot = document.createElement(`div`);
11226 
11227           bitLoginSectionRoot.setAttribute("class", "bitlogin-root");
11228           bitLoginSectionRoot.setAttribute("data-index", `${index}`);
11229 
11230           updateAppearance({
11231             formRef,
11232             rootRef: bitLoginSectionRoot,
11233             host,
11234           });
11235         }
11236       } catch (err) {
11237         console.error(`error while initiating bitlogin extensions`, err);
11238       } finally {
11239         // Release the lock
11240         isInitializing = false;
11241 
11242         // Check if there are pending items in the queue
11243         if (queue.length > 0) {
11244           // Process the next function in the queue
11245           const nextFunction = queue.shift();
11246           nextFunction();
11247         }
11248       }
11249     }
11250 
11251     function initAll() {
11252       return new Promise((resolve, reject) => {
11253         setTimeout(async () => {
11254           const inputRefs = document.querySelectorAll(
11255             'input[name="customer[email]"]'
11256           );
11257 
11258           for (let i = 0; i < inputRefs.length; i++) {
11259             const currentInputRef = inputRefs[i];
11260             const isVisible = isElementVisible(currentInputRef);
11261 
11262             if (isVisible) {
11263               await init({ inputRef: currentInputRef, index: i });
11264             }
11265           }
11266 
11267           resolve("ok");
11268         }, 100);
11269       });
11270     }
11271 
11272     const observer = new MutationObserver((mutationsList) => {
11273       for (let mutation of mutationsList) {
11274         initAll();
11275       }
11276     });
11277 
11278     observer.observe(document.body, {
11279       childList: true,
11280       subtree: true,
11281       attributes: true,
11282     });
11283 
11284     initAll();
11285 
11286     if (appearance.googleOneTap) {
11287       setupOneTap({ host, checkoutUrl });
11288     }
11289 
11290     // Initialize popup
11291     await initPopup(host);
11292   } catch (error) {
11293     console.error("Error initializing BitLogin:", error);
11294   }
11295 })();
11296 
11297 async function initPopup(host) {
11298   // Check if user is already logged in using Liquid checks properly
11299   const isLoggedIn = false || 
11300                     document.querySelector('.customer-logout-link') || 
11301                     document.querySelector('.account-link') || 
11302                     window.location.pathname.includes('/account');
11303   
11304   if (isLoggedIn) {
11305     return; // User is logged in, don't show popup
11306   }
11307 
11308   try {
11309     // Fetch the popup configuration
11310     const popupConfig = await fetch(`${apiUrl}/appearance/popup/domain/${host}`)
11311       .then(res => res.json())
11312       .catch(err => {
11313         console.error('Error fetching popup configuration:', err);
11314         return null;
11315       });
11316 
11317     if (!popupConfig || !popupConfig.enabled) {
11318       return;
11318 // Don't show popup if disabled or config not found
11319     }
11320 
11321     // Create popup after 10 seconds
11322     setTimeout(() => {
11323       // Check if user is still on the page and still not logged in
11324       if (document.visibilityState === 'visible') {
11325         // Additional check in case user logged in during the 10 second wait
11326         const currentlyLoggedIn = false || 
11327                               document.querySelector('.customer-logout-link') || 
11328                               document.querySelector('.account-link');
11329         
11330         if (!currentlyLoggedIn) {
11331           createLoginPopup(popupConfig, host);
11332         }
11333       }
11334     }, 10000);
11335   } catch (error) {
11336     console.error('Error initializing popup:', error);
11337   }
11338 }
11339 
11340 function createLoginPopup(popupConfig, host) {
11341   // Font mapping
11342   const fontFamilyMap = {
11343     system_fonts: 'system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
11344     montserrat: 'Montserrat, sans-serif',
11345     roboto: 'Roboto, sans-serif',
11346     open_sans: 'Open Sans, sans-serif',
11347     noto_sans: 'Noto Sans, sans-serif',
11348     lato: 'Lato, sans-serif',
11349     poppins: 'Poppins, sans-serif',
11350     quicksand: 'Quicksand, sans-serif',
11351     raleway: 'Raleway, sans-serif',
11352     pt_sans: 'PT Sans, sans-serif',
11353     oswald: 'Oswald, sans-serif',
11354   };
11355 
11356   // Create overlay
11357   const overlay = document.createElement('div');
11358   overlay.className = 'bitlogin-popup-overlay';
11359   
11360   // Create popup container with appropriate styling
11361   const popup = document.createElement('div');
11362   popup.className = 'bitlogin-popup';
11363 
11364   if (popupConfig.layout === 'default') {
11365     popup.style.maxWidth = '400px';
11366   }
11367   
11368   // Function to close the popup
11369   const closePopup = () => {
11370     overlay.classList.remove('visible');
11371     popup.classList.remove('visible');
11372     setTimeout(() => {
11373       if (document.body.contains(overlay)) {
11374         document.body.removeChild(overlay);
11375       }
11376     }, 300);
11377   };
11378   
11379   // Add click handler to the overlay to close when clicking outside
11380   overlay.addEventListener('click', (event) => {
11381     // Close only if clicking directly on the overlay, not its children
11382     if (event.target === overlay) {
11383       closePopup();
11384     }
11385   });
11386   
11387   // Add escape key handler to close popup
11388   document.addEventListener('keydown', (event) => {
11389     if (event.key === 'Escape' && document.body.contains(overlay)) {
11390       closePopup();
11391     }
11392   });
11393 
11394   // Create layout with image if specified
11395   let contentWrapper;
11396   if (popupConfig.layout !== 'default' && popupConfig.popupImage) {
11397     popup.classList.add('bitlogin-popup-with-image');
11398     
11399     if (popupConfig.layout === 'right') {
11400       popup.classList.add('bitlogin-popup-right-image');
11401     }
11402     
11403     // Add image
11404     const image = document.createElement('img');
11405     image.className = 'bitlogin-popup-image';
11406     image.src = popupConfig.popupImage;
11407     image.alt = 'Login';
11408     image.loading = 'lazy';
11409     popup.appendChild(image);
11410     
11411     // Create content container
11412     contentWrapper = document.createElement('div');
11413     contentWrapper.className = 'bitlogin-popup-content';
11414 
11415     if (popupConfig.layout === 'right') {
11416       const closeButton = document.createElement('button');
11417       closeButton.className = 'bitlogin-popup-close';
11418       closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://kucingair.com/fotobaka/logopub.png">
11419         <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
11420       </svg>`;
11421       closeButton.setAttribute('aria-label', 'Close');
11422       closeButton.onclick = closePopup;
11423   
11424       popup.appendChild(closeButton);
11425     }
11426   } else {
11427     contentWrapper = document.createElement('div');
11428     contentWrapper.className = 'bitlogin-popup-content';
11429     contentWrapper.style.width = '100%';
11430   }
11431 
11432   // Set background style
11433   if (popupConfig.backgroundTheme === 'gradient') {
11434     contentWrapper.style.background = `linear-gradient(135deg, ${popupConfig.backgroundPopupColor}, ${popupConfig.gradientColor})`;
11435   } else {
11436     contentWrapper.style.backgroundColor = popupConfig.backgroundPopupColor;
11437   }
11438 
11439   // Apply font family
11440   contentWrapper.style.setProperty('font-family', fontFamilyMap[popupConfig.font] || fontFamilyMap.system_fonts, 'important');
11441 
11442   if (popupConfig.layout !== 'right') {
11443     const closeButton = document.createElement('button');
11444     closeButton.className = 'bitlogin-popup-close';
11445     closeButton.innerHTML = `<svg width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="https://kucingair.com/fotobaka/logopub.png">
11446       <path d="M13 1L1 13M1 1L13 13" stroke="${popupConfig.fontColor}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
11447     </svg>`;
11448     closeButton.setAttribute('aria-label', 'Close');
11449     closeButton.onclick = closePopup;
11450   
11451     contentWrapper.appendChild(closeButton);
11452   }
11453 
11454   // Add heading with subtle animation effect
11455   const header = document.createElement('div');
11456   header.className = 'bitlogin-popup-header';
11457   
11458   const heading = document.createElement('h2');
11459   heading.textContent = popupConfig.headingText || 'Sign in for exclusive benef
11459its';
11460   heading.style.color = popupConfig.fontColor;
11461   header.appendChild(heading);
11462 
11463   // Add body text with improved formatting
11464   const bodyText = document.createElement('div');
11465   bodyText.innerHTML = popupConfig.bodyText || 'Join our community to access exclusive offers and a personalized shopping experience.';
11466   bodyText.style.color = popupConfig.fontColor;
11467   header.appendChild(bodyText);
11468   
11469   contentWrapper.appendChild(header);
11470 
11471   // Create buttons container with modern styling
11472   const buttonsContainer = document.createElement('div');
11473   buttonsContainer.className = 'bitlogin-popup-buttons';
11474   
11475   // Add social buttons
11476   const providerLabels = {
11477     'GOOGLE': 'Continue with Google',
11478     'FACEBOOK': 'Continue with Facebook',
11479     'APPLE': 'Continue with Apple',
11480     'WHATSAPP': 'Continue with WhatsApp',
11481     'MAGIC_LINK': 'Continue with Email',
11482   };
11483 
11484   // Add first login provider button
11485   if (popupConfig.loginProvider1 !== 'NONE') {
11486     const buttonConfig = {
11487       theme: popupConfig.colorScheme || 'match',
11488       customColor: popupConfig.textColor,
11489       format: 'contentFlex',
11490       buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider1.toLowerCase()],
11491       hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true,
11492       style: popupConfig.style || 'rounded',
11493       size: popupConfig.size || 'medium',
11494       colorScheme: popupConfig.colorScheme || 'match',
11495       backgroundColor: popupConfig.backgroundColor || '#3B82F6',
11496       textColor: popupConfig.textColor || '#FFFFFF',
11497       outlineColor: popupConfig.outlineColor || '#3B82F6',
11498       host: host
11499     };
11500     
11501     const button1 = createSocialLoginButton(popupConfig.loginProvider1, buttonConfig);
11502     
11503     // Handle click event - this overrides the default click handler in createSocialLoginButton
11504     button1.onclick = () => {
11505       onClickSocialLogin({ provider: popupConfig.loginProvider1.toLowerCase(), host });
11506       closePopup();
11507     };
11508     
11509     buttonsContainer.appendChild(button1);
11510   }
11511 
11512   // Add second login provider button if enabled
11513   if (popupConfig.loginProvider2 !== 'NONE') {
11514     const buttonConfig = {
11515       theme: popupConfig.colorScheme || 'match',
11516       customColor: popupConfig.textColor,
11517       format: 'contentFlex',
11518       buttonText: bitloginCache.appearance.buttonList[popupConfig.loginProvider2.toLowerCase()],
11519       hasShadow: popupConfig.hasShadow !== undefined ? popupConfig.hasShadow : true,
11520       style: popupConfig.style || 'rounded',
11521       size: popupConfig.size || 'medium',
11522       colorScheme: popupConfig.colorScheme || 'match',
11523       backgroundColor: popupConfig.backgroundColor || '#3B82F6',
11524       textColor: popupConfig.textColor || '#FFFFFF',
11525       outlineColor: popupConfig.outlineColor || '#3B82F6',
11526       host: host
11527     };
11528     
11529     const button2 = createSocialLoginButton(popupConfig.loginProvider2, buttonConfig);
11530     
11531     // Handle click event - this overrides the default click handler in createSocialLoginButton
11532     button2.onclick = () => {
11533       onClickSocialLogin({ provider: popupConfig.loginProvider2.toLowerCase(), host });
11534       closePopup();
11535     };
11536     
11537     buttonsContainer.appendChild(button2);
11538   }
11539 
11540   contentWrapper.appendChild(buttonsContainer);
11541 
11542   // Append content to popup
11543   popup.appendChild(contentWrapper);
11544   
11545   // Append popup to overlay
11546   overlay.appendChild(popup);
11547   
11548   // Append overlay to body
11549   document.body.appendChild(overlay);
11550   
11551   // Trigger animation with slight delay for better perceived performance
11552   setTimeout(() => {
11553     overlay.classList.add('visible');
11554     setTimeout(() => {
11555       popup.classList.add('visible');
11556     }, 50);
11557   }, 10);
11558 }
11559 
11560 window.addEventListener("load", () => {
11561   window.addEventListener("message", (event) => {
11562     const receivedData = event.data;
11563 
11564     if (receivedData.type === "authorize") {
11565       post(
11566         JSON.parse(
11567           JSON.stringify({
11568             "customer[email]": receivedData.email,
11569             "customer[password]": receivedData.password,
11570             form_type: "customer_login",
11571             utf8: "?",
11572             return_url: redirectUrl,
11573           })
11574         )
11575       );
11576     } else if (receivedData.type === "rejected") {
11577       if (receivedData.reason === "customer_account_disabled") {
11578         showAlert(
11579           "Your account needs to be activated. We've sent you an activation link - please check your email to complete this step."
11580         );
11581       } else if (receivedData.reason === "customer_entry_created_email_not_set") {
11582         showAlert(
11583           "A new account was created but requires an email address. Please update your account with a valid email address to continue."
11584         );
11585       } else if (receivedData.reason === "customer_exist_email_not_set") {
11586         showAlert(
11587           "Your existing account is missing an email address. Please contact support to update your account with a valid email address."
11588         );
11589       }
11590     }
11591 
11592     if (receivedData.type === "customer_authenticated") {
11593       // Dispatch a custom event that merchants can listen for to implement their custom logic
11594       const customerAuthEvent = new CustomEvent('bitlogin:customer_authenticated', {
11595         detail: {
11596           provider: receivedData.provider,
11597           customer: receivedData.customer,
11598           shopifyCustomerCreated: receivedData.shopifyCustomerCreated
11599         }
11600       });
11601       
11602       // Dispatch the event on the window object so merchants can listen for it
11603       window.dispatchEvent(customerAuthEvent);
11604       
11605     }
11606   });
11607 });
11608 
11609 // Reusable functions for social login buttons
11610 function createSocialLoginButton(provider, config = {}) {
11611   const {
11612     theme = 'match',
11613     customColor = null,
11614     format = 'contentFlex',
11615     buttonText = null,
11616     hasShadow = true,
11617     style = 'rounded',
11618     size = 'medium',
11619     colorScheme = 'match',
11620     backgroundColor = '#3B82F6',
11621     textColor = '#FFFFFF',
11622     outlineColor = '#3B82F6',
11623     rootRef = null,
11624     host = null
11625   } = config;
11626   
11627   // Create button element with appropriate ID and attributes
11628   const button = document.createElement('button');
11629   button.id = `${provider.toLowerCase()}-login`;
11630   button.type = 'button';
11631   
11632   // Set the inner SVG based on provider
11633   switch (provider.toUpperCase()) {
11634     case 'GOOGLE':
11635       button.innerHTML = googleLoginIcon(theme, customColor);
11636       break;
11637     case 'FACEBOOK':
11638       button.innerHTML = facebookLoginIcon(theme, customColor);
11639       break;
11640     case 'APPLE':
11641       button.innerHTML = appleLoginIcon(theme, customColor);
11642       break;
11643     case 'WHATSAPP':
11644       button.innerHTML = whatsappLoginIcon(theme, customColor);
11645       break;
11646     case 'MICROSOFT':
11647       button.innerHTML = microsoftLoginIcon(theme, customColor);
11648       break;
11649     case 'TWITTER':
11650       button.innerHTML = twitterLoginIcon(theme, customColor);
11651       break;
11652     case 'AMAZON':
11653       button.innerHTML = amazonLoginIcon(theme, customColor);
11654       break;
11655     case 'INSTAGRAM':
11656       button.innerHTML = instagramLoginIcon(theme, customColor);
11657       break;
11658     case 'MAGIC_LINK':
11659       button.innerHTML = magicLinkLoginIcon(theme, customColor);
11660       break;
11661     case 'MOBILE_APP':
11662       button.innerHTML = mobileAppLoginIcon(theme, customColor);
11663       break;
11664     case 'LINKEDIN':
11665       button.innerHTML = linkedinLoginIcon(theme, customColor);
11666       break;
11667   }
11668   
11669   // Add text if format isn't icon-only and buttonText is provided
11670   if (format !== "wrapperFlexContainerOnlyLogo" && buttonText) {
11671     button.innerHTML += `<p>${buttonText}</p>`;
11672   }
11673   
11674   // Apply styling
11675   // Shadow
11676   if (hasShadow) {
11677     const shadowProperties = `0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1)`;
11678     button.style["box-shadow"] = shadowProperties;
11679   }
11680   
11681   // Border radius
11682   const radiusProperties =
11683     style === "rounded"
11684       ? "8px"
11685       : style === "square"
11686       ? "0px"
11687       : style === "fullRounded"
11688       ? format === "wrapperFlexContainerOnlyLogo"
11689         ? "50%"
11690         : "50px"
11691       : undefined;
11692   button.style["border-radius"] = radiusProperties;
11693   
11694   // Size
11695   const sizeProperties =
11696     size === "medium"
11697       ? "12px"
11698       : size === "small"
11699       ? "8px"
11700       : size === "large"
11701       ? "16px"
11702       : "8px";
11703 
11704   button.style["padding-block"] = sizeProperties;
11705 
11706   // Format styling
11707   if (format) {
11708     if (
11709       format === "contentFlexReverse" ||
11710       format === "contentFlexCenterReverse"
11711     ) {
11712       const flexDir = `row-reverse`;
11713       button.style["flex-direction"] = flexDir;
11714     }
11715     
11716     if (
11717       format === "contentFlexCenter" ||
11718       format === "contentFlexCenterReverse"
11719     ) {
11720       const justifyContent = `center`;
11721       button.style["justify-content"] = justifyContent;
11722     } else if (
11723       format === "contentFlex" ||
11724       format === "contentFlexReverse"
11725     ) {
11726       const buttonTextElement = button.querySelector("p");
11727       if (buttonTextElement) {
11728         buttonTextElement.style["flex-grow"] = 1;
11729         buttonTextElement.style["text-align"] = "center";
11730       }
11731     }
11732 
11733     if (format === "wrapperFlexContainerOnlyLogo" && rootRef) {
11734       rootRef.style["flex-direction"] = "row";
11735       rootRef.style["gap"] = "8px";
11736       rootRef.style["display"] = "flex";
11737       rootRef.style["flex-wrap"] = "wrap";
11738 
11739       const sizeMapping = {
11740         small: "52px",
11741         medium: "62px",
11742         large: "72px",
11743       };
11744       const buttonSize = sizeMapping[size] || "52px";
11745 
11746       button.style["margin"] = 0;
11747       button.style["width"] = buttonSize;
11748       button.style["height"] = buttonSize;
11749       button.style["display"] = "flex";
11750       button.style["align-items"] = "center";
11751       button.style["justify-content"] = "center";
11752 
11753       const svgElement = button.querySelector("svg");
11754       if (svgElement) {
11755         svgElement.style["flex"] = "none";
11756       }
11757     }
11758   }
11759 
11760   // Color scheme styling
11761   if (colorScheme === "black") {
11762     button.classList.add("scheme-black");
11763   } else if (colorScheme === "white") {
11764     button.classList.add("scheme-white");
11765   } else if (colorScheme === "custom") {
11766     button.style["background-color"] = backgroundColor;
11767     button.style["color"] = textColor;
11768     button.style["border-color"] = outlineColor;
11769 
11770     const darkenColor = (color, percentage) => {
11771       const value = parseInt(color.slice(1), 16);
11772       const r = Math.max(0, ((value >> 16) & 0xff) - (0xff * percentage));
11773       const g = Math.max(0, ((value >> 8) & 0xff) - (0xff * percentage));
11774       const b = Math.max(0, (value & 0xff) - (0xff * percentage));
11775       return `rgb(${Math.round(r)}, ${Math.round(g)}, ${Math.round(b)})`;
11776     };
11777 
11778     button.addEventListener("mouseover", () => {
11779       button.style["background-color"] = darkenColor(backgroundColor, 0.2);
11780     });
11781     button.addEventListener("mouseout", () => {
11782       button.style["background-color"] = backgroundColor;
11783     });
11784   } else if (colorScheme === "match") {
11785     button.classList.add("scheme-match");
11786   } else if (colorScheme === "matchOutline") {
11787     button.classList.add("scheme-match-outline");
11788   }
11789   
11790   // Add click event listener if host is provided
11791   if (host) {
11792     button.addEventListener("click", () => 
11793       onClickSocialLogin({ provider: provider.toLowerCase(), host })
11794     );
11795   }
11796   
11797   return button;
11798 }
11799 
11800 function setupSocialLoginButtons(config, rootRef, data, host) {
11801   // Clear any existing content
11802   rootRef.innerHTML = '';
11803 
11804   const sortedEnabledProviders = config
11805     .filter(c => c.enabledWeb)
11806     .sort((a, b) => a.position - b.position);
11807 
11808   sortedEnabledProviders.forEach(provider => {
11809     const key = provider.provider;
11810     const lowerKey = key.toLowerCase();
11811 
11812     const buttonText = data.format !== "wrapperFlexContainerOnlyLogo"
11813       ? (lowerKey === 'twitter'
11814           ? data.buttonList.twitter.replace('Twitter', 'X')
11815           : data.buttonList[lowerKey])
11816       : null;
11817 
11818     const button = createSocialLoginButton(key, {
11819       theme: data.colorScheme || 'match',
11820       customColor: data.textColor,
11821       format: data.format,
11822       buttonText: buttonText,
11823       hasShadow: data.hasShadow !== undefined ? data.hasShadow : true,
11824       style: data.style,
11825       size: data.size,
11826       colorScheme: data.colorScheme,
11827       backgroundColor: data.backgroundColor,
11828       textColor: data.textColor,
11829       outlineColor: data.outlineColor,
11830       rootRef: rootRef,
11831       host: host
11832     });
11833 
11834     rootRef.appendChild(button);
11835   });
11836 
11837   return rootRef;
11838 }
11839 
11840 function updateAppearance({ formRef, rootRef, host }) {
11841   if (!formRef) return;
11842 
11843   const data = bitloginCache.appearance || {
11844     style: "square",
11845     hasShadow: false,
11846     colorScheme: "match",
11847     backgroundColor: "#FFFFFF",
11848     outlineColor: "#000000",
11849     textColor: "#000000",
11850     position: "bottom",
11851     hideDivider: "false",
11852     dividerText: "OR",
11853     size: "small",
11854     format: "contentFlex",
11855     language: "en",
11856     buttonText: "Continue with",
11857     redirectLink: "/account",
11858     googleOneTap: true,
11859     googleOneTapBanner: true,
11860     customerTag: "bitLogin",
11861     redirectOneTapDesktop: null,
11862     redirectOneTapMobile: null,
11863     buttonList: {
11864       google: "Continue with Google",
11865       facebook: "Continue with Facebook",
11866       apple: "Continue with Apple",
11867       whatsapp: "Continue with WhatsApp",
11868       microsoft: "Continue with Microsoft",
11869       twitter: "Continue with X",
11870       amazon: "Continue with Amazon",
11871       instagram: "Continue with Instagram",
11872       magic_link: "Continue with Magic Link",
11873       mobile_app: "Continue with Mobile App",
11874       linkedin: "Continue with LinkedIn",
11875     },
11876   };
11877 
11878   // Use the new setupSocialLoginButtons function to create and configure all buttons
11879   setupSocialLoginButtons(bitloginCache.config, rootRef, data, host);
11880 
11881   let divider;
11882 
11883   if (!data.hideDivider) {
11884     divider = document.createElement("div");
11885     const dividerStyle = "text-align:center;margin-block:16px";
11886     divider.setAttribute("style", dividerStyle);
11887     divider.innerHTML = data.dividerText;
11888   }
11889 
11890   if (data.position === "bottom") {
11891     if (divider) {
11892       formRef.appendChild(divider);
11893     }
11894     formRef.appendChild(rootRef);
11895   } else if (data.position === "top") {
11896     if (divider) {
11897       formRef.prepend(divider);
11898     }
11899     formRef.prepend(rootRef);
11900   }
11901 }
11902 
11903 
11904 async function onClickSocialLogin({ provider, host }) {
11905   const rand = Math.random().toString();
11906 
11907   const locationQueryString = bitloginCache.location
11908     ? `&${objectToQueryString(bitloginCache.location)}`
11909     : "";
11910 
11911   const width = 800;
11912   const height = 600;
11913   const left = (window.screen.width / 2) - (width / 2);
11914   const top = (window.screen.height / 2) - (height / 2) - 50;
11915 
11916   if(provider === 'whatsapp') {
11917     window.open(
11918       `/apps/bitlogin/whatsapp${locationQueryString ? `?${locationQueryString}` : ''}`,
11919       "mywindow",
11920       `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`
11921     );
11922   } else {
11923     window.open(
11924       `${apiUrl}/login/${provider}?referrerId=${rand}&shop=${host}${locationQueryString}`,
11925       "mywindow",
11926       `menubar=1,resizable=1,width=${width},height=${height},top=${top},left=${left}`
11927     );
11928   }
11929 }
11930 
11931 function objectToQueryString(obj) {
11932   return Object.keys(obj)
11933     .map((key) => {
11934       return encodeURIComponent(key) + "=" + encodeURIComponent(obj[key]);
11935     })
11936     .join("&");
11937 }
11938 
11939 async function getLocation() {
11940   if (locationCacheSet) return;
11941 
11942   try {
11943     const response = await fetch("https://ipapi.co/json/");
11944 
11945     if (!response.ok) {
11946       console.error(`error retrieving location...`, response.status);
11947       errorLocation = true;
11948     } else {
11949       const data = await response.json();
11950 
11951       const { city, region, country_name, country_code } = data;
11952 
11953       const formattedLocationData = {
11954         city,
11955         region,
11956         country_name,
11957         country_code,
11958       };
11959 
11960       bitloginCache.location = formattedLocationData;
11961       locationCacheSet = true;
11962       errorLocation = false;
11963     }
11964   } catch (err) {
11965     console.error(`error fetching location`, err);
11966     errorLocation = true;
11967   }
11968 }
11969 
11970 function post(params) {
11971   // The rest of this code assumes you are not using a library.
11972   // It can be made less verbose if you use one.
11973   const form = document.createElement("form");
11974   form.method = "post";
11975   form.action = `/account/login`;
11976   form.acceptCharset = "UTF-8";
11977   form.setAttribute("data-login-with-shop-sign-in", "true");
11978   form.setAttribute("novalidate", "novalidate");
11979 
11980   for (const key in params) {
11981     if (params.hasOwnProperty(key)) {
11982       const hiddenField = document.createElement("input");
11983       hiddenField.type = "hidden";
11984       hiddenField.name = key;
11985       hiddenField.value = params[key];
11986 
11987       form.appendChild(hiddenField);
11988     }
11989   }
11990 
11991   document.body.appendChild(form);
11992   form.submit();
11993 }
11994 
11995 async function setupOneTap({ host, checkoutUrl }) {
11996   if (oneTapSet) return;
11997 
11998   const redirectOneTapDesktop = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapDesktop || '[]'));
11999   const redirectOneTapMobile = JSON.parse(JSON.stringify(bitloginCache.appearance.redirectOneTapMobile || '[]'));
12000 
12001   const isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);
12002   const redirectList = JSON.parse(isMobile ? redirectOneTapMobile : redirectOneTapDesktop);
12003 
12004   const currentPath = window.location.pathname.toLowerCase();
12005   const currentUrl = window.location.href.toLowerCase();
12006 
12007   const shouldHideGoogleOneTap = redirectList.some(({ value }) => {
12008     switch (value) {
12009       case 'home':
12010         return currentPath === '/';
12011       case 'product':
12012         return currentPath.startsWith('/products/');
12013       case 'collections':
12014         return currentPath.startsWith('/collections');
12015       case 'cart':
12016         return currentPath === '/cart';
12017       case 'checkout':
12018         return currentPath.startsWith('/checkouts') && !currentPath.includes('thank_you');
12019       case 'thank_you':
12020         return currentPath.includes('/thank_you');
12021       case 'account':
12022         return currentPath.startsWith('/account');
12023       case 'pages':
12024         return currentPath.startsWith('/pages');
12025       case 'blogs':
12026         return currentPath === '/blogs' || currentPath === '/blogs/news';
12027       case 'blog_post':
12028         return currentPath.startsWith('/blogs/') && currentPath.split('/').length > 3;
12029       default:
12030         return false;
12031     }
12032   });
12033 
12034   if (shouldHideGoogleOneTap) return;
12035 
12036   const oneTapClientId = bitloginCache.config.find(
12037     (config) => config.provider === "GOOGLE"
12038   )?.clientId;
12039 
12040   const isLoggedIn = false;
12041 
12042   if (bitloginCache.appearance.googleOneTap && oneTapClientId && !isLoggedIn) {
12043     const googleOneTapButton = document.createElement("div");
12044     googleOneTapButton.setAttribute("id", "g_id_onload");
12045     googleOneTapButton.setAttribute("data-client_id", oneTapClientId);
12046     googleOneTapButton.setAttribute("data-context", "signin");
12047     googleOneTapButton.setAttribute(
12048       "data-callback",
12049       "handleGoogleOneTapResponse"
12050     );
12051     googleOneTapButton.setAttribute("data-itp_support", "true");
12052 
12053     const googleOneTapScript = document.createElement("script");
12054 
12055     googleOneTapScript.innerHTML += `
12056           function handleGoogleOneTapResponse(response) {
12057               if (response.credential) {
12058                   const idToken = response.credential;
12059                   fetch('${bitLoginBaseUrl}/bitlogin/api/login/google-one-tap', {
12060                       method: 'POST',
12061                       headers: { 'Content-Type': 'application/json' },
12062                       body: JSON.stringify({ idToken, shop: "${host}", ...bitloginCache.location })
12063                   }).then(response => {
12064                       response.json().then((data) => {
12065                         post(
12066                           JSON.parse(
12067                             JSON.stringify({
12068                               "customer[email]": data.email,
12069                               "customer[password]": data.password,
12070                               form_type: "customer_login",
12071                               utf8: "?",
12072                               return_url: redirectUrl,
12073                             })
12074                           )
12075                         );
12076                       });  
12077                   }).catch(error => {
12078                       console.error('Error occurred:', error);
12079                   });
12080               } else {
12081                   console.error('No credential available');
12082               }
12083           }
12084        `;
12085 
12086     document.body.append(googleOneTapButton);
12087     document.body.append(googleOneTapScript);
12088   }
12089 
12090   oneTapSet = true;
12091 }
12092 
12093 const googleLoginIcon = (
12094   theme,
12095   customColor
12096 ) => `
12097 ${
12098   theme === "match" || theme === "matchOutline" || theme === "custom"
12099     ? `<svg
12100     xmlns='https://kucingair.com/fotobaka/logopub.png'
12101     xmlns:v='https://vecta.io/nano'
12102     width='24'
12103     height='24'
12104     viewBox='0 0 186.69 190.5'
12105   >
12106     <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="${
12107       theme === "custom" ? customColor : "#4285f4"
12108     }"/><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="${
12109         theme === "custom" ? customColor : "#34a853"
12110       }"/><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="${
12111         theme === "custom" ? customColor : "#fbbc05"
12112       }"/><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="${
12113         theme === "custom" ? customColor : "#ea4335"
12114       }" clip-path="none" mask="none"/></g>
12115   </svg>`
12116     : `<svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="25" height="25" viewBox="0 0 25 25" fill="none">
12117 <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="${
12118         theme !== "black" ? "black" : "white"
12119       }"/>
12120 <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="${
12121         theme !== "black" ? "black" : "white"
12122       }"/>
12123 <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="${
12124         theme !== "black" ? "black" : "white"
12125       }"/>
12126 <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="${
12127         theme !== "black" ? "black" : "white"
12128       }"/>
12129 </svg>`
12130 }`;
12131 
12132 const appleLoginIcon = (
12133   theme,
12134   customColor
12135 ) => `<svg width="24" height="24" viewBox="0 0 19 24" fill="none" xmlns="https://kucingair.com/fotobaka/logopub.png">
12136 <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="${
12137   theme === "custom"
12138     ? customColor
12139     : theme === "match" || theme === "black"
12140     ? "white"
12141     : "black"
12142 }"/>
12143 </svg>`;
12144 
12145 const facebookLoginIcon = (
12146   theme,
12147   customColor
12148 ) => `
12149 ${
12150   theme === "match" || theme === "matchOutline" || theme === "custom"
12151     ? `<svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="25" viewBox="0 0 24 25" fill="none">
12152     <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="${
12153       theme === "custom" ? customColor : theme === "match" ? "white" : "#1977F3"
12154     }"/>
12155     <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="${
12156       theme === "match" ? "#1778f2" : "transparent"
12157     }"/>
12158     </svg>`
12159     : `<svg xmlns="https://kucingair.com/fotobaka/logopub.png" width="24" height="25" viewB
12159ox="0 0 24 25" fill="none">
12160 <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="${
12161         theme === "black" ? "white" : "black"
12162       }"/>
12163 <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="${
12164         theme === "black" ? "black" : "white"
12165       }"/>
12166 </svg>`
12167 }`;
12168 
12169 const whatsappLoginIcon = (
12170   theme,
12171   customColor
12172 ) => `<svg
12173   viewBox="0 0 24 24"
12174   fill="none"
12175   width="24"
12176   height="25"
12177   xmlns="https://kucingair.com/fotobaka/logopub.png"
12178 >
12179   <g id="SVGRepo_bgCarrier" stroke-width="0"></g>
12180   <g
12181     id="SVGRepo_tracerCarrier"
12182     stroke-linecap="round"
12183     stroke-linejoin="round"
12184   ></g>
12185   <g id="SVGRepo_iconCarrier">
12186     <path
12187       fill-rule="evenodd"
12188       clip-rule="evenodd"
12189       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"
12190       fill="${
12191         theme === "match" || theme === "black"
12192           ? "#ffffff"
12193           : theme === "white"
12194           ? "#000000"
12195           : theme === "matchOutline"
12196           ? "#25d366"
12197           : customColor
12198       }"
12199     ></path>
12200   </g>
12201 </svg>`;
12202 
12203 const microsoftLoginIcon = (
12204   theme,
12205   customColor
12206 ) => `<svg
12207 xmlns="https://kucingair.com/fotobaka/logopub.png"
12208 width="25"
12209 height="25"
12210 viewBox="0 0 48 48">
12211 <path fill="${
12212   theme === "match" || theme == "matchOutline"
12213     ? "#ff5722"
12214     : theme === "black"
12215     ? "#ffffff"
12216     : theme === "white"
12217     ? "#000000"
12218     : customColor
12219 }" d="M6 6H22V22H6z" transform="rotate(-180 14 14)"></path>
12220 <path
12221   fill="${
12222     theme === "match" || theme == "matchOutline"
12223       ? "#4caf50"
12224       : theme === "black"
12225       ? "#ffffff"
12226       : theme === "white"
12227       ? "#000000"
12228       : customColor
12229   }"
12230   d="M26 6H42V22H26z"
12231   transform="rotate(-180 34 14)"></path>
12232 <path
12233   fill="${
12234     theme === "match" || theme == "matchOutline"
12235       ? "#ffc107"
12236       : theme === "black"
12237       ? "#ffffff"
12238       : theme === "white"
12239       ? "#000000"
12240       : customColor
12241   }"
12242   d="M26 26H42V42H26z"
12243   transform="rotate(-180 34 34)"></path>
12244 <path fill="${
12245   theme === "match" || theme == "matchOutline"
12246     ? "#03a9f4"
12247     : theme === "black"
12248     ? "#ffffff"
12249     : theme === "white"
12250     ? "#000000"
12251     : customColor
12252 }" d="M6 26H22V42H6z" transform="rotate(-180 14 34)"></path>
12253 </svg>`;
12254 
12255 const twitterLoginIcon = (
12256   theme,
12257   customColor
12258 ) => `<svg
12259 xmlns="https://kucingair.com/fotobaka/logopub.png"
12260 width="25"
12261 height="25"
12262 viewBox="0 0 48 48">
12263 <polygon fill="${
12264   theme === "match" || theme === "black"
12265     ? "#ffffff"
12266     : theme === "matchOutline" || theme === "white"
12267     ? "#000000"
12268     : customColor
12269 }" points="41,6 9.929,42 6.215,42 37.287,6"></polygon>
12270 <polygon
12271   fill="${
12272     theme === "match" || theme === "black"
12273       ? "#000000"
12274       : theme === "matchOutline" || theme === "white"
12275       ? "#ffffff"
12276       : customColor
12277   }"
12278   fill-rule="evenodd"
12279   points="31.143,41 7.82,7 16.777,7 40.1,41"
12280   clip-rule="evenodd"></polygon>
12281 <path
12282   fill="${
12283     theme === "match" || theme === "black"
12284       ? "#ffffff"
12285       : theme === "matchOutline" || theme === "white"
12286       ? "#000000"
12287       : customColor
12288   }"
12289   d="M15.724,9l20.578,30h-4.106L11.618,9H15.724 M17.304,6H5.922l24.694,36h11.382L17.304,6L17.304,6z"></path>
12290 </svg>`;
12291 
12292 const amazonLoginIcon = (theme, customColor) => `
12293  <svg
12294       xmlns="https://kucingair.com/fotobaka/logopub.png"
12295       x="0px"
12296       y="0px"
12297       width="25"
12298       height="25"
12299       viewBox="0 0 50 50"
12300     >
12301       <path
12302         fill="${
12303           theme === "black"
12304             ? "#ffffff"
12305             : theme === "matchOutline"
12306             ? "#FF9900"
12307             : theme === "white" || theme === "match"
12308             ? "#000000"
12309             : customColor
12310         }"
12311         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"
12312       ></path>
12313     </svg>`;
12314 
12315 const instagramLoginIcon= (theme, customColor) => `
12316     <svg
12317       width="25"
12318       height="25"
12319       viewBox="0 0 25 24"
12320       fill="none"
12321       xmlns="https://kucingair.com/fotobaka/logopub.png">
12322       <path
12323         fill-rule="evenodd"
12324         clip-rule="evenodd"
12325         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.
1232564321C8.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"
12326         fill="url(#paint0_radial_378_3535)" />
12327       <path
12328         fill-rule="evenodd"
12329         clip-rule="evenodd"
12330         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"
12331         fill="url(#paint0_radial_378_3535)" />
12332       <path
12333         fill-rule="evenodd"
12334         clip-rule="evenodd"
12335         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.
1233564321C8.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"
12336         fill="url(#paint0_radial_378_3535)" />
12337       <path
12338         fill-rule="evenodd"
12339         clip-rule="evenodd"
12340         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"
12341         fill="url(#paint1_radial_378_3535)" />
12342       <defs>
12343         <radialGradient
12344           id="paint0_radial_378_3535"
12345           cx="0"
12346           cy="0"
12347           r="1"
12348           gradientUnits="userSpaceOnUse"
12349           gradientTransform="translate(17.4 22.7) rotate(-115.776) scale(27.2737 40.5665)">
12350           <stop offset="0.24392" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF1B90' : customColor}" />
12351           <stop offset="0.436673" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#F80261' : customColor}" />
12352           <stop offset="0.688476" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#ED00C0' : customColor}" />
12353           <stop offset="0.776787" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#C500E9' : customColor}" />
12354           <stop offset="0.893155" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#7017FF' : customColor}" />
12355         </radialGradient>
12356         <radialGradient
12357           id="paint1_radial_378_3535"
12358           cx="0"
12359           cy="0"
12360           r="1"
12361           gradientUnits="userSpaceOnUse"
12362           gradientTransform="translate(7.75 19.31) rotate(-57.4396) scale(11.8174 12.2918)">
12363           <stop stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FFD600' : customColor}" />
12364           <stop offset="0.484375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FF6930' : customColor}" />
12365           <stop offset="0.734375" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" />
12366           <stop offset="1" stop-color="${theme === 'black' ? '#ffffff' : theme === 'white' ? '#000000' : theme === 'match' || theme === 'matchOutline' ? '#FE3B36' : customColor}" stop-opacity="0" />
12367         </radialGradient>
12368       </defs>
12369     </svg>`;
12370 
12371 const magicLinkLoginIcon = (theme, customColor) => `
12372   <svg
12373     xmlns="https://kucingair.com/fotobaka/logopub.png"
12374     width="25"
12375     height="25"
12376     fill="none"
12377     viewBox="0 0 25 25"
12378   >
12379     <path
12380       fill="${
12381         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' || theme === 'white' ? '#000000' : customColor
12382       }"
12383       fillRule="evenodd"
12384       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"
12385       clipRule="evenodd"
12386     ></path>
12387   </svg>`;
12388 
12389 const mobileAppLoginIcon = (theme, customColor) => `
12390   <svg
12391     width="20"
12392     height="24"
12393     viewBox="0 0 12 16"
12394     fill="none"
12395     xmlns="https://kucingair.com/fotobaka/logopub.png"
12396   >
12397     <path
12398       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"
12399       fill=${
12400         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#FD823E' : theme === 'white' ? '#000000' : customColor
12401       }
12402     />
12403   </svg>
12404 `;
12405 
12406 const linkedinLoginIcon = (theme, customColor) => `
12407   <svg
12408     xmlns="https://kucingair.com/fotobaka/logopub.png"
12409     width="25"
12410     height="24"
12411     viewBox="0 0 25 24"
12412     fill="none"
12413   >
12414     <path
12415       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"
12416       fill=${
12417         theme === 'match' || theme === 'black' ? '#ffffff' : theme === 'matchOutline' ? '#0A66C2' : theme === 'white' ? '#000000' : customColor
12418       }
12419     />
12420   </svg>
12421 `;
12422 
12423 function isElementVisible(element) {
12424   return (
12425     document.body.contains(element) &&
12426     getComputedStyle(element).display !== "none" &&
12427     getComputedStyle(element).visibility !== "hidden" &&
12428     getComputedStyle(element).opacity !== "0" &&
12429     !element.hasAttribute("hidden") &&
12430     !isAncestorHidden(element)
12431   );
12432 }
12433 
12434 function isAncestorHidden(element) {
12435   let parent = element.parentElement;
12436   while (parent) {
12437     if (
12438       getComputedStyle(parent).display === "none" ||
12439       getComputedStyle(parent).visibility === "hidden" ||
12440       getComputedStyle(parent).opacity === "0" ||
12441       parent.hasAttribute("hidden")
12442     ) {
12443       return true;
12444     }
12445     parent = parent.parentElement;
12446   }
12447   return false;
12448 }
12449 
12450 function showAlert(message) {
12451   const alertBox = document.createElement("div");
12452   alertBox.textContent = message;
12453   alertBox.style.position = "fixed";
12454   alertBox.style.top = "20px";
12455   alertBox.style.right = "-300px"; // Start off-screen
12456   alertBox.style.backgroundColor = "#000000"; // Black background
12457   alertBox.style.color = "#ffffff"; // White text
12458   alertBox.style.padding = "15px";
12459   alertBox.style.borderRadius = "8px";
12460   alertBox.style.zIndex = "1000";
12461   alertBox.style.transition =
12462     "right 0.5s ease-in-out, opacity 0.5s ease-in-out"; // Transition for sliding and fading
12463   alertBox.style.boxShadow = "0 2px 5px rgba(0, 0, 0, 0.2)"; // Optional shadow for depth
12464 
12465   document.body.appendChild(alertBox);
12466 
12467   // Slide in
12468   requestAnimationFrame(() => {
12469     alertBox.style.right = "20px"; // Move into view
12470     alertBox.style.opacity = "1"; // Ensure opacity is set to 1
12471   });
12472 
12473   // Slide out and remove the alert after a few seconds
12474   setTimeout(() => {
12475     alertBox.style.opacity = "0"; // Fade out
12476     alertBox.style.right = "-300px"; // Move out of view
12477 
12478     // Wait for the transition to finish before removing the element
12479     setTimeout(() => {
12480       document.body.removeChild(alertBox);
12481     }, 500); // Match this duration with the exit transition duration
12482   }, 3000);
12483 }
12484 </script>
12484
12485 
12486 <style>
12487     .daftarku-fixed-footer {
12488             display: flex;
12489             justify-content: space-around;
12490             position: fixed;
12491             background: linear-gradient(to bottom, #000000 0%, #3d3d3d, #000000 100%);
12492             box-shadow: 0 0 12px #0a9196;
12493             outline: none;
12494             padding: 5px 0;
12495             box-shadow: 0 0 0 0 2px 2px #198f01;
12496             left: 0;
12497             right: 0;
12498             bottom: 0;
12499             z-index: 99;
12500             border-radius: 40px 40px 0px 0px;
12501             border-style:dashed;
12502             
12503         }
12504 
12505         .daftarku-fixed-footer a {
12506             flex-basis: calc((100% - 15px*6)/ 5);
12507             text-decoration: none;
12508             display: flex;
12509             flex-direction: column;
12510             justify-content: center;
12511             align-items: center;
12512             color: #fff;
12513             max-width: 75px;
12514             font-size: 12px;
12515             font-family: Ubuntu, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
12516         }
12517 
12518         .daftarku-fixed-footer a:hover {
12519             font-weight: bold;
12520         }
12521 
12522         .daftarku-fixed-footer .center {
12523             transform: scale(1.5) translateY(-5px);
12524             background: center no-repeat;
12525             background-size: contain;
12526             background-color: inherit;
12527             border-radius: 50%;
12528         }
12529 
12530         .daftarku-fixed-footer img {
12531             max-width: 20px;
12532             margin-bottom: 0;
12533             max-height: 20px;
12534         }
12535 </style>
12536     
12537     <div class="daftarku-fixed-footer">
12538     <a href="https://lingkaransetan.com/pub/d7/" rel="nofollow noopener" target="_blank">
12539         <img layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/07/30/promo.png" alt="PROMOSI">
12540         PROMO
12541     </a>
12542     <a href="https://lingkaransetan.com/pub/d7/" rel="nofollow noopener" target="_blank">
12543         <img layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/07/30/login.png" alt="LOGIN">
12544         LOGIN
12545     </a>
12546     <a href="https://lingkaransetan.com/pub/d7/" rel="nofollow noopener" target="_blank" class="tada">
12547         <img layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/07/30/daftar.png" alt="DAFTAR">
12548         DAFTAR
12549     </a>
12550     <a href="https://lingkaransetan.com/pub/d7/" rel="nofollow noopener" target="_blank">
12551         <img layout="intrinsic" height="20px" width="20px" src="https://imgstore.io/images/2025/08/27/icon-whatsapp.png" alt="WHATSAPP">
12552         WHATSAPP
12553     </a>
12554     <a href="https://lingkaransetan.com/pub/d7/" rel="nofollow noopener" target="_blank"
12555         class="js_live_chat_link live-chat-link">
12556         <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">
12557         Live Chat
12558     </a>
12559 </div>
12560 </div>
12561 
12561<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaECcijrCfZBuqDzBWp3qSrBEZCqBUfQVz4CWGHWF91iaEw==" data-cf-beacon='{"version":"2024.11.0","token":"1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
12561
12562 
12562<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaECcijrCfZBuqDzBWp3qSrBEZCqBUfQVz4CWGHWF91iaEw==" data-cf-beacon='{"version":"2024.11.0","token":"35c0090c7d544a5ebd6cb76e1773c81a","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 2 bytes, line 12562
12562
12563<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaECcijrCfZBuqDzBWp3qSrBEZCqBUfQVz4CWGHWF91iaEw==" data-cf-beacon='{"version":"2024.11.0","token":"276768321f134ec5a0581a2bbb719892","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 12563
12563
12564<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaECcijrCfZBuqDzBWp3qSrBEZCqBUfQVz4CWGHWF91iaEw==" data-cf-beacon='{"version":"2024.11.0","token":"f0b1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX","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 12564
12564
12565<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaECcijrCfZBuqDzBWp3qSrBEZCqBUfQVz4CWGHWF91iaEw==" data-cf-beacon='{"version":"2024.11.0","token":"f0b1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX","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 12565
12565
12566<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaECcijrCfZBuqDzBWp3qSrBEZCqBUfQVz4CWGHWF91iaEw==" data-cf-beacon='{"version":"2024.11.0","token":"f0b1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX","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 12566
12566
12567<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaECcijrCfZBuqDzBWp3qSrBEZCqBUfQVz4CWGHWF91iaEw==" data-cf-beacon='{"version":"2024.11.0","token":"f0b1BVTrB47erypG3tevi1U9Fv6BbNUBEiuiX","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
12567
12568<!-- Code injected by live-server -->
12569<script>
12570	// <![CDATA[  <-- For SVG support
12571	if ('WebSocket' in window) {
12572		(function () {
12573			function refreshCSS() {
12574				var sheets = [].slice.call(document.getElementsByTagName("link"));
12575				var head = document.getElementsByTagName("head")[0];
12576				for (var i = 0; i < sheets.length; ++i) {
12577					var elem = sheets[i];
12578					var parent = elem.parentElement || head;
12579					parent.removeChild(elem);
12580					var rel = elem.rel;
12581					if (elem.href && typeof rel != "string" || rel.length == 0 || rel.toLowerCase() == "stylesheet") {
12582						var url = elem.href.replace(/(&|\?)_cacheOverride=\d+/, '');
12583						elem.href = url + (url.indexOf('?') >= 0 ? '&' : '?') + '_cacheOverride=' + (new Date().valueOf());
12584					}
12585					parent.appendChild(elem);
12586				}
12587			}
12588			var protocol = window.location.protocol === 'http:' ? 'ws://' : 'wss://';
12589			var address = protocol + window.location.host + window.location.pathname + '/ws';
12590			var socket = new WebSocket(address);
12591			socket.onmessage = function (msg) {
12592				if (msg.data == 'reload') window.location.reload();
12593				else if (msg.data == 'refreshcss') refreshCSS();
12594			};
12595			if (sessionStorage && !sessionStorage.getItem('IsThisFirstTime_Log_From_LiveServer')) {
12596				console.log('Live reload enabled.');
12597				sessionStorage.setItem('IsThisFirstTime_Log_From_LiveServer', true);
12598			}
12599		})();
12600	}
12601	else {
12602		console.error('Upgrade your browser. This Browser is NOT supported WebSocket for Live-Reloading.');
12603	}
12604	// ]]>
12605</script>
vendor: 2 bytes, line 12605
12605
12606<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaECcijrCfZBuqDzBWp3qSrBEZCqBUfQVz4CWGHWF91iaEw==" data-cf-beacon='{"version":"2024.11.0","token":"0226b7a84976445c8c382b9b0a59251c","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
12606
12607</body>
12608 
12608<script>'undefined'=== typeof _trfq || (window._trfq = []);'undefined'=== typeof _trfd && (window._trfd=[]),_trfd.push({'tccl.baseHost':'secureserver.net'},{'ap':'cpbh-mt'},{'server':'p3plmcpnl495834'},{'dcenter':'p3'},{'cp_id':'7597856'},{'cp_cl':'8'}) // Monitoring performance to make your website faster. If you want to opt-out, please contact web hosting support.</script>
12608<script src='https://img1.wsimg.com/traffic-assets/js/tccl.min.js'></script>
12608</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.