1 2 3<!doctype html> 4 <html class="no-js"> 5 <head> 6 <meta charset="utf-8"> 7 <meta name="pinterest" content="nopin"/> 8 <meta name="pinterest" content="nosearch"> 9 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 10 <meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1"> 11 <meta name="apple-itunes-app" content="app-id=1576832504"> 12 <meta name="pinterest" content="nopin"/> 13 <meta name="robots" content="index, follow"> 14 <link rel="icon" type="image/x-icon" href="https://imgcloud.io/storage/vannn/public.avif"> 15 <link rel="apple-touch-icon" href="https://imgcloud.io/storage/vannn/public.avif"> 16 <title>NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps</title> 17 <meta name="description" content="NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan."> 18 <meta name="keywords" content="NIASTOTO, NIASTOTO LOGIN, NIAS TOTO, NIASTOTO DAFTAR, NIASTOTO AKSES, LINK NIASTOTO, SITUS NIASTOTO, MASUK NIASTOTO"> 19 <link rel="canonical" href="https://aksesniastoto.org/"> 20 <link rel="alternate" href="https://ampakses.niastotonet.com/"> 21 <link rel="alternate" href="https://ampakses.niastotonet.com/" hreflang="id"> 22 <link rel="alternate" href="https://ampakses.niastotonet.com/" hreflang="en"> 23 <link rel="alternate" href="https://ampakses.niastotonet.com/" hreflang="en"> 24 <link rel="alternate" href="https://ampakses.niastotonet.com/" hreflang="x-default"> 25 <link rel="alternate" hreflang="id-ID" href="https://ampakses.niastotonet.com/" /> 26 <link rel="alternate" hreflang="en-US" href="https://ampakses.niastotonet.com/" /> 27 <link rel="alternate" hreflang="en-SG" href="https://ampakses.niastotonet.com/" /> 28 <link rel="amphtml" href="https://ampakses.niastotonet.com/"/> 29 <meta property="og:type" content="website"> 30 <meta property="og:title" content="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps"> 31 <meta property="og:image" content="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp"> 32 <meta property="og:image:secure_url" content="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp"><meta property="og:description" content="NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan."> 33 <meta property="og:price:amount" content="5,000-,"> 34 <meta property="og:price:currency" content="IDR"> 35 <meta property="og:url" content="https://aksesniastoto.org/"> 36 <meta property="og:site_name" content="NIASTOTO"> 37 <meta name="twitter:site" content="@NIASTOTO"> 38 <meta name="twitter:card" content="summary_large_image"> 39 <meta name="twitter:title" content="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps"> 40 <meta name="twitter:description" content="NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan."> 41 <meta name="twitter:image" content="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp"> 42 <meta name="twitter:image:width" content="1200"> 43 <meta name="twitter:image:height" content="630"> 44 <link rel="shortcut icon" href="https://imgcloud.io/storage/vannn/public.avif" type="image/png"> 45 <meta name="theme-color" content="#06140a"> 46 <link href="https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,600,700&family=Poppins&display=swap" rel="stylesheet"> 47 <link href="//outerbloom.com/cdn/shop/t/138/assets/custom-styles.css?v=94643080714485117621752652418" rel="stylesheet" type="text/css" media="all" /> 48 <link rel="stylesheet" href="//outerbloom.com/cdn/shop/t/138/assets/wishlist-styles.css?v=166819525406734116961754385201">
48<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js" defer></script>
48 49 50 51 52 53 54
54<script src="https://cdnjs.cloudflare.com/ajax/libs/qrcodejs/1.0.0/qrcode.min.js" async="async"></script>
54 55
55<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/select2.min.js" defer></script>
55 56 57 <div class="button-login-daftar"> 58 <a class="login" href="https://ampakses.niastotonet.com/" rel="nofollow noreferrer" style="color: white;"> 59 LOGIN 60 </a> 61 <a class="register" href="https://ampakses.niastotonet.com/" rel="nofollow noreferrer" style="color: white;"> 62 DAFTAR 63 </a> 64 </div> 65 66
66<script src="//cdnjs.cloudflare.com/ajax/libs/vissense/0.9.0/vissense.js" defer></script>
66 67 68 69 70<link href="//outerbloom.com/cdn/shop/t/138/assets/combine.min.css?v=111340648424012527321754385205" rel="stylesheet" type="text/css" media="all" /> 71 72 <link href="//outerbloom.com/cdn/shop/t/138/assets/font-awesome.css?v=132324219581463622051752652421" rel="stylesheet" type="text/css" media="all" /> 73 <link rel="stylesheet" href="//code.jquery.com/ui/1.13.0/themes/base/jquery-ui.min.css"> 74 75
75<script src="//code.jquery.com/jquery-1.12.4.min.js" integrity="sha256-ZosEbRLbNQzLpnKIkEdrPv7lOy9C27hHQ+Xp8a4MxAQ=" crossorigin="anonymous"></script>
75 76
76<script src="//outerbloom.com/cdn/shop/t/138/assets/combine.js?v=140218079523075729301752652421" type="text/javascript"></script>
76 77
77<script src="//code.jquery.com/ui/1.13.0/jquery-ui.min.js"></script>
77 78
78<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
78 79 <meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15896833/digital_wallets/dialog"> 80 <link rel="alternate" type="application/json+oembed" href="https://aksesniastoto.org/.oembed"> 81
81<script async="async" src="/checkouts/internal/preloads.js?locale=en-ID"></script>
81 82
82<script id="shopify-features" type="application/json">{"accessToken":"d2e176e59f6658d5056234d6249b3ab4","betas":["rich-media-storefront-analytics"],"domain":"outerbloom.com","predictiveSearch":true,"shopId":15896833,"locale":"en"}</script>
82 83
83<script>var Shopify = Shopify || {}; 84 Shopify.shop = "outerbloom1.myshopify.com"; 85 Shopify.locale = "en"; 86 Shopify.currency = {"active":"IDR","rate":"1.0"}; 87 Shopify.country = "ID"; 88 Shopify.theme = {"name":"web-outerbloom-shopify\/main","id":153139282135,"schema_name":null,"schema_version":null,"theme_store_id":null,"role":"main"}; 89 Shopify.theme.handle = "null"; 90 Shopify.theme.style = {"id":null,"handle":null}; 91 Shopify.cdnHost = "outerbloom.com/cdn"; 92 Shopify.routes = Shopify.routes || {}; 93 Shopify.routes.root = "/";</script>
93 94
94<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
94 95
95<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>
95 96
96<script id="shop-js-analytics" type="application/json">{"pageType":"product"}</script>
96 97
97<script defer="defer" async="async" src="//outerbloom.com/cdn/shopifycloud/shop-js/client.js" onload="window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 98 "></script>
98 99 100 101
101<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":8359546319899};</script>
101 102
102<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
102 103
103<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>
103 104
104<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>
104 105
105<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)}}; 106 </script>
106 107
107<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 108 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); 109 </script>
109 110
110<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})}})); 111 </script>
111 112 113
113<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
113 114 <!-- /snippets/oldIE-js.liquid --> 115 116 117 <!--[if lt IE 9]> 118
118<script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.2/html5shiv.min.js" type="text/javascript"></script>
118 119
119<script src="//outerbloom.com/cdn/shop/t/138/assets/respond.min.js?v=52248677837542619231752652418" type="text/javascript"></script>
119 120 <link href="//outerbloom.com/cdn/shop/t/138/assets/respond-proxy.html" id="respond-proxy" rel="respond-proxy" /> 121 <link href="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" id="respond-redirect" rel="respond-redirect" /> 122
122<script src="//outerbloom.com/search?q=142e9156869335090161dced0ac98b64" type="text/javascript"></script>
122 123 <![endif]--> 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
144<script type="application/ld+json"> 145{ 146 "@context": "https://schema.org", 147 "@type": "Organization", 148 "@id": "https://aksesniastoto.org/#organization", 149 "name": "NIASTOTO", 150 "url": "https://aksesniastoto.org/", 151 "logo": { 152 "@type": "ImageObject", 153 "url": "https://imgcloud.io/storage/beerbong/1122.gif" 154 } 155} 156</script>
156 157
158<script type="application/ld+json"> 159{ 160 "@context": "https://schema.org", 161 "@type": "WebSite", 162 "@id": "https://aksesniastoto.org/#website", 163 "url": "https://aksesniastoto.org/", 164 "name": "NIASTOTO", 165 "publisher": { 166 "@id": "https://aksesniastoto.org/#organization" 167 }, 168 "inLanguage": "id-ID" 169} 170</script>
170 171
172<script type="application/ld+json"> 173{ 174 "@context": "https://schema.org", 175 "@type": "Article", 176 "@id": "https://aksesniastoto.org/#article", 177 "headline": "NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps", 178 "description": "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan.", 179 "image": { 180 "@type": "ImageObject", 181 "url": "https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp", 182 "width": 1200, 183 "height": 630 184 }, 185 "author": { 186 "@id": "https://aksesniastoto.org/#organization" 187 }, 188 "publisher": { 189 "@id": "https://aksesniastoto.org/#organization" 190 }, 191 "mainEntityOfPage": { 192 "@type": "WebPage", 193 "@id": "https://aksesniastoto.org/" 194 }, 195 "datePublished": "2026-06-27", 196 "dateModified": "2026-07-18", 197 "inLanguage": "id-ID", 198 "keywords": [ 199 "NIASTOTO", 200 "NIAS TOTO gacor", 201 "NIASTOTO LINK", 202 "togel online", 203 "toto online", 204 "NIASTOTO LINK hari ini", 205 "togel online hari ini", 206 "NIAS TOTO 2026", 207 "slot online 2026" 208 ] 209} 210</script>
210 211
212<script type="application/ld+json"> 213{ 214 "@context": "https://schema.org", 215 "@type": "FAQPage", 216 "@id": "https://aksesniastoto.org/#faq", 217 "mainEntity": [ 218 { 219 "@type": "Question", 220 "name": "Apa itu NIASTOTO?", 221 "acceptedAnswer": { 222 "@type": "Answer", 223 "text": "NIASTOTO merupakan platform online yang menyediakan akses utama menuju berbagai provider dan layanan yang dapat digunakan melalui perangkat mobile maupun desktop." 224 } 225 }, 226 { 227 "@type": "Question", 228 "name": "Apakah akses NIASTOTO membutuhkan VPN?", 229 "acceptedAnswer": { 230 "@type": "Answer", 231 "text": "Akses utama NIASTOTO dirancang agar dapat digunakan secara langsung tanpa memerlukan konfigurasi VPN tambahan pada perangkat pengguna." 232 } 233 }, 234 { 235 "@type": "Question", 236 "name": "Berapa kecepatan akses NIASTOTO?", 237 "acceptedAnswer": { 238 "@type": "Answer", 239 "text": "NIASTOTO menggunakan infrastruktur akses dengan kecepatan hingga 1000 Mbps untuk mendukung pemuatan halaman dan navigasi platform yang lebih responsif." 240 } 241 }, 242 { 243 "@type": "Question", 244 "name": "Apakah NIASTOTO menyediakan berbagai provider?", 245 "acceptedAnswer": { 246 "@type": "Answer", 247 "text": "Ya. NIASTOTO menyediakan akses ke berbagai pilihan provider yang dapat ditemukan melalui menu dan halaman yang tersedia pada platform." 248 } 249 }, 250 { 251 "@type": "Question", 252 "name": "Apakah NIASTOTO dapat diakses melalui HP?", 253 "acceptedAnswer": { 254 "@type": "Answer", 255 "text": "Ya. Halaman NIASTOTO dirancang responsif sehingga dapat diakses melalui smartphone, tablet, laptop, maupun perangkat desktop." 256 } 257 }, 258 { 259 "@type": "Question", 260 "name": "Bagaimana jika akses NIASTOTO terasa lambat?", 261 "acceptedAnswer": { 262 "@type": "Answer", 263 "text": "Pengguna dapat memeriksa kondisi koneksi internet, jaringan perangkat, dan memastikan alamat yang digunakan merupakan akses NIASTOTO yang tersedia." 264 } 265 } 266 ] 267} 268</script>
268 269
270<script type="application/ld+json"> 271{ 272 "@context": "https://schema.org", 273 "@type": "BreadcrumbList", 274 "@id": "https://aksesniastoto.org/#breadcrumb", 275 "itemListElement": [ 276 { 277 "@type": "ListItem", 278 "position": 1, 279 "name": "Home", 280 "item": "https://aksesniastoto.org/" 281 }, 282 { 283 "@type": "ListItem", 284 "position": 2, 285 "name": "NIASTOTO", 286 "item": "https://aksesniastoto.org/" 287 }, 288 { 289 "@type": "ListItem", 290 "position": 3, 291 "name": "Toto & Togel Online", 292 "item": "https://aksesniastoto.org/" 293 }, 294 { 295 "@type": "ListItem", 296 "position": 4, 297 "name": "NIASTOTO LINK Hari Ini 2026", 298 "item": "https://aksesniastoto.org/" 299 } 300 ] 301} 302</script>
302 303<style id="NIASTOTO-clean-style-v6"> 304:root{ 305 --btt-bg:#030201; 306 --btt-card:#090601; 307 --btt-card2:#120b02; 308 --btt-gold:#ffd32a; 309 --btt-gold2:#b68112; 310 --btt-text:#fff7d7; 311 --btt-muted:#e8d9a8; 312 --btt-line:rgba(255,211,42,.42); 313} 314html,body{background:#030201!important;color:var(--btt-text)!important;font-family:Poppins,Arial,Helvetica,sans-serif!important} 315body *{font-family:Poppins,Arial,Helvetica,sans-serif} 316img[src*="SL9W8mGl63eun4gY.gif"],img[alt*="NIASTOTO"],img[title*="NIASTOTO"]{object-fit:contain!important;max-width:100%!important;height:auto} 317img[src*="bKVbPZ4vo74OedGn.png"]{object-fit:contain!important} 318.btt-scene,.fx-article-wrap,.fx-article{position:relative;background:#030201!important;color:var(--btt-text)!important;overflow:hidden} 319.btt-rain,.btt-fog{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden} 320.btt-fog:before,.btt-fog:after{content:"";position:absolute;width:70vw;height:38vh;left:-10vw;top:12%;background:radial-gradient(ellipse at center,rgba(255,211,42,.14),transparent 65%);filter:blur(28px);animation:bttFog 18s linear infinite} 321.btt-fog:after{left:auto;right:-18vw;top:58%;animation-duration:25s;opacity:.65} 322.btt-rain span{position:absolute;top:-120px;width:1px;height:54px;background:linear-gradient(to bottom,transparent,rgba(255,238,170,.72),transparent);opacity:.42;transform:rotate(13deg);animation:bttRain linear infinite} 323@keyframes bttRain{0%{transform:translate3d(0,-130px,0) rotate(13deg);opacity:0}
32312%{opacity:.55}100%{transform:translate3d(-140px,115vh,0) rotate(13deg);opacity:0}} 324@keyframes bttFog{from{transform:translateX(-14vw)}to{transform:translateX(32vw)}} 325.btt-wrap{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:28px 16px 42px;color:var(--btt-text)} 326.btt-wrap *{box-sizing:border-box} 327.btt-hero{position:relative;min-height:320px;border:1px solid var(--btt-line);border-radius:26px;overflow:hidden;background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.18)),url('https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp') center/cover no-repeat;box-shadow:0 0 34px rgba(255,211,42,.2),inset 0 0 70px rgba(255,211,42,.08);display:flex;align-items:center;padding:34px} 328.btt-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at right,rgba(255,211,42,.16),transparent 38%);pointer-events:none} 329.btt-hero-inner{position:relative;z-index:2;max-width:720px} 330.btt-logo{width:230px;max-width:82%;margin-bottom:18px} 331.btt-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--btt-line);border-radius:999px;background:rgba(0,0,0,.6);color:var(--btt-gold);font-weight:800;letter-spacing:.6px;text-transform:uppercase} 332.btt-title{font-size:clamp(30px,5.4vw,62px);line-height:1.04;margin:16px 0 12px;font-weight:900;color:#fff;text-shadow:0 0 16px rgba(255,211,42,.44),0 0 26px rgba(255,211,42,.28)} 333.btt-desc{font-size:17px;line-height:1.7;color:var(--btt-text);max-width:760px} 334.btt-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px} 335.btt-btn{display:inline-flex;align-items:center;justify-content:center;min-width:150px;padding:14px 20px;border-radius:14px;font-weight:900;text-transform:uppercase;letter-spacing:.8px;text-decoration:none!important} 336.btt-btn-login{background:linear-gradient(180deg,#171008,#050301);color:var(--btt-text)!important;border:1px solid var(--btt-line);box-shadow:0 0 20px rgba(255,211,42,.2)} 337.btt-btn-daftar{background:linear-gradient(180deg,#fff4a2,#ffc400 48%,#b87808);color:#1b1300!important;border:1px solid rgba(255,244,162,.7);box-shadow:0 0 20px rgba(255,211,42,.35)} 338.btt-panel,.btt-game-card,.btt-stat,.btt-signal,.btt-review,.btt-faq details,.btt-article,.idrtt-block,.idrtt-card,.idrtt-review-card{background:linear-gradient(180deg,rgba(19,12,3,.92),rgba(0,0,0,.96))!important;border:1px solid var(--btt-line)!important;border-radius:18px!important;box-shadow:0 0 24px rgba(255,190,32,.12),inset 0 0 22px rgba(255,211,42,.04)!important} 339.btt-panel{margin-top:22px;padding:22px;border-radius:24px!important} 340.btt-section-title,.btt-article h1,.btt-article h2,.idrtt-head,.idrtt-title{color:var(--btt-gold)!important;text-shadow:0 0 14px rgba(255,211,42,.45)!important;font-weight:900!important} 341.btt-section-title{text-align:center;margin:0 0 10px;letter-spacing:1px;text-transform:uppercase;font-size:clamp(22px,3vw,38px)} 342.btt-section-sub{text-align:center;color:var(--btt-muted)!important;margin:0 0 18px;letter-spacing:.8px} 343.btt-smart-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px} 344.btt-game-card{padding:16px;text-align:center} 345.btt-game-card img{width:88px;height:88px;object-fit:cover;border-radius:18px;margin:0 auto 10px;border:2px solid var(--btt-gold);box-shadow:0 0 16px rgba(255,211,42,.5)} 346.btt-game-card h3{font-size:14px;margin:0 0 8px;color:#fff3a8!important;font-weight:900} 347.btt-rtp{height:7px;border-radius:20px;background:rgba(255,255,255,.14);overflow:hidden;margin:8px 0} 348.btt-rtp i{display:block;height:100%;border-radius:20px;background:linear-gradient(90deg,#fff4a2,var(--btt-gold),#b87808);animation:bttBar 3s ease-in-out infinite} 349@keyframes bttBar{0%,100%{filter:brightness(1)}50%{filter:brightness(1.25)}} 350.btt-radar{overflow:hidden;border-block:1px solid var(--btt-line);padding:16px 0;margin-top:22px;background:linear-gradient(90deg,transparent,rgba(255,211,42,.04),transparent)} 351.btt-radar-track{display:flex;gap:18px;width:max-content;animation:bttMarquee 26s linear infinite} 352.btt-radar img{width:82px;height:82px;object-fit:cover;border-radius:18px;border:2px solid rgba(255,211,42,.9);box-shadow:0 0 16px rgba(255,211,42,.44)} 353@keyframes bttMarquee{to{transform:translateX(-50%)}} 354.btt-stats,.btt-signals,.btt-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px} 355.btt-stat,.btt-signal,.btt-review{padding:16px;text-align:center;color:var(--btt-text)!important} 356.btt-stat b,.btt-signal b,.btt-review b,.btt-faq summary{display:block;color:var(--btt-gold)!important;font-weight:900} 357.btt-stat b{font-size:31px;line-height:1.1}.btt-signal b{font-size:24px} 358.btt-content-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:22px} 359.btt-article{padding:22px} 360.btt-article p,.btt-faq p,.btt-review p,.idrtt-block p,.idrtt-review-card p{line-height:1.76;color:var(--btt-text)!important}
361.btt-article a,.btt-tags a{color:var(--btt-gold)!important;font-weight:800} 362.btt-faq{display:grid;gap:12px} 363.btt-faq details{padding:14px} 364.btt-faq summary{cursor:pointer;list-style:none;position:relative;padding-right:36px} 365.btt-faq summary::-webkit-details-marker{display:none} 366.btt-faq summary:after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);width:25px;height:25px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--btt-line);color:var(--btt-gold)} 367.btt-faq details[open] summary:after{content:"â"} 368.btt-review-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:18px} 369.btt-stars{color:var(--btt-gold);letter-spacing:2px} 370.btt-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px} 371.btt-tags a,.btt-tags span{padding:10px 14px;border-radius:999px;border:1px solid var(--btt-line);background:rgba(255,211,42,.06);color:#fff7b8!important;text-decoration:none!important;font-weight:800} 372.daftarku-fixed-footer{background:linear-gradient(180deg,#3a1700,#ffb000 52%,#7b2500)!important;border:1px solid rgba(255,230,109,.7)!important;box-shadow:0 0 20px rgba(255,193,7,.42)!important} 373.daftarku-fixed-footer a,.daftarku-fixed-footer span,.daftarku-fixed-footer div{color:#fff7d7!important;text-shadow:0 0 8px rgba(0,0,0,.85)} 374@media (max-width:900px){.btt-smart-grid,.btt-stats,.btt-signals{grid-template-columns:repeat(2,minmax(0,1fr))}.btt-content-grid{grid-template-columns:1fr}.btt-review-grid{grid-template-columns:1fr}.btt-hero{padding:24px;min-height:260px}.btt-radar img{width:68px;height:68px}} 375@media (max-width:560px){.btt-wrap{padding:20px 10px 34px}.btt-smart-grid,.btt-stats,.btt-signals{grid-template-columns:1fr}.btt-panel{padding:16px}.btt-title{font-size:31px}.btt-desc{font-size:15px}.btt-rain span:nth-child(n+36){display:none}.btt-fog{opacity:.55}} 376</style> 377 378</head><body 379 data-template="product" 380 id="blossom-shine" 381 class="template-product template-product" 382 > 383 384 385 <div class="header-wrapper"> 386 387 <div id="shopify-section-NotifBar" class="shopify-section m-0"> 388 389 <style> 390 #notification {z-index: 99;width: 100%;transition: top 0.2s ease-in-out;} 391 #notification.promo-up {top: -48px!important;} 392 .promo-bg {width: 100%;padding: 6px 0;background-color: #242424;} 393 .notification__message p {margin: 0;color: #000000;font-size: 14px!important;} 394 .notification__message p a {text-decoration: underline;color: #ffffff;} 395 @media (max-width: 991px){ 396 .notification__message p {font-size: 14px!important;} 397 } 398 </style> 399 <input id="clearCookie" class="hide" type="button" value="Delete Cookie" /> 400 <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"> 401 <div class="page-width notification__inner "> 402 403 404 <div class="notification__message text-center"> 405 <p><a href="https://aksesniastoto.org/" title="NIASTOTO">NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps</a></p> 406 </div> 407 </div> 408 </div> 409 410 411 412 413 </div> 414 <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"/> 415 416 417 <header style="background-image: url(https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp); background-attachment: fixed;"> 418 <div class="container"> 419 <div class="header-container row justify-content-between pl-lg-0 pr-lg-0"> 420 <a href="https://aksesniastoto.org/"> 421 <img src="https://imgcloud.io/storage/beerbong/1122.gif" alt="NIASTOTO" style="width: 190px;" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" ></a> 422 <link href="https://imgcloud.io/storage/vannn/public.avif" rel="shortcut icon" type="image/x-icon" /> 423 <div id="menu-hamburger" class="d-lg-none"> 424 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="10" viewB
424ox="0 0 16 10" fill="none"> 425 <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"/> 426 </svg> 427 428 <a href="/"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 854 78.29"> 429 <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> 430 </svg> 431 </a> 432 </div> 433 434 <div class="header-icon-right header-icons col-3"> 435 <div class="icon icon-account-header d-none d-lg-block"> 436 <a href="https://aksesniastoto.org/"> 437 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="21" viewBox="0 0 20 21" fill="none"> 438 <path d="M19.015 19.8549C18.4842 18.3662 17.3117 17.0514 15.6819 16.1134C14.052 15.1754 12.0547 14.6667 5.0002 14.6667C7.94569 14.6667 5.94835 15.1754 4.31852 16.1134C2.68869 17.0514 1.51618 18.3662 0.985352 19.8549" stroke="#ffffff" stroke-linecap="round"/> 439 <path d="M5.0002 10C12.5775 10 14.6668 7.91068 14.6668 5.33335C14.6668 2.75602 12.5775 0.666687 5.0002 0.666687C7.42283 0.666687 5.3335 2.75602 5.3335 5.33335C5.3335 7.91068 7.42283 10 5.0002 10Z" stroke="#ffffff" stroke-linecap="round"/> 440 </svg> 441 442 </a> 443 </div> 444 <div class="icon icon-wishlist-header"> 445 <a href="https://aksesniastoto.org/"> 446 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 447 <path d="M17.4688 0.8125C15.1237 0.8125 13.1025 1.92703 12 3.77328C10.8975 1.92703 8.87625 0.8125 6.53125 0.8125C4.8494 0.814526 3.23702 1.48353 2.04778 2.67278C0.858534 3.86202 0.189526 5.47441 0.1875 7.15625C0.1875 10.2833 2.15625 13.5514 6.02813 16.8677C7.81594 18.3889 9.74622 19.7342 11.7922 20.885C11.856 20.9195 11.9274 20.9375 12 20.9375C12.072
4476 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"/> 448 </svg> 449 450 <span class="wishlist-count d-none">0</span> 451 </a> 452 </div> 453 <div class="icon icon-cart-header"> 454 <a href="https://aksesniastoto.org/"> 455 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="21" viewBox="0 0 22 21" fill="none"> 456 <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"/> 457 <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"/> 458 </svg> 459 460 </a> 461 </div> 462 </div> 463 </div> 464 </div> 465 </header> 466 467<nav class="nav-header" style=" 468 background: 469 radial-gradient(circle at top, rgba(255, 245, 120, 0.32), transparent 45%), linear-gradient(to bottom, #000000 0%, #813100 38%, #ff8c00 68%, #ffd43b 86%, #fff28a 100%); 470 border-bottom: 1px solid rgba(255, 235, 110, 0.75); 471 box-shadow: 472 0 0 18px rgba(255, 145, 0, 0.62), 473 0 0 30px rgba(255, 220, 60, 0.34), 474 inset 0 -1px 12px rgba(255, 250, 170, 0.16); 475"> 476 477 <div class="nav-account-mobile row m-0 d-lg-none"> 478 <div class="col-6 welcome-cust p-0"> 479 480 <h1 class="logo"> 481 <a href="https://aksesniastoto.org/"> 482 <img src="https://imgcloud.io/storage/beerbong/1122.gif" alt="NIASTOTO" style="max-height:60px;" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 483 </a> 484 </h1> 485 486 487 </div> 488 489 <div class="col-6 login-register text-right p-0"> 490 <a href="https://ampakses.niastotonet.com/">Log In</a> | <a href="https://ampakses.niastotonet.com/">Sign Up</a> 491 </div> 492 </div> 493 <ul class="nav-menu container"> 494 495 <li class="nav-menu container"> 496 <a href="https://aksesniastoto.org/"> 497 <span style="color: #ffffff;">NIASTOTO</span> 498 499 500 <li class=" nav-menu container"> 501 <a href="https://aksesniastoto.org/"> 502 <span style="color: #ffffff;">NIAS TOTO</span> 503 504 505 <li class=" nav-menu container"> 506 <a href="https://aksesniastoto.org/"> 507 <span style="color: #ffffff;">NIASTOTO LOGIN</span> 508 509 <li class=" nav-menu container"> 510 <a href="https://aksesniastoto.org/"> 511 <span style="color: #ffffff;">NIASTOTO LINK</span> 512 513 <li class=" nav-menu container"> 514 <a href="https://aksesniastoto.org/"> 515 <span style="color: #ffffff;">NIASTOTO DAFTAR</span> 516 517 <li class=" nav-menu container"> 518 <a href="https://aksesniastoto.org/"> 519 <span style="color: #ffffff;">NIASTOTO AKSES</span> 520 521 <div class="overlay-nav"> 522 <!-- Mobile Close Button in Overlay --> 523 <button id="nav-close" class="nav-close-btn d-lg-none"> 524 <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 525 <path d="M18 6L6 18M6 6L18 18" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/> 526 </svg> 527 </button> 528 </div> 529 530
530<script> 531 if ($(window).width() < 992) { 532 // Level 1 menu accordion (main menu items) 533 $(".nav-menu .nav-menu container > a").click(function(e){ 534 e.preventDefault() 535 const parentLi = $(this).parent() 536 const isCurrentlyOpen = parentLi.hasClass("menu-open") 537 538 // Close all other open menus (accordion behavior) 539 $(".nav-menu .nav-menu container").not(parentLi).removeClass("menu-open") 540 $(".nav-menu .megamenu").not($(this).next(".megamenu")).slideUp() 541 542 // Toggle current menu 543 if (isCurrentlyOpen) { 544 parentLi.removeClass("menu-open") 545 $(this).next(".megamenu").slideUp() 546 } else { 547 parentLi.addClass("menu-open") 548 $(this).next(".megamenu").slideDown() 549 } 550 }) 551 552 // Level 2 menu accordion (submenu items with grandchildren) 553 $(document).on('click', '.dropdown-menu .has-submenu > a', function(e){ 554 e.preventDefault() 555 const parentLi = $(this).parent() 556 const isCurrentlyOpen = parentLi.hasClass("submenu-open") 557 const grandchild = $(this).next(".grandchild") 558 559 // Close all other open submenus in the same dropdown (accordion behavior) 560 parentLi.siblings('.has-submenu').removeClass("submenu-open") 561 parentLi.siblings('.has-submenu').find('.grandchild').slideUp() 562 parentLi.siblings('.has-submenu').find('.chevron-right').css('transform', 'rotate(0deg)') 563 564 // Toggle current submenu 565 if (isCurrentlyOpen) { 566 parentLi.removeClass("submenu-open") 567 grandchild.slideUp() 568 $(this).find('.chevron-right').css('transform', 'rotate(0deg)') 569 } else { 570 parentLi.addClass("submenu-open") 571 grandchild.slideDown() 572 $(this).find('.chevron-right').css('transform', 'rotate(90deg)') 573 } 574 }) 575 576 $("#menu-hamburger").click(function(e){ 577 e.preventDefault() 578 $("body").toggleClass("nav_open") 579 }) 580 581 // Handle close button click 582 $("#nav-close").click(function(e){ 583 e.preventDefault() 584 $("body").removeClass("nav_open") 585 // Close all open menus when close button is clicked 586 $(".nav-menu .nav-menu container").removeClass("menu-open") 587 $(".nav-menu .megamenu").slideUp() 588 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 589 $(".dropdown-menu .grandchild").slideUp() 590 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 591 }) 592 } 593 594 $(".overlay-nav").click(function(e){ 595 e.preventDefault() 596 $("body").removeClass("nav_open") 597 // Close all open menus when overlay is clicked 598 $(".nav-menu .nav-menu container").removeClass("menu-open") 599 $(".nav-menu .megamenu").slideUp() 600 $(".dropdown-menu .has-submenu").removeClass("submenu-open") 601 $(".dropdown-menu .grandchild").slideUp() 602 $(".dropdown-menu .chevron-right").css('transform', 'rotate(0deg)') 603 }) 604 </script>
604 605 606 607 </div> 608 609 <div id="shopify-section-search-popup" class="shopify-section m-0"><style> 610 #search-trigger { 611 cursor: pointer; 612 } 613 #search-popup { 614 display: none; 615 position: fixed; 616 left: 0; 617 width: 100%; 618 top: 0; 619 height: 100%; 620 justify-content: center; 621 z-index: 9999; 622 background: rgb(196 196 196 / 30%); 623 } 624 #search-input { 625 align-self: center; 626 width: 100%; 627 height: 80px; 628 position: absolute; 629 top: 0; 630 border-bottom: 0.5px solid #A3A3A3; 631 background-color: #fff; 632 } 633 #search-input * { 634 align-self: center; 635 } 636 #search-type { 637 width: 100%; 638 border: none; 639 padding-right: 20px; 640 padding-left: 20px; 641 font-size: 16px; 642 color: #757575; 643 } 644 #search-btn { 645 font-size: 16px; 646 font-weight: 500; 647 } 648 #search-result { 649 min-height: 490px; 650 width: 100%; 651 padding-top: 80px; 652 } 653 #search-result .container { 654 background-color: #fff; 655 padding: 20px 40px; 656 } 657 body.search-popup-open { 658 /* .search-popup-open */ 659 overflow: hidden; 660 } 661 .search-popup-open #loc_delivery { 662 display: none 663 } 664 .search-header svg { 665 display: none; 666 cursor: pointer; 667 } 668 .wrapper-search-popup { 669 max-height: calc(100vh - 150px); 670 overflow-y: auto; 671 overflow-x: hidden; 672 } 673 674 .group-recommend { 675 padding: 20px 40px; 676 } 677 678 .resultsearch { 679 display: none; 680 } 681 .results { padding: 20px 40px } 682 .resultsearch label { 683 font-weight: 600; 684 padding-bottom: 20px; 685 display: block; 686 margin-bottom: 20px; 687 border-bottom: 1px solid #AAAAAA; 688 } 689 690 ul.result_product { 691 max-height: 300px; 692 overflow: auto; 693 } 694 695 .group-promotion ul { 696 margin: 0; 697 } 698 .group-promotion li { 699 list-style: none; 700 margin-bottom: 12px; 701 } 702 .group-promotion li a { 703 color: inherit; 704 } 705 706 .group-recent { 707 position: relative; 708 padding: 20px 40px; 709 } 710 .group-recent ul { 711 margin: 0; 712 } 713 .group-recent li { 714 list-style: none; 715 display: inline-block; 716 margin-right: 60px; 717 } 718 .group-recent li a { 719 color: inherit; 720 } 721 722 .last-search svg { 723 width: 20px; 724 vertical-align: middle; 725 } 726 ul.last-search a { 727 vertical-align: middle; 728 padding: 0 10px; 729 } 730 ul.last-search li span { 731 cursor: pointer; 732 } 733 .delete-all-history { 734 position: absolute; 735 top: 25px; 736 right: 40px; 737 text-decoration: underline; 738 color: #e11d1d; 739 cursor: pointer; 740 font-size: 12px; 741 } 742 743 form.search.search-modal__form { 744 position: relative; 745 } 746 747 button.search__button svg { 748 width: 25px; 749 color: #495057; 750 fill: #757582; 751 } 752 753 button.search__button.field__button { 754 position: absolute; 755 top: 50%; 756 margin-top: -12px; 757 } 758 759 .close-search { 760 display: none; 761 position: absolute; 762 right: 65px; 763 top: 10px; 764 cursor: pointer; 765 } 766 767 .site-overlay { 768 position: fixed; 769 top: 0; 770 width: 100vw; 771 height: 100vh; 772 z-index: 1000; 773 background: #0000005c; 774 visibility: hidden; 775 opacity: 0; 776 pointer-events: none; 777 transition: all .3s linear; 778 display: block !important; 779 } 780 781 .search-popup-open .site-overlay { 782 opacity: 1; 783 visibility: visible; 784 pointer-events: all; 785 z-index: -1; 786 cursor: pointer; 787 } 788 789 @media (min-width: 991px) { 790 .group-recent ul { 791 column-count: 3; 792 } 793 .group-promotion li a { 794 font-size: 12px; 795 font-weight: 400; 796 } 797 .group-recent li a { 798 font-size: 12px; 799 font-weight: 400; 800 } 801 } 802 803 .moreresult { 804 padding: 10px 40px; 805 border-top: 1px solid #AAAAAA; 806 } 807 .moreresult * { 808 align-self: center; 809 } 810 .moreresult p { 811 margin: 0; 812 font-size: 12px !important; 813 } 814 .moreresult svg { 815 width: 13px; 816 } 817 818 @media (max-width: 992px) { 819 .icon-key-mobile { 820 height: auto!important; 821 width: 10px!important; 822 } 823 body.grid-view.search-popup-open .products { 824 -ms-flex: 0 0 100%!important; 825 flex: 0 0 100%!important; 826 max-width: 100%!important; 827 } 828 button.search__button svg {
829 width: 20px; 830 } 831 #search-result { 832 padding-left: 0; 833 padding-right: 0; 834 } 835 #search-result { 836 padding-top: 55px; 837 } 838 #search-input { 839 height: 55px; 840 } 841 .group-recommend { 842 padding: 20px; 843 } 844 #search-input .container { 845 padding: 0 20px; 846 } 847 #search-type { 848 font-size: 14px; 849 } 850 #search-btn { 851 font-size: 12px; 852 text-decoration: underline; 853 } 854 .results { 855 padding: 20px; 856 } 857 .group-recommend h3 { 858 font-size: 16px; 859 } 860 .products .card-body { 861 padding: 8px 0px 10px; 862 } 863 .moreresult { 864 padding: 10px 20px; 865 } 866 } 867 </style> 868<style type="text/css"> 869 :root { 870 --fx-tosca: #ff9800; 871 --fx-tosca-dark: #9a3f00; 872 --fx-tosca-deep: #2b1000; 873 --fx-tosca-soft: #ffe66d; 874 --fx-aqua: #fff59d; 875 --fx-cream: #fffbe6; 876 --fx-white: #ffffff; 877 --fx-text: #fffbe6; 878 --fx-border: rgba(255, 230, 109, .52); 879 --fx-bg: rgba(73, 28, 0, .76); 880 --fx-shadow: 0 20px 60px rgba(255, 152, 0, .34); 881 882 --purple: #ff9800; 883 --accent: #ffe66d; 884 --white: #ffffff; 885 } 886 887 /* ========================= 888 ADVERTISEMENT PLACEHOLDER 889 ========================== */ 890 div.advertisement-placeholder { 891 text-align: center; 892 padding-bottom: 20px; 893 display: flex; 894 flex-direction: column; 895 justify-content: center; 896 } 897 898 div.advertisement-text p { 899 margin: 0; 900 font-family: Open Sans; 901 font-style: normal; 902 font-weight: normal; 903 font-size: 10px; 904 line-height: 20px; 905 color: #ffe66d; 906 } 907 908 div.advertisement-banner { 909 margin: 0px auto; 910 } 911 912 div#div-gpt-ad-billboard-placeholder { 913 width: 996px; 914 margin: 0 auto; 915 background: #fffbe6; 916 padding-bottom: unset !important; 917 min-height: 200px; 918 } 919 920 div#div-gpt-ad-lb-placeholder { 921 background: #fffbe6; 922 padding-bottom: unset !important; 923 min-height: 280px; 924 } 925 926 /* ========================= 927 VIDEO BACKGROUND 928 ========================== */ 929 .fx-video-bg { 930 position: relative; 931 width: 100%; 932 min-height: 100vh; 933 overflow: hidden; 934 } 935 936 .fx-video-bg video { 937 position: absolute; 938 top: 50%; 939 left: 50%; 940 min-width: 100%; 941 min-height: 100%; 942 width: auto; 943 height: auto; 944 transform: translate(-50%, -50%); 945 object-fit: cover; 946 z-index: 1; 947 } 948 949 .fx-video-overlay { 950 position: absolute; 951 inset: 0; 952 z-index: 2; 953 background: 954 radial-gradient(circle at 30% 20%, rgba(255, 152, 0, .34), transparent 55%), 955 radial-gradient(circle at 70% 80%, rgba(255, 230, 109, .22), transparent 60%), 956 linear-gradient(180deg, rgba(0, 0, 0, .70), rgba(43, 16, 0, .94)); 957 } 958 959 /* ========================= 960 ARTICLE WRAPPER 961 ========================== */ 962 .fx-article-wrap { 963 position: relative; 964 z-index: 3; 965 max-width: 1280px; 966 margin: 0 auto; 967 padding: 60px 14px; 968 } 969 970 .fx-article { 971 position: relative; 972 border-radius: 22px; 973 padding: 26px 22px; 974 color: var(--fx-text); 975 background: 976 radial-gradient(circle at top, rgba(255, 152, 0, .12), transparent 45%), 977 rgba(73, 28, 0, .52); 978 border: 1px solid var(--fx-border); 979 box-shadow: var(--fx-shadow); 980 backdrop-filter: blur(6px); 981 } 982 983 .fx-badge { 984 display: inline-block; 985 margin-bottom: 12px; 986 padding: 6px 12px; 987 font-size: 12px; 988 font-weight: 700; 989 letter-spacing: .6px; 990 border-radius: 999px; 991 color: #2b1000; 992 background: linear-gradient(90deg, #ff7a00, #ffd21f, #fff59d); 993 box-shadow: 0 0 18px rgba(255, 152, 0, .56); 994 } 995 996 .fx-article h1 { 997 font-size: 1.8rem; 998 margin-bottom: 14px; 999 text-shadow: 1000 0 2px 8px rgba(0, 0, 0, .75), 1001 0 0 18px rgba(255, 193, 7, .52); 1002 } 1003 1004 .fx-article h2 { 1005 font-size: 1.3rem; 1006 margin: 18px 0 10px; 1007 border-left: 4px solid var(--fx-tosca); 1008 padding-left: 10px; 1009 } 1010 1011 .fx-article p { 1012 line-height: 1.75; 1013 margin-bottom: 14px; 1014 color: rgba(255, 251, 230, .95); 1015 } 1016 1017 .fx-article a { 1018 color: #ffe66d; 1019 border-bottom: 1px dashed rgba(255, 230, 109, .78); 1020 text-decoration: none; 1021 } 1022 1023 .fx-article a:hover { 1024 color: #ffffff; 1025 text-shadow: 0 0 12px rgba(255, 193, 7, .78); 1026 } 1027 1028 .fx-callout { 1029 margin: 18px 0; 1030 padding: 14px; 1031 border-radius: 14px; 1032 background: 1033 linear-gradient(145deg, rgba(255, 152, 0, .18), rgba(154, 63, 0, .22)); 1034 border: 1px solid rgba(255, 230, 109, .52); 1035 } 1036 1037 /* ========================= 1038 FAQ & REVIEW SECTION 1039 ========================== */ 1040 .faq-review-section { 1041 position: relative; 1042 max-width: 1190px; 1043 margin: 60px auto; 1044 padding: 40px 30px; 1045 border-radius: 25px; 1046 background: 1047 linear-gradient(145deg, rgba(255, 152, 0, .12), rgba(255, 245, 157, .08)); 1048 overflow: hidden; 1049 box-shadow: 1050 0 0 40px rgba(255, 152, 0, .68), 1051 inset 0 0 18px rgba(255, 230, 109, .10); 1052 } 1053 1054 .faq-review-section::before { 1055 content: ""; 1056 position: absolute; 1057 width: 150%; 1058 height: 150%; 1059 background: radial-gradient(circle at center, rgba(255, 245, 157, .14), transparent 70%); 1060 animation: spinAura 15s linear infinite; 1061 top: -25%; 1062 left: -25%; 1063 } 1064 1065 .section-title { 1066 text-align: center; 1067 color: var(--fx-aqua); 1068 font-size: 1.9rem; 1069 letter-spacing: 1px; 1070 font-weight: 700; 1071 text-shadow: 0 0 20px rgba(255, 193, 7, .82); 1072 position: relative; 1073 z-index: 2; 1074 margin-bottom: 25px; 1075 } 1076 1077 .section-title::after { 1078 content: ''; 1079 width: 100px; 1080 height: 3px; 1081 background: linear-gradient(90deg, #ff7a00, #ffd21f, #fff59d); 1082 display: block; 1083 margin: 10px auto; 1084 border-radius: 2px; 1085 box-shadow: 0 0 10px rgba(255, 193, 7, .64); 1086 animation: pulseLine 2s infinite alternate; 1087 } 1088 1089 /* ========================= 1090 FAQ & REVIEW ITEM 1091 ========================== */ 1092 .faq-item, 1093 .review-item { 1094 background: 1095 linear-gradient(145deg, rgba(122, 47, 0, .58), rgba(255, 152, 0, .34)); 1096 border: 1px solid rgba(255, 230, 109, .42); 1097 border-radius: 18px; 1098 padding: 18px 20px; 1099 margin: 18px 0; 1100 color: var(--fx-white); 1101 box-shadow: inset 0 0 0 rgba(255, 152, 0, 0); 1102 transform: perspective(800px) rotateX(15deg) scale(0.95); 1103 opacity: 0; 1104 transition: all 0.7s ease, box-shadow 0.4s ease; 1105 } 1106 1107 .faq-item.show, 1108 .review-item.show { 1109 opacity: 1; 1110 transform: perspective(800px) rotateX(0deg) scale(1); 1111 } 1112 1113 .faq-item:hover, 1114 .review-item:hover { 1115 background: 1116 linear-gradient(145deg, rgba(255, 230, 109, .36), rgba(255, 193, 7, .44)); 1117 box-shadow: 0 0 25px rgba(255, 152, 0, .62); 1118 transform: scale(1.02); 1119 } 1120 1121 .faq-item::before { 1122 content: ''; 1123 position: absolute; 1124 inset: 0; 1125 border-radius: inherit; 1126 border: 2px solid transparent; 1127 background: linear-gradient(120deg, #ff7a00, #ffd21f, #fff59d) border-box; 1128 mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0); 1129 opacity: 0; 1130 transition: opacity .3s ease; 1131 } 1132 1133 /* ========================= 1134 FAQ CONTENT 1135 ========================== */ 1136 .faq-question { 1137 cursor: pointer; 1138 font-weight: 600; 1139 color: var(--fx-aqua); 1140 position: relative; 1141 font-size: 1.9rem; 1142 padding-right: 25px; 1143 text-shadow: 0 0 10px rgba(255, 193, 7, .88); 1144 } 1145 1146 .faq-question::after { 1147 content: "+"; 1148 position: absolute; 1149 right: 0; 1150 top: 0; 1151 color: #ffffff; 1152 font-weight: bold; 1153 font-size: 1.4rem; 1154 transition: transform .3s; 1155 } 1156 1157 .faq-item.active .faq-question::after { 1158 transform: rotate(45deg); 1159 } 1160 1161 .faq-answer { 1162 display: none; 1163 color: #ffffff; 1164 line-height: 1.6em; 1165 padding-top: 10px; 1166 border-top: 1px dashed rgba(255, 230, 109, .52); 1167 margin-top: 10px; 1168 } 1169 1170 .faq-item.active .faq-answer { 1171 display: block; 1172 animation: fadeUp .4s ease; 1173 } 1174 1175 /* ========================= 1176 REVIEW CONTENT 1177 ========================== */ 1178 .review-author { 1179 font-weight: 700; 1180 color: var(--fx-aqua); 1181 font-size: 1.9rem; 1182 text-shadow: 0 0 10px rgba(255, 193, 7, .88); 1183 } 1184 1185 .review-text { 1186 color: #ffffff; 1187 margin: 6px 0; 1188 font-style: italic; 1189 } 1190 1191 .review-rating { 1192 color: var(--fx-aqua); 1193 font-weight: bold; 1194 font-size: 1rem; 1195 text-shadow: 0 0 8px rgba(255, 255, 255, .45); 1196 } 1197 1198 /* ========================= 1199 ANIMATION 1200 ========================== */
1201 @keyframes spinAura { 1202 to { 1203 transform: rotate(360deg); 1204 } 1205 } 1206 1207 @keyframes pulseLine { 1208 from { 1209 opacity: .6; 1210 transform: scaleX(.7); 1211 } 1212 1213 to { 1214 opacity: 1; 1215 transform: scaleX(1); 1216 } 1217 } 1218 1219 @keyframes fadeUp { 1220 from { 1221 opacity: 0; 1222 transform: translateY(10px); 1223 } 1224 1225 to { 1226 opacity: 1; 1227 transform: translateY(0); 1228 } 1229 } 1230 1231 @keyframes borderGlow { 1232 to { 1233 transform: rotate(360deg); 1234 } 1235 } 1236 1237 /* ========================= 1238 RESPONSIVE 1239 ========================== */ 1240 @media (max-width: 768px) { 1241 .fx-article-wrap { 1242 padding: 40px 12px; 1243 } 1244 1245 .fx-article h1 { 1246 font-size: 1.5rem; 1247 } 1248 1249 .faq-review-section { 1250 padding: 28px 18px; 1251 } 1252 1253 .section-title { 1254 font-size: 1.5rem; 1255 } 1256 } 1257</style> 1258 <div id="search-popup"> 1259 <div id="search-input" class="row"> 1260 <div class="container w-100"> 1261 <form 1262 action="/search" 1263 method="get" 1264 role="search" 1265 class="search search-modal__form d-flex justify-content-between" 1266 > 1267 <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 20 20" fill="none"> 1268 <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"/> 1269 </svg> 1270 1271 <input type="hidden" name="type" value="product"> 1272 <input 1273 type="text" 1274 id="search-type" 1275 name="q" 1276 class="search-popup" 1277 placeholder="Gifts that linger: Uncover treasures for cherished moments." 1278 > 1279 <div class="close-search"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"> 1280 <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"/> 1281 </svg> 1282 </div> 1283 <button id="search-btn">Search</button> 1284 </form>
1285 </div> 1286 </div> 1287 <div id="search-result" class="container m-auto"> 1288 <div class="container p-0"> 1289 <div class="group-promotion"> 1290 <div class="resultsearch"> 1291 <div class="row results"> 1292 <div class="col-12 col-lg-6 mb-3 mb-lg-0"> 1293 <label>SUGGESTIONS</label> 1294 <ul class="result_collection"></ul> 1295 </div> 1296 <div class="col-12 col-lg-6"> 1297 <label>PRODUCTS</label> 1298 <ul class="result_product"></ul> 1299 </div> 1300 </div> 1301 <div class="d-flex justify-content-between moreresult m-0"> 1302 <p>Search for<span></span></p> 1303 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"> 1304 <title>icon-arrow-right</title> 1305 <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> 1306 </svg> 1307 </div> 1308 </div> 1309 </div> 1310 <div class="group-recent hide"> 1311 <h3>RECENT SEARCH</h3> 1312 <span class="delete-all-history">Hapus riwayat</span> 1313 <ul class="last-search"></ul> 1314 </div> 1315 <div class="group-recommend"> 1316 <h3>YOU MAY ALSO LIKE</h3> 1317 1318 1319 <div class="row popup-recommend c-products-grid infinite-case product-multi-"> 1320 <div class="swiper-wrapper justify-content-between" style="margin-left:1px;"> 1321 1322 1323 <div class="swiper-slide card"> 1324 1325 1326 1327 1328 <div class="products" data-lazy="false"> 1329 <div class="bg-products"> 1330 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-love-mooncake"> 1331 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1332 <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.
133211233C11.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"/> 1333 </svg> 1334 1335 </div> 1336 <a href="/products/mid-autumn-of-love-mooncake"> 1337 1338 <div class="product-card-img-container p-0 position-relative"> 1339 1340 <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"> 1341 </div> 1342 <div class="card-body product-card-info"> 1343 <h5 class="h5 mb-0"> 1344 Mid Autumn of Love Mooncake 1345 </h5> 1346 <div class="product-card-price"> 1347 1348 <div class="product-price-sale"> 1349 <s class="product-card-price-before card-money">Rp 588.000</s> 1350 <span class="product-card-discount small"> 1351 (-40%) 1352 </span> 1353 </div> 1354 1355 1356 1357 <div class="price-discount"> 1358 <h4 class="product-card-price-after card-money">Rp 348.000</h4> 1359 </div> 1360 1361 1362 1363 1364 1365 </div> 1366 1367 </div> 1368 </a> 1369 </div> 1370 1371 </div> 1372 1373 </div> 1374 1375 1376 1377 <div class="swiper-slide card"> 1378 1379 1380 1381 1382 <div class="products" data-lazy="false"> 1383 <div class="bg-products"> 1384 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-joy-mooncake"> 1385 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1386 <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.
138611233C11.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"/> 1387 </svg> 1388 1389 </div> 1390 <a href="/products/mid-autumn-of-joy-mooncake"> 1391 1392 <div class="product-card-img-container p-0 position-relative"> 1393 1394 <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"> 1395 </div> 1396 <div class="card-body product-card-info"> 1397 <h5 class="h5 mb-0"> 1398 Mid Autumn of Joy Mooncake 1399 </h5> 1400 <div class="product-card-price"> 1401 1402 <div class="product-price-sale"> 1403 <s class="product-card-price-before card-money">Rp 888.000</s> 1404 <span class="product-card-discount small"> 1405 (-33%) 1406 </span> 1407 </div> 1408 1409 1410 1411 <div class="price-discount"> 1412 <h4 class="product-card-price-after card-money">Rp 588.000</h4> 1413 </div> 1414 1415 1416 1417 1418 1419 </div> 1420 1421 </div> 1422 </a> 1423 </div> 1424 1425 </div> 1426 1427 </div> 1428 1429 1430 1431 <div class="swiper-slide card"> 1432 1433 1434 1435 1436 <div class="products" data-lazy="false"> 1437 <div class="bg-products"> 1438 <div class="wishlist-toggle" data-product-handle="mid-autumn-of-fortune-mooncake"> 1439 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1440 <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.
144011233C11.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"/> 1441 </svg> 1442 1443 </div> 1444 <a href="/products/mid-autumn-of-fortune-mooncake"> 1445 1446 <div class="product-card-img-container p-0 position-relative"> 1447 1448 <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"> 1449 </div> 1450 <div class="card-body product-card-info"> 1451 <h5 class="h5 mb-0"> 1452 Mid Autumn of Fortune Mooncake 1453 </h5> 1454 <div class="product-card-price"> 1455 1456 <div class="product-price-sale"> 1457 <s class="product-card-price-before card-money">Rp 1.188.000</s> 1458 <span class="product-card-discount small"> 1459 (-33%) 1460 </span> 1461 </div> 1462 1463 1464 1465 <div class="price-discount"> 1466 <h4 class="product-card-price-after card-money">Rp 788.000</h4> 1467 </div> 1468 1469 1470 1471 1472 1473 </div> 1474 1475 </div> 1476 </a> 1477 </div> 1478 1479 </div> 1480 1481 </div> 1482 1483 1484 1485 <div class="swiper-slide card"> 1486 1487 1488 1489 1490 <div class="products" data-lazy="false"> 1491 <div class="bg-products"> 1492 <div class="wishlist-toggle" data-product-handle="mid-autumn-festival-mooncake"> 1493 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1494 <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.
149411233C11.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"/> 1495 </svg> 1496 1497 </div> 1498 <a href="/products/mid-autumn-festival-mooncake"> 1499 1500 <div class="product-card-img-container p-0 position-relative"> 1501 1502 <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"> 1503 </div> 1504 <div class="card-body product-card-info"> 1505 <h5 class="h5 mb-0"> 1506 Mid Autumn Festival Mooncake 1507 </h5> 1508 <div class="product-card-price"> 1509 1510 <div class="product-price-sale"> 1511 <s class="product-card-price-before card-money">Rp 1.288.000</s> 1512 <span class="product-card-discount small"> 1513 (-23%) 1514 </span> 1515 </div> 1516 1517 1518 1519 <div class="price-discount"> 1520 <h4 class="product-card-price-after card-money">Rp 988.000</h4> 1521 </div> 1522 1523 1524 1525 1526 1527 </div> 1528 1529 </div> 1530 </a> 1531 </div> 1532 1533 </div> 1534 1535 </div> 1536 1537 1538 1539 <div class="swiper-slide card"> 1540 1541 1542 1543 1544 <div class="products" data-lazy="false"> 1545 <div class="bg-products"> 1546 <div class="wishlist-toggle" data-product-handle="the-jade-bouquet"> 1547 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1548 <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.
154811233C11.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"/> 1549 </svg> 1550 1551 </div> 1552 <a href="/products/the-jade-bouquet"> 1553 1554 <div class="product-card-img-container p-0 position-relative"> 1555 1556 <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"> 1557 </div> 1558 <div class="card-body product-card-info"> 1559 <h5 class="h5 mb-0"> 1560 The Jade Bouquet 1561 </h5> 1562 <div class="product-card-price"> 1563 1564 <div class="product-price-sale"> 1565 <s class="product-card-price-before card-money">Rp 435.000</s> 1566 <span class="product-card-discount small"> 1567 (-34%) 1568 </span> 1569 </div> 1570 1571 1572 1573 <div class="price-discount"> 1574 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1575 </div> 1576 1577 1578 1579 1580 1581 </div> 1582 1583 </div> 1584 </a> 1585 </div> 1586 1587 </div> 1588 1589 </div> 1590 1591 1592 1593 <div class="swiper-slide card"> 1594 1595 1596 1597 1598 <div class="products" data-lazy="false"> 1599 <div class="bg-products"> 1600 <div class="wishlist-toggle" data-product-handle="the-selena-bouquet"> 1601 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1602 <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.
160211233C11.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"/> 1603 </svg> 1604 1605 </div> 1606 <a href="/products/the-selena-bouquet"> 1607 1608 <div class="product-card-img-container p-0 position-relative"> 1609 1610 <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"> 1611 </div> 1612 <div class="card-body product-card-info"> 1613 <h5 class="h5 mb-0"> 1614 The Selena Bouquet 1615 </h5> 1616 <div class="product-card-price"> 1617 1618 <div class="product-price-sale"> 1619 <s class="product-card-price-before card-money">Rp 335.000</s> 1620 <span class="product-card-discount small"> 1621 (-29%) 1622 </span> 1623 </div> 1624 1625 1626 1627 <div class="price-discount"> 1628 <h4 class="product-card-price-after card-money">Rp 235.000</h4> 1629 </div> 1630 1631 1632 1633 1634 1635 </div> 1636 1637 </div> 1638 </a> 1639 </div> 1640 1641 </div> 1642 1643 </div> 1644 1645 1646 1647 <div class="swiper-slide card"> 1648 1649 1650 1651 1652 <div class="products" data-lazy="false"> 1653 <div class="bg-products"> 1654 <div class="wishlist-toggle" data-product-handle="the-viola-bouquet"> 1655 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1656 <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.
165611233C11.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"/> 1657 </svg> 1658 1659 </div> 1660 <a href="/products/the-viola-bouquet"> 1661 1662 <div class="product-card-img-container p-0 position-relative"> 1663 1664 <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"> 1665 </div> 1666 <div class="card-body product-card-info"> 1667 <h5 class="h5 mb-0"> 1668 The Viola Bouquet 1669 </h5> 1670 <div class="product-card-price"> 1671 1672 <div class="product-price-sale"> 1673 <s class="product-card-price-before card-money">Rp 385.000</s> 1674 <span class="product-card-discount small"> 1675 (-25%) 1676 </span> 1677 </div> 1678 1679 1680 1681 <div class="price-discount"> 1682 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1683 </div> 1684 1685 1686 1687 1688 1689 </div> 1690 1691 </div> 1692 </a> 1693 </div> 1694 1695 </div> 1696 1697 </div> 1698 1699 1700 1701 <div class="swiper-slide card"> 1702 1703 1704 1705 1706 <div class="products" data-lazy="false"> 1707 <div class="bg-products"> 1708 <div class="wishlist-toggle" data-product-handle="the-minerva-bouquet"> 1709 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1710 <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.
171011233C11.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"/> 1711 </svg> 1712 1713 </div> 1714 <a href="/products/the-minerva-bouquet"> 1715 1716 <div class="product-card-img-container p-0 position-relative"> 1717 1718 <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"> 1719 </div> 1720 <div class="card-body product-card-info"> 1721 <h5 class="h5 mb-0"> 1722 The Minerva Bouquet 1723 </h5> 1724 <div class="product-card-price"> 1725 1726 <div class="product-price-sale"> 1727 <s class="product-card-price-before card-money">Rp 385.000</s> 1728 <span class="product-card-discount small"> 1729 (-25%) 1730 </span> 1731 </div> 1732 1733 1734 1735 <div class="price-discount"> 1736 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1737 </div> 1738 1739 1740 1741 1742 1743 </div> 1744 1745 </div> 1746 </a> 1747 </div> 1748 1749 </div> 1750 1751 </div> 1752 1753 1754 1755 <div class="swiper-slide card"> 1756 1757 1758 1759 1760 <div class="products" data-lazy="false"> 1761 <div class="bg-products"> 1762 <div class="wishlist-toggle" data-product-handle="congraduations-bouquet"> 1763 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1764 <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.
176411233C11.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"/> 1765 </svg> 1766 1767 </div> 1768 <a href="/products/congraduations-bouquet"> 1769 1770 <div class="product-card-img-container p-0 position-relative"> 1771 1772 <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"> 1773 </div> 1774 <div class="card-body product-card-info"> 1775 <h5 class="h5 mb-0"> 1776 Congraduations Bouquet 1777 </h5> 1778 <div class="product-card-price"> 1779 1780 <div class="product-price-sale"> 1781 <s class="product-card-price-before card-money">Rp 380.000</s> 1782 <span class="product-card-discount small"> 1783 (-25%) 1784 </span> 1785 </div> 1786 1787 1788 1789 <div class="price-discount"> 1790 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1791 </div> 1792 1793 1794 1795 1796 1797 </div> 1798 1799 </div> 1800 </a> 1801 </div> 1802 1803 </div> 1804 1805 </div> 1806 1807 1808 1809 <div class="swiper-slide card"> 1810 1811 1812 1813 1814 <div class="products" data-lazy="false"> 1815 <div class="bg-products"> 1816 <div class="wishlist-toggle" data-product-handle="grad-gorgeous-bouquet"> 1817 <svg xmlns="http://www.w3.org/2000/svg" width="24" height="21" viewBox="0 0 24 21" fill="none"> 1818 <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.
181811233C11.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"/> 1819 </svg> 1820 1821 </div> 1822 <a href="/products/grad-gorgeous-bouquet"> 1823 1824 <div class="product-card-img-container p-0 position-relative"> 1825 1826 <img class="product-card-img" lazy="false" src="//outerbloom.com/cdn/shop/files/Grad-_-Gorgeous-Bouquet_350x.jpg?v=1749545297" data-src="//outerbloom.com/cdn/shop/files/Grad-_-Gorgeous-Bouquet_350x.jpg?v=1749545297" alt="Grad & Gorgeous Bouquet" height="200" width="200"> 1827 </div> 1828 <div class="card-body product-card-info"> 1829 <h5 class="h5 mb-0"> 1830 Grad & Gorgeous Bouquet 1831 </h5> 1832 <div class="product-card-price"> 1833 1834 <div class="product-price-sale"> 1835 <s class="product-card-price-before card-money">Rp 380.000</s> 1836 <span class="product-card-discount small"> 1837 (-25%) 1838 </span> 1839 </div> 1840 1841 1842 1843 <div class="price-discount"> 1844 <h4 class="product-card-price-after card-money">Rp 285.000</h4> 1845 </div> 1846 1847 1848 1849 1850 1851 </div> 1852 1853 </div> 1854 </a> 1855 </div> 1856 1857 </div> 1858 1859 </div> 1860 1861 1862 </div> 1863 </div> 1864 1865 </div> 1866 </div> 1867 </div> 1868 1869 <div class="site-overlay" style="display: none"></div> 1870 </div> 1871
1871<script> 1872 1873 var swiper = new Swiper('.popup-recommend', { 1874 slidesPerView : 4, 1875 spaceBetween: 30, 1876 lazy: true , 1877 speed: 300, 1878 breakpoints: { 1879 // when window width is <= 576px 1880 576: { 1881 slidesPerView: 2, 1882 spaceBetween: 10, 1883 freeMode: true, 1884 resistance : true, 1885 resistanceRatio : 0, 1886 freeModeMomentumRatio : 0.45, 1887 freeModeMomentumVelocityRatio : 1.5 1888 }, 1889 768: { 1890 slidesPerView: 2, 1891 spaceBetween: 10 1892 }, 1893 992: { 1894 slidesPerView: 3, 1895 spaceBetween: 20 1896 } 1897 } 1898 }); 1899 1900 const searchContainer = $("#search-popup") 1901 const searchInput = $(".search-popup") 1902 const result_collection = $('.result_collection') 1903 const result_product = $('.result_product') 1904 const resultsearch = $('.resultsearch') 1905 const resultrecommend = $(".group-recommend") 1906 const moreresult = $(".moreresult") 1907 1908 searchInput.keyup(function(){ 1909 const input = $(this).val() 1910 moreresult.find("p span").text(` â${input}â`) 1911 if(input.length > 2) { 1912 $(".close-search").show() 1913 const url = `https://outerbloom.com/search/suggest.json?resources[limit]=10&resources[limit_scope]=each&resources[type]=collection,product&q=${input}` 1914 $.ajax({ 1915 type: 'GET', 1916 url, 1917 beforeSend: function() { 1918 // setting a timeout 1919 // $(placeholder).addClass('loading'); 1920 }, 1921 success: function(response) { 1922 resultsearch.show() 1923 resultrecommend.hide() 1924 result_collection.html("") 1925 result_product.html("") 1926 const collections = response.resources.results.collections 1927 const products = response.resources.results.products 1928 let collection_length = collections.length 1929 let product_length = products.length 1930 // if(collections.length > 5) { 1931 // collection_length = 5 1932 // } 1933 // if(products.length > 5) { 1934 // product_length = 5 1935 // } 1936 for(let i=0;i<collection_length;i++){ 1937 const title = collections[i].title 1938 const url = collections[i].url 1939 let html_collection 1940 if(!title.includes('AIA') && !title.includes('AXA') && !title.includes('WOM') && !title.includes('Upsell')) { 1941 html_collection = ` 1942 <li class="item" data-title="${title}"> 1943 <a href="${url}" data-type="collection" class="item_url" data-title="${title}" data-url="${url}">${title}</a> 1944 </li> 1945 ` 1946 } 1947 result_collection.append(html_collection) 1948 } 1949 for(let i=0;i<product_length;i++){ 1950 const title = products[i].title 1951 const url = products[i].url 1952 const image = products[i].featured_image.url 1953 const vendor = products[i].vendor 1954 let html_product 1955 if(vendor !== 'AIA' && vendor !== 'AXA' && vendor !== 'WOM Finance' && !title.includes('Extra Shipping Cost') && !title.includes('[US]') && !title.includes('Rp')){ 1956 html_product = ` 1957 <li class="item" data-vendor="${vendor}"> 1958 <a href="${url}" class="item_url" data-type="product" data-title="${title}" data-url="${url}"> 1959 <img src="${image}" alt="${title}" style="width: 70px;vertical-align: middle;margin-right: 20px;"><span>${title}</span> 1960 </a> 1961 </li> 1962 ` 1963 } 1964 result_product.append(html_product) 1965 } 1966 }, 1967 error: function(xhr) { // if error occured 1968 alert("Error occured.please try again"); 1969 }, 1970 complete: function(response) { 1971 // $(placeholder).removeClass('loading'); 1972 }, 1973 dataType: 'JSON' 1974 }); 1975 } else { 1976 result_collection.html("") 1977 result_product.html("") 1978 1979 resultsearch.hide() 1980 resultrecommend.show() 1981 } 1982 }) 1983 1984 moreresult.click(function(){ 1985 $("#search-btn").trigger("click"); 1986 }) 1987 1988 $(".close-search").click(function(){ 1989 $(this).hide() 1990 searchInput.val("") 1991 searchInput.focus() 1992 resultsearch.hide() 1993 resultrecommend.show() 1994 }) 1995 1996 function setCookie(name,value,days) { 1997 var expires = ""; 1998 if (days) { 1999 var date = new Date(); 2000 date.setTime(date.getTime() + (days*24*60*60*1000)); 2001 expires = "; expires=" + date.toUTCString(); 2002 } 2003 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 2004 } 2005 function getCookie(name) { 2006 var nameEQ = name + "="; 2007 var ca = document.cookie.split(';');
2008 for(var i=0;i < ca.length;i++) { 2009 var c = ca[i]; 2010 while (c.charAt(0)==' ') c = c.substring(1,c.length); 2011 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 2012 } 2013 return null; 2014 } 2015 let last_search_name = [] 2016 let last_search_url = [] 2017 $(".group-recent").hide() 2018 if(getCookie("last_search_name") != null && getCookie("last_search_url") != null){ 2019 if(getCookie("last_search_name") != "" && getCookie("last_search_url") != ""){ 2020 $(".group-recent").show() 2021 last_search_name = getCookie("last_search_name"); 2022 last_search_url = getCookie("last_search_url"); 2023 const arrName = last_search_name.substring(1).split(',').reverse() 2024 const arrUrl = last_search_url.substring(1).split(',').reverse() 2025 console.log(arrName, 'Array Name') 2026 console.log(arrUrl, 'Array Url') 2027 let length = arrName.length 2028 if(arrName.length > 5) { 2029 length = 5 2030 } 2031 for(let n=0;n<length;n++){ 2032 let html2 = `<li><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title/><path d="M12.25,2A9.81,9.81,0,0,0,4.77,5.46L3.41,4.25a1,1,0,0,0-1.07-.16A1,1,0,0,0,1.75,5V9a1,1,0,0,0,1,1h4.5a1,1,0,0,0,.93-.64,1,1,0,0,0-.27-1.11L6.26,6.78a7.86,7.86,0,0,1,6-2.78A8,8,0,1,1,4.72,14.67a1,1,0,0,0-1.89.66A10,10,0,1,0,12.25,2Z" fill="#C9C9C9"/><path d="M16,16a1,1,0,0,1-.6-.2l-4-3A1,1,0,0,1,11,12V8a1,1,0,0,1,2,0v3.5l3.6,2.7a1,1,0,0,1,.2,1.4A1,1,0,0,1,16,16Z" fill="#C9C9C9"/></svg><a href="${arrUrl[n]}">${arrName[n]}</a><span data-title="${arrName[n]}" data-url="${arrUrl[n]}"></span></li>` 2033 $(".group-recent ul").append(html2) 2034 } 2035 } 2036 } 2037 console.log(last_search_name, 'Name') 2038 console.log(last_search_url, 'url') 2039 2040 resultsearch.delegate(".item a", "click", function(){ 2041 let name = [last_search_name] 2042 let url = [last_search_url] 2043 name.push($(this).attr('data-title')) 2044 url.push($(this).attr('data-url')) 2045 setCookie("last_search_name",name,7); 2046 setCookie("last_search_url",url,7); 2047 }) 2048 2049 $(".delete-all-history").click(function() { 2050 setCookie("last_search_name",null,0); 2051 setCookie("last_search_url",null,0); 2052 $(".last-search").hide(); 2053 setTimeout(function(){ 2054 location.reload(); 2055 }, 500); 2056 }) 2057 2058 $("#search-trigger").click(function(){ 2059 search_open() 2060 }) 2061 $(".icon-search-mobile").click(function(){ 2062 search_open() 2063 }) 2064 $(".search-header svg").click(function(){ 2065 search_close() 2066 }) 2067 $(".icon-key-mobile").click(function(){ 2068 search_close() 2069 }) 2070 2071 function search_open() { 2072 $("body").addClass("search-popup-open") 2073 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").hide() 2074 $("#search-popup, .search-header svg, .icon-key-mobile").show() 2075 $(".search-popup").focus() 2076 $('.popup-recommend')[0].swiper.update(); 2077 } 2078 function search_close() { 2079 $("body").removeClass("search-popup-open") 2080 $("#nav-mobile-icon, .search-header label, .icon-search-mobile").show() 2081 $("#search-popup, .search-header svg, .icon-key-mobile").hide() 2082 searchInput.val("") 2083 resultsearch.hide() 2084 resultrecommend.show() 2085 } 2086 2087 $(".site-overlay").click(function(){ 2088 search_close() 2089 }) 2090 </script>
2090 2091 2092 </div> 2093 </div> 2094 2095 <div id="PageContainer" class="is-moved-by-drawerx" style="background-color: #000000;"> 2096 <main class="main-content pt-0" role="main"> 2097 2098 <div id="breadcrumbProduct" class="d-none d-lg-block"> 2099 <style> 2100 #breadcrumbProduct { 2101 padding: 20px 0; 2102 } 2103 #breadcrumbProduct ul { 2104 display: flex; 2105 padding: 0; 2106 list-style: none; 2107 margin: 0; 2108 gap: 12px; 2109 } 2110 #breadcrumbProduct ul li { 2111 text-transform: uppercase; 2112 margin: 0; 2113 font-size: 12px; 2114 } 2115 #breadcrumbProduct ul li a { 2116 color: #757575; 2117 } 2118 2119 #breadcrumbProduct ul li svg { 2120 width: 10px; 2121 height: 10px; 2122 padding: 0; 2123 color: #757575; 2124 vertical-align: middle; 2125 } 2126 </style> 2127 <div class="container" style="color: #ffffff;"> 2128 <ul role="navigation" aria-label="breadcrumbs"> 2129 <li><a href="https://aksesniastoto.org/" style="color: #ffffff;">NIASTOTO</a></li> 2130 <li><svg xmlns="http://www.w3.org/2000/svg" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2131 <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"/> 2132 </svg></li> 2133 <li>NIASTOTO</li> 2134 <li>NIAS TOTO</li> 2135 <li>Situs Togel</li> 2136 <li>NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps</li> 2137 2138 </ul> 2139 </div> 2140 2141 </div> 2142 2143<!--faq--> 2144 2145 2146 2147 2148<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" /> 2149 2150 2151 <style> 2152 .bg-card { 2153 background-color: #000000; 2154 } 2155 </style> 2156 2157 <!-- /templates/product.liquid --> 2158 2159 2160 <!-- <div itemscope itemtype="http://schema.org/Product"> --> 2161 2162 2163 <div class="product-standing-flower" data-product-type="flowerBoard"> 2164 <meta itemprop="url" content="https://aksesniastoto.org/"> 2165 <meta itemprop="image" content="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp"> 2166 2167 2168 2169 <input id="data-sku" type="hidden" value="GOJSTRU2598"> 2170 <div class="product-single" style="background-image: url(https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp); background-attachment: fixed;"> 2171 <div id="product-top" class="container"> 2172 <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;"> 2173 <div id="product-image" class="col-lg-7 text-center"> 2174 <div class="product-image"> 2175 <div class="row no-gutters"> 2176 2177 <div id="product-featured-image" class="row w-100"> 2178 2179 <div id="thumb-image-product" class="col-lg-2 col-12 d-none d-lg-block"> 2180 2181 <div class="swiper-container gallery-thumbs" style="min-height: 500px"> 2182 <ul class="list-unstyled slider swiper-wrapper slider-nav ProductThumbs thumbnails" id="ProductThumbsx"> 2183 2184 <li class="swiper-slide" data-type="image"> 2185 <a 2186 href="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2187 data-standard="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2188 data-image="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2189 data-position="1" 2190 class="product-single__thumbnail" 2191 > 2192 <img 2193 class="lazyload w-100" 2194 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2195 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2196 width="" 2197 height="" 2198 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2199 </a> 2200 </li> 2201 2202 2203 2204 2205 <li class="swiper-slide" data-type="image"> 2206 <a 2207 href="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2208 data-standard="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2209 data-image="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2210 data-position="2" 2211 class="product-single__thumbnail" 2212 > 2213 <img 2214 class="lazyload w-100" 2215 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2216 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2217 width="" 2218 height="" 2219 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2220 </a> 2221 </li> 2222 2223 2224 2225 2226 <li class="swiper-slide" data-type="image"> 2227 <a 2228 href="files/Blossom-Shine_3-WM.jpg" 2229 data-standard="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2230 data-image="files/Blossom-Shine_3-WM.jpg" 2231 data-position="3" 2232 class="product-single__thumbnail" 2233 > 2234 <img 2235 class="lazyload w-100" 2236 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2237 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2238 width="" 2239 height="" 2240 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2241 </a> 2242 </li> 2243 2244 2245 2246 2247 <li class="swiper-slide" data-type="image"> 2248 <a 2249 href="files/Blossom-Shine_4.jpg" 2250 data-standard="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2251 data-image="files/Blossom-Shine_4.jpg" 2252 data-position="4" 2253 class="product-single__thumbnail" 2254 > 2255 <img 2256 class="lazyload w-100" 2257 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2258 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2259 width="" 2260 height="" 2261 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2262 </a> 2263 </li> 2264 2265 2266 2267 </ul> 2268 </div> 2269 2270 </div> 2271 2272 <div 2273 id="featured-image-product" 2274 class="col-lg-10 col-12 d-none d-lg-block" 2275 > 2276 <div class="swiper-container gallery-top"> 2277 <div class="swiper-slide product-single__image"> 2278 2279 <div class="product-single__photos slider slider-for" id="ProductPhoto"> 2280 2281 2282 <div class="easyzoom easyzoom--overlay easyzoom--with-thumbnails"> 2283 <a href="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp"> 2284 <img 2285 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2286 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2287 id="ProductPhotoImg" 2288 class="lazyload" 2289 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2290 2291 </a> 2292 </div> 2293 </div> 2294 2295 </div> 2296 <div class="swiper-slide product-single__video" style="display: none"> 2297 <video 2298 src="https://cdn.shopify.com/videos/c/vp/05d379ea115d41c2bd0f7d08b1496bd9/05d379ea115d41c2bd0f7d08b1496bd9.HD-1080p-7.2Mbps-24002195.mp4" 2299 playsinline 2300 loop 2301 muted 2302 ></video> 2303 </div> 2304 </div>
2305 </div> 2306 </div> 2307 2308 <div id="featured-image-product2" class="col-12 d-lg-none"> 2309 <div class="swiper-container gallery-mobile"> 2310 <ul class="swiper-wrapper"> 2311 <li class="swiper-slide img"> 2312 2313 <img 2314 class="swiper-lazy" 2315 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2316 data-src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2317 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2318 width="" 2319 height="" 2320 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2321 2322 </li> 2323 2324 2325 <li class="swiper-slide img"> 2326 2327 <img 2328 class="swiper-lazy" 2329 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2330 data-src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2331 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2332 width="" 2333 height="" 2334 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2335 2336 </li> 2337 2338 2339 <li class="swiper-slide img"> 2340 2341 <img 2342 class="swiper-lazy" 2343 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2344 data-src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2345 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2346 width="" 2347 height="" 2348 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2349 2350 </li> 2351 2352 2353 <li class="swiper-slide img"> 2354 2355 <img 2356 class="swiper-lazy" 2357 src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2358 data-src="https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp" 2359 alt="NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps" 2360 width="" 2361 height="" 2362 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2363 2364 </li> 2365 2366 2367 </ul> 2368 2369 <div class="swiper-button-prev"><svg class="icon icon-chevron-left" xmlns="http://www.w3.org/2000/svg" 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> 2370 <div class="swiper-button-next"><svg xmlns="http://www.w3.org/2000/svg" width="7" height="10" viewBox="0 0 7 10" fill="none"> 2371 <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"/> 2372 </svg></div> 2373 2374 <!-- Add Pagination --> 2375 <div class="swiper-pagination"></div> 2376 2377 </div> 2378 </div> 2379 2380 <div class="product-m-pageleb-video col-12 text-center d-lg-none"> 2381 <!-- product video --> 2382 <style> 2383 .view-video{display:block; margin:auto; padding:5px 10px;font-size:16px;font-weight:bold;border:2px solid #ffffff;background:#fff;} 2384 .view-video .icon-play{fill:#ffffff;vertical-align: middle;} 2385 .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;} 2386 .close-video{position:absolute;right:9px; top:8%;z-index:2;padding:5px;} 2387 .close-video .icon{width:30px;height:30px;} 2388 /*responsive iframe */ 2389 .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);} 2390 .video-container iframe {position: absolute;top:60%;left: 0;width: 100%;height: 100%;} 2391 2392 .youtube { 2393 background-color: #000; 2394 margin-bottom: 30px; 2395 position: relative; 2396 padding-top: 56.25%; 2397 overflow: hidden; 2398 cursor: pointer; 2399 width: 100%; 2400 } 2401 .swiper-slide .youtube { 2402 max-width: 480px; 2403 } 2404 .youtube img { 2405 width: 100%; 2406 top: -16.82%; 2407 left: 0; 2408 opacity: 0.7; 2409 } 2410 .youtube .play-button { 2411 width: 90px; 2412 height: 60px; 2413 background-color: #333; 2414 box-shadow: 0 0 30px rgba( 0,0,0,0.6 ); 2415 z-index: 1; 2416 opacity: 0.8; 2417 border-radius: 6px; 2418 } 2419 .youtube .play-button:before { 2420 content: ""; 2421 border-style: solid; 2422 border-width: 15px 0 15px 26.0px; 2423 border-color: transparent transparent transparent #fff; 2424 } 2425 .youtube img, 2426 .youtube .play-button { 2427 cursor: pointer; 2428 } 2429 .youtube img, 2430 .youtube iframe, 2431 .youtube .play-button, 2432 .youtube .play-button:before { 2433 position: absolute; 2434 } 2435 .youtube .play-button, 2436 .youtube .play-button:before { 2437 top: 50%; 2438 left: 50%; 2439 transform: translate3d( -50%, -50%, 0 ); 2440 } 2441 .youtube iframe { 2442 height: 100%; 2443 width: 100%; 2444 top: 0; 2445 left: 0; 2446 } 2447 </style> 2448 2449 2450 </div> 2451 </div> 2452 2453 <div class="product-desc-add position-relative d-none d-lg-block m-0"> 2454 2455 </div> 2456 2457
2457<script> 2458 if ($(window).width() < 991) { 2459 var direction = 'horizontal' 2460 } else { 2461 var direction = 'vertical' 2462 $(".gallery-thumbs").height($("#ProductPhotoImg").height()) 2463 } 2464 var swiper = new Swiper('.gallery-thumbs', { 2465 2466 direction, 2467 slidesPerView: 4.5, 2468 spaceBetween: 12, 2469 navigation: { 2470 nextEl: '.swiper-button-next', 2471 prevEl: '.swiper-button-prev', 2472 } 2473 }); 2474 2475 var swiper = new Swiper('.gallery-mobile', { 2476 //loop: true, 2477 lazy: true, 2478 speed: 300, 2479 resistance : true, 2480 resistanceRatio : 0, 2481 freeModeMomentumRatio : 0.45, 2482 freeModeMomentumVelocityRatio : 1.5, 2483 navigation: { 2484 nextEl: '.swiper-button-next', 2485 prevEl: '.swiper-button-prev', 2486 }, 2487 pagination: { 2488 el: '.swiper-pagination' 2489 }, 2490 useCSS3Transforms: false, 2491 loop: false, 2492 on: { 2493 init: function () { 2494 console.log('swiper initialized'); 2495 var currentVideo = $("[data-swiper-slide-index=" + this.realIndex + "]").find("video"); 2496 currentVideo.trigger('play'); 2497 }, 2498 }, 2499 }); 2500 2501 /* GET ALL VIDEOS */ 2502 var sliderVideos = $(".swiper-slide video"); 2503 2504 /* SWIPER API - Event will be fired after animation to other slide (next or previous) */ 2505 swiper.on('slideChange', function () { 2506 console.log('slide changed'); 2507 /* stop all videos */ 2508 sliderVideos.each(function( index ) { 2509 this.currentTime = 0; 2510 }); 2511 2512 /* SWIPER GET CURRENT AND PREV SLIDE (AND The VIDEO INSIDE) */ 2513 var prevVideo = $(`[data-swiper-slide-index="${this.previousIndex}]"`).find("video"); 2514 var currentVideo = $(`[data-swiper-slide-index="${this.realIndex}"]`).find("video"); 2515 prevVideo.trigger('stop'); 2516 currentVideo.trigger('play'); 2517 }); 2518 2519 2520 $("[data-video]").click(function(){ 2521 const file = $(this).data("video") 2522 $(".product-single__video").show() 2523 $(".product-single__image").hide() 2524 $(".product-single__video").find("video").attr("src", file) 2525 $(".product-single__video").find("video")[0].play(); 2526 }) 2527 $("[data-image]").click(function(){ 2528 $(".product-single__video").hide() 2529 $(".product-single__image").show() 2530 $(".product-single__video").find("video")[0].pause(); 2531 }) 2532 2533 $("#product-image .swiper-slide").each(function(){ 2534 let width = $(this).width() 2535 $(this).height(width) 2536 }) 2537 2538 $(window).resize(function() { 2539 $("#product-image .swiper-slide").each(function(){ 2540 let width = $(this).width() 2541 $(this).height(width) 2542 }) 2543 }) 2544 </script>
2544 2545 2546 </div> 2547 2548 2549 2550 2551 2552 2553 2554 2555 <style> 2556 .c-pdp-product-info__service--active { 2557 font-size: 12px; 2558 padding-left: 10px; 2559 text-align: left; 2560 max-width: 550px; 2561 margin: auto; 2562 } 2563 .c-pdp-product-info__service--active li { 2564 list-style: disc; 2565 } 2566 .c-pdp-product-info { 2567 background-color: #f5f5f5; 2568 padding: 12px; 2569 margin: 0; 2570 } 2571 .freeship em { 2572 font-style: italic; 2573 font-size: 12px !important; 2574 } 2575 2576 2577 </style> 2578 2579
2579<script> 2580 $(document).ready(function(){ 2581 if ( $(".c-pdp-product-info__service li").length == 1 ) { 2582 $(".c-pdp-product-info__service").addClass("no-bullet"); 2583 $(".c-pdp-product-info__service li").addClass("no-bullets"); 2584 } 2585 }); 2586 </script>
2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 </div> 2600 <div id="product-meta" class="col-lg-5 p-0"> 2601 <div class="product-meta"> 2602 <style> 2603 .product-meta--review {margin-top:10px} 2604 .freeship * {font-size: 14px !important;font-style: normal;} 2605 </style> 2606 <h1 itemprop="name" class="mb-2" style="color: #ffffff; text-shadow: 2px 2px 4px #ffbd60, -1px -1px 2px #ffbd60; font-weight: bold;">NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps</h1> 2607 2608 <div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 2609 <meta itemprop="priceCurrency" content="IDR"> 2610 2611 <link itemprop="availability" href="https://schema.org/InStock"> 2612 2613 2614 2615 2616 2617 2618 <span class="visually-hidden">Translation missing: en.products.general.regular_price</span> 2619 2620 <span class="visually-hidden">Translation missing: en.products.general.sale_price</span> 2621 2622 <div class="row no-gutters mb-3"> 2623 <span 2624 id="ProductPrice" 2625 class="h2 ProductPrice" 2626 itemprop="price" 2627 content="835000" style="color: #ffffff;" 2628 > 2629 Rp 10.000 2630 </span> 2631 <div class="discount-product-detail"> 2632 <p id="ComparePrice" class="ComparePrice mt-2 mt-lg-0"> 2633 2634 </p> 2635 <span class=" tag-discount"> 2636 2637 2638 <span id="newDiscount" class="product-tag persentase-discount hide"> 2639 (90%) 2640 </span><br> 2641 2642 </span> 2643 </div> 2644 </div> 2645 2646 <div class="row no-gutters meta-sds"> 2647 <div class="col-12 mb-2 mb-lg-0 stock-info"> 2648 2649 2650 <span 2651 id="ProductStock-Product" 2652 class="product-single__stock mb-2 hide" 2653 > 2654 2655 2656 2657 2658 Barang dikirim pada 2659 2660 2661 2662 </span> 2663 2664 <style> 2665 .short-desc-desktop { 2666 margin-bottom: 2rem; 2667 color: white; 2668 } 2669 .short-desc ul li:nth-child(n + 4) { 2670 display: none; 2671 } 2672 .short-desc ul li.showList:nth-child(n + 4) { 2673 display: list-item; 2674 } 2675 label.more { 2676 display: none; 2677 } 2678 label.more.showMe { 2679 display: block; 2680 font-size: 12px; 2681 text-transform: uppercase; 2682 font-weight: 700; 2683 cursor: pointer; 2684 } 2685 </style> 2686 2687 <div class="short-desc-desktop d-none d-lg-block"> 2688 <div class="short-desc"> 2689 2690 <p style="text-align: justify;">NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan.</p> 2691 2692 </div> 2693 <label class="more">Show More â</label>
2694 </div><br> 2695 2696 2697
2697<script> 2698 var liCount; 2699 $(document).ready(function () { 2700 $(".short-desc ul").each(function() { 2701 liCount = $(this).children("li").length; 2702 if (liCount > 3) { 2703 $(this).parent(".short-desc").next(".more").addClass("showMe"); 2704 } 2705 }); 2706 2707 $(".more").click(function () { 2708 //$(".short-desc").find("li").addClass("showList"); 2709 // $(this).hide(); 2710 $("#product-desc").find("ul").show() 2711 $('html, body').animate({ 2712 scrollTop: $("#product-desc").offset().top - 250 2713 }, 2000); 2714 $("#product-desc").css("height","auto"); 2715 $("#more_content").remove(); 2716 $(".product-spec").append("<div id='less_content' class='readmore'><span class='less_content'>Less</span></div>") 2717 }); 2718 }); 2719 </script>
2719 2720 2721 2722 </div> 2723 </div> 2724 2725 <div id="purchaseProduct"> 2726 2727 2728 2729 2730 <style> 2731 .variant-metafield { 2732 display: block!important; 2733 width: 1px; 2734 padding: 0; 2735 border-color: #fff; 2736 } 2737 .select2-results__option[aria-disabled] { 2738 display: none; 2739 } 2740 2741 .towel-bordir { 2742 width: 100%; 2743 display: flex; 2744 align-items: center; 2745 justify-content: space-around; 2746 } 2747 </style> 2748 2749 2750 2751 2752
2752<script> 2753 2754 2755 </script>
2755 2756 2757 2758 2759 2760 2761 2762 <select 2763 name="id[]" 2764 id="productSelect" 2765 class="product-single__variants ignore hide hide" 2766 > 2767 2768 2769 2770 <option 2771 2772 selected="selected" 2773 2774 data-sku="GOJSTRU2598" 2775 value="44083045826775" 2776 > 2777 Default Title 2778 </option> 2779 2780 2781 2782 </select> 2783 2784
2784<script src="//outerbloom.com/cdn/shop/t/138/assets/jquery.magnific-popup.min.js?v=184369421263510081681752652422" type="text/javascript"></script>
2784 2785 2786
2786<script> 2787 $('.size-chart-open-popup').magnificPopup({ 2788 type:'inline', 2789 midClick: true 2790 }); 2791 </script>
2791 2792 2793 2794 2795 2796 <div class="upload-image-preview"> 2797 2798 2799 2800 2801 2802 <style> 2803 .file-dnd * { 2804 margin: 0; 2805 padding: 0; 2806 box-sizing: border-box; 2807 } 2808 .file-dnd { 2809 width: 100%; 2810 height: 250px; 2811 border: 1px solid #ddd; 2812 border-radius: 10px; 2813 padding: 15px; 2814 display: flex; 2815 flex-direction: column; 2816 gap: 10px; 2817 /* box-shadow: 0px 2px 10px 2px rgba(0,0,0,0.05); */ 2818 margin: auto; 2819 } 2820 .file-dnd input { 2821 display: none; 2822 } 2823 .file-dnd .before-upload { 2824 border: 1px dashed #888; 2825 flex: 1; 2826 border-radius: 5px; 2827 display: flex; 2828 justify-content: center; 2829 align-items: center; 2830 text-align: center; 2831 cursor: pointer; 2832 } 2833 .file-dnd .before-upload > div { 2834 display: flex; 2835 flex-direction: column; 2836 align-items: center; 2837 gap: 8px; 2838 } 2839 .file-dnd .before-upload > div h4 { 2840 width: 150px; 2841 } 2842 .file-dnd .before-upload > div p { 2843 font-size: 12px !important; 2844 color: #555; 2845 } 2846 .file-dnd.active .before-upload { 2847 border: 1px solid #5750d9; 2848 background-color: #f5f5ff; 2849 } 2850 .file-dnd .after-upload { 2851 position: relative; 2852 display: none; 2853 } 2854 .file-dnd .after-upload img { 2855 width: 100%; 2856 border-radius: 5px; 2857 max-height: 180px; 2858 object-fit: contain; 2859 display: block; 2860 } 2861 .file-dnd .after-upload .clear-btn { 2862 position: absolute; 2863 top: 10px; 2864 right: 10px; 2865 background: rgba(0, 0, 0, 0.5); 2866 width: 15px; 2867 height: 15px; 2868 text-align: center; 2869 line-height: 15px; 2870 border-radius: 50%; 2871 color: #fff; 2872 cursor: pointer; 2873 font-size: 14px; 2874 } 2875 </style> 2876 2877 <div 2878 class="file-dnd mb-3" 2879 2880 style="display: none" 2881 2882 > 2883 <label for="upload-photo">Upload your Photo:</label> 2884 <input type="file" id="upload-photo" accept="image/*"> 2885 <input type="hidden" data-properties="Photo"> 2886 <div class="before-upload"> 2887 <div> 2888 <svg id="surface1" xmlns="http://www.w3.org/2000/svg" width="33.053" height="41.719" viewBox="0 0 33.053 41.719"> 2889 <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> 2890 <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> 2891 <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> 2892 </svg> 2893 2894 <h4>Drag & Drop Photo file or Browse</h4> 2895 <p>Supports: JPEG, PNG, GIF, TIFF</p> 2896 </div> 2897 </div> 2898 <div class="after-upload"> 2899 <div class="clear-btn">×</div> 2900 <img src="https://imgcloud.io/storage/vannn/public.avif" width="" height="" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 2901 </div> 2902 </div> 2903
2903<script> 2904 function applyDndFile(el) { 2905 const parent = document.querySelector(".file-dnd") 2906 const beforeUploadEl = el.querySelector(".before-upload") 2907 const afterUploadEl = el.querySelector(".after-upload") 2908 const inputFile = el.querySelector("input[type=file]") 2909 const imagePreview = el.querySelector(".after-upload img") 2910 const clearBtn = el.querySelector(".after-upload .clear-btn") 2911 const inputProps = parent.querySelector("[data-properties]"); 2912 2913 async function upload(name, uri, type) { 2914 try { 2915 const filename = name.split('.')[0] 2916 let formData = new FormData(); 2917 formData.append("file", uri); 2918 const response = await fetch(`${host}/upload?name=${filename}&dir=gift&type=${type}`, { 2919 method: "POST", 2920 body: formData 2921 }) 2922 if(response) { 2923 const res = await response.json() 2924 return res 2925 } 2926 } catch(err){ 2927 console.log(err) 2928 } 2929 } 2930 2931 function showImagePreview(img) { 2932 if(img){ 2933 const blobUrl = URL.createObjectURL(img) 2934 imagePreview.src = blobUrl 2935 afterUploadEl.style.display = "block" 2936 beforeUploadEl.style.display = "none" 2937 } 2938 } 2939 2940 beforeUploadEl.addEventListener("click", (e) => { 2941 e.preventDefault() 2942 inputFile.click() 2943 }) 2944 2945 inputFile.addEventListener("change", async (e) => { 2946 e.preventDefault() 2947 showImagePreview(e.target.files[0]) 2948 var uploadData = await upload(e.target.files[0].name, e.target.files[0], e.target.files[0].type) 2949 inputProps.value = uploadData?.url 2950 }) 2951 2952 clearBtn.addEventListener("click", (e) => { 2953 afterUploadEl.style.display = "none" 2954 beforeUploadEl.style.display = "flex" 2955 inputProps.value = "" 2956 }) 2957 2958 beforeUploadEl.addEventListener("dragover", (e) => { 2959 e.preventDefault() 2960 el.classList.add("active") 2961 }) 2962 2963 beforeUploadEl.addEventListener("dragleave", (e) => { 2964 e.preventDefault() 2965 el.classList.remove("active") 2966 }) 2967 2968 beforeUploadEl.addEventListener("drop", async (e) => { 2969 e.preventDefault() 2970 el.classList.remove("active") 2971 showImagePreview(e.dataTransfer.files[0]) 2972 var uploadData = await upload(e.dataTransfer.files[0].name, e.dataTransfer.files[0], e.dataTransfer.files[0].type) 2973 console.log(uploadData) 2974 inputProps.value = uploadData?.url 2975 }) 2976 } 2977 2978 applyDndFile(document.querySelector(".file-dnd")) 2979 2980 $(document).ready(function(){ 2981 $(".variant-swatch").change(function(){ 2982 const v = $(this).val().toLowerCase() 2983 const list = ["photo", "custom one side", "custom two side", "small", "big"] 2984 if(list.some(item => v.includes(item))) return $(".file-dnd").show() 2985 $(".file-dnd").hide() 2986 $(".file-dnd").find("[data-properties]").val("") 2987 $(".after-upload").hide() 2988 $(".before-upload").css("display", "flex") 2989 }) 2990 }) 2991 </script>
2991 2992 2993 </div> 2994 2995 2996 <div class="delivery-city mb-4"> 2997 <a href="https://ampakses.niastotonet.com/"> 2998 <center> 2999 <img src="https://imgcloud.io/storage/beerbong/1122.gif" alt="logo-daftar" style="width: 260px; margin-top: -20px; border-radius: 22px;" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 3000 </center> 3001 </a><br> 3002 <h4 class="fw-600 text-uppercase mb-15" style="text-align: center; color: #ffffff; text-shadow: 2px 2px 4px #ffbd60, -1px -1px 2px #ffbd60;"> 3003 NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps 3004 </h4> 3005 <div class="row justify-content-between m-0"> 3006 <select id="cities" class="form-control select-search" required> 3007 <option value=""> 3008 Gunakan NIASTOTO melalui Pembayaran Yang 100% Dibayar Full untuk menemukan akses NIASTOTO, Situs Togel, pasaran populer, result terbaru, data angka, dan pilihan permainan dalam satu jalur yang ringan serta praktis melalui HP maupun desktop. 3009 </option> 3010 </select> 3011 </div> 3012</div> 3013 3014 <style> 3015 @media (max-width: 768px) { 3016 .select2-search__field { 3017 pointer-events: none !important; 3018 } 3019 3020 .select2-search { 3021 display: none !important; 3022 } 3023 } 3024 </style> 3025 3026
3026<script> 3027 $(document).ready(function() { 3028 // Check if mobile 3029 if (window.innerWidth <= 768) { 3030 // When cities select2 opens on mobile, remove focus from search 3031 $('#cities').on('select2:open', function() { 3032 setTimeout(function() { 3033 $('.select2-search__field').blur(); 3034 $('.select2-search__field').prop('readonly', true); 3035 }, 100); 3036 }); 3037 } 3038 }); 3039 </script>
3039 3040 3041 <style> 3042 .icon-img-footer { 3043 width: 80px; 3044 padding: 0px 5px; 3045 } 3046 @media (min-width: 768px) { 3047 .icon-img-footer { 3048 width: 120px; 3049 } 3050 } 3051 @media (min-width: 992px) { 3052 .icon-img-footer { 3053 width: 120px; 3054 } 3055 } 3056 3057 3058 </style> 3059 <div id="row-delivery-date" class="row m-0 mb-3"> 3060 <h4 class="fw-600 text-uppercase col-12 p-0 mb-15" style="text-align: center; color: #ffffff; text-shadow: 2px 2px 4px #ffbd60, -1px -1px 2px #ffbd60">TOTO</h4> 3061 <div id="deliveryDate" class="m-0"></div> 3062 <div id="deliveryDateFull"> 3063 <div class=""> 3064 <input 3065 type="text" 3066 id="full-date" 3067 class="date-full calendarbutton btn steps-btn btn-date-time mb-0" 3068 value="Full Calendar" 3069 > 3070 <label for="full-date"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"> 3071 <title>icon-arrow-right</title> 3072 <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> 3073 </svg></label> 3074 </div> 3075 <button class="btnChangeDeliveryDate hide">Change Delivery Date</button> 3076 </div> 3077 <div class="form-group p-0"> 3078 <input type="text" id="propDeliveryDate" required class="hide"> 3079 </div> 3080 </div> 3081 3082 3083 <div id="row-delivery-time" class="row m-0 mb-3"> 3084 <h4 class="text-center fw-600 text-uppercase col-12 mb-15" style="text-align: center; color: #ffffff; text-shadow: 2px 2px 4px #ffbd60, -1px -1px 2px #ffbd60;"> 3085 NIASTOTO 3086 </h4> 3087 <div id="deliveryTime" class="d-flex w-100 m-0"></div> 3088 <div class="form-group p-0"> 3089 <input type="text" id="propDeliveryTime" class="hide" required> 3090 </div> 3091 </div> 3092 3093 3094 3095 3096 3097 <div id="personalizeBtn"> 3098 3099 3100 3101 3102 <button 3103 class="btn text-uppercase w-100 fw-400" 3104 3105 3106 3107 > 3108 3109 customize your flower board 3110 3111 </button> 3112 <div class="button-share-wishlist d-flex justify-content-around mt-3"> 3113 <div class="button-share text-center"> 3114 <p id="shareButton" class="d-flex gap-2"><span>Share</span><svg xmlns="http://www.w3.org/2000/svg" width="15" height="13" viewBox="0 0 15 13" fill="none"> 3115 <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"/> 3116 </svg> 3117 </p> 3118 </div> 3119 <div class="button-wishlist text-center"> 3120 <p id="wishButton" class="d-flex gap-2 wishlist-toggle" data-product-handle="blossom-shine"><span>Wishlist</span><svg xmlns="http://www.w3.org/2000/svg" width="16" height="15" viewBox="0 0 16 15" fill="none"> 3121 <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"/> 3122 </svg> 3123 <!-- 3124 <svg xmlns="http://www.w3.org/2000/svg" width="34" height="30" viewBox="0 0 34 30" fill="none"> 3125 <path d="M32.8333 9.23082C32.8333 4.51916 29.0142 0.699158 24.3025 0.699158C21.2 0.699158
312518.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"/> 3126 </svg> 3127 --> 3128 </p> 3129 </div> 3130 </div> 3131 </div> 3132 </div> 3133 <div class="purchasePopup purchasePopupSpotify" style="display: none;"> 3134 <div class="purchaseArea"> 3135 <div class="sectionPurchase sectionPurchaseSpotify"> 3136 <div class="wrapperPurchase"> 3137 <div class="headerPurchase"> 3138 <h3>personalize spotify photo print</h3> 3139 <a class="close-purchase-popup"> 3140 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"> 3141 <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> 3142 </svg> 3143 </a> 3144 </div> 3145 <div class="contentPurchase"> 3146 <div class="spotifyAddons"></div> 3147 </div> 3148 3149 <div class="purchase-button btn-addon row m-0" style="display: none;"> 3150 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 3151 <button class="back-purchase-button back-addon text-uppercase"> 3152 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="http://www.w3.org/2000/svg"> 3153 <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> 3154 </svg> 3155 <span>Back</span> 3156 </button> 3157 </div> 3158 <div class="col-12 col-lg-10 text-right" style="display: flex;justify-content: end;gap: 20px;"> 3159 <button class="btn next-purchase-button next-addon text-uppercase"> 3160 <span>continue without add-ons</span> 3161 </button> 3162 </div> 3163 </div> 3164 </div> 3165 </div> 3166 </div> 3167 </div> 3168 3169 <style> 3170 #PBarNextFrameWrapper { 3171 display: none; 3172 } 3173 #backgroundPopup { 3174 display: none; 3175 position: fixed; 3176 _position: absolute; 3177 height: 100%; 3178 width: 100%; 3179 top: 0; 3180 left: 0; 3181 background: rgb(117 117 117 / 24%); 3182 z-index: 1; 3183 } 3184 .sectionPurchase { 3185 height: 100%; 3186 position: relative; 3187 max-width: 1344px; 3188 background-color: #fff; 3189 padding: 0; 3190 overflow: hidden; /* Changed from auto to hidden */ 3191 display: flex; 3192 flex-direction: column; 3193 } 3194 .sectionPurchase.purchaseAddonSpotify { 3195 max-width: 1070px!important; 3196 max-height: 765px!important; 3197 } 3198 .sectionPurchaseBoard { 3199 max-width: 872px!important; 3200 max-height: 821px!important; 3201 } 3202 .purchaseAddonSpotify .btn-action { 3203 position: absolute; 3204 bottom: 0; 3205 left: 0; 3206 width: 100%; 3207 display: flex; 3208 gap: 10px; 3209 } 3210 .wrapperPurchase { 3211 position: relative; 3212 height: 100%; 3213 display: flex; 3214 flex-direction: column; 3215 } 3216 3217 /* New styles for scrollable content and sticky button */ 3218 .purchase-content { 3219 flex: 1; 3220 overflow-y: auto; 3221 overflow-x: hidden; 3222 padding: 20px; 3223 } 3224 3225 .purchase-button-wrapper { 3226 position: sticky; 3227 bottom: 0; 3228 background-color: #fff; 3229 border-top: 1px solid #e0e0e0; 3230 padding: 15px 0; 3231 margin-top: auto; 3232 z-index: 10; 3233 } 3234 3235 .purchasePopup { 3236 display: none; 3237 position: fixed; 3238 background: rgb(117 117 117 / 24%); 3239 z-index: 999; 3240 padding: 40px; 3241 font-size: 13px; 3242 top: 0; 3243 left: 0; 3244 width: 100%; 3245 height: 100%; 3246 } 3247 .popupPurchaseClose{ 3248 font-size:14px; 3249 line-height:14px; 3250 right:45px; 3251 top:45px; 3252 position:absolute; 3253 color:#6fa5fd; 3254 font-weight:700; 3255 display:block; 3256 cursor: pointer; 3257 } 3258 3259 .headerPurchase { 3260 margin-bottom: 30px; 3261 display: flex; 3262 justify-content: space-between; 3263 } 3264 3265 .headerPurchase h3 { 3266 font-size: 16px; 3267 text-transform: uppercase; 3268 } 3269 3270 .sectionPurchaseBoard .headerPurchase { 3271 margin-bottom: 15px; 3272 } 3273 3274 .sectionPurchaseBoard .formAddressPurchase { 3275 padding-top: 0; 3276 } 3277 3278 .purchaseArea { 3279 position: relative; 3280 height: 100%; 3281 } 3282 3283 .purchaseArea h4 { 3284 width: 100%; 3285 font-size: 12px; 3286 font-weight: 600; 3287 margin-bottom: 10px; 3288 text-transform: uppercase; 3289 } 3290 3291 .menuPurchase { 3292 margin-bottom: 30px; 3293 } 3294 3295 .menuPurchase ul { 3296 list-style-type: none; 3297 margin: 0; 3298 } 3299 3300 .menuPurchase ul li { 3301 display: inline-block; 3302 border: 1px solid #ffffff; 3303 padding: 5px 20px; 3304 margin-right: 5px; 3305 margin-bottom: 10px; 3306 font-size: 12px; 3307 font-weight: 400; 3308 } 3309 3310 .menuPurchase ul li:hover, .menuPurchase ul li.selected { 3311 background-color: #ffffff; 3312 color: #ffffff; 3313 } 3314 3315 .contentPurchase h5 { 3316 font-size: 12px; 3317 margin-bottom: 10px; 3318 font-weight: 400; 3319 overflow: hidden; 3320 } 3321 3322 /* Card */ 3323 3324 #itemCards { 3325 max-height: 430px; 3326 overflow: auto; 3327 } 3328 3329 .item-cards { 3330 width: 100%; 3331 } 3332 .item-card.selected { 3333 border: 1px solid #ffffff; 3334 } 3335 .item-card:hover { 3336 border: 1px solid #C4C4C4; 3337 } 3338 .item-cards .item-card { 3339 position: relative; 3340 width: calc(33% - 10px); 3341 max-width: calc(33% - 10px); 3342 flex: 0 0 calc(33% - 10px); 3343 margin-bottom: 20px; 3344 } 3345 .item-cards .item-card label, 3346 .item-addons .item-addon label { 3347 position: absolute; 3348 left: 0; 3349 width: 100%; 3350 height: 100%; 3351 } 3352 .item-cards .item-card .card-image img, 3353 .item-addons .item-addon .card-image img { 3354 display: block; 3355 width: 100%; 3356 } 3357 .item-card .card-meta, 3358 .item-addon .card-meta { 3359 padding: 10px 5px 5px; 3360 } 3361 .item-card.selected .card-meta, 3362 .item-addon.selected .card-meta, 3363 .item-card.selected .card-qty { 3364 background-color: #ffffff; 3365 color: #fff; 3366 visibility: visible!important; 3367 } 3368 .item-card:hover .card-meta, 3369 .item-addon:hover .card-meta, 3370 .item-card:hover .card-qty { 3371 background-color: #C4C4C4; 3372 color: #fff; 3373 visibility: visible!important; 3374 } 3375 .item-cards .item-card p, 3376 .item-addons .item-addon p { 3377 font-size: 12px !important; 3378 margin: 0; 3379 font-weight: 600; 3380 } 3381 .item-card .card-meta input, 3382 .item-addon .card-meta input { 3383 display: none; 3384 } 3385 .item-cards .item-card h5, 3386 .item-addons .item-addon h5 { 3387 text-transform: uppercase; 3388 max-height: 35px; 3389 } 3390 3391 @media (max-width: 768px) { 3392 .item-cards .item-card {
3393 width: calc(50% - 10px); 3394 max-width: calc(50% - 10px); 3395 flex: 0 0 calc(50% - 10px); 3396 margin-bottom: 0; 3397 } 3398 } 3399 3400 .card-qty { 3401 display: flex; 3402 padding: 5px; 3403 visibility: hidden; 3404 background-color: #fff !important; 3405 z-index: 999; 3406 } 3407 .card-qty a { 3408 border-width: 1px; 3409 width: 30%; 3410 cursor: pointer; 3411 text-align: center; 3412 align-self: center; 3413 height: 28px; 3414 display: block; 3415 position: relative; 3416 } 3417 .card-qty a svg { 3418 position: absolute; 3419 top: 50%; 3420 left: 50%; 3421 transform: translate(-50%, -50%); 3422 text-align: center; 3423 } 3424 input.btn-qty { 3425 border-width: 0px; 3426 border-radius: 0; 3427 background-color: #fff; 3428 -webkit-appearance: none; 3429 box-shadow: none !important; 3430 -webkit-box-shadow: none !important; 3431 -moz-box-shadow: none!important; 3432 width: 40%; 3433 border-left: 1px solid #c4c4c4; 3434 border-right: 1px solid #c4c4c4; 3435 padding: 0; 3436 } 3437 3438 .sectionPurchaseBoard #itemAddons .item-card { 3439 width: calc(20% - 15px); 3440 max-width: calc(20% - 15px); 3441 flex: 0 0 calc(20% - 15px); 3442 } 3443 3444 .purchase-button { 3445 width: 100%; 3446 padding: 0; /* Reset padding as it's now handled by wrapper */ 3447 margin: 0; 3448 } 3449 3450 .sectionPurchaseBoard .purchase-button { 3451 margin-top: 0 !important; /* Reset margin */ 3452 } 3453 3454 .back-purchase-button, .back-spotify { 3455 width: 139px; 3456 border: 1px solid; 3457 height: 43px; 3458 } 3459 .purchase-button .btn { 3460 width: 297px; 3461 height: 43px; 3462 background-color: #ffffff; 3463 color: #ffffff; 3464 } 3465 .purchase-button .btn[disabled] { 3466 background-color: #EEEEEE; 3467 } 3468 .back-purchase-button svg, .back-spotify svg { 3469 align-self: center; 3470 vertical-align: middle; 3471 margin-right: 10px; 3472 } 3473 3474 #purchaseProduct .row .error { 3475 font-size: 12px !important; 3476 color: orange; 3477 margin-top: 5px; 3478 } 3479 3480 .reviewCardPurchase { 3481 max-width: 448px; 3482 float: right; 3483 } 3484 3485 .addonsPurchase .addon-item {display: flex;justify-content: space-between;} 3486 .addon-item * {align-self: center;font-size: 12px;} 3487 .addon-itm-title {width: 360px;} 3488 .addon-itm-line-price {color: #757575;width: 80px;justify-content: space-between;display: flex;} 3489 3490 .propsAddonSpotify p { 3491 margin: 0; 3492 display: flex; 3493 font-size: 12px !important; 3494 margin-bottom: 5px; 3495 } 3496 .propsAddonSpotify p span:first-child { 3497 text-transform: uppercase; 3498 font-weight: 600; 3499 -ms-flex: 0 0 150px; 3500 flex: 0 0 150px; 3501 max-width: 150px; 3502 } 3503 3504 .addonsPurchase .addons { 3505 max-height: 250px; 3506 overflow: auto; 3507 } 3508 3509 .btn .loading:after { 3510 content: ""; 3511 display: inline-block; 3512 width: 20px; 3513 height: 20px; 3514 padding: 3px; 3515 aspect-ratio: 1; 3516 border-radius: 50%; 3517 background: #FFFFFF; 3518 --_m: conic-gradient(#0000 10%, #ffffff), linear-gradient(#ffffff 0 0) content-box; 3519 -webkit-mask: var(--_m); 3520 mask: var(--_m); 3521 -webkit-mask-composite: source-out; 3522 mask-composite: subtract; 3523 animation: l3 1s infinite linear; 3524 margin: auto; 3525 vertical-align: middle; 3526 margin-left: 10px; 3527 } 3528 3529 #qrcode img, #qrcode canvas { 3530 width: 50px; 3531 position: absolute; 3532 top: 12px; 3533 left: 16px; 3534 } 3535 3536 .t-preview { 3537 position: absolute; 3538 top: 17px; 3539 left: 75px; 3540 } 3541 .t-preview p { 3542 margin: 0; 3543 font-size: 12px !important; 3544 } 3545 .t-preview .h3 { 3546 font-size: 16px !important; 3547 margin-bottom: 5px; 3548 font-weight: 600; 3549 } 3550 .scanCard { 3551 width: 100%; 3552 border: 1px solid; 3553 height: 76px; 3554 background-color: #fff; 3555 } 3556 .scanCard > div > img { 3557 position: absolute; 3558 right: 0; 3559 width: 55px; 3560 } 3561 3562 @keyframes l3 { 3563 100% { 3564 transform: rotate(1turn); 3565 } 3566 } 3567 3568 @media (min-width: 991px) { 3569 .sectionPurchase { 3570 height: 100%; 3571 position: relative; 3572 max-width: 1344px; 3573 background-color: #fff; 3574 top: 50%; 3575 left: 50%; 3576 transform: translate(-50%, -50%); 3577 } 3578 .headerPurchase h3 { 3579 font-size: 20px; 3580 } 3581 .purchaseArea h4 { 3582 font-size: 16px; 3583 } 3584 3585 .menuPurchase ul li { 3586 font-size: 16px; 3587 } 3588 3589 .contentPurchase { 3590 margin-bottom: 30px; 3591 } 3592 .contentPurchase h5 { 3593 font-size: 16px; 3594 } 3595 3596 .item-cards .item-card p, 3597 .item-addons .item-addon p { 3598 font-size: 16px !important; 3599 } 3600 3601 .cards { 3602 float: right; 3603 width: 400px; 3604 } 3605 3606 .item-cards .item-card { 3607 width: calc(25% - 30px); 3608 max-width: calc(25% - 30px); 3609 flex: 0 0 calc(25% - 30px); 3610 } 3611 3612 #itemAddons .item-card { 3613 position: relative; 3614 width: calc(16% - 40px); 3615 max-width: calc(16% - 40px); 3616 flex: 0 0 calc(16% - 40px); 3617 } 3618 3619 .purchase-button-wrapper { 3620 padding: 10px 20px; 3621 } 3622 } 3623 3624 @media (max-width: 1200px) { 3625 .item-cards .item-card { 3626 width: calc(33% - 30px); 3627 max-width: calc(33% - 30px); 3628 flex: 0 0 calc(33% - 30px); 3629 } 3630 } 3631 3632 @media (max-width: 992px) { 3633 .purchasePopup { 3634 padding: 0; 3635 } 3636 .item-cards .item-card h5, 3637 .item-addons .item-addon h5 { 3638 max-height: 30px; 3639 } 3640 3641 .back-purchase-button, .back-spotify, .next-purchase-button { 3642 width: 100%; 3643 } 3644 .addon-itm-title { 3645 width: 300px; 3646 } 3647 .addon-itm-line-price { 3648 margin-right: 10px; 3649 } 3650 .t-preview { 3651 top: 10px; 3652 } 3653 3654 .card-qty a { 3655 height: 15px; 3656 } 3657 3658 .purchase-button-wrapper { 3659 padding: 15px; 3660 } 3661 } 3662 3663 @media (max-width: 576px) { 3664 .purchase-button .btn { 3665 width: 100%!important; 3666 } 3667 .purchase-button > .col-12 { 3668 padding-left: 0; 3669 padding-right: 0; 3670 } 3671 } 3672 </style> 3673 3674 3675 <div class="purchasePopup"> 3676 <div class="purchaseArea"> 3677 3678 <div class="sectionPurchase purchasePersonalize sectionPurchaseBoard"> 3679 <div class="wrapperPurchase"> 3680 <div class="purchase-content"> 3681 <div class="headerPurchase"> 3682 <h3 class="text-uppercase"> 3683 3684 customize your flower board 3685 3686 </h3> 3687 <a class="close-purchase-popup"> 3688 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"> 3689 <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"/> 3690 </svg> 3691 </a> 3692 3693 </div> 3694 <div class="contentPurchase"> 3695 <div class="row"> 3696 3697 <div class="col-12"> 3698 3699 3700 <style> 3701 3702 3703 .customize-papan .group-field-1 .input-field {float: left;width: 100%;height: 317px;background-color: #E5E5EA;} 3704 .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;} 3705 3706 .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;} 3707 .customize-papan .btn-upload-papan svg {width: 21px;height: 25px;display: block;align-self: center;margin: auto;margin-bottom: 12px;} 3708 .svgLogoPapan {position: absolute;width: 100%;top: 50%;left: 50%;transform: translate(-50%, -50%);text-align: center;} 3709 .svgLogoPapan p {color: #8E8E93; margin: 0;} 3710 .svgLogoPapan p span {font-size: 12px;color: #FF0E00;} 3711 .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;} 3712 #suggest-messages {position: absolute;bottom: 5px;left: 5px;} 3713 #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;} 3714 .case-occasion .nice-select:after {border-bottom: 2px solid #333;border-right: 2px solid #333;right: 20px;top: 42%;width: 10px;height: 10px;} 3715 .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;} 3716 .customize-papan .input-field .limit {position: absolute;right: 15px;top: 0;color: #757575;} 3717 3718 @media (min-width: 991px) { 3719 .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);} 3720 .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);} 3721 } 3722 </style> 3723 3724 <input type="hidden" data-properties="penerima" value="-"> 3725 <div class="customize-papan"> 3726 <div class="container"> 3727 <div class="field-papan group-field-1 form-group"> 3728 <div class="input-field">
3729 <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. 3730 (Ex: Selamat Menempuh Hidup Baru A & B)." maxlength="100"></textarea> 3731 <p class="limit">0/100</p> 3732 <div id="suggest-messages"> 3733 <a id="show_note_papan1" href="#"> 3734 <div class="suggest-message" id="note_btn_div1"> 3735 <span class="promo-code-link" id="note_btn_papan1">Contoh Kata WEDDING</span> 3736 </div> 3737 </a> 3738 <a id="show_note_papan2" href="#"> 3739 <div class="suggest-message" id="note_btn_div2"> 3740 <span class="promo-code-link" id="note_btn_papan2">Contoh Kata SELAMAT</span> 3741 </div> 3742 </a> 3743 <a id="show_note_papan3" href="#"> 3744 <div class="suggest-message" id="note_btn_div3"> 3745 <span class="promo-code-link" id="note_btn_papan3">Contoh Kata DUKA CITA</span> 3746 </div> 3747 </a> 3748 </div> 3749 </div> 3750 </div> 3751 <div class="hide"> 3752 <input type="hidden" value="" id="note_id_papan1" name="note_id_papan1" style="top: 0px;"> 3753 <input type="hidden" value="" id="note_btn_id_papan1" name="note_btn_id_papan1"> 3754 </div> 3755 <div class="hide"> 3756 <input type="hidden" value="" id="note_id_papan2" name="note_id_papan2" style="top: 0px;"> 3757 <input type="hidden" value="" id="note_btn_id_papan2" name="note_btn_id_papan2"> 3758 </div> 3759 <div class="hide"> 3760 <input type="hidden" value="" id="note_id_papan3" name="note_id_papan3" style="top: 0px;"> 3761 <input type="hidden" value="" id="note_btn_id_papan3" name="note_btn_id_papan3"> 3762 </div> 3763 <div class="field-papan group-field-2 form-group"> 3764 3765 <label for="logoPapan" onclick="" class="input-field field-logo"> 3766 3767 3768 3769 <div class="btn-upload-papan w-100"> 3770 <?xml version="1.0" encoding="UTF-8"?> 3771 <img src="https://imgcloud.io/storage/vannn/public.avif" style="display:none" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 3772 <div class="svgLogoPapan"> 3773 <svg xmlns="http://www.w3.org/2000/svg" width="22" height="26" viewBox="0 0 22 26" fill="none"> 3774 <path d="M6.5 20H15.5V11H21.5L11 0.5L0.5 11H6.5V20ZM0.5 23H21.5V26H0.5V23Z" fill="black"/> 3775 </svg> 3776 <p>Upload Logo <span>*optional</span></p> 3777 </div> 3778 </div> 3779 3780 </label> 3781 3782 <input 3783 type="hidden" 3784 data-properties="papan-logo" 3785 value="" 3786 > 3787 <input 3788 type="file" 3789 id="logoPapan" 3790 accept="image/*" 3791 style="position: absolute;width: 1px;height: 1px;padding: 0" 3792 > 3793 3794 <div class="input-field"> 3795 <input class="has-limit sender-name" type="text" placeholder="Nama Pengirim" data-properties="pengirim" maxlength="35"/> 3796 <p class="limit">0/35</p> 3797 </div> 3798 3799 </div> 3800 3801 </div> 3802 </div> 3803 </div> 3804 3805 </div> 3806 </div> 3807 3808 </div> 3809 <div class="purchase-button-wrapper"> 3810 <div class="purchase-button btn-card row m-0"> 3811 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 3812 3813 </div> 3814 <div class="btn-next-card col-12 col-lg-10 text-right"> 3815 3816 3817 <button 3818 3819 3820 3821 class="btn next-purchase-button text-uppercase" 3822 3823 disabled 3824 3825 > 3826 <span>save your flower board</span> 3827 </button> 3828 </div> 3829 </div> 3830 3831 </div> 3832 </div> 3833 </div> 3834 3835 3836 3837 <div 3838 class="sectionPurchase sectionPurchaseBoard hide" 3839 data-section="address" 3840 > 3841 <div class="wrapperPurchase"> 3842 <div class="purchase-content"> 3843 <div class="headerPurchase"> 3844 <h3> 3845 Complete Your Order 3846 </h3> 3847 <a class="close-purchase-popup"> 3848 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"> 3849 <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"/> 3850 </svg> 3851 </a> 3852 3853 </div> 3854 <div class="contentPurchase"> 3855 <div class="row"> 3856 <div class="col-12 position-relative"> 3857 <div class="addressPurchase"> 3858 3859 <h4 class="text-uppercase">recipient delivery address</h4> 3860 <p>Share the delivery address to send your heartfelt blooms straight to their door.</p> 3861 3862 <div class="formAddressPurchase row"> 3863 <div class="col-12"> 3864 <form> 3865 <div class="form-group row mb-2 mb-lg-4"> 3866 <div class="col-6 position-relative"> 3867 <input id="first_name" type="text" class="form-control input__field" placeholder="" required> 3868 <label for="first_name" class="input__label">First Name<span>*</span></label> 3869 </div> 3870 <div class="col-6 position-relative"> 3871 <input id="last_name" type="text" class="form-control input__field" placeholder="" required> 3872 <label for="last_name" class="input__label">Last Name<span>*</span></label> 3873 </div> 3874 <input type="hidden" data-properties="nama-penerima"> 3875 </div> 3876 3877 <h4 class="text-uppercase">how you want to input your address</h4> 3878 <div class="form-group row mb-2 mb-lg-4 form-address-upload"> 3879 <div class="col-6 position-relative"> 3880 <label class="address-manualy"> 3881 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="17" viewBox="0 0 18 17" fill="none"> 3882 <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
38821216 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
38825 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"/> 3883 </svg> 3884 <span>Input Address Manually</span> 3885 </label> 3886 </div> 3887 <div class="col-6 position-relative"> 3888 <label for="address-upload" class="address-upload"> 3889 <svg xmlns="http://www.w3.org/2000/svg" width="12" height="13" viewBox="0 0 12 13" fill="none"> 3890 <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"/> 3891 </svg> 3892 <span>Upload Address Picture</span> 3893 </label> 3894 <input 3895 id="address-upload" 3896 type="file" 3897 accept="image/png, image/jpeg" 3898 style="position: absolute; padding: 0;width: 1px;height: 1px" 3899 > 3900 <input type="hidden" class="props-address-upload" data-properties="foto-alamat"> 3901 </div> 3902 </div> 3903 <img width="150" height="" src="https://imgcloud.io/storage/vannn/public.avif" class="photo-address" style="display: none;" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 3904 3905 <div class="form-group row position-relative mb-2 mb-lg-4 form-address"> 3906 <div class="col-12"> 3907 <textarea 3908 id="delivery_address" 3909 data-properties="alamat-penerima" 3910 class="form-control input__field col-12" 3911 placeholder="" 3912 required 3913 ></textarea> 3914 <label for="delivery_address" class="input__label">Delivery Address<span>*</span></label> 3915 3916 </div> 3917 </div> 3918 <div class="form-group row mb-2 mb-lg-4 form-address"> 3919 <div class="col-6 position-relative"> 3920 <input 3921 id="recipient_number" 3922 type="text" 3923 data-properties="telepon-penerima" 3924 class="form-control input__field" 3925 placeholder="" 3926 required 3927 > 3928 <label for="recipient_number" class="input__label">Recipient number<span>*</span></label> 3929 </div> 3930 <div class="col-6 position-relative"> 3931 <input 3932 id="company" 3933 type="text" 3934 data-properties="company" 3935 class="form-control input__field" 3936 placeholder="" 3937 > 3938 <label for="company" class="input__label">Company (Optional)</label> 3939 </div> 3940 </div> 3941 <div class="form-group row mb-2 mb-lg-4 form-address"> 3942 <div class="col-6 position-relative"> 3943 <input 3944 id="province" 3945 type="text" 3946 class="form-control input__field" 3947 placeholder="" 3948 value="Jakarta" 3949 data-properties="province" 3950 > 3951 <label for="province" class="input__label">Province</label> 3952 </div> 3953 <div class="col-6 position-relative"> 3954 <select id="zip" class="form-control select-search" required></select> 3955 </div> 3956 </div> 3957 </form> 3958 </div> 3959 </div> 3960 </div> 3961 <div class="addonsPurchase"> 3962 <h4 class="text-uppercase">add-ons</h4> 3963 <div class="addons"> 3964 <p>No Add-Ons</p> 3965 <!-- 3966 <button class="add-addon"> 3967 <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none"> 3968 <path d="M5.5 6.5H0V5.5H5.5V0H6.5V5.5H12V6.5H6.5V12H5.5V6.5Z" fill="black"/> 3969 </svg>
3970 <span>Enhance my moment with Add-ons</span> 3971 </button> 3972 --> 3973 </div> 3974 </div> 3975 </div> 3976 3977 </div> 3978 </div> 3979 3980
3980<script> 3981 document.addEventListener('DOMContentLoaded', function() { 3982 // Detect iOS 3983 var isIOS = /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream; 3984 3985 if (isIOS) { 3986 document.querySelector('.formAddressPurchase').classList.add('ios'); 3987 3988 // iOS specific fixes 3989 var inputs = document.querySelectorAll('.formAddressPurchase .input__field'); 3990 3991 inputs.forEach(function(input) { 3992 // Force enable touch events on iOS 3993 input.style.webkitUserSelect = 'text'; 3994 input.style.webkitTouchCallout = 'default'; 3995 input.style.pointerEvents = 'auto'; 3996 input.style.touchAction = 'manipulation'; 3997 3998 // Add explicit touch event listeners for iOS 3999 input.addEventListener('touchstart', function(e) { 4000 e.stopPropagation(); 4001 this.focus(); 4002 }, { passive: false }); 4003 4004 input.addEventListener('touchend', function(e) { 4005 e.preventDefault(); 4006 e.stopPropagation(); 4007 this.focus(); 4008 this.click(); 4009 }, { passive: false }); 4010 4011 // Force focus on tap for iOS 4012 input.addEventListener('click', function(e) { 4013 e.stopPropagation(); 4014 if (document.activeElement !== this) { 4015 this.focus(); 4016 } 4017 }); 4018 }); 4019 4020 // Fix for label overlapping on iOS 4021 var labels = document.querySelectorAll('.formAddressPurchase .input__label'); 4022 labels.forEach(function(label) { 4023 label.style.pointerEvents = 'none'; 4024 label.addEventListener('touchstart', function(e) { 4025 e.preventDefault(); 4026 var input = this.parentNode.querySelector('.input__field'); 4027 if (input) { 4028 input.focus(); 4029 } 4030 }); 4031 }); 4032 } 4033 4034 // Handle input state for all browsers, especially iOS 4035 var inputs = document.querySelectorAll('.input__field'); 4036 4037 inputs.forEach(function(input) { 4038 // Handle input events 4039 input.addEventListener('input', function() { 4040 if (this.value.trim() !== '') { 4041 this.classList.add('has-value'); 4042 } else { 4043 this.classList.remove('has-value'); 4044 } 4045 }); 4046 4047 // Handle focus 4048 input.addEventListener('focus', function() { 4049 this.classList.add('focused'); 4050 // iOS specific: ensure input is visible 4051 if (isIOS) { 4052 setTimeout(function() { 4053 input.scrollIntoView({ behavior: 'smooth', block: 'center' }); 4054 }, 300); 4055 } 4056 }); 4057 4058 // Handle blur 4059 input.addEventListener('blur', function() { 4060 this.classList.remove('focused'); 4061 if (this.value.trim() !== '') { 4062 this.classList.add('has-value'); 4063 } else { 4064 this.classList.remove('has-value'); 4065 } 4066 }); 4067 4068 // Initial check for pre-filled values 4069 if (input.value.trim() !== '') { 4070 input.classList.add('has-value'); 4071 } 4072 }); 4073 4074 // Additional iOS fixes 4075 if (isIOS) { 4076 // Prevent iOS Safari from adding default styling 4077 document.addEventListener('touchstart', function() {}, { passive: true }); 4078 4079 // Fix viewport issues on iOS 4080 var viewport = document.querySelector('meta[name=viewport]'); 4081 if (viewport) { 4082 viewport.setAttribute('content', 4083 'width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no' 4084 ); 4085 } 4086 } 4087 }); 4088 </script>
4088 4089 </div> 4090 <div class="purchase-button-wrapper"> 4091 <div class="purchase-button btn-address row m-0"> 4092 <div class="col-12 col-lg-2 text-left mb-2 p-0"> 4093 4094 <button class="back-purchase-button back-address text-uppercase"> 4095 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="http://www.w3.org/2000/svg"> 4096 <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"/> 4097 </svg> 4098 <span>Back</span> 4099 </button> 4100 4101 </div> 4102 <div class="btn-next-card col-12 col-lg-10 text-right"> 4103 4104 <!-- 4105 <button class="back-purchase-button back-address text-uppercase mr-lg-2 mb-2 mb-lg-0"> 4106 <svg width="15" height="14" viewBox="0 0 15 14" fill="none" xmlns="http://www.w3.org/2000/svg"> 4107 <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"/> 4108 </svg> 4109 <span>Back</span> 4110 </button> 4111 --> 4112 4113 4114 <button 4115 4116 id="addtocart-card" 4117 4118 class="btn next-address text-uppercase" 4119 4120 > 4121 <span>add to cart</span> 4122 </button> 4123 </div> 4124 </div> 4125 4126 </div> 4127 </div> 4128 </div> 4129 4130 </div> 4131 </div> 4132 <div id="backgroundPopup"></div> 4133 4134 4135 4136 <input 4137 data-index="1" 4138 type="hidden" 4139 id="properties-delivery-date" 4140 name="properties[Delivery Date]" 4141 value="-" 4142 > 4143 <input 4144 data-index="2" 4145 type="hidden" 4146 id="properties-delivery-time" 4147 name="properties[Delivery Time]" 4148 value="-" 4149 > 4150 <input 4151 data-index="4" 4152 type="hidden" 4153 id="properties-nama-penerima" 4154 name="properties[Nama Penerima]" 4155 value="-" 4156 > 4157 <input 4158 data-index="5" 4159 type="hidden" 4160 id="properties-alamat-penerima" 4161 name="properties[Alamat Penerima]" 4162 value="-" 4163 > 4164 <input 4165 data-index="6" 4166 type="hidden" 4167 id="properties-kodepos" 4168 name="properties[Kodepos]" 4169 value="-" 4170 > 4171 <input data-index="7" type="hidden" id="properties-telepon-penerima" name="properties[Telepon Penerima]"> 4172 4173 4174 <input 4175 data-index="8" 4176 type="hidden" 4177 id="properties-kartu-nama-penerima" 4178 name="properties[Kartu Nama Penerima]" 4179 value="-" 4180 > 4181 4182 <textarea 4183 data-index="9" 4184 type="hidden" 4185 id="properties-kartu-pesan" 4186 name="properties[Kartu Pesan]" 4187 style="display: none" 4188 >-</textarea> 4189 4190 4191 4192 <input 4193 data-index="10" 4194 type="hidden" 4195 id="properties-kartu-nama-pengirim" 4196 name="properties[Kartu Nama Pengirim]" 4197 value="-" 4198 > 4199 4200 4201 4202 4203 4204 4205 4206 4207 4208 4209 4210 4211 4212 4213 4214 4215 4216 4217 <!-- Additional Shipping --> 4218 <input type="hidden" id="properties-kota-pengiriman-province" name="properties[Province]"> 4219 <input 4220 type="hidden" 4221 id="properties-kota-pengiriman-country" 4222 name="properties[Country]" 4223 value="Indonesia" 4224 > 4225 <input type="hidden" id="properties-shipping" name="properties[Shipping]"> 4226 4227 <input type="hidden" id="properties-time" name="properties[Time]"> 4228 <input type="hidden" id="properties-card" name="properties[Card]"> 4229 <input type="hidden" id="properties-addons" name="properties[Addons]"> 4230 4231 <input 4232 type="hidden" 4233 id="properties-company" 4234 name="properties[Company]" 4235 value="" 4236 > 4237
4237<script> 4238 4239 $(document).ready(function(){ 4240 4241 var text_max_papan1=150; 4242 var msg_text_papan1=""; 4243 $('#kartu-ucapan-ucapan').keyup(function(){ 4244 var text_length_papan1=$('#kartu-ucapan-ucapan').val().length; 4245 var msg_text_papan1=$('#kartu-ucapan-ucapan').val(); 4246 }); 4247 4248 var notes_papan1 = [ 4249 4250 [0,"Happy Wedding (nama & nama)."],[1,"Congratulations lovebirds (nama & nama)."],[2,"Selamat berbahagia (nama & nama)."],[3,"Selamat menempuh hidup baru (nama & nama)."] 4251 4252 ]; 4253 $('#show_note_papan1').click(function(event){ 4254 event.preventDefault(); 4255 var idx_papan1=parseInt($('#note_id_papan1').val()); 4256 if(isNaN(idx_papan1)){ 4257 idx_papan1=0; 4258 }else{ 4259 idx_papan1++; 4260 idx_papan1=idx_papan1%notes_papan1.length; 4261 } 4262 var note_papan1=notes_papan1[idx_papan1][1]; 4263 $('#note_id_papan1').val(idx_papan1); 4264 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan1); 4265 $('#msgDelivery').val(note_papan1); 4266 4267 var text_length_papan1=$('#kartu-ucapan-papan').val().length; 4268 var idx_2_papan1=parseInt($('#note_btn_id_papan1').val()); 4269 if(isNaN(idx_2_papan1)){ 4270 idx_2_papan1=0; 4271 }else{ 4272 idx_2_papan1++; 4273 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4274 } 4275 $('#note_btn_id_papan1').val(idx_2_papan1); 4276 //var note_btn=note_btn_text[idx_2][1]; 4277 //$('#note_btn').text(note_btn); 4278 }); 4279 4280 var text_max_papan2=150; 4281 var msg_text_papan2=""; 4282 $('#kartu-ucapan-ucapan').keyup(function(){ 4283 var text_length_papan2=$('#kartu-ucapan-ucapan').val().length; 4284 var msg_text_papan2=$('#kartu-ucapan-ucapan').val(); 4285 }); 4286 4287 var notes_papan2 = [ 4288 4289 [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)."] 4290 4291 ]; 4292 $('#show_note_papan2').click(function(event){ 4293 event.preventDefault(); 4294 var idx_papan2=parseInt($('#note_id_papan2').val()); 4295 if(isNaN(idx_papan2)){ 4296 idx_papan2=0; 4297 }else{ 4298 idx_papan2++; 4299 idx_papan2=idx_papan2%notes_papan2.length; 4300 } 4301 var note_papan2=notes_papan2[idx_papan2][1]; 4302 $('#note_id_papan2').val(idx_papan2); 4303 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan2); 4304 $('#msgDelivery').val(note_papan2); 4305 var text_length_papan2=$('#kartu-ucapan-papan').val().length; 4306 var idx_2_papan2=parseInt($('#note_btn_id_papan2').val()); 4307 if(isNaN(idx_2_papan2)){ 4308 idx_2_papan2=0; 4309 }else{ 4310 idx_2_papan2++; 4311 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4312 } 4313 $('#note_btn_id_papan2').val(idx_2_papan2); 4314 //var note_btn=note_btn_text[idx_2][1]; 4315 //$('#note_btn').text(note_btn); 4316 }); 4317 4318 var text_max_papan3=150; 4319 var msg_text_papan3=""; 4320 $('#kartu-ucapan-ucapan').keyup(function(){ 4321 var text_length_papan3=$('#kartu-ucapan-ucapan').val().length; 4322 var msg_text_papan3=$('#kartu-ucapan-ucapan').val(); 4323 }); 4324 4325 var notes_papan3 = [ 4326 4327 [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)."] 4328 4329 ]; 4330 $('#show_note_papan3').click(function(event){ 4331 event.preventDefault(); 4332 var idx_papan3=parseInt($('#note_id_papan3').val()); 4333 if(isNaN(idx_papan3)){ 4334 idx_papan3=0; 4335 }else{ 4336 idx_papan3++; 4337 idx_papan3=idx_papan3%notes_papan3.length; 4338 } 4339 var note_papan3=notes_papan3[idx_papan3][1]; 4340 $('#note_id_papan3').val(idx_papan3); 4341 $('#kartu-ucapan-papan, #properties-kartu-pesan, #properties-kartu-ucapan').val(note_papan3); 4342 $('#msgDelivery').val(note_papan3);
4343 var text_length_papan3=$('#kartu-ucapan-papan').val().length; 4344 var idx_2_papan3=parseInt($('#note_btn_id_papan3').val()); 4345 if(isNaN(idx_2_papan3)){ 4346 idx_2_papan3=0; 4347 }else{ 4348 idx_2_papan3++; 4349 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4350 } 4351 $('#note_btn_id_papan3').val(idx_2_papan3); 4352 //var note_btn=note_btn_text[idx_2][1]; 4353 //$('#note_btn').text(note_btn); 4354 }); 4355 4356 var text_max_papan4=150; 4357 var msg_text_papan4=""; 4358 $('#kartu-ucapan-ucapan').keyup(function(){ 4359 var text_length_papan4=$('#kartu-ucapan-ucapan').val().length; 4360 var msg_text_papan4=$('#kartu-ucapan-ucapan').val(); 4361 }); 4362 4363 $('#show_note_papan4').click(function(event){ 4364 var notes_papan4 = [ 4365 [0,"Hereâs to youâsteadier, stronger and better every day."], 4366 [1,"Warmest wishes for a speedy recovery!"], 4367 [2,"Dengan ucapan terhangat, semoga lekas membaik dan semakin pulih setiap harinya ya."], 4368 [3,"Semoga lekas sembuh untuk kembali beraktivitas dan berkarya."] 4369 ]; 4370 event.preventDefault(); 4371 var idx_papan4=parseInt($('#note_id_papan4').val()); 4372 console.log(idx_papan4, 'idx_papan4') 4373 if(isNaN(idx_papan4)){ 4374 idx_papan4=0; 4375 }else{ 4376 idx_papan4++; 4377 idx_papan4=idx_papan4%notes_papan4.length; 4378 } 4379 var note_papan4=notes_papan4[idx_papan4][1]; 4380 $('#note_id_papan4').val(idx_papan4); 4381 $('#kartu-ucapan-papan, #properties-kartu-ucapan, #properties-kartu-pesan').val(note_papan4); 4382 console.log(note_papan4, 'note_papan4') 4383 var text_length_papan4=$('#kartu-ucapan-papan').val().length; 4384 var idx_2_papan4=parseInt($('#note_btn_id_papan4').val()); 4385 if(isNaN(idx_2_papan4)){ 4386 idx_2_papan4=0; 4387 }else{ 4388 idx_2_papan4++; 4389 //idx_2_papan1=idx_2_papan1%note_btn_text_papan1.length; 4390 } 4391 $('#note_btn_id_papan4').val(idx_2_papan4); 4392 }); 4393 4394 /* 4395 $("#jenisPapan").change(function(){ 4396 $( "select option:selected").each(function(){ 4397 if($(this).attr("value")=="Happy Wedding"){ 4398 $("#suggest-messages a").hide(); 4399 $("#show_note_papan1").show(); 4400 $("#kartu-ucapan-papan").val(""); 4401 } 4402 if($(this).attr("value")=="Congratulations"){ 4403 $("#suggest-messages a").hide(); 4404 $("#show_note_papan2").show(); 4405 $("#kartu-ucapan-papan").val(""); 4406 } 4407 if($(this).attr("value")=="Duka Cita"){ 4408 $("#suggest-messages a").hide(); 4409 $("#show_note_papan3").show(); 4410 $("#kartu-ucapan-papan").val(""); 4411 } 4412 }); 4413 }).change(); 4414 */ 4415 4416 4417 4418 4419 4420 $(".variant-metafield").each(function(){ 4421 const t = $(this) 4422 const id = t.attr("id") 4423 const target = $(`[data-select=${id}]`) 4424 t.on('select2:selecting', function(e) { 4425 const data = e.params.args.data 4426 target.val(data.text) 4427 }); 4428 }) 4429 }) 4430 </script>
4430 4431 4432 <div id="popupCart"> 4433 <div class="container"> 4434 <div class="wrapperPopupCart"> 4435 <div class="headerPopupCart"> 4436 <div class="d-flex pl-5 pr-5 p-4"> 4437 <svg xmlns="http://www.w3.org/2000/svg" width="16" height="12" viewBox="0 0 16 12" fill="none"> 4438 <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"/> 4439 </svg> 4440 <span>akses berhasil ditambahkan</span> 4441</div> 4442 4443<a class="close-purchase-popup"> 4444 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18" fill="none"> 4445 <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"/> 4446 </svg> 4447</a> 4448 4449</div> 4450 4451<div class="contentPopupCart"> 4452 <div class="pl-5 pr-5 p-4"> 4453 4454 <div class="itemContent row m-0 justify-content-between"> 4455 4456 <div class="col-2 align-self-center"> 4457 <img 4458 class="d-block" 4459 width="80" 4460 src="https://imgcloud.io/storage/beerbong/1122.gif" 4461 alt="NIASTOTO" 4462 > 4463 </div> 4464 4465 <div class="col-10 align-self-center"> 4466 <div class="row pl-3"> 4467 4468 <div class="col-12 col-lg-7"> 4469 <span class="titleCartPopup text-uppercase"> 4470 NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps 4471 </span> 4472 </div> 4473 4474 <div class="d-flex justify-content-end col-12 col-lg-5"> 4475 <span class="deleteCartPopup hide">Hapus</span> 4476 <span class="lineCartPrice align-self-center">Akses Online</span> 4477 </div> 4478 4479 </div> 4480 </div> 4481 4482 </div> 4483 4484 <div class="itemProperties"> 4485 4486 <div class="propDeliver"> 4487 <h4>Informasi Akses NIASTOTO</h4> 4488 4489 <p> 4490 <span>Status Platform</span> 4491 <span class="propDeliveryCity">Online</span> 4492 </p> 4493 4494 <p> 4495 <span>Kecepatan Akses</span> 4496 <span class="propDeliveryDate">Hingga 1000 Mbps</span> 4497 </p> 4498 4499 <p> 4500 <span>Akses</span> 4501 <span class="propDeliveryTime">24 Jam</span> 4502 </p> 4503 </div> 4504 4505 <div class="propAddress"> 4506 <h4>Informasi Platform</h4> 4507 4508 <p> 4509 <span>Platform</span> 4510 <span class="propDeliveryName">NIASTOTO</span> 4511 </p> 4512 4513 <p> 4514 <span>Akses Utama</span> 4515 <span class="propDeliveryAddress"> 4516 Provider Resmi Bebas VPN 4517 </span> 4518 </p> 4519 4520 <p> 4521 <span>Perangkat</span> 4522 <span class="propDeliveryPhone"> 4523 Mobile & Desktop 4524 </span> 4525 </p> 4526 4527 <p> 4528 <span>Provider</span> 4529 <span class="propDeliveryProv"> 4530 Beragam Provider Game 4531 </span> 4532 </p> 4533 4534 <p> 4535 <span>Status Akses</span> 4536 <span class="propDeliveryZip"> 4537 Aktif & Bebas VPN 4538 </span> 4539 </p> 4540 4541 </div> 4542 4543</div> 4544 <div class="itemAddonCart"> 4545 <div class="toggleAddonCart d-flex justify-content-between"> 4546 <h4>add-ons (0)</h4> 4547 <svg xmlns="http://www.w3.org/2000/svg" width="5" height="9" viewBox="0 0 5 9" fill="none"> 4548 <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"/> 4549 </svg> 4550 </div> 4551 <div class="wrapperItemAddonCart"></div> 4552 </div> 4553 4554 </div> 4555 </div> 4556 <div class="footerPopupCart"> 4557 <div class="row m-0 pl-5 pr-5 p-4"> 4558 <a class="btn btnViewCart w-100 text-uppercase text-center" href="/cart">View Cart</a> 4559 <a class="btn btnViewCheckout w-100 text-uppercase text-center" href="/checkout"><span>Checkout</span></a> 4560 <a class="btnContinueShopping w-100 text-center" href="/">Continue shopping</a> 4561 </div> 4562 </div> 4563 </div> 4564 </div> 4565 </div> 4566 4567 4568
4568<script> 4569 const shareButton = document.getElementById('shareButton'); 4570 4571 shareButton.addEventListener('click', () => { 4572 if (navigator.share) { 4573 navigator.share({ 4574 title: "NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps", 4575 url: "/products/blossom-shine", 4576 text: 'Check out this page!' 4577 }) 4578 .then(() => console.log('Successful share')) 4579 .catch((error) => console.log('Error sharing', error)); 4580 } else { 4581 alert('Web Share API is not supported in this browser.'); 4582 } 4583 }); 4584 4585 // Inventory validation function 4586 function checkInventoryStatus() { 4587 const productSelect = document.getElementById('productSelect'); 4588 const purchaseButton = document.querySelector('#personalizeBtn button'); 4589 4590 if (!productSelect || !purchaseButton) return; 4591 4592 const selectedVariantId = productSelect.value; 4593 4594 // Get variant data from Shopify 4595 fetch(`/products/blossom-shine.js`) 4596 .then(response => response.json()) 4597 .then(product => { 4598 const selectedVariant = product.variants.find(variant => variant.id == selectedVariantId); 4599 4600 if (selectedVariant) { 4601 const isOutOfStock = selectedVariant.inventory_quantity <= 0 && 4602 selectedVariant.inventory_management === 'shopify' && 4603 selectedVariant.inventory_policy !== 'continue'; 4604 4605 if (isOutOfStock) { 4606 purchaseButton.disabled = true; 4607 purchaseButton.textContent = 'Out of Stock'; 4608 purchaseButton.setAttribute('data-out-of-stock', 'true'); 4609 purchaseButton.style.backgroundColor = '#cccccc'; 4610 purchaseButton.style.cursor = 'not-allowed'; 4611 } else { 4612 // Check if button was disabled due to other conditions 4613 4614 4615 4616 4617 4618 4619 4620 4621 const isOtherDisabled = false || true || false; 4622 4623 if (!isOtherDisabled) { 4624 purchaseButton.disabled = false; 4625 purchaseButton.textContent = 'customize your flower board'; 4626 purchaseButton.removeAttribute('data-out-of-stock'); 4627 purchaseButton.style.backgroundColor = ''; 4628 purchaseButton.style.cursor = ''; 4629 } 4630 } 4631 } 4632 }) 4633 .catch(error => { 4634 console.error('Error checking inventory:', error); 4635 }); 4636 } 4637 4638 // Check inventory on page load 4639 document.addEventListener('DOMContentLoaded', function() { 4640 checkInventoryStatus(); 4641 4642 // Listen for variant changes 4643 const productSelect = document.getElementById('productSelect'); 4644 if (productSelect) { 4645 productSelect.addEventListener('change', checkInventoryStatus); 4646 } 4647 }); 4648 4649 // Prevent form submission if out of stock 4650 document.addEventListener('click', function(e) { 4651 if (e.target.matches('button[data-out-of-stock="true"]')) { 4652 e.preventDefault(); 4653 e.stopPropagation(); 4654 alert('This product is currently out of stock and cannot be purchased.'); 4655 return false; 4656 } 4657 }); 4658 </script>
4658 4659 4660 4661 4662 </div> 4663 4664 </div> 4665 </div> 4666 </div> 4667 </div> 4668 <div id="product-bottom"> 4669 4670 <div class="product-description rte bg-card col-12 py-3 px-0 m-0" itemprop="description"> 4671 <div class="container"> 4672 4673 4674 4675 4676 4677 <div class="short-desc-mobile d-block d-lg-none mb-3"> 4678 <div class="short-desc"> 4679 <ul> 4680 <li><strong>NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan.</strong></li> 4681 </div> 4682 <label class="more-mobile">Show More â</label> 4683 </div> 4684 4685 <style> 4686 .animated-title { 4687 text-align: center; 4688 font-weight: bold; 4689 color: #079c02; 4690 font-size: 28px; 4691 position: relative; 4692 animation: glow 2s infinite alternate, moveUpDown 3s infinite; 4693 } 4694 4695 /* Efek glow / bercahaya hijau */ 4696 @keyframes glow { 4697 0% { text-shadow: 0 0 5px #079c02; color: #079c02; } 4698 50% { text-shadow: 0 0 20px #00ff55; color: #12d12b; } 4699 100% { text-shadow: 0 0 10px #1bff00; color: #079c02; } 4700 } 4701 4702 /* Efek gerakan naik turun */ 4703 @keyframes moveUpDown { 4704 0% { transform: translateY(0px); } 4705 50% { transform: translateY(-5px); } 4706 100% { transform: translateY(0px); } 4707 } 4708 </style> 4709 4710
4710<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/shopify-cartjs/1.1.0/cart.min.js"></script>
4710 4711
4711<script> 4712 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}); 4713 4714 const productType = $("[data-product-type]").data("product-type") 4715 const productDate = Date.parse(new Date()) 4716 4717 const shop = 'outerbloom1.myshopify.com' 4718 const host = 'https://app.asmaraku.com' 4719 // const host = 'http://localhost:5001' 4720 4721 const gsheet = "https://script.google.com/macros/s/AKfycbyqa6mPD6lVjU6hiHr12J8URZ2aJBGyxBsGQ0QtEIDari-rBk_9vSOITjSSmUXL1NwxEg/exec" 4722 4723 const qrID = "041025" + randomString(4, 'aAbCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ') 4724 4725 $("#properties-time").val(new Date().getTime()) 4726 4727 const isIOS = /iPhone|iPad|iPod/i.test(navigator.userAgent); 4728 4729 if(!isIOS) { 4730 $("#full-date").attr("type", "button") 4731 } 4732 4733 let dateTime = new Date(); 4734 let today = dateTime.getDate(); 4735 let day = dateTime.getDay(); 4736 let hour = dateTime.getHours(); 4737 let min = dateTime.getMinutes(); 4738 let timeOfDay = hour + (min / 100); 4739 4740 async function getFetch(url) { 4741 const response = await fetch(url); 4742 let status = false 4743 let result 4744 if(response.ok) { 4745 status = true 4746 result = await response.json(); 4747 } 4748 return { 4749 status, 4750 data: result 4751 } 4752 } 4753 4754 4755 4756 function setCookie(cname, cvalue, exMins) { 4757 var d = new Date(); 4758 d.setTime(d.getTime() + (exMins*60*1000)); 4759 var expires = "expires="+d.toUTCString(); 4760 document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; 4761 } 4762 4763 function getCookie(cname) { 4764 let name = cname + "="; 4765 let decodedCookie = decodeURIComponent(document.cookie); 4766 let ca = decodedCookie.split(';'); 4767 for(let i = 0; i <ca.length; i++) { 4768 let c = ca[i]; 4769 while (c.charAt(0) == ' ') { 4770 c = c.substring(1); 4771 } 4772 if (c.indexOf(name) == 0) { 4773 return c.substring(name.length, c.length); 4774 } 4775 } 4776 return ""; 4777 } 4778 4779 async function renderDate() { 4780 let dataDate = await getFetch(`${host}/api/shipping/date?domain=${shop}&productId=8359546319899&v=${Date.now()}`); 4781 console.log(dataDate, 'renderDate') 4782 const data = dataDate?.data 4783 const date = data.date 4784 const time = data.time 4785 4786 console.log(date, 'DATE') 4787 4788 const weekday = ["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]; 4789 const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; 4790 const htmlDate = [] 4791 for(let i = 0;i < date.length;i++) { 4792 const full = date[i].date 4793 const d = new Date(date[i].date); 4794 const day = weekday[d.getDay()]; 4795 const dt = d.getDate(); 4796 const mt = monthly[d.getMonth()]; 4797 const yr = d.getFullYear(); 4798 const isDate = Boolean(date[i].isEnabled) 4799 const cutoffpagi = date[i].cutoff?.pagi 4800 const cutoffsiang = date[i].cutoff?.siang 4801 const cutoffMalam = date[i].cutoff?.Malam 4802 var html = ` 4803 <button data-id="8359546319899" class="date-single calendarbutton btn steps-btn col col-3 btn-date-time" data-day="${day}" data-fulldate="${full}" data-date="${dt < 10 ? '0' + dt : dt}" data-month="${mt}" data-year="${yr}" data-offpagi="${cutoffpagi}" data-offsiang="${cutoffsiang}" data-offMalam="${cutoffMalam}" ${isDate === true ? '' : 'disabled'}> 4804 ${dt === today ? 4805 `Today<span>${dt < 10 ? '0' + dt : dt}</span>` : 4806 `${day}<span>${dt < 10 ? '0' + dt : dt}</span>` 4807 } 4808 </button> 4809 ` 4810 htmlDate.push(html) 4811 } 4812 const htmlTime = [] 4813 for(var i = 0;i < time.length;i++) { 4814 const timeText = time[i].text 4815 const timeTime = time[i].time 4816 const timeEnabled = time[i].isEnabled 4817 var html = ` 4818 <button class="time-single calendarbutton2 btn steps-btn" data-time="${timeText}" ${timeEnabled ? '' : 'disabled'}>${timeText}<br/>${timeTime}</button> 4819 ` 4820 htmlTime.push(html) 4821 } 4822 const deliveryDate = document.getElementById("deliveryDate"); 4823 if(deliveryDate) { 4824 deliveryDate.insertAdjacentHTML("afterbegin", htmlDate.join('')) 4825 $("#deliveryTime").html(htmlTime) 4826 if(productType !== '') { 4827 console.log("clarity event " + productType + ' calendaring') 4828 window.clarity("event", `${productType} calendaringSchedule`) 4829 // window.clarity("set", productType, `calendaringSchedule - ${productDate}`) 4830 } 4831 } 4832 } 4833 4834 async function getProvince(city) { 4835 let { data: { province } } = await getFetch(`${host}/api/shipping/address/province?city=${city}`); 4836 console.log(province, 'province') 4837 $("#province").val(province) 4838 } 4839 4840 async function renderAddress() { 4841 let current 4842 if(getCookie("location_delivery")){ 4843 current = getCookie("location_delivery").charAt(0).toUpperCase() + getCookie("location_delivery").slice(1) 4844 } 4845 let address = await getFetch(`${host}/api/shipping/address?domain=${shop}&productId=8359546319899`); 4846 console.log(address) 4847 const data = address?.data?.city 4848 const htmlAddress = [] 4849 const grouping = []
4850 for(let i = 0;i < data?.length;i++) { 4851 if(data[i]){ 4852 if(data[i]?.group) { 4853 grouping.push(data[i].group) 4854 } 4855 const price = rupiah.format(data[i]?.rate) 4856 let promo = '(Promo Free Delivery)' 4857 if(data[i]?.name === 'Jakarta - PickUp ASHTA'){ 4858 promo = '(at SCBD, Ashta)' 4859 } else if(data[i]?.name === 'Jakarta - PickUp ITC'){ 4860 promo = '(at Kuningan, ITC Kuningan)' 4861 } else if(data[i]?.name === 'BSD - PickUp'){ 4862 promo = '(at Goldfinch Gading Serpong)' 4863 } else if(data[i]?.name === 'Kota Lainnya'){ 4864 promo = '' 4865 } 4866 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>`) 4867 } 4868 } 4869 4870 const deliveryCity = document.getElementById("cities"); 4871 if(deliveryCity) { 4872 deliveryCity.insertAdjacentHTML("beforeend", htmlAddress.join('')) 4873 if(!isIOS) { 4874 $(deliveryCity).select2(); 4875 } 4876 } 4877 } 4878 4879 async function renderZip(v, v2, v3) { 4880 const deliveryZip = document.getElementById("zip"); 4881 if(v === '') { 4882 return 4883 } 4884 let dataZip = await getFetch(`${host}/api/shipping/address/zip?city=${v}&city2=${v2}&city3=${v3}`); 4885 let zip = dataZip?.data?.zip 4886 console.log(zip) 4887 let htmlZip = [] 4888 for(let i = 0; i < zip?.length;i++) { 4889 htmlZip.push(`<option value="${zip[i]?.postalCode} - ${zip[i]?.subdistrict}">${zip[i]?.postalCode} - ${zip[i]?.subdistrict} - ${zip[i]?.city}</option>`) 4890 } 4891 deliveryZip.insertAdjacentHTML("beforeend", htmlZip.join('')) 4892 } 4893 4894 renderDate() 4895 renderAddress() 4896 4897 let rupiah = new Intl.NumberFormat('id-ID', { 4898 style: 'currency', 4899 currency: 'IDR', 4900 maximumFractionDigits: 0, 4901 minimumFractionDigits: 0 4902 }); 4903 4904 async function insertCard(data) { 4905 const response = await fetch(`${host}/api/card/new`, { 4906 method: "POST", 4907 headers: { 4908 'Content-Type': 'application/json', 4909 }, 4910 body: data 4911 }) 4912 const result = await response.json() 4913 let rowIndex = result?.data?.tableRange.split("Outerbloom!A1:J")[1] 4914 $("#greetingCard").attr("data-index", rowIndex) 4915 return result 4916 } 4917 4918 async function updateCard(data){ 4919 const rowIndex = $("#greetingCard").data("index") 4920 const response = await fetch(`${host}/api/card/update?rowIndex=${rowIndex}`, { 4921 method: "PUT", 4922 headers: { 4923 'Content-Type': 'application/json', 4924 }, 4925 body: data 4926 }) 4927 return response 4928 } 4929 4930 function bytesToSize(bytes) { 4931 var sizes = ['b', 'kb', 'mb', 'gb', 'tb', 'p']; 4932 for (var i = 0; i < sizes.length; i++) { 4933 if (bytes <= 1024) { 4934 return bytes + ' ' + sizes[i]; 4935 } else { 4936 bytes = parseFloat(bytes / 1024).toFixed(2) 4937 } 4938 } 4939 return bytes + ' P'; 4940 } 4941 4942 async function uploadMedia(uri, type) { 4943 nameq = $("#properties-nama-penerima").val() 4944 dear = $("#properties-kartu-nama-penerima").val() 4945 card = $("[data-properties=ucapan]").val() 4946 sender = $("#properties-kartu-nama-pengirim").val() 4947 photo = $("#properties-photo").val() 4948 video = $("#properties-video").val() 4949 status = "Product" 4950 4951 const name = qrID 4952 let formData = new FormData(); 4953 formData.append("file", uri); 4954 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 4955 method: "POST", 4956 body: formData 4957 }) 4958 const result = await response.json(); 4959 if(result) { 4960 const url = result.url 4961 if(type === 'image/jpeg') { 4962 $("#properties-photo").val(url) 4963 $(".preview-image").show() 4964 $(".remove-image").show() 4965 photo = url 4966 } else { 4967 $("#properties-video").val(url) 4968 $("#label-input-video span").text("Change File") 4969 $(".case-qrcode-preview p").text("Scan here for a secret message") 4970 $(".remove-media").show() 4971 $("#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>`) 4972 $("[for=input-video]").hide() 4973 video = url 4974 } 4975 $(".case-video-preview").show() 4976 $(".steps-card-preview").removeClass("loading") 4977 // updateCard(nameq, dear, card, sender, photo, video, status) 4978 4979 $(".nextBtn").attr("disabled", false) 4980 } 4981 } 4982 4983 function randomString(length, chars) { 4984 var result = ''; 4985 for (var i = length; i > 0; --i) result += chars[Math.round(Math.random() * (chars.length - 1))]; 4986 return result; 4987 } 4988 4989 function getNoteCity(fulldate) { 4990 const h_1 = new Date(new Date().setDate(new Date().getDate() + 1)) 4991 const weekday = ["Min","Sen","Sel","Rab","Kam","Jum","Sab"]; 4992 const monthly = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]; 4993 const d = new Date(h_1); 4994 const day = weekday[d.getDay()]; 4995 const dt = d.getDate(); 4996 const mt = monthly[d.getMonth()]; 4997 const yr = d.getFullYear(); 4998 const p = $("#cities").parent(".form-group") 4999 } 5000 5001 function disabledSameDay() { 5002 let btnFirst = $("#deliveryDate").find("button:first-child") 5003 let getDay = new Date().getDay(); 5004 5005 5006 5007 if(getDay == 1 || getDay == 2 || getDay == 3 || getDay == 4 || getDay == 5){ 5008 if(hour >= 14.00){ 5009 btnFirst.attr("disabled", true) 5010 } 5011 } else if(getDay == 6){ 5012 if(hour >= 16.00){ 5013 btnFirst.attr("disabled", true) 5014 } 5015 } else if(getDay == 0){ 5016 if(hour >= 16.00){ 5017 btnFirst.attr("disabled", true) 5018 } 5019 } 5020 5021 5022 } 5023 5024 function disabledays(date) { 5025 let ymd = date.getFullYear() + "-" + (date.getMonth() + 1) + "-" + date.getDate(); 5026 //if u have to disable a list of day 5027 let removeDays 5028 5029 5030 5031 removeDays = ["2025-2-13", "2025-2-14"]; 5032 5033 if ($.inArray(ymd, removeDays) >= 0) { 5034 return [false]; 5035 } else { 5036 let day = date.getDay(); 5037 if(day == 0 && date.getDate() == 13 && date.getMonth() == 1){ 5038 return [(day == 0), '']; 5039 } 5040 5041 if(day == 0){ 5042 return [(day == 0), '']; 5043 } 5044 5045 5046 return [(day != 0), '']; 5047 } 5048 } 5049 5050 /* Indonesian initialisation for the jQuery UI date picker plugin. */ 5051 /* Written by Deden Fathurahman ([email protected]). */ 5052 ( function( factory ) { 5053 if ( typeof define === "function" && define.amd ) { 5054 5055 // AMD. Register as an anonymous module. 5056 define( [ "../widgets/datepicker" ], factory ); 5057 } else { 5058 5059 // Browser globals 5060 factory( jQuery.datepicker ); 5061 } 5062 }( function( datepicker ) { 5063 5064 datepicker.regional.id = { 5065 closeText: "Tutup", 5066 prevText: "<mundur", 5067 nextText: "maju>", 5068 currentText: "Today", 5069 monthNames: [ "January","February","March","April","May","Juny", 5070 "July","August","September","October","November","December" ], 5071 monthNamesShort: [ "Jan","Feb","Mar","Apr","May","Jun", 5072 "Jul","Agu","Sep","Oct","Nov","Dec" ], 5073 dayNames: [ "Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu" ], 5074 dayNamesShort: [ "Sun","Mon","Tue","Wed","Thu","Fri","Sat" ], 5075 dayNamesMin: [ "Mg","Sn","Sl","Rb","Km","jm","Sb" ], 5076 weekHeader: "Mg", 5077 dateFormat: "D, dd M", 5078 firstDay: 0, 5079 isRTL: false, 5080 showMonthAfterYear: false, 5081 yearSuffix: "" }; 5082 datepicker.setDefaults( datepicker.regional.id ); 5083 5084 return datepicker.regional.id; 5085 5086 } ) ); 5087 5088 function loadPopup() { 5089 $("#backgroundPopup").fadeIn("slow"); 5090 $(".purchasePopup:not(.purchasePopupSpotify)").fadeIn("slow"); 5091 const firstSection = $(".purchasePopup:not(.purchasePopupSpotify) .sectionPurchase").first() 5092 if(firstSection.hasClass("purchasePersonalize")) { 5093 if(productType !== '') { 5094 console.log("clarity event " + productType + ' personalize') 5095 window.clarity("event", `${productType} cardPersonalization`) 5096 // window.clarity("set", productType, `cardPersonalization - ${productDate}`) 5097 } 5098 } else if (firstSection.hasClass("sectionPurchaseBoard")) { 5099 console.log("clarity event " + productType + ' personalizeBoard') 5100 window.clarity("event", `${productType} personalizeBoard`) 5101 // window.clarity("set", productType, `personalizeBoard - ${productDate}`) 5102 } 5103 firstSection.removeClass("hide") 5104 5105 // Auto-trigger addon loading when addon section becomes visible 5106 setTimeout(function() { 5107 const addonSection = $(".purchaseAddon") 5108 if(addonSection.length > 0 && !addonSection.hasClass("hide")) { 5109 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 5110 $("[data-addon=upsell-all]").trigger("click") 5111 } 5112 } 5113 }, 200) 5114 } 5115 5116 function disablePopup() { 5117 $("#backgroundPopup").fadeOut("slow"); 5118 $(".purchasePopup").fadeOut("slow"); 5119 $("#popupCart").fadeOut("slow"); 5120 } 5121
5122 function scrollTo(parent, div, dur) { 5123 $(parent).animate({ 5124 scrollTop: $(div).offset().top 5125 }, dur); 5126 } 5127 5128 function loadPopupPersonalize() { 5129 const div = "#purchaseProduct" 5130 const p = "html, body, .product-meta" 5131 $("p.error").remove() 5132 loadItemOccasion($("[data-occassion]").eq(0), "greeting-card-all") 5133 const isCity = $("#cities[required]") 5134 const isDate = $("#propDeliveryDate[required]") 5135 const isTime = $("#propDeliveryTime[required]") 5136 // loadPopup() 5137 if(isCity.val() !== '' && isDate.val() !== '' && isTime.val() !== '') { 5138 loadPopup() 5139 } 5140 if(isCity.val() == '') { 5141 isCity.parent(".row").append("<p class='error'>Choose delivery city</p>") 5142 scrollTo(p, div, 500) 5143 } 5144 if(isDate.val() == '') { 5145 isDate.parents(".row").append("<p class='error'>Choose delivery date</p>") 5146 scrollTo(p, div, 500) 5147 } 5148 if(isTime.val() == '') { 5149 isTime.parents(".row").append("<p class='error'>Choose delivery time</p>") 5150 scrollTo(p, div, 500) 5151 } 5152 } 5153 5154 function quantityCounter() { 5155 $(document).on("click", ".item-card.selected .q_up", function () { 5156 var C = $(this).attr("data-id"), 5157 S = 5158 parseInt( 5159 $(this) 5160 .siblings(".quantity-cart-" + C) 5161 .val() 5162 ) + 1; 5163 $(this).attr("data-quantity", S), 5164 $(this) 5165 .siblings(".quantity-cart-" + C) 5166 .val(S); 5167 }), 5168 $(document).on("click", ".item-card.selected .q_down", function () { 5169 var C = $(this).attr("data-id"), 5170 S = parseInt( 5171 $(this) 5172 .siblings(".quantity-cart-" + C) 5173 .val() 5174 ); 5175 0 < S && $(this).attr("data-quantity", S - 1), 5176 0 < S && 5177 $(this) 5178 .siblings(".quantity-cart-" + C) 5179 .val(S - 1); 5180 }); 5181 } 5182 5183 quantityCounter() 5184 5185 const itemAddon = $(".item-card").length 5186 const nofree = $(".nofree").length 5187 5188 const upsell = '' 5189 5190 if(nofree === itemAddon) { 5191 // $("#itemAddons").html("<p>No Items available</p>") 5192 } 5193 5194 $("#itemAddons .item-card").each(function(e){ 5195 $("#itemAddons").attr("data-length", e) 5196 }) 5197 5198 $("[data-addon]").click(function(){ 5199 5200 5201 5202 const t = $(this) 5203 5204 const data = t.data("addon") 5205 5206 $("[data-addon]").removeClass("selected") 5207 t.addClass("selected") 5208 $.get(`https://outerbloom.com/collections/${data}/products.json`, function(data, status){ 5209 const products = data.products 5210 const html = [] 5211 for(let i = 0; i < products.length; i++) { 5212 const id = products[i].id 5213 const variantId = products[i].variants[0].id 5214 const img = products[i].images[0].src 5215 let img2 = img.split('.jpg')[0] 5216 const title = products[i].title 5217 const price = products[i].variants[0].price 5218 const tags = products[i].tags 5219 const qty = products[i].variants[0].available 5220 let type_upsell = '' 5221 if(tags.includes('upsell-item-standing')) { 5222 type_upsell = 'standing' 5223 } 5224 console.log(type_upsell) 5225 if(type_upsell !== '') { 5226 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}"> 5227 5228 <div class="card-image"> 5229 <img src="${img2}_150x.jpg" alt="${title}" width="" height="" /> 5230 </div> 5231 <div class="card-meta"> 5232 <h5>${title}</h5> 5233 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 5234 <input id="card-${variantId}" type="hidden" name="" value="${variantId}"> 5235 </div> 5236 <div class="card-qty"> 5237 <a data-quantity="1" type="submit" id="q_down-${variantId}" class="btn-qty-min q_down drawer-cart" data-id="${variantId}"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="2" viewBox="0 0 12 2" fill="none"><path d="M0 1.90869V0.908691H12V1.90869H0Z" fill="black"/></svg></a> 5238 <input maxlength="3" min="0" class="btn-qty text-center quantity-cart-${variantId}
5238" value="0" data-price=${price} name="quantity"> 5239 <a data-quantity="1" type="submit" class="btn-qty-plus q_up text-green drawer-cart" data-id="${variantId}"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="13" viewBox="0 0 12 13" fill="none"> 5240 <path d="M0 6.87023V5.94715H5.53846V0.408691H6.46154V5.94715H12V6.87023H6.46154V12.4087H5.53846V6.87023H0Z" fill="black"/> 5241 </svg></a> 5242 </div> 5243 </div>` 5244 html.push(body) 5245 } 5246 } 5247 $("#itemAddons .row").html(html.length === 0 ? '<p>No Item available</p>' : html) 5248 $("#itemAddons").attr("data-length", products.length) 5249 // $('#itemAddons')[0].swiper.update(); 5250 }); 5251 }) 5252 5253 async function isAddon(){ 5254 let ids = [] 5255 $("#itemAddons .item-card.selected").each(function(i, e){ 5256 const id = $(this).data("id") 5257 ids.push(id) 5258 }) 5259 console.log(ids) 5260 return ids 5261 } 5262 5263 $("#itemAddons").delegate(".item-card > div:not(.card-qty)", "click", async function(){ 5264 const t = $(this).parent() 5265 const id = t.data("id") 5266 const btn = t.parents(".purchaseAddon").find(".next-purchase-button") 5267 t.toggleClass("selected"); 5268 //$(this).next("input").toggleAttr('name', 'id[]'); 5269 if (t.hasClass('selected')) { 5270 t.find("input").val(1) 5271 t.find("input").attr('name', 'id[]'); 5272 } else { 5273 t.find("input").val(0) 5274 t.find("input").removeAttr('name'); 5275 } 5276 $("#properties-addons").val(addons) 5277 const is = await isAddon() 5278 if(is.length === 0) { 5279 btn.text("continue without add-ons") 5280 return 5281 } 5282 if(is.includes(8835692069079)) { 5283 btn.text("personalize acrylic frame") 5284 } else { 5285 btn.text("Continue") 5286 } 5287 5288 }) 5289 5290 async function myAddon(data) { 5291 const c = $(".addonsPurchase .addons") 5292 let items = [] 5293 5294 const spotifyAddons = $(".spotifyAddons").find("[data-index]") 5295 // if(spotifyAddons.length > 0) { 5296 // $(spotifyAddons).each(function(i, e){ 5297 // const spotifyLink = $(this).find(".spotifyLink").val() 5298 // const spotifySong = $(this).find(".spotifySong").val() 5299 // const spotifyArtist = $(this).find(".spotifyArtist").val() 5300 // const spotifyFotoAddon = $(this).find(".resultPhotoSpotify").val() 5301 // if(spotifyLink !== '') { 5302 // spotifyAddon = `<div class="addon-item" data-id="46067682607319" data-qty="1"> 5303 // <div class="addon-itm-img"> 5304 // <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"/> 5305 // </div> 5306 // <div class="addon-itm-title"> 5307 // <span>[US] Outerbloom Acrylic Frame 4R</span> 5308 // </div> 5309 // <div class="addon-itm-line-total"> 5310 // <span>Rp 99.000</span> 5311 // </div> 5312 // </div> 5313 // <div class="propsAddonSpotify row m-0"> 5314 // <div class="col-12 col-lg-2"></div> 5315 // <div class="col-12 col-lg-10"> 5316 // <p> 5317 // <span>spotify link</span> 5318 // <span class="spotifyLinkAddon">${spotifyLink}</span> 5319 // </p> 5320 // <p> 5321 // <span>uploaded photo</span> 5322 // <span class="spotifyFotoAddon">${spotifyFotoAddon}</span> 5323 // </p> 5324 // <p> 5325 // <span>song / playlist name</span> 5326 // <span class="spotifySongAddon">${spotifySong}</span> 5327 // </p> 5328 // <p> 5329 // <span>artist name</span> 5330 // <span class="spotifyArtistAddon">${spotifyArtist}</span> 5331 // </p> 5332 // </div> 5333 // </div>` 5334 // items.push(spotifyAddon) 5335 // } 5336 // }) 5337 // } 5338 for(let i = 0; i < data.length; i++) { 5339 if(data[i].title !== '[US] Outerbloom Acrylic Frame 4R' ) { 5340 const img = data[i].image 5341 const title = data[i].title
5342 const qty = data[i].qty 5343 const price = data[i].price 5344 const total = Number(qty) * Number(price) 5345 let addons = `<div class="addon-item" data-id="${data[i].id}" data-qty="${qty}"> 5346 <div class="addon-itm-img"> 5347 <img src="${img}" alt="" width="70"/> 5348 </div> 5349 <div class="addon-itm-title"> 5350 <span>${title}</span> 5351 </div> 5352 <div class="addon-itm-line-price"> 5353 <span>${rupiah.format(price)}</span> 5354 ${data[i].title == '[US] Outerbloom Acrylic Frame 4R' ? '' : `<span>x${qty}</span>`} 5355 </div> 5356 <div class="addon-itm-line-total"> 5357 <span>${rupiah.format(total)}</span> 5358 </div> 5359 </div>` 5360 items.push(addons) 5361 } 5362 } 5363 c.html(items) 5364 const parent = $(".purchaseAddon") 5365 const next = parent.next(".sectionPurchase") 5366 parent.addClass("hide") 5367 next.removeClass("hide") 5368 // if(items2.length === 0) return $("#popupCart").addClass("no-addon-cart") 5369 // $(".itemAddonCart").find("h4").text(`add-ons (${items2.length})`) 5370 } 5371 5372 async function listAddon() { 5373 const data = $("#itemAddons").find(".selected") 5374 let ids = [] 5375 $(data).each(function(){ 5376 const id = $(this).data("variant") 5377 const image = $(this).find(".card-image img").attr("src") 5378 const title = $(this).find(".card-meta h5").text() 5379 const qty = $(this).find(".card-qty input").val() 5380 const price = $(this).find(".card-qty input").data("price") 5381 ids.push({ 5382 id: Number(id), 5383 image, 5384 title, 5385 qty, 5386 price 5387 }) 5388 }) 5389 myAddon(ids) 5390 } 5391 5392 async function customSpotify(idx, length, type){ 5393 let isCard = false 5394 5395 let p = $(".purchasePopupSpotify") 5396 const preLink = $(".spotifyLinkFirst").val() 5397 $("[data-index]").hide() 5398 p.find(".headerPurchase h3").text(`personalize spotify photo print${length > 1 ? ` - ${idx}` : ''}`) 5399 p.find(".regulerAddons, .purchase-button").hide() 5400 p.find(".spotifyAddons").show() 5401 5402 const data = await trackUrl(preLink) 5403 5404 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="http://www.w3.org/2000/svg" width="13" height="11" viewB
5404ox="0 0 13 11" fill="none"> 5405 <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"/> 5406 </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://imgcloud.io/storage/beerbong/1122.gif><path d="M14.5799 7.41992L2.32992 7.41992L7.57992 12.6699L6.91992 13.4199L0.419922 6.91992L6.91992 0.419922L7.57992 1.16992L2.32992 6.41992L14.5799 6.41992V7.41992Z"fill=black /></svg> <span>Back</span></button><button data-type="${isCard ? 'card' : ''}" ${isCard ? '' : 'id=addtocart-card'} class="text-uppercase btn w-100${type == 'addon' && idx == length ? ' finished' : ' no-addon'}" disabled>${isCard ? 'Continue Personalizing' : 'add to cart'}</button></div></div></div><div class="col-12 col-lg-6 columnRight"><div class=frame-spotify><div class=frameImage><div class=frameImageUploaded><svg xmlns="http://www.w3.org/2000/svg" width="13" height="11" viewB
5406ox="0 0 13 11" fill="none"> 5407 <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"/> 5408 </svg> <img src="https://imgcloud.io/storage/vannn/public.avif" class=previewImage style=display:none onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" ></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>` 5409 // console.log(html) 5410 5411 $(".spotifyAddons").append(html) 5412 5413 $(`[data-index=${idx}]`).show() 5414 5415 if (preLink !== '') { 5416 $(".btn-action .btn").attr("disabled", false) 5417 } else { 5418 $(".btn-action .btn").attr("disabled", true) 5419 } 5420 5421 return html 5422 5423 } 5424 5425 $(".spotifyLinkFirst").keyup(async function(){ 5426 const v = $(this).val() 5427 if(v.includes('spotify:user:spotify')) { 5428 const correct = v.split('user:spotify:')[1] 5429 console.log(correct, 'BNER') 5430 $(this).val(correct) 5431 return 5432 } 5433 if(v.includes("spotify:") || v.includes("https://open.spotify.com/")){ 5434 const data = await trackUrl(v) 5435 if(!data || !data.status) { 5436 $(this).parent().addClass("error") 5437 // $(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>`) 5438 $("#personalizeBtnSpotify .btn").attr("disabled", true) 5439 return 5440 } 5441 $(this).parent().removeClass("error") 5442 // $(this).parent().remove("txt-error") 5443 $("#personalizeBtnSpotify .btn").attr("disabled", false) 5444 } else { 5445 $("#personalizeBtnSpotify .btn").attr("disabled", true) 5446 } 5447 }) 5448 5449 $(".purchaseAddon").delegate(".next-addon", "click", function(){ 5450 const parent = $(this).parents(".purchaseAddon") 5451 const next = parent.next(".sectionPurchase") 5452 if(next.hasClass("purchaseAddress")) { 5453 if(productType !== '') { 5454 console.log("clarity event " + productType + ' purchaseDelivery') 5455 window.clarity("event", `${productType} purchaseDelivery`) 5456 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 5457 } 5458 } 5459 const data = $("#itemAddons").find(".selected") 5460 const length = $(".quantity-cart-46067682607319").val() 5461 const checked = data.length; 5462 if(checked > 0) { 5463 if(length > 0) { 5464 $(".purchaseAddon").addClass("purchaseAddonSpotify") 5465 customSpotify(1, length, 'addon') 5466 } else { 5467 listAddon() 5468 } 5469 } else { 5470 parent.addClass("hide") 5471 next.removeClass("hide") 5472 } 5473 }) 5474 5475 $("#personalizeBtnSpotify .btn").click(async function(){ 5476 const isCity = $("#cities[required]") 5477 const isDate = $("#propDeliveryDate[required]") 5478 if((isDate.length > 0 && isCity.length > 0) && (isCity.val() === '' || isDate.val() === '')) { 5479 alert('Please choose Delivery City & Delivery Date') 5480 return 5481 } 5482 const data = await customSpotify(1, 1, 'product') 5483 if(data) { 5484 $("#backgroundPopup").fadeIn("slow"); 5485 $(".purchasePopupSpotify").fadeIn("slow"); 5486 5487 if(productType !== '') { 5488 console.log("clarity event " + productType + ' spotify') 5489 window.clarity("event", `${productType} spotify`) 5490 // window.clarity("set", productType, `purchaseDelivery - ${productDate}`) 5491 } 5492 } 5493 }) 5494 5495 function formatBytes(bytes, decimals = 2) { 5496 if (!+bytes) return '0 Bytes' 5497
5498 const k = 1024 5499 const dm = decimals < 0 ? 0 : decimals 5500 const sizes = ['B', 'KB', 'MB'] 5501 5502 const i = Math.floor(Math.log(bytes) / Math.log(k)) 5503 5504 return `${parseFloat((bytes / Math.pow(k, i)).toFixed(dm))} ${sizes[i]}` 5505 } 5506 5507 async function trackUrl(link){ 5508 try { 5509 let trackId = link.split('/').pop().split('?')[0]; 5510 let type = '' 5511 if(link.includes("spotify:")) { 5512 const uri = link.split('spotify:')[1] 5513 trackId = uri.split(':')[1] 5514 type = uri.split(':')[0] + 's' 5515 } else { 5516 if(link.match('track')){ 5517 type = 'tracks' 5518 } else if(link.match('playlist')) { 5519 type = 'playlists' 5520 } else if(link.match('artist')) { 5521 type = 'artists' 5522 } else if(link.match('album')) { 5523 type = 'albums' 5524 } 5525 } 5526 console.log(`${host}/api/spotify/${type}/${trackId}`) 5527 const data = await getFetch(`${host}/api/spotify/${type}/${trackId}`) 5528 console.log(data, 'DATA') 5529 const song = data?.data?.name 5530 const artist = data?.data?.artist 5531 return { 5532 song, artist, type, trackId, status: data.status 5533 } 5534 } catch(err) { 5535 console.log(err) 5536 } 5537 } 5538 5539 $(".spotifyAddons").delegate(".uploadPhotoSpotify", "change", async function(){ 5540 const parent = $(this).parents("[data-index]") 5541 const preview = parent.find(".previewImage") 5542 const file = $(this)[0].files[0]; 5543 if (file) { 5544 const reader = new FileReader(); 5545 reader.onload = async function(e) { 5546 parent.find(".uploadResult label").hide() 5547 parent.find(".uploadedResult").remove() 5548 parent.find(".uploadResult").append(`<div class="uploadedResult d-flex" style="justify-content: space-between"> 5549 <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> 5550 <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;">
5550<svg fill="none" height="11" viewBox="0 0 10 11" width="10" xmlns="http://www.w3.org/2000/svg"> 5551 <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 /> 5552 </svg> 5553 </span></div></div>`) 5554 parent.find(".frameImageUploaded svg").hide() 5555 parent.find(".frameImage").addClass("uploaded") 5556 preview.attr("src", e.target.result); 5557 preview.show(); 5558 let formData = new FormData(); 5559 formData.append("file", file); 5560 const response = await fetch(`${host}/api/upload?name=${file.name}&type=image/jpeg&r=${Date.parse(new Date)}`, { 5561 method: "POST", 5562 body: formData 5563 }) 5564 const result = await response.json(); 5565 if(result){ 5566 parent.find(".resultPhotoSpotify").val(result.url) 5567 } 5568 } 5569 5570 reader.readAsDataURL(file); 5571 } else { 5572 preview.hide(); 5573 } 5574 }); 5575 5576 $(".spotifyAddons").delegate(".uploadResult", "click", function(){ 5577 $(this).next("input[type=file]").trigger("click") 5578 }) 5579 5580 $(".spotifyAddons").delegate(".changeUpload", "click", function(){ 5581 $(this).parents("input[type=file]").trigger("click") 5582 }) 5583 5584 $(".spotifyAddons").delegate(".removeUpload", "click", function(){ 5585 const parent = $(this).parents("[data-index]") 5586 parent.find(".uploadPhotoSpotify").val("") 5587 parent.find(".uploadResult label").show() 5588 parent.find(".uploadedResult").remove() 5589 parent.find(".frameImageUploaded svg").show() 5590 parent.find(".previewImage").hide() 5591 parent.find(".frameImage").removeClass("uploaded") 5592 }) 5593 5594 $(".spotifyAddons").delegate("label.checkbox", "click", function(){ 5595 const parent = $(this).parents("[data-index]") 5596 parent.toggleClass("checked") 5597 }) 5598 5599 $(".spotifyAddons").delegate(".spotifyLink", "change", async function(){ 5600 const parent = $(this).parents("[data-index]") 5601 const link = $(this).val() 5602 const data = await trackUrl(link) 5603 5604 console.log(data) 5605 5606 if(data.song) { 5607 parent.find(".spotifySong").val(data.song) 5608 parent.find(".spotifyData").find("h3").text(data.song) 5609 } 5610 if(data.artist) { 5611 parent.find(".spotifyArtist").val(data.artist) 5612 parent.find(".spotifyData").find("p").text(data.artist) 5613 } 5614 parent.find(".spotifyCode img").attr("src", `https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:${data.type.slice(0, -1)}:${data.trackId}`) 5615 // https://scannables.scdn.co/uri/plain/png/FFFFFF/black/640/spotify:track:1er51HCEBhIAtoEemKuC3M 5616 if (data.status === true) { 5617 parent.find(".btn-action .btn").attr("disabled", false) 5618 } else { 5619 parent.find(".btn-action .btn").attr("disabled", true) 5620 } 5621 }) 5622
5623 $(".spotifyAddons").delegate(".spotifySong", "keyup", async function(){ 5624 const parent = $(this).parents("[data-index]") 5625 const v = $(this).val() 5626 parent.find(".spotifyData h3").text(v) 5627 }) 5628 5629 $(".spotifyAddons").delegate(".spotifyArtist", "keyup", async function(){ 5630 const parent = $(this).parents("[data-index]") 5631 const v = $(this).val() 5632 parent.find(".spotifyData p").text(v) 5633 }) 5634 5635 $(".spotifyAddons").delegate(".btn-action .btn:not(.no-addon)", "click", async function(){ 5636 const parent = $(this).parents("[data-index]") 5637 const length = parent.data("length") 5638 const index = parent.data("index") 5639 const indexNext = Number(index) + 1 5640 customSpotify(indexNext, length, 'addon') 5641 }) 5642 5643 5644 $(".spotifyAddons").delegate(".btn-action .btn.finished", "click", async function(){ 5645 const parent = $(this).parents(".purchaseAddon") 5646 const next = parent.next(".sectionPurchase") 5647 parent.addClass("hide") 5648 next.removeClass("hide") 5649 next.find(".purchase-button").show() 5650 listAddon() 5651 }) 5652 5653 $(".spotifyAddons").delegate(".back-spotify", "click", async function(){ 5654 const t = $(this).parents("[data-index]") 5655 const parent = $(this).parents(".sectionPurchase") 5656 const current = t.data("index") 5657 const prevCurrent = Number(current) - 1 5658 if(current == 1) { 5659 parent.removeClass("purchaseAddonSpotify") 5660 parent.find(".purchase-button").show() 5661 parent.find(".headerPurchase h3").text("Make It More Special with Add-Ons!") 5662 $(".spotifyAddons").empty() 5663 $(".regulerAddons").show() 5664 return 5665 } 5666 t.hide() 5667 t.prev("[data-index]").show() 5668 t.remove() 5669 parent.find(".headerPurchase h3").text(`personalize spotify photo print - ${prevCurrent}`) 5670 }) 5671 5672 $("#personalizeBtn .btn").click(async function() { 5673 loadPopupPersonalize() 5674 }); 5675 5676 $(".sectionPurchaseSpotify").delegate(".btn[data-type=card]", "click", function(){ 5677 $(".sectionPurchaseSpotify").hide() 5678 loadPopupPersonalize() 5679 }) 5680 5681 $(".close-purchase-popup").click(function() { 5682 disablePopup(); 5683 }); 5684 $("#backgroundPopup").click(function() { 5685 // disablePopup(); 5686 }); 5687 5688 $("#popupCart .close-purchase-popup").click(function() { 5689 location.reload() 5690 }); 5691 5692 $('#popupCart').on('hide.bs.modal', function (e) { 5693 location.reload() 5694 }) 5695 5696 $(".next-card").click(function(){ 5697 const parent = $(this).parents(".sectionPurchase") 5698 const next = parent.next(".sectionPurchase") 5699 parent.addClass("hide") 5700 next.removeClass("hide") 5701 }) 5702 5703 $(".back-purchase-button").click(function(){ 5704 const parent = $(this).parents(".sectionPurchase") 5705 const prev = parent.prev(".sectionPurchase") 5706 parent.addClass("hide") 5707 prev.removeClass("hide") 5708 }) 5709 5710 $(document).keypress(function(e) { 5711 if (e.keyCode == 27 && popupStatus == 1) { 5712 disablePopup(); 5713 } 5714 }); 5715 5716 const parentImg = $(".case-img-preview") 5717 const parentVid = $(".case-video-preview") 5718 5719 function readURL(input) { 5720 if (input.files && input.files[0]) { 5721 let reader = new FileReader(); 5722 5723 let type = 'image/jpeg' 5724 const size = input.files[0].size 5725 if(input.files[0].type.match('video/')){ 5726 type = 'video/mp4' 5727 if(size > 15728640) { 5728 alert('File size exceeds maximum limit 15 MB') 5729 return 5730 } 5731 } else { 5732 if(size > 5242880) { 5733 alert('File size exceeds maximum limit 5 MB') 5734 return 5735 } 5736 } 5737 5738 reader.onload = function (e) { 5739 $(".nextBtn").attr("disabled", true) 5740 if(type === 'image/jpeg') { 5741 5742 $('.placeholder-image').hide(); 5743 $('.preview-image').show() 5744 $('.preview-image').attr('src', e.target.result); 5745 5746 } else { 5747 // parentVid.find(".ajax-loader").show(); 5748 $(".steps-card-preview").addClass("loading") 5749 } 5750 } 5751 5752 5753 5754 reader.readAsDataURL(input.files[0]); 5755 } 5756 } 5757 5758 async function readURLPapan(input) { 5759 if (input.files && input.files[0]) { 5760 let reader = new FileReader(); 5761 5762 reader.onload = function (e) { 5763 $('.btn-upload-papan').siblings('label').hide(); 5764 $('.btn-upload-papan img').attr('src', e.target.result); 5765 $('.btn-upload-papan img').show(); 5766 $('.svgLogoPapan').hide(); 5767 } 5768 5769 const type = 'image/jpeg' 5770 const name = `logo-8359546319899-${Date.parse(new Date())}` 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 if(result) { 5780 const url = result.url 5781 $("[data-properties=papan-logo]").val(url) 5782 } 5783
5784 reader.readAsDataURL(input.files[0]); 5785 } 5786 } 5787 5788 async function readURLAddress(input) { 5789 console.log(input, 'readURLAddress') 5790 if (input.files && input.files[0]) { 5791 let reader = new FileReader(); 5792 5793 reader.onload = function (e) { 5794 $('.photo-address').attr('src', e.target.result); 5795 $('.photo-address').show(); 5796 } 5797 5798 const type = 'image/jpeg' 5799 const name = input.files[0].name?.split('.')[0] 5800 5801 let formData = new FormData(); 5802 formData.append("file", input.files[0]); 5803 const response = await fetch(`${host}/api/upload?name=${name}&type=${type}&r=${randomString(3, '0123456789')}`, { 5804 method: "POST", 5805 body: formData 5806 }) 5807 const result = await response.json(); 5808 5809 reader.readAsDataURL(input.files[0]); 5810 5811 return result 5812 } 5813 } 5814 5815 5816 5817 5818 async function addToCartUang() { 5819 var productAddOnId1 = 42122101162199; 5820 var productAddOnId2 = 42122101194967; 5821 var product_id = 8359546319899 5822 const data = { 5823 items: [ 5824 { 5825 quantity: $("#Quantity-" + productAddOnId1).val(), 5826 id: productAddOnId1, 5827 "properties": { "Time": $("#properties-time").val() } 5828 }, 5829 { 5830 quantity: $("#Quantity-" + productAddOnId2).val(), 5831 id: productAddOnId2, 5832 "properties": { "Time": $("#properties-time").val() } 5833 } 5834 ] 5835 } 5836 await fetch(window.Shopify.routes.root + 'cart/add.js', { 5837 method: 'POST', 5838 headers: { 5839 'Content-Type': 'application/json' 5840 }, 5841 body: JSON.stringify(data) 5842 }) 5843 .then(response => { 5844 console.error('Sukses Buket Uang:', response); 5845 $(".form-flower").submit() 5846 }) 5847 .catch((error) => { 5848 console.error('Error Buket Uang:', error); 5849 $(".form-flower").submit() 5850 }); 5851 } 5852 5853 async function saveCard(){ 5854 let isCard = true 5855 const kartu_penerima = $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '' 5856 const kartu_pengirim = $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '' 5857 const kartu_ucapan = $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '' 5858 const foto = $("#properties-photo").val() 5859 const video = $("#properties-video").val() 5860 const data = JSON.stringify({ 5861 "id": qrID, 5862 "penerima": $("#properties-nama-penerima").val(), 5863 "kartu_penerima": kartu_penerima, 5864 "kartu_ucapan": kartu_ucapan, 5865 "kartu_pengirim": kartu_pengirim, 5866 "foto": foto, 5867 "video": video, 5868 "productId": "8359546319899", 5869 "order_name": "", 5870 "status": "Cart" 5871 }) 5872 5873 5874 } 5875 5876 async function additem(items){ 5877 try { 5878 let formData = items 5879 if(items?.length) { 5880 formData = { 5881 'items': items 5882 }; 5883 } 5884 5885 const add = await fetch(window.Shopify.routes.root + 'cart/add.js', { 5886 method: 'POST', 5887 headers: { 5888 'Content-Type': 'application/json', 5889 'X-Requested-With':'xmlhttprequest' /* XMLHttpRequest is ok too, it's case insensitive */ 5890 }, 5891 body: JSON.stringify(formData) 5892 }) 5893 5894 const data = await add.json(); 5895 return data 5896 } catch(err){ 5897 console.log('Error additem', err) 5898 } 5899 } 5900 5901 async function addons(){ 5902 let items = [] 5903 $(".addon-item").each(function(){ 5904 const p = $(this) 5905 const props = p.next(".propsAddonSpotify") 5906 const id = $(this).data("id") 5907 const quantity = $(this).data("qty") 5908 const propId = $("#properties-time").val() 5909 let properties = {} 5910 if(id === 46067682607319) { 5911 const link = props.find(".spotifyLinkAddon").text() 5912 const photo = props.find(".spotifyFotoAddon").text() 5913 const song = props.find(".spotifySongAddon").text() 5914 const artist = props.find(".spotifyArtistAddon").text() 5915 properties = { 5916 id: propId, 5917 "Spotify Link": link !== '' ? link : '-', 5918 "Spotify Photo": photo !== '' ? photo : '-', 5919 "Spotify Song": song !== '' ? song : '-', 5920 "Spotify Artist": artist !== '' ? artist : '-', 5921 type: 'addon' 5922 } 5923 } else { 5924 properties = { 5925 "id": propId, 5926 "type": "addon" 5927 } 5928 } 5929 items.push({ 5930 id, 5931 quantity, 5932 properties 5933 }) 5934 }) 5935 return items 5936 } 5937 5938 async function propItems() { 5939 let props = {} 5940 $("[data-properties]").each(function(e){ 5941 let elementType = this.tagName;
5942 const k = $(this).data("properties") 5943 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') { 5944 const v = elementType === 'SELECT' ? $(this).find(":selected").val() : $(this).val(); 5945 if(v !== '') { 5946 props[k] = v?.replace(/[\s\n]/g, ''); 5947 } 5948 } 5949 }) 5950 return props 5951 } 5952 5953 async function showPopupCart(items){ 5954 if(productType !== '') { 5955 console.log("clarity event " + productType + ' completeOrder') 5956 window.clarity("event", `${productType} completeOrder`) 5957 // window.clarity("set", productType, `completeOrder - ${productDate}`) 5958 } 5959 $("#popupCart").show() 5960 5961 $(".propDeliveryCity").text($("#cities").val()) 5962 $(".propDeliveryDate").text($("#propDeliveryDate").val()) 5963 $(".propDeliveryTime").text($("#propDeliveryTime").val()) 5964 $(".propDeliveryName").text($("[data-properties=nama-penerima]").val()) 5965 $(".propDeliveryAddress").text($("[data-properties=alamat-penerima]").val()) 5966 $(".propDeliveryPhone").text($("[data-properties=telepon-penerima]").val()) 5967 $(".propDeliveryProv").text($("#province").val()) 5968 $(".propDeliveryZip").text($("#zip").val()) 5969 5970 5971 5972 const addons = [] 5973 if(items && items.length > 0) { 5974 for(let i = 1; i < items.length; i++) { 5975 const spotifyLink = items[i].properties['Spotify Link'] 5976 const spotifyPhoto = items[i].properties['Spotify Photo'] 5977 const spotifySong = items[i].properties['Spotify Song'] 5978 const spotifyArtist = items[i].properties['Spotify Artist'] 5979 const price = items[i].price / 100 5980 const props = spotifyLink ? `<div class="propsAddonCart row m-0"> 5981 <div class="col-12 col-lg-2"></div> 5982 <div class="col-12 col-lg-10"> 5983 <p> 5984 <span>spotify link</span> 5985 <span>${spotifyLink}</span> 5986 </p> 5987 <p> 5988 <span>Upload Photo</span> 5989 <span>${spotifyPhoto}</span> 5990 </p> 5991 <p> 5992 <span>song / playlist name</span> 5993 <span>${spotifySong}</span> 5994 </p> 5995 <p> 5996 <span>artist name</span> 5997 <span>${spotifyArtist}</span> 5998 </p> 5999 </div> 6000 </div>` : ''; 6001 addons.push(`<div class="row m-0"> 6002 <div class="imgAddonCart col-2"> 6003 <img 6004 width="43" 6005 src="${items[i].image}" 6006 alt="" 6007 > 6008 </div> 6009 <div class="imgAddonTitlePrice col-10 align-self-center"> 6010 <div class="row justify-content-between m-0"> 6011 <div class="col-12 col-lg-8"> 6012 <h5>${items[i].title}</h5> 6013 </div> 6014 <div class="col-12 col-lg-4 text-lg-right"> 6015 <span>${rupiah.format(price)}</span> 6016 </div> 6017 </div> 6018 </div> 6019 </div>${props}`) 6020 } 6021 } 6022 // console.log(addons) 6023 if(addons.length === 0) { 6024 $(".itemAddonCart").hide() 6025 return 6026 } 6027 $(".toggleAddonCart h4").text(`add-ons (${items.length - 1})`) 6028 $(".wrapperItemAddonCart").html(addons) 6029 } 6030 6031 const money = (money) => { 6032 return new Intl.NumberFormat('id-ID', 6033 { style: 'currency', currency: 'IDR', minimumFractionDigits: 0 } 6034 ).format(money); 6035 } 6036 6037 async function showNoteMoney() { 6038 let qty50k = $("[data-properties='Uang 50k']").val() 6039 let qty100k = $("[data-properties='Uang 100k']").val() 6040 const total50k = Number(qty50k) * 50000 6041 const total100k = Number(qty100k) * 100000 6042 const total_all = total50k + total100k 6043 $(".prop50k").html(`<span>${qty50k} Lembar: <strong class="pl-1">${money(total50k)}</strong></span>`) 6044 $(".prop100k").html(`<span>${qty100k} Lembar: <strong class="pl-1">${money(total100k)}</strong></span>`) 6045 $(".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://ampakses.niastotonet.com/" target="_blank" style="text-decoration: underline;
6045 color: #8d3f2d">Customer Service</a> to confirm with proof of payment.</p>`) 6046 } 6047 6048 async function removeImage() { 6049 const data = JSON.stringify({ 6050 "ID": $("#properties-properties-qrId").val(), 6051 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 6052 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 6053 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 6054 "Nama Penerima": $("#properties-nama-penerima").val(), 6055 "Order Number":"", 6056 "Status":"Product", 6057 "Foto": "", 6058 "Media": $("#properties-video").val(), 6059 "Image": "8359546319899" 6060 }) 6061 const remove = updateCard(data) 6062 if(remove) { 6063 $(this).hide() 6064 $("#properties-photo").val("-") 6065 $(".placeholder-image").show() 6066 $(".preview-image").attr("src", "") 6067 } 6068 } 6069 6070 async function removeVideo() { 6071 const data = JSON.stringify({ 6072 "ID": $("#properties-properties-qrId").val(), 6073 "Kartu Nama Penerima": $("#properties-kartu-nama-penerima").val(), 6074 "Kartu Nama Pengirim": $("#properties-kartu-nama-pengirim").val(), 6075 "Kartu Ucapan": $("[data-properties=ucapan]").val(), 6076 "Nama Penerima": $("#properties-nama-penerima").val(), 6077 "Order Number":"", 6078 "Status":"Product", 6079 "Foto": $("#properties-photo").val(), 6080 "Media": "", 6081 "Image": "8359546319899" 6082 }) 6083 const remove = updateCard(data) 6084 if(remove) { 6085 $("#properties-video").val("-") 6086 $(this).find("img").hide() 6087 $(this).hide() 6088 $(this).prev("p").text("Add video to make it more special (optional)") 6089 $("#label-input-video").show() 6090 $("#label-input-video span").text("Upload Video") 6091 $(".case-video-preview p span").remove() 6092 } 6093 } 6094 6095 async function loadItemOccasion(t, occasion) { 6096 const name = occasion?.replace('greeting-card-', '') 6097 $("#kartu-ucapan").val("") 6098 $("[data-occassion]").removeClass("selected") 6099 $("[data-properties=ucapan]").val("") 6100 $("#save-card").attr("disabled", true) 6101 t.addClass("selected") 6102 $("#show_note").attr("data-card-occassion", name) 6103 $.get(`https://outerbloom.com/collections/${occasion}/products.json`, function(data, status){ 6104 const products = data.products 6105 const html = [] 6106 for(let i = 0; i < products.length; i++) { 6107 const id = products[i].id 6108 const variantId = products[i].variants[0].id 6109 const img = products[i].images[0].src 6110 const title = products[i].title 6111 const price = products[i].variants[0].price 6112 const qty = products[i].variants[0].inventory_quantity 6113 const body = `<div class="item-card${price < 1 ? ' free' : ' nofree'}${i === 0 ? ' selected' : ''}" data-id=${id}> 6114 <label for="card-${variantId}"></label> 6115 <div class="card-image"> 6116 <img src="${img}" alt="${title}" width="" height="" /> 6117 </div> 6118 <div class="card-meta text-center"> 6119 <h5>${title}</h5> 6120 <p>${price < 1 ? 'FREE' : rupiah.format(price)}</p> 6121 <input id="card-${variantId}" type="radio" name="id" value="${variantId}" data-price="${price}"> 6122 </div> 6123 </div>` 6124 html.push(body) 6125 } 6126 const withoutCard = `<div class="item-card item-without-card"> 6127 <label for="card-0"></label> 6128 <div class="card-image"> 6129 <img src="https://cdn.shopify.com/s/files/1/1589/6833/t/129/assets/without-card.png?v=1747632283" alt="Without card" width="" height="" /> 6130 </div> 6131 <div class="card-meta text-center"> 6132 <h5>
6132Send without a greeting card</h5> 6133 <input id="card-0" type="radio" name="id" value="" data-price=""> 6134 </div> 6135 </div>` 6136 $("#itemCards .items-card").html(html.length === 0 ? '<p>No Item available</p>' : html.join("")) 6137 }); 6138 } 6139 6140 $(document).ready(function(){ 6141 6142 // Observer to auto-trigger addon loading when addon section becomes visible 6143 const addonObserver = new MutationObserver(function(mutations) { 6144 mutations.forEach(function(mutation) { 6145 const target = $(mutation.target) 6146 if(target.hasClass('purchaseAddon') && mutation.type === 'attributes' && mutation.attributeName === 'class') { 6147 if(!target.hasClass('hide')) { 6148 // Addon section just became visible, ensure items are loaded 6149 setTimeout(function() { 6150 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6151 console.log("Auto-triggering addon load...") 6152 $("[data-addon=upsell-all]").trigger("click") 6153 } 6154 }, 150) 6155 } 6156 } 6157 }) 6158 }) 6159 6160 // Start observing addon section 6161 const addonSection = document.querySelector('.purchaseAddon') 6162 if(addonSection) { 6163 addonObserver.observe(addonSection, { 6164 attributes: true, 6165 attributeFilter: ['class'] 6166 }) 6167 } 6168 6169 $(".purchasePopup").delegate("#addtocart-card", "click", async function(){ 6170 6171 $(this).find("span").addClass("loading") 6172 let isValid = true 6173 $(".formAddressPurchase [required]").each(function(){ 6174 const t = $(this) 6175 const input = t.val() 6176 const p = t.parent() 6177 if(input === '') { 6178 p.addClass("error") 6179 isValid = false 6180 } 6181 }) 6182 6183 if(!isValid) { 6184 $(this).find("span").removeClass("loading") 6185 return 6186 } 6187 6188 let items = [] 6189 const mainProps = { 6190 6191 "Delivery Date": $("#propDeliveryDate").val(), 6192 "Delivery Time": $("#propDeliveryTime").val() !== '' ? $("#propDeliveryTime").val() : '-' , 6193 "Kota Pengiriman": $("#cities").val(), 6194 "Nama Penerima": $("[data-properties=nama-penerima]").val() !== '' ? $("[data-properties=nama-penerima]").val() : '-' , 6195 "Alamat Penerima": $("[data-properties=alamat-penerima]").val() !== '' ? $("[data-properties=alamat-penerima]").val() : '-' , 6196 "Kodepos": $("#zip").val() !== '' ? $("#zip").val() : '-' , 6197 "Telepon Penerima": $("[data-properties=telepon-penerima").val() !== '' ? $("[data-properties=telepon-penerima").val() : '-' , 6198 6199 6200 "Papan Nama Penerima": $("[data-properties=penerima]").val() !== '' ? $("[data-properties=penerima]").val() : '-' , 6201 "Papan Ucapan": $("[data-properties=ucapan]").val() !== '' ? $("[data-properties=ucapan]").val() : '-' , 6202 "Papan Nama Pengirim": $("[data-properties=pengirim]").val() !== '' ? $("[data-properties=pengirim]").val() : '-' , 6203 "Papan Logo": $("[data-properties=papan-logo]").val() !== '' ? $("[data-properties=papan-logo]").val() : '-' , 6204 "Foto Alamat": $("[data-properties=foto-alamat]").val() !== '' ? $("[data-properties=foto-alamat]").val() : '-' , 6205 6206 6207 "Province": $("#province").val() !== '' ? $("#province").val() : '-' , 6208 "Country": $("#properties-kota-pengiriman-country").val() !== '' ? $("#properties-kota-pengiriman-country").val() : '-' , 6209 "Shipping": $("#properties-shipping").val() !== '' ? $("#properties-shipping").val() : '-' , 6210 "Company": $("[data-properties=company]").val() !== '' ? $("[data-properties=company]").val() : '-' , 6211 "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6212 "type": 'product' 6213 } 6214 const props = await propItems() 6215 properties = {...mainProps, ...props }; 6216 const id = $("#productSelect").find('option:selected').val() 6217 console.log(id, 'main ID') 6218 const mainItem = { 6219 id: Number(id), 6220 quantity: 1, 6221 properties 6222 } 6223 items.push(mainItem) 6224 const cardId = $("#itemCards").find(".selected input").val() 6225 const cardItem = { 6226 id: Number(cardId), 6227 quantity: 1, 6228 properties: { "id": $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', type: 'card' } 6229 } 6230 console.log(cardId, 'cardId') 6231 if(cardId) { 6232 items.push(cardItem) 6233 } 6234 const addon = await addons() 6235 if(addon) { 6236 for(let i = 0;
6236 i < addon.length; i++){ 6237 items.push({ 6238 id: addon[i].id, 6239 quantity: addon[i].quantity, 6240 properties: addon[i].properties 6241 }) 6242 } 6243 } 6244 const addItems = await additem(items) 6245 console.log(addItems.items, 'add items') 6246 if(addItems) { 6247 $(this).find("span").removeClass("loading") 6248 disablePopup() 6249 showPopupCart(addItems.items) 6250 6251 localStorage.setItem("items", JSON.stringify(addItems.items)) 6252 } 6253 }) 6254 6255 $("#addtocart-cart .btn").click(async function(){ 6256 const id = $("#productSelect").find('option:selected').val() 6257 const mainProps = { 6258 id: $("#properties-time").val() !== '' ? $("#properties-time").val() : '-', 6259 type: 'product' 6260 } 6261 const props = await propItems() 6262 const properties = { ...mainProps, ...props }; 6263 const items = { 6264 id: Number(id), 6265 quantity: 1, 6266 properties 6267 } 6268 const addItems = await additem(items) 6269 if(addItems) { 6270 showPopupCart(addItems.items) 6271 localStorage.setItem("items", JSON.stringify(addItems)) 6272 } 6273 }) 6274 6275 $(".formAddressPurchase [required]").change(function(){ 6276 const t = $(this) 6277 const p = t.parent() 6278 const v = t.val() 6279 if(v !== '') { 6280 p.removeClass("error") 6281 } 6282 }) 6283 6284 $("#save-card").click(async function(){ 6285 const parent = $(this).parents(".sectionPurchase") 6286 const next = parent.next(".sectionPurchase") 6287 $(this).find("span").addClass("loading") 6288 const card = await saveCard() 6289 console.log(card, 'ssaveCCC') 6290 if(card?.status === 200 || card?.status === 201) { 6291 $(".scanCard").removeClass("hide") 6292 $(this).find("span").removeClass("loading") 6293 parent.addClass("hide") 6294 next.removeClass("hide") 6295 if(next.hasClass("purchaseAddon")) { 6296 $("[data-addon=upsell-all]").click() 6297 console.log("clarity event addons") 6298 window.clarity("event", `${productType} add-ons`) 6299 // Ensure addon items are loaded when entering addon popup 6300 setTimeout(function() { 6301 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6302 $("[data-addon=upsell-all]").trigger("click") 6303 } 6304 }, 100) 6305 } 6306 if(next.hasClass("purchaseAddress")) { 6307 $("#zip").select2() 6308 } 6309 } 6310 }) 6311 6312 $("#skip-card").click(async function(){ 6313 $("#greetingCard [data-properties]").val("") 6314 $("#properties-photo").val("") 6315 $("#properties-video").val("") 6316 const parent = $(this).parents(".sectionPurchase") 6317 const next = parent.next(".sectionPurchase") 6318 parent.addClass("hide") 6319 next.removeClass("hide") 6320 // $("#itemCards").html("") 6321 removeImage() 6322 removeVideo() 6323 if(next.hasClass("purchaseAddon")) { 6324 $("[data-addon='upsell-all']").click() 6325 console.log("clarity event addons") 6326 window.clarity("event", `${productType} add-ons`) 6327 // Ensure addon items are loaded when entering addon popup 6328 setTimeout(function() { 6329 if($("#itemAddons .row").children().length === 0 || $("#itemAddons .row").text().includes("No Item available")) { 6330 $("[data-addon='upsell-all']").trigger("click") 6331 } 6332 }, 100) 6333 } 6334 if(next.hasClass("purchaseAddress")) { 6335 $("#zip").select2() 6336 } 6337 }) 6338 6339 $("#msgCard").click(async function(){ 6340 $(this).parent().addClass("loading") 6341 let occasion = $(".selected[data-occassion]").data("occassion") 6342 occasion = occasion?.replace("greeting-card-", "") 6343 const { data } = await getFetch(`${host}/api/card/template/occasion?name=${occasion}`); 6344 const d = data?.data 6345 for(let i = 0; i < d.length; i++) { 6346 const num = Math.floor(Math.random() * (d.length - 1 + 1) + 1); 6347 const greeting = d[num]?.Greeting 6348 $(".greetingCard textarea").val(greeting) 6349 $(this).parent().removeClass("loading") 6350 } 6351 $("#save-card").attr("disabled", false) 6352 }) 6353 6354 $(".sectionPurchaseBoard .next-purchase-button").click(function(){ 6355 const parent = $(this).parents(".sectionPurchase") 6356 const next = parent.next(".sectionPurchase") 6357 parent.addClass("hide") 6358 next.removeClass("hide") 6359 }) 6360 6361 $("#editCard").click(function(){ 6362 $(".custom-card").show() 6363 $(".preview-card").hide() 6364 }) 6365 6366 $("#first_name, #last_name").change(function(){ 6367 const v = $(this).val() 6368 const first_name = $("#first_name").val() 6369 const last_name = $("#last_name").val() !== '' ? ' ' + $("#last_name").val() : '' 6370 $("[data-properties=nama-penerima]").val(first_name+last_name) 6371 }) 6372 6373 $("[data-occassion]").click(function(){ 6374 const t = $(this) 6375 const p = t.parents(".sectionPurchase") 6376 // $(".greetingCard").addClass("disabled") 6377 const occasion = t.data("occassion") 6378 loadItemOccasion(t, occasion) 6379 }) 6380 6381 $("#itemCards").delegate(".item-card:not(.item-without-card) label", "click", function(){ 6382 const id = $(this).parent(".item-card").data("id") 6383 const t = $(this).parent(".item-card") 6384 const target = t.find("input") 6385 const v = $('.item-card input[type="radio"]:checked').val(); 6386 $("#itemCards .item-card").removeClass("selected") 6387 t.addClass("selected") 6388 $("#itemCards .item-card").find("input").attr("name", "") 6389 if(target.length > 0) { 6390 target.attr("name", "id[]") 6391 $("#properties-card").val(id) 6392 $(".greetingCard").removeClass("disabled") 6393 $("#skip-card").attr("disabled", false) 6394 } else { 6395 $("#properties-card").val("") 6396 } 6397 }) 6398 6399 $("#itemCards").delegate(".item-without-card label", "click", function(){ 6400 const parent = $(this).parents(".sectionPurchase") 6401 const next = parent.next(".sectionPurchase") 6402 $(".greetingCard").addClass("disabled") 6403 parent.addClass("hide") 6404 next.removeClass("hide") 6405 $("[data-addon=upsell-all]").click() 6406 $("#zip").select2() 6407 }) 6408 6409 $("[data-properties=ucapan]").keyup(function(){ 6410 const v = $(this).val() 6411 const p = $(this).parents(".sectionPurchase") 6412 $(".purchaseAddress").find(".greetingCard textarea").val(v) 6413 if(v.length > 3) { 6414 p.find(".next-purchase-button").attr("disabled", false) 6415 } else { 6416 p.find(".next-purchase-button").attr("disabled", true) 6417 } 6418 }) 6419 6420 $("[data-properties=penerima]").keyup(function(){ 6421 const v = $(this).val() 6422 $(".purchaseAddress").find("[data-properties=penerima]").val(v) 6423 }) 6424 6425 $("[data-properties=pengirim]").keyup(function(){ 6426 const v = $(this).val() 6427 $(".purchaseAddress").find("[data-properties=pengirim]").val(v) 6428 }) 6429 6430 $(document).click(function(e){ 6431 6432 if($(e.target).closest('.wrapperPopupCart').length != 0) return false;
6433 // $('#popupCart').fadeOut('slow'); 6434 // location.reload() 6435 }); 6436 6437 $(".toggleAddonCart").click(function(){ 6438 const p = $(this).parent(".itemAddonCart") 6439 p.toggleClass("open") 6440 }) 6441 6442 $(".btnViewCart").click(function(){ 6443 window.location.href = "https://outerbloom.com/cart"; 6444 }) 6445 6446 $(".btnViewCheckout").click(async function(){ 6447 $(this).find("span").addClass("loading") 6448 let zip = $("#zip").val() 6449 const first_name = $("#first_name").val() 6450 const last_name = $("#last_name").val() 6451 const company = $("#company").val() !== '' ? $("#company").val() : '' 6452 const address1 = $("#delivery_address").val() 6453 const address2 = zip && zip !== '' ? zip?.split(' - ')[1] : '' 6454 zip = zip && zip !== '' ? zip?.split(' - ')[0] : '' 6455 const phone = $("#recipient_number").val() 6456 const city = $("#cities").val() 6457 const province = $("#province").val() 6458 const country = 'Indonesia' 6459 const ver = Date.parse(new Date()) 6460 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}` 6461 6462 const clear = await fetch(`/cart/clear.js`, {method: 'POST'}) 6463 if(clear.status === 200) { 6464 const savedItem = window.localStorage.getItem("items"); 6465 const items = JSON.parse(savedItem) 6466 const addItems = await additem(items) 6467 console.log(addItems, 'new addItems') 6468 if(addItems) { 6469 window.location.href = `https://outerbloom.com/checkout?${params}`; 6470 } 6471 } 6472 }) 6473 6474 $(".btnContinueShopping").click(function(){ 6475 window.location.href = "https://outerbloom.com/"; 6476 }) 6477 6478 if (isIOS) { 6479 $(".empty-state-card").click(function(){ 6480 $("#input-foto").trigger("click") 6481 }) 6482 $(".btn-upload-image").click(function(){ 6483 $("#input-foto").trigger("click") 6484 }) 6485 $("[for=input-video]").click(function(){ 6486 $("#input-video").trigger("click") 6487 }) 6488 $(".btn-upload-papan").click(function(){ 6489 $("#logoPapan").trigger("click") 6490 }) 6491 } 6492 6493 $("[data-properties]").each(function(){ 6494 const select = $(this).parents(".form-group").find("select") 6495 $(this).change(function(){ 6496 const name = $(this).data("properties") 6497 const v = $(this).val() 6498 if (name == 'telepon-penerima') { 6499 let phone = v.replace(/[^0-9]/g, '') 6500 $(this).val(phone); 6501 $("#properties-telepon-penerima").val(phone) 6502 $('.iti__search-input').val('-') 6503 } else { 6504 $("#properties-" + name).val(v) 6505 } 6506 }) 6507 select.on("change", function(){ 6508 const name = $(this).data("properties") 6509 const v = $(this).val() 6510 $("#properties-" + name).val(v) 6511 }) 6512 }) 6513 6514 $("#show_note").click(function(){ 6515 nameq = $("#properties-nama-penerima").val() 6516 dear = $("#properties-kartu-nama-penerima").val() 6517 card = $("[data-properties=ucapan]").val() 6518 sender = $("#properties-kartu-nama-pengirim").val() 6519 photo = $("#properties-photo").val() 6520 video = $("#properties-video").val() 6521 updateCard(nameq, dear, card, sender, photo, video, status) 6522 }) 6523 6524 $(".remove-image").click(function(e){ 6525 e.preventDefault() 6526 $(this).find("img").show() 6527 removeImage() 6528 }) 6529 6530 $(".remove-media").click(function(e){ 6531 e.preventDefault() 6532 $(this).find("img").show() 6533 removeVideo() 6534 }) 6535 6536 6537 6538 $("[data-delivery_method]").click(function(e){ 6539 e.preventDefault() 6540 const t = $(this) 6541 const data = t.data("delivery_method") 6542 $("[data-delivery_method]").removeClass("selected") 6543 t.addClass("selected") 6544 $("#cities").val("") 6545 $("#properties-delivery-date").val("-") 6546 $("#deliveryDate button").removeClass("selected") 6547 $("#full-date").val("Full Calendar â") 6548 $("#propDeliveryDate").val("") 6549 const step3 = $("#step-3") 6550 if(data.match('PickUp')) { 6551 $(".selfpickup-point").show() 6552 step3.find("[data-finished=false]").hide() 6553 $("#panel-4").hide() 6554 step3.find("[data-finished=true]").show() 6555 $("#cities").attr("required", false) 6556 $("#form-group-city").hide() 6557 $("#row-delivery-time").hide() 6558 $("#propDeliveryTime, #properties-delivery-time, #properties-nama-penerima, #properties-alamat-penerima, #properties-kodepos, #properties-kodepos, #properties-telepon-penerima").val("-") 6559 $("#propDeliveryTime").attr("required", false) 6560 // $("#deliveryDate").find("button:first-child").addClass("stop") 6561 $(".form-selfpickup").show() 6562 $(".form-delivery").hide() 6563 $(".form-delivery").find("input, textarea, select").val("") 6564 $(".form-delivery").find("input, textarea, select").attr("required", false) 6565 $("#properties-shipping").val("0") 6566 $("#noteDeliveryDate").hide() 6567 $(".form-delivery .form-control").attr("required", false) 6568 $("#stepNav4").hide() 6569 6570 $("#deliveryDate").find("button:nth-child(1)").addClass("stop") 6571 6572 6573 6574 if(timeOfDay >= 16.01){ 6575 $("#deliveryDate").find("button:nth-child(2)").addClass("stop") 6576 } 6577 } else { 6578 6579 6580 $("#deliveryDate").find("button:nth-child(1)").removeClass("stop") 6581 step3.find("[data-finished=false]").show() 6582 $("#panel-4").show() 6583 step3.find("[data-finished=true]").hide() 6584 $("#cities").attr("required", true) 6585 $(".selfpickup-point").hide() 6586 $("#form-group-city").show() 6587 $("#cities").val('').trigger('change'); 6588 $("#properties-kota-pengiriman").val("-") 6589 6590 $("#row-delivery-date, #row-delivery-time").show() 6591 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 6592 $("#deliveryDate").find("button").removeClass("stop") 6593 $(".form-selfpickup").hide() 6594 $(".form-delivery").show() 6595 $(".form-delivery").find("input, textarea, select").attr("required", true)
6596 $(".form-delivery [data-properties]").attr("readonly", false) 6597 $("#properties-kodepos").val("-") 6598 $("#properties-alamat-penerima").val("-") 6599 $(".form-delivery .form-control").attr("required", true) 6600 $(this).parents(".setup-content").attr("id", "step-1") 6601 6602 $("#stepNav4").show() 6603 } 6604 }) 6605 6606 $("[name=selfpickup]").click(function(){ 6607 const p = $(this).parents(".row-pickup") 6608 const pickupCity = $("input[name='selfpickup']:checked").val(); 6609 const pickupAddress = $("input[name='selfpickup']:checked").data("address"); 6610 const pickupZip = $("input[name='selfpickup']:checked").data("zip"); 6611 6612 $(".row-pickup").removeClass("selected") 6613 p.addClass("selected") 6614 6615 $("#properties-kota-pengiriman").val(pickupCity) 6616 $("#province").val("Jakarta") 6617 $("#properties-alamat-penerima").val(pickupAddress) 6618 $("#properties-kodepos").val(pickupZip) 6619 }) 6620 6621 $("#cities").change(function(e){ 6622 e.preventDefault() 6623 $(this).parent(".row").find("p.error").remove() 6624 $("#full-date").val("Full Calendar") 6625 $("#deliveryDate, #deliveryDateFull label ").show() 6626 $("#deliveryDateFull").removeClass("filled") 6627 $(".btnChangeDeliveryDate").addClass("hide") 6628 $("#full-date").prop('disabled', false); 6629 $("#stepNav2, #stepNav3, #stepNav4").removeClass("btn-success") 6630 $("#stepNav2, #stepNav3, #stepNav4").find("a").attr("disabled", true) 6631 const step3 = $("#step-3") 6632 $("#cityNote").remove() 6633 $("#noteDeliveryDate").hide() 6634 $("#noteDeliveryDate").empty() 6635 let v = $(this).val() 6636 let v2 = $('option:selected', this).attr('data-city'); 6637 let v3 = $('option:selected', this).attr('data-province'); 6638 let price = $('option:selected', this).attr('data-price'); 6639 $("#country").val(v) 6640 $("#properties-kota-pengiriman").val(v) 6641 $("#properties-shipping").val(price) 6642 $("#deliveryDate button, #deliveryTime button, .calendarseasonal .button").removeClass("selected") 6643 $("#properties-delivery-date, #properties-delivery-time").val("-") 6644 $("#propDeliveryDate, #propDeliveryTime").val("") 6645 let note = $('option:selected', this).attr('data-note'); 6646 if(v === 'Kota Lainnya') { 6647 $("#noteDeliveryDate").show() 6648 $("#noteDeliveryDate").text("Order akan segera dikirim. Estimasi tanggal diterima akan disesuaikan dengan waktu pengiriman oleh pihak ekspedisi ke lokasi Anda.") 6649 $("#zip").attr("required", false) 6650 $("#zip").hide() 6651 $("#propDeliveryDate, #propDeliveryTime").attr("required", false) 6652 $("#propDeliveryDate, #properties-delivery-date, #propDeliveryTime, #properties-delivery-time").val("-") 6653 $("#row-delivery-date, #row-delivery-time").hide() 6654 $("#properties-shipping").val("") 6655 // $(this).parents(".setup-content").attr("id", "step-2") 6656 6657 } else { 6658 $("#noteDeliveryDate").hide() 6659 $("#zip").attr("required", true) 6660 $("#zip").show() 6661 $("#row-delivery-date, #row-delivery-time").show() 6662 $("#propDeliveryDate, #propDeliveryTime").attr("required", true) 6663 $("#deliveryDate").find("button").removeClass("stop") 6664 // $(this).parents(".setup-content").attr("id", "step-1") 6665 6666 } 6667 6668 6669 6670 // if(v !== 'Jakarta') { 6671 // $("[data-type=upsell]").hide() 6672 // } else { 6673 // $("[data-type=upsell]").show() 6674 // } 6675 // $('.collection-addons')[0].swiper.update(); 6676 6677 6678 getProvince(v) 6679 $("#zip").html(`<option value="">Choose Postal Code</option>`) 6680 renderZip(v, v2, v3) 6681 6682 disabledSameDay() 6683 6684 6685 if(v !== 'Jakarta' && v !== 'Depok' && v !== 'Bekasi' && v !== 'Tangerang') { 6686 6687 $("#cardOccasion, #navAddon, .collection-addons").hide() 6688 6689 $("[data-addon=giftcard]").show() 6690 $("[data-addon=giftcard]").click() 6691 $("#itemAddons").show() 6692 $("#flower-step").addClass("nonjadetabek") 6693 } else { 6694 $("#cardOccasion, #navAddon, .collection-addons").show() 6695 $("[data-addon=all]").click() 6696 $("#flower-step").removeClass("nonjadetabek") 6697 } 6698 6699 if(v !== '') { 6700 $("#personalizeBtn .btn").attr("disabled", false) 6701 } else { 6702 $("#personalizeBtn .btn").attr("disabled", true) 6703 } 6704 6705 }) 6706 6707 $("#zip").change(function(e){ 6708 let v = $(this).val() 6709 var city = $("#cities").find('option:selected'); 6710 $("#properties-kodepos").val(v) 6711 if(city === 'Kota Lainnya') { 6712 $(this).attr("required", true) 6713 $("#recipient-address").val("") 6714 } 6715 }) 6716 6717 6718 var minDate = +7 6719 6720 6721 6722 $("#full-date").datepicker({ 6723 minDate, 6724 dateFormat: 'Mdd_yy', //Nop22_2021, 6725 6726 beforeShowDay: disabledays, 6727 6728 onSelect: function (date) { 6729 $("#deliveryDate, #deliveryDateFull label ").hide() 6730 $("#deliveryDateFull").addClass("filled") 6731 $(".btnChangeDeliveryDate").removeClass("hide") 6732 $("#full-date").prop('disabled', true); 6733 $('#propDeliveryDate, #properties-delivery-date').val('Kirim_'+date); 6734 $(".date-full").addClass("selected") 6735 $(".date-single, .calendar-group").removeClass("selected") 6736 $("#propDeliveryTime").val('') 6737 $("#properties-delivery-time").val('-') 6738 $(".time-single").removeClass("selected") 6739 6740 6741 } 6742 }); 6743 6744 $(".btnChangeDeliveryDate").click(function(){ 6745 $("#deliveryDate, #deliveryDateFull label ").show() 6746 $("#deliveryDateFull").removeClass("filled") 6747 $(".btnChangeDeliveryDate").addClass("hide") 6748 $("#full-date").prop('disabled', false); 6749 }) 6750 6751 $("#deliveryDate").delegate(".calendarbutton:not(.date-full)", "click", function(e){ 6752 e.preventDefault() 6753 $(this).parents("#row-delivery-date").find("p.error").remove() 6754 const fulldate = $(this).data("fulldate") 6755 const day = $(this).data("day") 6756 const date = $(this).data("date")
6757 const month = $(this).data("month") 6758 const year = $(this).data("year") 6759 const off_pagi = $(this).data("offpagi") 6760 const off_siang = $(this).data("offsiang") 6761 const off_Malam = $(this).data("offMalam") 6762 $(".calendarbutton").removeClass("selected") 6763 $(this).addClass("selected") 6764 $("#propDeliveryDate, #properties-delivery-date").val(`Kirim_${month}${date}_${year}`) 6765 $("#propDeliveryTime").val('') 6766 $("#properties-delivery-time").val('-') 6767 $(".calendarbutton2").removeClass("selected") 6768 $("#full-date").val("Full Calendar") 6769 6770 6771 if(off_pagi && timeOfDay > off_pagi) { 6772 $("[data-time=Morning]").attr("disabled", true) 6773 } else { 6774 $("[data-time=Morning]").attr("disabled", false) 6775 } 6776 if(off_siang && timeOfDay > off_siang) { 6777 $("[data-time=Afternoon]").attr("disabled", true) 6778 } else { 6779 $("[data-time=Afternoon]").attr("disabled", false) 6780 } 6781 6782 6783 6784 }) 6785 6786 if(today === 14 && timeOfDay > 17.00) { 6787 $("#deliveryDate button:first-child").attr("disabled", true) 6788 } 6789 6790 $("#deliveryTime").delegate(".calendarbutton2", "click", function(e){ 6791 e.preventDefault() 6792 const time = $(this).data("time") 6793 const date = $("#propDeliveryDate").val() 6794 if(date == '') { 6795 return alert('Silakan pilih tanggal terlebih dahulu') 6796 } 6797 $(".calendarbutton2").removeClass("selected") 6798 $(this).addClass("selected") 6799 $("#propDeliveryTime, #properties-delivery-time").val(`KirimJam_${date.replace('Kirim_','')}_${time}`) 6800 }) 6801 6802 $('textarea.has-limit, input.has-limit').keyup(function () { 6803 max = this.getAttribute("maxlength"); 6804 let len = $(this).val().length; 6805 let limit = $(this).siblings(".limit"); 6806 if (len > max) { 6807 alert('you have reached the limit'); 6808 } else { 6809 limit.text(`${len}/${max}`); 6810 } 6811 }); 6812 6813 $("#button-action-step .btn").click(function(){ 6814 $(this).find("span").text("Processing..."); 6815 }); 6816 6817 $(".finishBtn").on('click', function() { 6818 $(this).addClass("is-adding"); 6819 // $(this).click(); 6820 }); 6821 6822 $('.setup-panel .nav-item a.btn-success').trigger('click'); 6823 6824 $("#button-action .btn").click(function(){ 6825 $("#flower-step").addClass("block"); 6826 $("#button-action").hide(); 6827 }); 6828 6829 $(".close-how-order").click(function(){ 6830 $("#flower-step").removeClass("block"); 6831 $("#button-action").show(); 6832 }); 6833 6834 $("#input-foto, #input-video").change(function(e){ 6835 readURL(this); 6836 }); 6837 6838 $("#logoPapan").change(function(){ 6839 readURLPapan(this); 6840 }); 6841 6842 $("#address-upload").change(async function(){ 6843 const upload_address = await readURLAddress(this) 6844 if(upload_address) { 6845 const url = upload_address.url 6846 $(".props-address-upload").val(url) 6847 $(".form-address").addClass("address-uploaded") 6848 $(".form-address-upload").addClass("uploaded") 6849 6850 $(this).parents(".form-group").siblings(".form-group").find("[required]").attr("required", false) 6851 } 6852 }) 6853 6854 $(".address-manualy").click(function(){ 6855 $(".form-address-upload").removeClass("uploaded"); 6856 $(".photo-address").hide(); 6857 $(".form-address").removeClass("address-uploaded") 6858 $("#formAddressPurchase").find(".form-control").attr("required", true) 6859 }); 6860 6861 $(".case-video-preview").delegate(".replace-video", "click", function(){ 6862 $("#input-video").trigger("click") 6863 }) 6864 6865 $('.date-single').click(function(e) { 6866 e.preventDefault(); 6867 $('.date-single').removeClass('selected'); 6868 $('#full-date').removeClass('selected'); 6869 $(this).addClass('selected'); 6870 $('#full-date').html('Full' + '<br/>' + 'Calendar'); 6871 }); 6872 $('#full-date').click(function(e){ 6873 e.preventDefault(); 6874 $('.date-single').removeClass('selected'); 6875 $(this).addClass('selected'); 6876 }); 6877 6878 // $("tr").each(function(){ 6879 // if($(this).text().match('SKU')) { 6880 // $(".sku-product").html($(this).parents("table").html()) 6881 // } 6882 // }) 6883 6884 $("#product-image").scroll(function(){ 6885 $(".desc-add").each(function(){ 6886 const img = $(this).find("img") 6887 const src = img.data("src") 6888 img.attr("src", src) 6889 }) 6890 }) 6891 6892 $(".product-fixed").hide() 6893 6894 let target = $("#personalizeBtn") 6895 6896 6897 $(".product-meta").scroll(function() { 6898 if ($(window).scrollTop() >= target.offset().top ) { 6899 $(".product-fixed").addClass("show") 6900 } else { 6901 $(".product-fixed").removeClass("show") 6902 } 6903 }); 6904 6905 $(window).scroll(function() { 6906 if ($(window).scrollTop() >= target.offset().top ) { 6907 $(".product-fixed").addClass("show") 6908 } else { 6909 $(".product-fixed").removeClass("show") 6910 } 6911 }); 6912 }); 6913 </script>
6913 6914 6915
6915<script> 6916 // 6917 </script>
6917 6918 6919
6919<script> 6920 $(document).ready(function(){ 6921 $('table tr td').each(function(){ 6922 var texto = $(this).text(); 6923 var nextto = $(this).next("td"); 6924 var sku = $("#data-sku").val() 6925 if(texto == 'SKU'){ 6926 nextto.text(sku) 6927 } 6928 }); 6929 6930 $(".stamped-summary-actions-newquestion").text("Tulis Pertanyaan"); 6931 $(".stamped-summary-actions-newreview").text("Tulis Review"); 6932 $("#tab-questions").text("Pertanyaan"); 6933 6934 $(".freeship .icon").click(function(){ 6935 $(".fs-content").slideToggle(); 6936 $(this).parents(".freeship").toggleClass("expand"); 6937 }); 6938 6939 var $easyzoom = $('.easyzoom').easyZoom(); 6940 // Setup thumbnails example 6941 var api1 = $easyzoom.filter('.easyzoom--with-thumbnails').data('easyZoom'); 6942 $('.thumbnails').on('click', 'a', function(e) { 6943 var $this = $(this); 6944 e.preventDefault(); 6945 // Use EasyZoom's `swap` method 6946 api1.swap($this.data('standard'), $this.attr('href')); 6947 }); 6948 6949 $('#playerID').click(function(){ 6950 var videoURL = $('#VdoID').attr('src'), 6951 dataplay = $('#VdoID').attr('data-play'); 6952 6953 //for check autoplay 6954 //if not set autoplay=1 6955 if(dataplay == 0 ){ 6956 $('#VdoID').attr('src',videoURL+'?autoplay=1'); 6957 $('#VdoID').attr('data-play',1); 6958 } 6959 else{ 6960 var videoURL = $('#VdoID').attr('src'); 6961 videoURL = videoURL.replace("?autoplay=1", ""); 6962 $('#VdoID').prop('src',''); 6963 $('#VdoID').prop('src',videoURL); 6964 6965 $('#VdoID').attr('data-play',0); 6966 } 6967 6968 }); 6969 6970 $(".product-photo-thumb-video").click(function(e){ 6971 e.preventDefault(); 6972 6973 var newEmbed = $(this).attr('href'); 6974 $("#featured-image-product").addClass("img-video"); 6975 $("#ProductPhotoImg").hide(); 6976 $("#featured-image-product .video").show(); 6977 $("#featured-image-product iframe").attr('src', newEmbed); 6978 $("#VdoID")[0].src += "&autoplay=1"; 6979 }); 6980 $(".product-single__thumbnail").click(function(evt){ 6981 evt.preventDefault(); 6982 $("#featured-image-product").removeClass("img-video"); 6983 $("#ProductPhotoImg").show(); 6984 $("#featured-image-product .video").hide(); 6985 $("#featured-image-product iframe").attr('src', ''); 6986 }); 6987 6988 if($('#product-meta .short-desc > div').length >= 1){ 6989 //console.log('div detected') 6990 var replacer = $('#product-meta .short-desc > div').contents(); 6991 $('#product-meta .short-desc > div').replaceWith(replacer); 6992 6993 var cAssured = $('.c-assured').detach(); 6994 cAssured.insertAfter('.meta-sds .stock-info'); 6995 } 6996 6997 6998 6999 $(".heading-toggle").click(function(){ 7000 $(this).parent().toggleClass("open") 7001 7002 }); 7003 }); 7004 </script>
7004 7005 7006 7007
7007<script type="application/json" id="ProductJson-Product"> 7008 7009 {"id":8359546319899,"title":"NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan."} 7010 </script>
7010 7011 7012
7012<script type="application/json" id="VariantJson-Product"> 7013 [ 7014 7015 { 7016 "incoming": false, 7017 "next_incoming_date": null 7018 } 7019 7020 ] 7021 </script>
7021 7022 7023 7024 7025 7026 </div> 7027 7028 7029
7029<script src="//outerbloom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" type="text/javascript"></script>
7029 7030 <style> 7031 .stamped-review-header-title, 7032 .stamped-review-header .author, 7033 .stamped-review-content-body, 7034 .stamped-sort-select, 7035 .stamped-review-header .verified-badge[data-type=buyer]:after, 7036 .stamped-review-header-byline, 7037 .stamped-review-reply-body {font-size: 14px!important;font-family: 'Barlow',sans-serif!important;} 7038 .stamped-review {margin-bottom: 0;} 7039 .stamped-review-body {padding-left: 65px;} 7040 .stamped-review:first-child {padding-top: 25px;} 7041 .stamped-review-content {clear: none;} 7042 .stamped-review-reply {margin: 15px 0 0 65px;background: #f2f2f2;border-left: none;} 7043 .stamped-review-reply-body {padding-left: 65px;} 7044 .stamped-review-header .author {text-transform: capitalize;} 7045 .stamped-questions .stamped-review-content {padding-left: 65px;} 7046 7047 .stamped-pagination {margin: 20px 0 0;} 7048 .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;} 7049 .stamped-pagination li a {color: #121212;padding: 13px 18px;vertical-align: middle;display: block;} 7050 .stamped-pagination li.active a {background-color: #ddd;font-weight: 400;} 7051 .stamped-pagination li:hover a {background: #ddd;} 7052 .stamped-pagination .next {border-right: 1px solid #ccc;} 7053 .stamped-pagination li:first-child {border-top-left-radius: 5px;border-bottom-left-radius: 5px;} 7054 .stamped-pagination li:last-child {border-top-right-radius: 5px;border-bottom-right-radius: 5px;} 7055 7056 #stamped-pagination-question span.page {display: inline-block;border: 1px solid #ccc;width: 47px;} 7057 #stamped-pagination-question span {font-size: 14px;} 7058 #stamped-pagination-question .page.active {padding: 12px;font-weight: 400;background: #ddd;} 7059 #stamped-pagination-question a, #stamped-pagination-question .page.active {color: #121212;padding: 13px 18px;vertical-align: middle;display: inline-block;} 7060 .stamped-pagination-deco {color: #121212;padding: 13px 18px;width: 47px;vertical-align: middle;display: inline-block;border: 1px solid #ccc;padding: 12px;} 7061 .stamped-pagination-prev, .stamped-pagination-next {position: inherit;} 7062 .stamped-pagination-prev a, .stamped-pagination-next a {width: auto!important;border: 1px solid #ccc;} 7063 7064 @media (max-width: 480px){ 7065 .stamped-review-reply {margin-left: 0!important;} 7066 select.stamped-sort-select {font-size: 13px!important;} 7067 } 7068 7069 #product-reviews .stamped-summary-ratings, #product-reviews .stamped-summary-actions, .stamped-content { 7070 display: block !important; 7071 } 7072 </style> 7073
7073<script> 7074 var selectCallback = function(variant, selector) { 7075 timber.productPage({ 7076 money_format: "Rp {{amount_no_decimals}}", 7077 variant: variant, 7078 selector: selector 7079 }); 7080 }; 7081 7082 jQuery(function($) { 7083 new Shopify.OptionSelectors('productSelect', { 7084 product: 7085 7086 7087 7088 7089 7090 {"id":8359546319899,"title":"NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps","handle":"blossom-shine","description":"\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan."}, 7091 onVariantSelected: selectCallback, 7092 enableHistoryState: true 7093 }); 7094 7095 // Add label if only one product option and it isn't 'Title'. Could be 'Size'. 7096 7097 7098 // Hide selectors if we only have 1 variant and its title contains 'Default'. 7099 7100 $('.selector-wrapper').hide(); 7101 7102 }); 7103 </script>
vendor: 1 bytes, line 7103
7103
7104<script id="bss-ltap-hide-price" type="text/javascript" > 7105 !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)}))}
7105)),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)}
7105)),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()}
7105if("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)}
7105if(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");
7105c&&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
7105-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");
7105i&&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
7105--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
7105opify.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");
7105e.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=
7105o.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");
7105if(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();
7105let 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()}]); 7106 </script>
7106 7107 7108 </main> 7109 7110 <div id="shopify-section-newsletter" class="shopify-section"><br> 7111 <style> 7112 #shopify-section-newsletter { 7113 background: url(https://imgcloud.io/storage/vannn/de12f5ad-fddf-45c2-a936-c16451bb0eb1.webp); 7114 background-attachment: fixed; 7115 margin-bottom: 0; 7116 } 7117 input:-webkit-autofill, 7118 input:-webkit-autofill:hover, 7119 input:-webkit-autofill:active, 7120 input:-webkit-autofill:focus { 7121 -webkit-box-shadow:0 0 0 50px white inset; 7122 -webkit-text-fill-color: #ffffff; 7123 } 7124 .section-newsletter { 7125 max-width: 800px; 7126 margin: auto; 7127 padding: 50px 0; 7128 } 7129 .section-newsletter h2 { 7130 font-weight: 700; 7131 font-size: 24px; 7132 } 7133 .section-newsletter input[type="email"] { 7134 width: 100%; 7135 text-align: center; 7136 border: none; 7137 border-bottom: 1px solid #ffffff; 7138 font-size: 16px; 7139 color: #757575; 7140 background-color: #eeeeee; 7141 } 7142 .section-newsletter .row label { 7143 font-size: 14px; 7144 cursor: pointer; 7145 } 7146 .section-newsletter .radio-inline input { 7147 width: auto; 7148 } 7149 .section-newsletter .btn { 7150 width: 130px; 7151 border: 1px solid #ffffff; 7152 box-shadow: none; 7153 font-size: 16px; 7154 font-weight: 500; 7155 text-transform: uppercase; 7156 } 7157 .section-newsletter form { 7158 margin: 30px 0 60px; 7159 } 7160 .section-newsletter input[type="radio"] { 7161 position: absolute; 7162 width: 1px; 7163 height: 1px; 7164 } 7165 .section-newsletter [type="radio"]:checked + label, .section-newsletter [type="radio"]:not(:checked) + label { 7166 position: relative; 7167 padding-left: 28px; 7168 cursor: pointer; 7169 line-height: 20px; 7170 display: inline-block; 7171 color: #666; 7172 } 7173 .section-newsletter [type="radio"]:checked + label:before, .section-newsletter [type="radio"]:not(:checked) + label:before { 7174 content: ''; 7175 position: absolute; 7176 left: 0; 7177 top: 0; 7178 width: 18px; 7179 height: 18px; 7180 border: 1px solid #ddd; 7181 border-radius: 100%; 7182 background: #fff; 7183 } 7184 .section-newsletter [type="radio"]:checked + label:after, .section-newsletter [type="radio"]:not(:checked) + label:after { 7185 content: ''; 7186 width: 12px; 7187 height: 12px; 7188 background: #ffffff; 7189 position: absolute; 7190 top: 3px; 7191 left: 3px; 7192 border-radius: 100%; 7193 -webkit-transition: all 0.2s ease; 7194 transition: all 0.2s ease; 7195 } 7196 .section-newsletter [type="radio"]:not(:checked) + label:after { 7197 opacity: 0; 7198 -webkit-transform: scale(0); 7199 transform: scale(0); 7200 } 7201 .opt-newsletter {display:none;} 7202 .footer-newsletter p, .footer-newsletter p a { 7203 color: #757575; 7204 } 7205 @media (max-width:991px){ 7206 .section-newsletter h2 { 7207 font-size: 32px; 7208 } 7209 .section-newsletter input { 7210 width: 300px; 7211 font-size: 14px; 7212 } 7213 .section-newsletter { 7214 padding: 50px 20px; 7215 } 7216 } 7217 @media (max-width: 480px){ 7218 .section-newsletter input[type="email"] {font-size: 16px;} 7219 } 7220 </style> 7221<style> 7222.icon-img-footer { 7223 width: 80px; 7224 padding: 0 5px; 7225} 7226 7227@media (min-width: 768px) { 7228 .icon-img-footer { 7229 width: 120px; 7230 } 7231} 7232 7233@media (min-width: 992px) { 7234 .icon-img-footer { 7235 width: 120px; 7236 } 7237} 7238 7239.button-login-daftar { 7240 display: grid; 7241 grid-template-columns: repeat(2, 1fr); 7242 font-weight: 700; 7243 gap: 10px; 7244} 7245 7246.button-login-daftar a { 7247 text-align: center; 7248 text-decoration: none; 7249} 7250 7251.login, 7252.register { 7253 padding: 15px 10px; 7254 font-size: 23px; 7255 font-weight: 800; 7256 letter-spacing: 0.6px; 7257 text-transform: uppercase; 7258 position: relative; 7259 overflow: hidden; 7260 transition: all 0.3s ease; 7261} 7262 7263/* LOGIN - ORANGE KUNING ELEGANT */ 7264.login, 7265.login-button { 7266 background: 7267 radial-gradient(circle at top, rgb(0 0 0 / 28%), transparent 42%), linear-gradient(to bottom, #000000 0%, #674e09 48%, #000000 72%, #000000 100%); 7268 border: 2px solid #ffdf3d; 7269 color: #ffffff; 7270 text-shadow: 7271 0 1px 2px rgba(0, 0, 0, 0.9), 7272 0 0 8px rgba(255, 196, 0, 0.72); 7273 box-shadow: 7274 0 0 16px rgba(255, 136, 0, 0.58), 7275 0 0 26px rgba(255, 215, 60, 0.30), 7276 inset 0 0 12px rgba(255, 245, 160, 0.14); 7277} 7278 7279/* REGISTER - KUNING TERANG PREMIUM */ 7280.register, 7281.register-button { 7282 background: 7283 radial-gradient(circle at top, rgb(0 0 0 / 28%), transparent 42%), linear-gradient(to bottom, #000000 0%, #674e09 48%, #000000 72%, #000000 100%); 7284 border: 2px solid #fff6a8; 7285 color: #3b1800; 7286 text-shadow: 7287 0 1px 2px rgba(255, 255, 255, 0.62), 7288 0 0 6px rgba(255, 176, 0, 0.70); 7289 box-shadow: 7290 0 0 18px rgba(255, 210, 0, 0.58), 7291 0 0 30px rgba(255, 140, 0, 0.28), 7292 inset 0 1px 0 rgba(255, 255, 255, 0.48); 7293} 7294 7295/* SHINE EFFECT */ 7296.login::before, 7297.register::before, 7298.login-button::before, 7299.register-button::before { 7300 content: ""; 7301 position: absolute; 7302 top: 0; 7303 left: -80%; 7304 width: 55%; 7305 height: 100%; 7306 background: linear-gradient( 7307 120deg, 7308 transparent, 7309 rgba(255, 255, 255, 0.42), 7310 transparent 7311 ); 7312 transform: skewX(-22deg); 7313 transition: left 0.65s ease; 7314 pointer-events: none; 7315} 7316 7317.login:hover::before, 7318.register:hover::before, 7319.login-button:hover::before, 7320.register-button:hover::before { 7321 left: 130%; 7322} 7323 7324.login:hover, 7325.register:hover, 7326.login-button:hover, 7327.register-button:hover { 7328 filter: brightness(1.12) contrast(1.06); 7329 transform: translateY(-2px); 7330 box-shadow: 7331 0 0 24px rgba(255, 145, 0, 0.78), 7332 0 0 38px rgba(255, 225, 70, 0.48), 7333 inset 0 0 14px rgba(255, 255, 255, 0.14); 7334} 7335</style> 7336 <!-- wp:html --> 7337
7337<script> 7338 document.addEventListener('DOMContentLoaded', 7339 function(){const faqItems=document.querySelectorAll('.faq-item'); 7340 faqItems.forEach(item=>{const question=item.querySelector('.faq-question'); 7341 question.addEventListener('click', 7342 ()=>{const isActive=item.classList.contains('active'); 7343 faqItems.forEach(otherItem=>{otherItem.classList.remove('active')}); 7344 if(!isActive){item.classList.add('active')}})})}); 7345 </script>
7345 7346 7347 7348 7349<div class="page__overlay" data-view="offCanvasNavToggle" data-off-canvas="close" bis_skin_checked="1"></div> 7350<section class="fx-video-bg btt-scene" id="NIASTOTO-final-page"> 7351 <div class="btt-rain" aria-hidden="true"><span style="left:0vw;height:34px;animation-duration:0.90s;animation-delay:0.00s"></span><span style="left:13vw;height:41px;animation-duration:1.01s;animation-delay:-0.18s"></span><span style="left:26vw;height:48px;animation-duration:1.12s;animation-delay:-0.36s"></span><span style="left:39vw;height:55px;animation-duration:1.23s;animation-delay:-0.54s"></span><span style="left:52vw;height:62px;animation-duration:1.34s;animation-delay:-0.72s"></span><span style="left:65vw;height:69px;animation-duration:1.45s;animation-delay:-0.90s"></span><span style="left:78vw;height:34px;animation-duration:1.56s;animation-delay:-1.08s"></span><span style="left:91vw;height:41px;animation-duration:1.67s;animation-delay:-1.26s"></span><span style="left:4vw;height:48px;animation-duration:1.78s;animation-delay:-1.44s"></span><span style="left:17vw;height:55px;animation-duration:0.90s;animation-delay:-1.62s"></span><span style="left:30vw;height:62px;animation-duration:1.01s;animation-delay:-1.80s"></span><span style="left:43vw;height:69px;animation-duration:1.12s;animation-delay:-1.98s"></span><span style="left:56vw;height:34px;animation-duration:1.23s;animation-delay:-2.16s"></span><span style="left:69vw;height:41px;animation-duration:1.34s;animation-delay:-2.34s"></span><span style="left:82vw;height:48px;animation-duration:1.45s;animation-delay:-2.52s"></span><span style="left:95vw;height:55px;animation-duration:1.56s;animation-delay:-2.70s"></span><span style="left:8vw;height:62px;animation-duration:1.67s;animation-delay:-2.88s"></span><span style="left:21vw;height:69px;animation-duration:1.78s;animation-delay:0.00s"></span><span style="left:34vw;height:34px;animation-duration:0.90s;animation-delay:-0.18s"></span><span style="left:47vw;height:41px;animation-duration:1.01s;animation-delay:-0.36s"></span><span style="left:60vw;height:48px;animation-duration:1.12s;animation-delay:-0.54s"></span><span style="left:73vw;height:55px;animation-duration:1.23s;animation-delay:-0.72s"></span><span style="left:86vw;height:62px;animation-duration:1.34s;animation-delay:-0.90s"></span><span style="left:99vw;height:69px;animation-duration:1.45s;animation-delay:-1.08s"></span><span style="left:12vw;height:34px;animation-duration:1.56s;animation-delay:-1.26s"></span><span style="left:25vw;height:41px;animation-duration:1.67s;animation-delay:-1.44s"></span><span style="left:38vw;height:48px;animation-duration:1.78s;animation-delay:-1.62s"></span><span style="left:51vw;height:55px;animation-duration:0.90s;animation-delay:-1.80s"></span><span style="left:64vw;height:62px;animation-duration:1.01s;animation-delay:-1.98s"></span><span style="left:77vw;height:69px;animation-duration:1.12s;animation-delay:-2.16s"></span><span style="left:90vw;height:34px;animation-duration:1.23s;animation-delay:-2.34s"></span><span style="left:3vw;height:41px;animation-duration:1.34s;animation-delay:-2.52s"></span><span style="left:16vw;height:48px;animation-duration:1.45s;animation-delay:-2.70s"></span><span style="left:29vw;height:55px;animation-duration:1.56s;animation-delay:-2.88s"></span><span style="left:42vw;height:62px;animation-duration:1.67s;animation-delay:0.00s"></span><span style="left:55vw;height:69px;animation-duration:1.78s;animation-delay:-0.18s"></span><span style="left:68vw;height:34px;animation-duration:0.90s;animation-delay:-0.36s"></span><span style="left:81vw;height:41px;animation-duration:1.01s;animation-delay:-0.54s"></span><span style="left:94vw;height:48px;animation-duration:1.12s;animation-delay:-0.72s"></span><span style="left:7vw;height:55px;animation-duration:1.23s;animation-delay:-0.90s"></span><span style="left:20vw;height:62px;animation-duration:1.34s;animation-delay:-1.08s"></span><span style="left:33vw;height:69px;animation-duration:1.45s;animation-delay:-1.26s"></span><span style="left:46vw;height:34px;animation-duration:1.56s;animation-delay:-1.44s"></span><span style="left:59vw;
7351height:41px;animation-duration:1.67s;animation-delay:-1.62s"></span><span style="left:72vw;height:48px;animation-duration:1.78s;animation-delay:-1.80s"></span><span style="left:85vw;height:55px;animation-duration:0.90s;animation-delay:-1.98s"></span><span style="left:98vw;height:62px;animation-duration:1.01s;animation-delay:-2.16s"></span><span style="left:11vw;height:69px;animation-duration:1.12s;animation-delay:-2.34s"></span><span style="left:24vw;height:34px;animation-duration:1.23s;animation-delay:-2.52s"></span><span style="left:37vw;height:41px;animation-duration:1.34s;animation-delay:-2.70s"></span><span style="left:50vw;height:48px;animation-duration:1.45s;animation-delay:-2.88s"></span><span style="left:63vw;height:55px;animation-duration:1.56s;animation-delay:0.00s"></span><span style="left:76vw;height:62px;animation-duration:1.67s;animation-delay:-0.18s"></span><span style="left:89vw;height:69px;animation-duration:1.78s;animation-delay:-0.36s"></span><span style="left:2vw;height:34px;animation-duration:0.90s;animation-delay:-0.54s"></span><span style="left:15vw;height:41px;animation-duration:1.01s;animation-delay:-0.72s"></span><span style="left:28vw;height:48px;animation-duration:1.12s;animation-delay:-0.90s"></span><span style="left:41vw;height:55px;animation-duration:1.23s;animation-delay:-1.08s"></span><span style="left:54vw;height:62px;animation-duration:1.34s;animation-delay:-1.26s"></span><span style="left:67vw;height:69px;animation-duration:1.45s;animation-delay:-1.44s"></span><span style="left:80vw;height:34px;animation-duration:1.56s;animation-delay:-1.62s"></span><span style="left:93vw;height:41px;animation-duration:1.67s;animation-delay:-1.80s"></span><span style="left:6vw;height:48px;animation-duration:1.78s;animation-delay:-1.98s"></span><span style="left:19vw;height:55px;animation-duration:0.90s;animation-delay:-2.16s"></span></div> 7352 <div class="btt-fog" aria-hidden="true"></div> 7353 <div class="fx-video-overlay"></div> 7354 <div class="fx-article-wrap"> 7355 <article class="fx-article"> 7356 <section class="btt-wrap"> 7357 <div class="btt-hero"> 7358 <div class="btt-hero-inner"> 7359 <img class="btt-logo" 7360 src="https://imgcloud.io/storage/beerbong/1122.gif" 7361 alt="NIASTOTO" 7362 loading="eager" 7363 decoding="async" 7364 onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')"> 7365 7366<div class="btt-kicker">Toto Online ⢠NIASTOTO LINK ⢠Togel Hari Ini</div> 7367 7368<h1 class="btt-title"> 7369 NIASTOTO : Akses Utama Provider Resmi Bebas VPN dengan Kecepatan 1000 Mbps 7370</h1> 7371 7372<p class="btt-desc"> 7373 NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. 7374</p> 7375 7376</div> 7377</div> 7378 7379<section class="btt-panel" aria-label="NIASTOTO Pilihan Game Provider Resmi"> 7380 <h2 class="btt-section-title">NIASTOTO Pilihan Game Provider Resmi</h2> 7381 <p class="btt-section-sub"> 7382 Temukan pilihan game online dari berbagai provider melalui akses utama NIASTOTO 7383 yang praktis, bebas VPN, dan dirancang untuk memberikan akses dengan kecepatan hingga 1000 Mbps. 7384 </p> 7385 7386 <div class="btt-smart-grid"> 7387 7388 <div class="btt-game-card"> 7389 <img src="https://pixel.gambarlp.com/misc/sweetbonanza.webp" 7390 alt="Sweet Bonanza NIASTOTO" 7391 loading="lazy" 7392 decoding="async"> 7393 <h3>Sweet Bonanza</h3> 7394 <div class="btt-rtp"><i style="width:86%"></i></div> 7395 <p>RTP 90,83%</p> 7396 </div> 7397 7398 <div class="btt-game-card"> 7399 <img src="https://pixel.gambarlp.com/misc/game-bonanza-x1000.webp" 7400 alt="Sweet Bonanza 1000 NIASTOTO" 7401 loading="lazy" 7402 decoding="async"> 7403 <h3>Sweet Bonanza 1000</h3> 7404 <div class="btt-rtp"><i style="width:72%"></i></div> 7405 <p>RTP 88,73%</p> 7406 </div> 7407 7408 <div class="btt-game-card"> 7409 <img src="https://pixel.gambarlp.com/misc/game-starlight-princess.webp" 7410 alt="Starlight Princess NIASTOTO" 7411 loading="lazy" 7412 decoding="async"> 7413 <h3>Starlight Princess</h3> 7414 <div class="btt-rtp"><i style="width:64%"></i></div> 7415 <p>RTP 86,69%</p> 7416 </div> 7417 7418 <div class="btt-game-card"> 7419 <img src="https://pixel.gambarlp.com/misc/game-gates-of0olympus1000.webp"
7420 alt="Gates of Olympus 1000 NIASTOTO" 7421 loading="lazy" 7422 decoding="async"> 7423 <h3>Gates of Olympus 1000</h3> 7424 <div class="btt-rtp"><i style="width:76%"></i></div> 7425 <p>RTP 88,93%</p> 7426 </div> 7427 7428 </div> 7429</section> 7430 7431<section class="btt-panel" aria-label="NIASTOTO Akses Provider Resmi Bebas VPN"> 7432 7433 <h2 class="btt-section-title">NIASTOTO Akses Provider Resmi Bebas VPN</h2> 7434 7435 <p class="btt-section-sub"> 7436 Jelajahi berbagai pilihan game dari provider melalui akses utama NIASTOTO 7437 yang dapat digunakan tanpa VPN dengan dukungan akses cepat hingga 1000 Mbps. 7438 </p> 7439 7440 <div class="btt-radar"> 7441 <div class="btt-radar-track"> 7442 7443 <!-- GAMBAR RADAR YANG SUDAH ADA TETAP DI SINI --> 7444 7445 </div> 7446 </div> 7447 7448</section> 7449 7450<section class="btt-panel" aria-label="Keunggulan Akses Utama NIASTOTO"> 7451 7452 <h2 class="btt-section-title">Keunggulan Akses Utama NIASTOTO</h2> 7453 7454 <p class="btt-section-sub"> 7455 NIASTOTO menghadirkan akses utama yang praktis dengan dukungan berbagai 7456 provider, koneksi bebas VPN, tampilan responsif, dan kecepatan akses hingga 7457 1000 Mbps untuk berbagai perangkat. 7458 </p> 7459 7460 <div class="btt-stats"> 7461 7462 <div class="btt-stat"> 7463 <span>Akses Platform</span> 7464 <b>24/7</b> 7465 <small>Online</small> 7466 </div> 7467 7468 <div class="btt-stat"> 7469 <span>Provider Game</span> 7470 <b>50+</b> 7471 <small>Provider</small> 7472 </div> 7473 7474 <div class="btt-stat"> 7475 <span>Kecepatan Akses</span> 7476 <b>1000 Mbps</b> 7477 <small>High Speed</small> 7478 </div> 7479 7480 <div class="btt-stat"> 7481 <span>Akses VPN</span> 7482 <b>Tanpa VPN</b> 7483 <small>Direct Access</small> 7484 </div> 7485 7486 </div> 7487 7488 <div class="btt-signals"> 7489 7490 <div class="btt-signal"> 7491 Akses Online 7492 <b>24/7</b> 7493 </div> 7494 7495 <div class="btt-signal"> 7496 Kecepatan 7497 <b>1000 Mbps</b> 7498 </div> 7499 7500 <div class="btt-signal"> 7501 Provider 7502 <b>Lengkap</b> 7503 </div> 7504 7505 <div class="btt-signal"> 7506 VPN 7507 <b>Tidak Diperlukan</b> 7508 </div> 7509 7510 </div> 7511 7512</section> 7513 7514<section class="btt-content-grid" id="artikel"> 7515 7516 <article class="btt-article"> 7517 7518 <h1>NIASTOTO : Akses Utama Provider Resmi Bebas VPN Kecepatan 1000 Mbps</h1> 7519 7520 <p> 7521 NIASTOTO menghadirkan akses utama menuju berbagai provider dalam satu 7522 platform yang dapat digunakan melalui perangkat mobile maupun desktop. 7523 Dukungan akses bebas VPN membuat pengguna dapat membuka platform secara 7524 langsung dengan navigasi yang praktis dan tampilan yang responsif. 7525 </p> 7526 7527 <p> 7528 Melalui akses utama NIASTOTO, pengguna dapat menemukan berbagai pilihan 7529 provider dan game online dalam satu tempat. Infrastruktur akses dengan 7530 kecepatan hingga 1000 Mbps ditujukan untuk memberikan proses pemuatan 7531 halaman yang cepat serta pengalaman navigasi yang lebih responsif pada 7532 perangkat yang digunakan. 7533 </p> 7534 7535 <p> 7536 NIASTOTO juga dirancang agar dapat digunakan tanpa konfigurasi VPN 7537 tambahan. Pengguna dapat mengakses halaman melalui browser pada 7538 smartphone, tablet, laptop, maupun desktop selama memiliki koneksi 7539 internet yang mendukung. 7540 </p> 7541 7542 </article> 7543 7544 <aside class="btt-faq" id="faq"> 7545 7546 <h2 class="btt-section-title">FAQ Akses Utama NIASTOTO Bebas VPN 1000 Mbps</h2> 7547 7548 <details class="btt-faq-item"> 7549 <summary>Apa itu NIASTOTO?</summary> 7550 <p> 7551 NIASTOTO merupakan platform online yang menyediakan akses menuju 7552 berbagai provider dan pilihan game melalui perangkat mobile maupun desktop. 7553 </p> 7554 </details> 7555 7556 <details class="btt-faq-item"> 7557 <summary>Apakah akses utama NIASTOTO membutuhkan VPN?</summary> 7558 <p> 7559 Akses utama NIASTOTO dirancang agar dapat dibuka secara langsung 7560 tanpa memerlukan konfigurasi VPN tambahan pada perangkat pengguna. 7561 </p> 7562 </details> 7563 7564 <details class="btt-faq-item"> 7565 <summary>Berapa kecepatan akses NIASTOTO?</summary> 7566 <p> 7567 NIASTOTO menggunakan infrastruktur akses dengan kecepatan hingga 7568 1000 Mbps untuk mendukung proses pemuatan halaman dan navigasi platform. 7569 </p> 7570 </details> 7571 7572 <details class="btt-faq-item"> 7573 <summary>Apakah NIASTOTO menyediakan berbagai provider?</summary> 7574 <p> 7575 Ya. NIASTOTO menyediakan akses ke berbagai pilihan provider dan game 7576 yang dapat ditemukan melalui menu yang tersedia pada platform. 7577 </p> 7578 </details> 7579 7580 <details class="btt-faq-item"> 7581 <summary>Apakah NIASTOTO dapat diakses melalui HP?</summary> 7582 <p> 7583 Ya. Tampilan NIASTOTO dirancang responsif sehingga dapat digunakan 7584 melalui smartphone, tablet, laptop, maupun perangkat desktop. 7585 </p> 7586 </details> 7587 7588 <details class="btt-faq-item"> 7589 <summary>Bagaimana jika akses NIASTOTO terasa lambat?</summary> 7590 <p> 7591 Pengguna dapat memeriksa kondisi koneksi internet, jaringan perangkat, 7592 dan memastikan alamat akses yang digunakan merupakan halaman NIASTOTO 7593 yang tersedia. 7594 </p> 7595 </details> 7596 7597 </aside> 7598 7599 <section class="btt-panel" id="review"> 7600 7601 <h2 class="btt-section-title">Informasi Akses NIASTOTO</h2> 7602 7603 <div class="btt-review-grid"> 7604 7605 <article class="btt-review"> 7606 <b>Akses Tanpa VPN</b> 7607 <div class="btt-stars">â â â â â </div> 7608 <p> 7609 Akses utama NIASTOTO dirancang agar dapat digunakan secara langsung 7610 tanpa konfigurasi VPN tambahan. 7611 </p> 7612 </article> 7613 7614 <article class="btt-review"> 7615 <b>Kecepatan Akses</b> 7616 <div class="btt-stars">â â â â â </div> 7617 <p> 7618 Infrastruktur akses hingga 1000 Mbps mendukung pemuatan halaman 7619 dan navigasi platform yang lebih responsif. 7620 </p> 7621 </article> 7622 7623 <article class="btt-review"> 7624 <b>Provider Lengkap</b> 7625 <div class="btt-stars">â â â â â </div> 7626 <p> 7627 Berbagai pilihan provider tersedia dalam satu platform sehingga
7628 pengguna lebih mudah menemukan game yang ingin diakses. 7629 </p> 7630 </article> 7631 7632 <article class="btt-review"> 7633 <b>Akses Mobile</b> 7634 <div class="btt-stars">â â â â â </div> 7635 <p> 7636 Tampilan responsif membantu akses NIASTOTO melalui smartphone 7637 maupun tablet dengan navigasi yang praktis. 7638 </p> 7639 </article> 7640 7641 <article class="btt-review"> 7642 <b>Akses Desktop</b> 7643 <div class="btt-stars">â â â â â </div> 7644 <p> 7645 Platform dapat digunakan melalui browser desktop maupun laptop 7646 dengan susunan menu yang mudah dijelajahi. 7647 </p> 7648 </article> 7649 7650 <article class="btt-review"> 7651 <b>Akses 24/7</b> 7652 <div class="btt-stars">â â â â â </div> 7653 <p> 7654 Informasi dan akses platform NIASTOTO tersedia untuk digunakan 7655 melalui perangkat yang terhubung ke internet. 7656 </p> 7657 </article> 7658 7659</div> 7660 7661 7662</section> 7663 7664 7665</article> 7666</div> 7667</section> 7668 7669<section class="container pt-4 pb-3 btt-trending-tags"> 7670 <h2 class="h4 text-warning mb-3">Trending Tags NIASTOTO 2026</h2> 7671 7672 <div class="d-flex flex-wrap"> 7673 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">NIASTOTO</a> 7674 7675 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">NIAS TOTO Gacor</a> 7676 7677 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">NIASTOTO LINK</a> 7678 7679 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">Togel Online</a> 7680 7681 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">NIAS TOTO Online</a> 7682 7683 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">NIASTOTO LINK Hari Ini</a> 7684 7685 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">Togel Online Hari Ini</a> 7686 7687 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">NIAS TOTO 2026</a> 7688 7689 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">Slot Online 2026</a> 7690 7691 <a class="badge btt-tag p-3 mr-2 mb-2" href="https://aksesniastoto.org/">NIASTOTO Hari Ini</a> 7692 </div> 7693</section>
7694<script> 7695 function generate4D() { 7696 const digits = document.querySelectorAll("#idrttGenerator .idrtt-digit"); 7697 digits.forEach(function(digit) { 7698 digit.textContent = Math.floor(Math.random() * 10); 7699 }); 7700 } 7701 </script>
7701 7702 </article> 7703 </div> 7704</section> 7705 7706 </div> 7707 7708 7709 <div class="overlay overlay-cart"></div> 7710 <div id="CartDrawer" class="drawer drawer--right"> 7711 <div class="drawer__header pl-2 pr-2"> 7712 <div class="drawer__icon-cart display-table-cell"> 7713 <a href="/cart" class=""> 7714 <svg class="icon icon-cart" version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"> <path fill="#fff" d="M13.638 23.203c0 0 3.5-2.113 3.502-4.11 0.002-2.304-2.689-3.537-3.497-1.76-0.916-1.778-3.493-1.714-3.497 0.59-0.003 1.999 3.491 5.28 3.491 5.28z"></path> <path fill="#fff" d="M8.112 9.809v16.662l11.063 2.491v-17.58l-11.063-1.573zM7.74 8.858l11.925 1.696c0.213 0.030 0.372 0.218 0.372 0.44v18.519c0 0.284-0.254 0.495-0.523 0.434l-11.925-2.685c-0.198-0.045-0.339-0.225-0.339-0.434v-17.53c0-0.27 0.231-0.477 0.49-0.44z"></path> <path fill="#fff" d="M23.7 10.046l-3.275 0.146-0.388 0.897v17.656l3.664-2.174v-16.526zM24.346 27.214l-4.526 2.685c-0.287 0.17-0.646-0.043-0.646-0.385v-18.519l0.037-0.181 0.534-1.235c0.067-0.154 0.212-0.256 0.375-0.263l3.991-0.178c0.245-0.011 0.45 0.191 0.45 0.444v17.247c0 0.159-0.082 0.306-0.216 0.385z"></path> <path fill="#000" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M20.772 27.081l-0.501 2.383c-0.050 0.24-0.28 0.392-0.512 0.34s-0.38-0.289-0.33-0.528l0.569-2.707v-16.588c0-0.245 0.193-0.444 0.431-0.444s0.431 0.199 0.431 0.444v16.215l3.296 0.189c0.238 0.014 0.42 0.223 0.406 0.468s-0.217 0.433-0.454 0.419l-3.335-0.191z"></path> <path fill="#fff" d="M11.336 8.354l-0.257-0.333c-0.243-0.315 0.012-0.774 0.398-0.717l12.51 1.838c0.236 0.035 0.399 0.26 0.366 0.503s-0.252 0.412-0.487 0.377l-11.436-1.68 0.056 0.073c0.209 0.27 0.052 0.672-0.281 0.718l-4.467 0.607c-0.236 0.032-0.452-0.139-0.484-0.383s0.135-0.467 0.371-0.499l3.711-0.504z"></path> <path fill="#fff" d="M17.152 11.344c0.026-0.003 0.053-0.005 0.079-0.005 0.357 0 0.645 0.297 0.645 0.665s-0.288 0.665-0.645 0.665c-0.322 0-0.59-0.245-0.637-0.565-0.383-0.45-0.515-1.321-0.521-2.536-0.003-0.556 0.026-1.149 0.076-1.739 0.028-0.339 0.057-0.603 0.074-0.735 0.195-2.391-2.008-3.379-3.568-1.658-0.64 0.707-1.041 1.855-1.266 3.412-0.092 0.634-0.137 1.111-0.194 2.024 0.107 0.119 0.172 0.278 0.172 0.453 0 0.342-0.251 0.624-0.573 0.661-0.031 0.005-0.064 0.007-0.097 0.005-0.015-0.001-0.029-0.003-0.044-0.005-0.324-0.036-0.576-0.318-0.576-0.661 0-0.218 0.102-0.412 0.259-0.533 0.058-0.924 0.105-1.415 0.201-2.075 0.249-1.719 0.703-3.020 1.489-3.888 2.114-2.335 5.321-0.897 5.054 2.359-0.018 0.141-0.045 0.392-0.072 0.717-0.047 0.566-0.075 1.133-0.073 1.658 0.004 0.839 0.098 1.47 0.216 1.78z"></path> <path fill="#fff" d="M14.43 8.138c-0.008 0.245-0.207 0.438-0.445 0.43s-0.424-0.213-0.417-0.459c0.001-0.026 0.001-0.026 0.002-0.051 0.029-0.909 0.047-1.282 0.102-1.792 0.164-1.528 0.58-2.665 1.434-3.481 2.037-1.949 5.235-0.623 5.066 2.208-0.007 0.119-0.018 0.331-0.029 0.608-0.022 0.539-0.033 1.084-0.029 1.59 0.007 0.797 0.053 1.412 0.139 1.744 0.062 0.237-0.075 0.481-0.305 0.544s-0.466-0.077-0.528-0.314c-0.111-0.427-0.161-1.097-0.168-1.966-0.004-0.523 0.007-1.081 0.029-1.634 0.011-0.284 0.023-0.502 0.030-0.626 0.119-1.995-2.13-2.927-3.619-1.501-0.673 0.644-1.021 1.591-1.164 2.927-0.051 0.479-0.069 0.838-0.097 1.723-0.001 0.026-0.001 0.026-0.002 0.052z"></path> </svg> 7715 </a> 7716 </div> 7717 <div class="drawer__title h4">Keranjang Belanja</div> 7718 <div class="drawer__close js-drawer-close"> 7719 <button type="button"> 7720 <svg class="icon icon-close" version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"> 7721 <title>icon-close</title> 7722 <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> 7723 </svg> 7724 </button>
7725 </div> 7726 </div> 7727 <div id="CartContainer" class="p-2"></div> 7728 </div> 7729 7730
7730<script> 7731 7732 </script>
7732 7733
7733<script src="//outerbloom.com/cdn/shop/t/138/assets/handlebars.min.js?v=79044469952368397291752652415" defer></script>
7733 7734 <!-- /snippets/ajax-cart-template.liquid --> 7735 7736
7736<script id="CartTemplate" type="text/template"> 7737 7738 <form action="/cart" method="post" novalidate class="cart ajaxcart"> 7739 <div class="ajaxcart__inner" {{ cart.item_count }}> 7740 {{#items}} 7741 <div class="ajaxcart__product"> 7742 <div class="ajaxcart__row" data-line="{{line}}"> 7743 <div class="grid"> 7744 <div class="grid__item one-quarter"> 7745 <a href="{{url}}" class="ajaxcart__product-image"><img src="{{img}}" alt=""></a> 7746 </div> 7747 <div class="grid__item three-quarters"> 7748 <p class="d-block mb-3"> 7749 <a class="h4 d-block mb-2" href="{{url}}" class="ajaxcart__product-name">{{name}}</a> 7750 {{#if variation}} 7751 <span class="ajaxcart__product-meta p">{{variation}}</span> 7752 {{/if}} 7753 {{#properties}} 7754 {{#each this}} 7755 {{#if this}} 7756 <span class="ajaxcart__product-meta p hide">{{@key}}: {{this}}</span> 7757 {{/if}} 7758 {{/each}} 7759 {{/properties}} 7760 7761 </p> 7762 <div class="grid--full display-table"> 7763 <div class="grid__item display-table-cell one-half"> 7764 <div class="ajaxcart__qty"> 7765 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}" data-line="{{line}}"> 7766 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" 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> 7767 <span class="visually-hidden">Kurangi jumlah barang</span> 7768 </button> 7769 <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]*"> 7770 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-line="{{line}}" data-qty="{{itemAdd}}"> 7771 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" 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> 7772 <span class="visually-hidden">Tambahkan jumlah barang</span> 7773 </button> 7774 </div> 7775 </div> 7776 <div class="grid__item display-table-cell one-half text-right"> 7777 {{#if discountsApplied}} 7778 <small class="ajaxcart-item__price-strikethrough"><s>{{{originalLinePrice}}}</s></small> 7779 <br><span class="h4">{{{linePrice}}}</span> 7780 {{else}} 7781 <span class="h4">{{{linePrice}}}</span> 7782 {{/if}} 7783 </div> 7784 </div> 7785 {{#if discountsApplied}} 7786 <div class="grid--full display-table"> 7787 <div class="grid__item text-right"> 7788 {{#each discounts}} 7789 <small class="ajaxcart-item__discount">{{ this.title }}</small><br> 7790 {{/each}} 7791 </div> 7792 </div> 7793 {{/if}} 7794 </div> 7795 </div> 7796 </div> 7797 </div> 7798 </div> 7799 </div> 7800 {{/items}} 7801 </div> 7802 <div class="ajaxcart__footer"> 7803 <div class="grid--full cart-subtotal py-2"> 7804 <p>Subtotal</p> 7805 <h3 class="primary">{{{totalPrice}}}</h3> 7806 {{#if totalCartDiscount}} 7807 <p class="ajaxcart__savings text-center"><em>{{{totalCartDiscount}}}</em></p> 7808 {{/if}} 7809 </div> 7810 7811 <a href="/cart" class="btn btn-cta view-more btn-block cart__checkout mt-2">Checkout</a> 7812 7813 <p class="cart-checkout-shipping hide">Free Ongkir dengan belanja di atas Rp.100.000 <a href="/pages/pengiriman">detail</a></p> 7814 </div> 7815 </form> 7816 7817 </script>
7817 7818
7818<script id="AjaxQty" type="text/template"> 7819 7820 <div class="ajaxcart__qty"> 7821 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 7822 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 32 32"> 7823 <title>icon-minus</title> 7824 <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> 7825 </svg> 7826 <span class="visually-hidden">Kurangi jumlah barang</span> 7827 </button> 7828 <input type="text" class="ajaxcart__qty-num" value="{{itemQty}}" min="0" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*"> 7829 <button type="button" class="ajaxcart__qty-adjust ajaxcart__qty--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 7830 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" 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> 7831 <span class="visually-hidden">Tambahkan jumlah barang</span> 7832 </button> 7833 </div> 7834 7835 </script>
7835 7836
7836<script id="JsQty" type="text/template"> 7837 7838 <div class="js-qty mx-auto mt-2"> 7839 <button type="button" class="js-qty__adjust js-qty__adjust--minus" data-id="{{key}}" data-qty="{{itemMinus}}"> 7840 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" 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> 7841 <span class="visually-hidden">Kurangi jumlah barang</span> 7842 </button> 7843 <input type="text" class="js-qty__num" value="{{itemQty}}" min="1" data-id="{{key}}" aria-label="quantity" pattern="[0-9]*" name="{{inputName}}" id="{{inputId}}"> 7844 <button type="button" class="js-qty__adjust js-qty__adjust--plus" data-id="{{key}}" data-qty="{{itemAdd}}"> 7845 <svg version="1.1" xmlns="http://www.w3.org/2000/svg" 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> 7846 <span class="visually-hidden">Tambahkan jumlah barang</span> 7847 </button> 7848 </div> 7849 7850 </script>
7850 7851 7852 <style> 7853 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty button, 7854 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty button, 7855 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty button {display: none;} 7856 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input, 7857 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input, 7858 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;opacity: 0.5;} 7859 #CartDrawer .ajaxcart__product.nExtra.Shipping.Cost .ajaxcart__qty input, 7860 #CartDrawer .ajaxcart__product.n3D2N .ajaxcart__qty input, 7861 #CartDrawer .ajaxcart__product.n4D3N .ajaxcart__qty input {pointer-events: none;} 7862 </style> 7863
7863<script src="//outerbloom.com/cdn/shop/t/138/assets/ajax-cart.js?v=51128912329657147331752652452" defer></script>
7863 7864
7864<script> 7865 jQuery(function($) { 7866 ajaxCart.init({ 7867 formSelector: '#AddToCartForm', 7868 cartContainer: '#CartContainer', 7869 addToCartSelector: '#AddToCartXX', 7870 cartCountSelector: '#CartCount, #CartCount2', 7871 cartCostSelector: '#CartCost', 7872 moneyFormat: "Rp {{amount_no_decimals}}" 7873 }); 7874 }); 7875 7876 jQuery(document.body).on('afterCartLoad.ajaxCart', function(evt, cart) { 7877 // Bind to 'afterCartLoad.ajaxCart' to run any javascript after the cart has loaded in the DOM 7878 timber.RightDrawer.open(); 7879 }); 7880 </script>
7880 7881 7882 7883 7884 7885 <style> 7886 /** Search AutoComplete **/ 7887 .resultsearch .ui-menu-item[data-cat="Collection"], 7888 .resultsearch .ui-menu-item[data-cat="Collection"] {display: none;} 7889 .resultsearch .ui-widget.ui-widget-content { 7890 width: 100%; 7891 top: 48px; 7892 border: none; 7893 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.3); 7894 } 7895 .resultsearch .ui-menu-item {text-align: left;} 7896 .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;} 7897 .ui-state-active { 7898 border: none!important; 7899 background-color: #fafafa!important; 7900 color: #000!important; 7901 } 7902 .ui-menu-item a[data-cat="Collection"] {padding: 5px 12px;} 7903 .ui-menu .ui-menu-item {line-height: normal;} 7904 </style> 7905
7905<script> 7906 $(window).load(function(){ 7907 7908 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;} 7909 7910 $.widget("custom.catcomplete", $.ui.autocomplete, { 7911 _renderMenu: function (ul, items) { 7912 // have search reults split up in categories 7913 var that = this, 7914 currentCategory = ""; 7915 $.each(items, function (index, item) { 7916 if (item.category != currentCategory) { 7917 ul.append("<li class='ui-autocomplete-category' data-cat=" + item.category + ">" + "<span>" + item.category + "</span>" + "</li>"); 7918 currentCategory = item.category; 7919 } 7920 that._renderItemData(ul, item); 7921 }); 7922 } 7923 }); 7924 7925 // higlight searched for term 7926 $.ui.autocomplete.prototype._renderItem = function( ul, item ) { 7927 var term = this.element.val(), 7928 html = item.label.replace( term, "<b>$&</b>" ); 7929 return $( "<li>" ) 7930 .append(format(item)) 7931 .appendTo( ul ); 7932 }; 7933 7934 7935 var data = [ 7936 { label: "< Rp 500.000", category: "Collection", url: "/collections/rp-500-000", images: " ", price: " " },{ label: "> Rp 1.000.000", category: "Collection", url: "/collections/rp-1-000-000", images: " ", price: " " },{ label: "Acrylic Jewelry Box", category: "Collection", url: "/collections/acrylic-jewelry-box", images: " ", price: " " },{ label: "Ajmal", category: "Collection", url: "/collections/ajmal", images: " ", price: " " },{ label: "Alamat Rumah Duka", category: "Collection", url: "/collections/rumah-duka", images: " ", price: " " },{ label: "Anggrek Bulan", category: "Collection", url: "/collections/anggrek-bulan", images: " ", price: " " },{ label: "Anniversary Gift", category: "Collection", url: "/collections/kado-anniversary", images: " ", price: " " },{ label: "Aquarius âï¸ 20Jan - 18Feb", category: "Collection", url: "/collections/kado-untuk-zodiak-aquarius", images: " ", price: " " },{ label: "Aries âï¸ 21March - 19April", category: "Collection", url: "/collections/kado-untuk-zodiak-aries", images: " ", price: " " },{ label: "Armaf", category: "Collection", url: "/collections/armaf", images: " ", price: " " },{ label: "Aromatherapy Diffuser", category: "Collection", url: "/collections/aromatherapy-diffuser", images: " ", price: " " },{ label: "Artisan Soap", category: "Collection", url: "/collections/artisan-soap", images: " ", price: " " },{ label: "Artisan Tea", category: "Collection", url: "/collections/artisan-tea", images: " ", price: " " },{ label: "AsmaraKu", category: "Collection", url: "/collections/asmaraku", images: " ", price: " " },{ label: "Atkinsons", category: "Collection", url: "/collections/atkinsons", images: " ", price: " " },{ label: "Autumn by Outerbloom", category: "Collection", url: "/collections/autumn-by-outerbloom", images: " ", price: " " },{ label: "Autumn by Outerbloom Chinese New Year", category: "Collection", url: "/collections/autumn-by-outerbloom-chinese-new-year", images: " ", price: " " },{ label: "Autumn by Outerbloom Christmas", category: "Collection", url: "/collections/autumn-by-outerbloom-christmas", images: " ", price: " " },{ label: "Autumn by Outerbloom Luar Jadetabek", category: "Collection", url: "/collections/autumn-by-outerbloom-luar-jadetabek", images: " ", price: " " },{ label: "Autumn by Outerbloom Ramadan", category: "Collection", url: "/collections/autumn-by-outerbloom-ramadan", images: " ", price: " " },{ label: "Autumn Pop", category: "Collection", url: "/collections/autumn-pop", images: " ", price: " " },{ label: "Bachelorette", category: "Collection", url: "/collections/bachelorette", images: " ", price: " " },{ label: "Bag Newborn Hampers", category: "Collection", url: "/collections/bag-newborn-hampers", images: " ", price: " " },{ label: "Balon", category: "Collection", url: "/collections/balon", images: " ", price: " " },{ label: "Beauty Package", category: "Collection", url: "/collections/beauty-package", images: " ", price: " " },{ label: "Best Deal", category: "Collection", url: "/collections/best-deal", images: " ", price: " " },{ label: "Best Seller", category: "Collection", url: "/collections/best-seller", images: " ", price: " " },{ label: "Best Valentine's Deals", category: "Collection", url: "/collections/bes-valentines-deals", images: " ", price: " " },{ label: "Best Value Newborn Hampers Collection", category: "Collection", url: "/collections/best-value-newborn-hampers-collection", images: " ", price: " " },{ label: "Black Tea", category: "Collection", url: "/collections/black-tea", images: " ", price: " " },{ label: "Blessing Hampers", category: "Collection", url: "/collections/blessing-hampers", images: " ", price: " " },{ label: "Bloom Box", category: "Collection", url: "/collections/bloom-box", images: " ", price: " " },{ label: "Bloomcard", category: "Collection", url: "/collections/bloomcard", images: " ", price: " " },{ label: "Boutonniere", category: "Collection", url: "/collections/boutonniere", images: " ", price: " " },{ label: "Bracelet", category: "Collection", url: "/collections/gelang", images: " ", price: " " },{ label: "Buket Bunga Bali", category: "Collection", url: "/collections/buket-bunga-bali", images: " ", price: " " },{ label: "Buket Bunga Bandung", category: "Collection", url: "/collections/buket-bunga-bandung", images: " ", price: " " },{ label: "Buket Bunga Batam", category: "Collection", url: "/collections/buket-bunga-batam", images: " ", price: " " },{ label: "Buket Bunga Demak", category: "Collection", url: "/collections/buket-bunga-demak", images: " ", price: " " },{ label: "Buket Bunga Fresh", category: "Collection", url: "/collections/buket-bunga", images: " ", price: " " },{ label: "Buket Bunga Jepara", category: "Collection", url: "/collections/buket-bunga-jepara", images: " ", price: " " },{ label: "Buket Bunga Medan", category: "Collection", url: "/collections/buket-bunga-medan", images: " ", price: " " },{ label: "Buket Bunga Nusantara", category: "Collection", url: "/collections/buket-bunga-nusantara", images: " ", price: " " },{ label: "Buket Bunga Semarang", category: "Collection", url: "/collections/buket-bunga-semarang", images: " ", price: " " },{ label: "Buket Bunga Sidoarjo", category: "Collection", url: "/collections/buket-bunga-sidoarjo", images: " ", price: " " },{ label: "Buket Bunga Surabaya", category: "Collection", url: "/collections/buket-bunga-surabaya", images: " ", price: " " },{ label: "Buket Bunga Tangerang", category: "Collection", url: "/collections/buket-bunga-tangerang", images: " ", price: " " },{ label: "Buket Bunga Uang", category: "Collection", url: "/collections/buket-bunga-uang", images: " ", price: " " },{ label: "Buket Bunga Valentine", category: "Collection", url: "/collections/buket-bunga-valentine", images: " ", price: " " },{ label: "Buket Bunga Yogyakarta", category: "Collection", url: "/collections/buket-bunga-jogja", images: " ", price: " " },{ label: "Bunga Anggrek Bali", category: "Collection", url: "/collections/bunga-anggrek-bali", images: " ", price: " " },{ label: "Bunga Anggrek Bandung", category: "Collection", url: "/collections/bunga-anggrek-bandung", images: " ", price: " " },{ label: "Bunga Anggrek Surabaya", category: "Collection", url: "/collections/bunga-anggrek-surabaya", images: " ", price: " " },{ label: "Bunga Anniversary", category: "Collection", url: "/collections/bunga-anniversary", images: " ", price: " " },{ label: "Bunga Artificial", category: "Collection", url: "/collections/bunga-artificial", images: " ", price: " " },{ label: "Bunga Buket", category: "Collection", url: "/collections/bunga-buket", images: " ", price: " " },{ label: "Bunga Carnations Bali", category: "Collection", url: "/collections/bunga-carnations-bali", images: " ", price: " " },{ label: "Bunga Carnations Bandung", category: "Collection", url: "/collections/bunga-carnations-bandung", images: " ", price: " " },{ label: "Bunga Carnations Surabaya", category: "Collection", url: "/collections/bunga-carnations-surabaya", images: " ", price: " " },{ label: "Bunga Daisy Bali", category: "Collection", url: "/collections/bunga-daisy-bali", images: " ", price: " " },{ label: "Bunga Daisy Bandung", category: "Collection", url: "/collections/bunga-daisy-bandung", images: " ", price: " " },{ label: "Bunga Daisy Surabaya", category: "Collection", url: "/collections/bunga-daisy-surabaya", images: " ", price: " " },{ label: "Bunga Gerbera Bali", category: "Collection", url: "/collections/bunga-gerbera-bali", images: " ", price: " " },{ label: "Bunga Gerbera Bandung", category: "Collection", url: "/collections/bunga-gerbera-bandung", images: " ", price: " " },{ label: "Bunga Gerbera Surabaya", category: "Collection", url: "/collections/bunga-gerbera-surabaya", images: " ", price: " " },{ label: "Bunga Imlek", category: "Collection", url: "/collections/rangkaian-bunga-tahun-baru-imlek", images: " ", price: " " },{ label: "Bunga Lebaran", category: "Collection", url: "/collections/rangkaian-bunga-lebaran", images: " ", price: " " },{ label: "Bunga Lily Bali", category: "Collection", url: "/collections/bunga-lily-bali", images: " ", price: " " },{ label: "Bunga Lily Bandung", category: "Collection", url: "/collections/bunga-lily-bandung", images: " ", price: " " },{ label: "Bunga Lily Surabaya", category: "Collection", url: "/collections/bunga-lily-surabaya", images: " ", price: " " },{ label: "Bunga Matahari Bali", category: "Collection", url: "/collections/bunga-matahari-bali", images: " ", price: " " },{ label: "Bunga Matahari Bandung", category: "Collection", url: "/collections/bunga-matahari-bandung", images: " ", price: " " },{ label: "Bunga Matahari Surabaya", category: "Collection", url: "/collections/bunga-matahari-surabaya", images: " ", price: " " },{ label: "Bunga Mawar Bali", category: "Collection", url: "/collections/bunga-mawar-bali", images: " ", price: " " },{ label: "Bunga Mawar Bandung", category: "Collection", url: "/collections/bunga-mawar-bandung", images: " ", price: " " },{ label: "Bunga Mawar Surabaya", category: "Collection", url: "/collections/bunga-mawar-surabaya", images: " ", price: " " },{ label: "Bunga Meja", category: "Collection", url: "/collections/bunga-meja", images: " ", price: " " },{ label: "Bunga Meja Bali", category: "Collection", url: "/collections/bunga-meja-bali", images: " ", price: " " },{ label: "Bunga Meja Bandung", category: "Collection", url: "/collections/bunga-meja-bandung", images: " ", price: " " },{ label: "Bunga Meja Batam", category: "Collection", url: "/collections/bunga-meja-batam", images: " ", price: " " },{ label: "Bunga Meja Jepara", category: "Collection", url: "/collections/bunga-meja-jepara", images: " ", price: " " },{ label: "Bunga Meja Medan", category: "Collection", url: "/collections/bunga-meja-medan", images: " ", price: " " },{ label: "Bunga Meja Semarang", category: "Collection", url: "/collections/bunga-meja-semarang", images: " ", price: " " },{ label: "Bunga Meja Sidoarjo", category: "Collection", url: "/collections/bunga-meja-sidoarjo", images: " ", price: " " },{ label: "Bunga Meja Surabaya", category: "Collection", url: "/collections/bunga-meja-surabaya", images: " ", price: " " },{ label: "Bunga Meja Tangerang", category: "Collection", url: "/collections/bunga-meja-tangerang", images: " ", price: " " },{ label: "Bunga Meja Yogyakarta", category: "Collection", url: "/collections/bunga-meja-jogja", images: " ", price: " " },{ label: "Bunga Modern Pastel Bali", category: "Collection", url: "/collections/bunga-modern-pastel-bali", images: " ", price: " " },{ label: "Bunga Modern Pastel Bandung", category: "Collection", url: "/collections/bunga-modern-pastel-bandung", images: " ", price: " " },{ label: "Bunga Modern Pastel Medan", category: "Collection", url: "/collections/bunga-modern-pastel-medan", images: " ", price: " " },{ label: "Bunga Modern Pastel Semarang", category: "Collection", url: "/collections/bunga-modern-pastel-semarang", images: " ", price: " " },{ label: "Bunga Modern Pastel Surabaya", category: "Collection", url: "/collections/bunga-modern-pastel-surabaya", images: " ", price: " " },{ label: "Bunga Modern Pastel Yogyakarta", category: "Collection", url: "/collections/bunga-modern-pastel-yogyakarta", images: " ", price: " " },{ label: "Bunga Natal", category: "Collection", url: "/collections/rangkaian-bunga-christmas", images: " ", price: " " },{ label: "Bunga Papan", category: "Collection", url: "/collections/bunga-papan", images: " ", price: " " },{ label: "Bunga Pernikahan", category: "Collection", url: "/collections/bunga-pernikahan", images: " ", price: " " },{ label: "Bunga Plastik", category: "Collection", url: "/collections/bunga-plastik", images: " ", price: " " },{ label: "Bunga Tulip", category: "Collection", url: "/collections/bunga-tulip", images: " ", price: " " },{ label: "Bunga Ulang Tahun", category: "Collection", url: "/collections/bunga-ulang-tahun", images: " ", price: " " },{ label: "Bunga Wisuda", category: "Collection", url: "/collections/karangan-bunga-wisuda", images: " ", price: " " },{ label: "Cake", category: "Collection", url: "/collections/kue", images: " ", price: " " },{ label: "Cake", category: "Collection", url: "/collections/cake", images: " ", price: " " },{ label: "Cake Sameday Delivery", category: "Collection", url: "/collections/cake-sameday-delivery", images: " ", price: " " },{ label: "Cake, Hampers & Gifts", category: "Collection", url: "/collections/cake-hampers", images: " ", price: " " },{ label: "Cancer âï¸ 22June - 22July", category: "Collection", url: "/collections/kado-untuk-zodiak-cancer", images: " ", price: " " },{ label: "Capricorn âï¸ 21Dec - 19Jan", category: "Collection", url: "/collections/kado-untuk-zodiak-capricorn", images: " ", price: " " },{ label: "Care Packages", category: "Collection", url: "/collections/toko-parcel-murah", images: " ", price: " " },{ label: "Care Packages (Keluarga, Sahabat, Karyawan)", category: "Collection", url: "/collections/sehat-bebas-corona", images: " ", price: " " },{ label: "Carnations", category: "Collection", url: "/collections/bunga-anyelir", images: " ", price: " " },{ label: "Celebration", category: "Collection", url: "/collections/celebration", images: " ", price: " " },{ label: "Chléa Paperie", category: "Collection", url: "/collections/chlea-paperie", images: " ", price: " " },{ label: "Chocodot", category: "Collection", url: "/collections/chocodot", images: " ", price: " " },{ label: "Christmas", category: "Collection", url: "/collections/christmas", images: " ", price: " " },{ label: "Classic Cake", category: "Collection", url: "/collections/classic-cake", images: " ", price: " " },{ label: "Classic CNY Hampers", category: "Collection", url: "/collections/classic-cny-hampers", images: " ", price: " " },{ label: "Classic CNY Hampers Luar Jabodetabek", category: "Collection", url: "/collections/classic-cny-hampers-luar-jabodetabek", images: " ", price: " " },{ label: "Classic Hampers", category: "Collection", url: "/collections/classic-hampers", images: " ", price: " " },{ label: "Classic Hampers Luar Jadetabek", category: "Collection", url: "/collections/classic-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Classic Style Flowers", category: "Collection", url: "/collections/classic-style-flowers", images: " ", price: " " },{ label: "Cokelat", category: "Collection", url: "/collections/permen-coklat", images: " ", price: " " },{ label: "Collection List", category: "Collection", url: "/collections/collection-list", images: " ", price: " " },{ label: "Condolences", category: "Collection", url: "/collections/axa-condolences", images: " ", price: " " },{ label: "Congratulations", category: "Collection", url: "/collections/rangkaian-bunga-ucapan-selamat", images: " ", price: " " },{ label: "Corporate Gifts", category: "Collection", url: "/collections/corporate-gifts", images: " ", price: " " },{ label: "Corporate Hampers", category: "Collection", url: "/collections/corporate-hampers", images: " ", price: " " },{ label: "Couple Gift", category: "Collection", url: "/collections/couple-gift", images: " ", price: " " },{ label: "Craft Sweetbox Newborn", category: "Co
7936llection", 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: " " }
7936,{ 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: " " }
7936,{ 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: " " }
7936,{ 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
7936dal", 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-
7936hampers", 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
7936o-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: " " }
7936,{ 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: " " }
7936,{ 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: " " }
7936,{ 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: " " }
7936,{ 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: " " }
7936,{ 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: " " }
7936,{ 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: " " }
7936,{ 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: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan.", category: "Collection", url: "/collections/standing-flower", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Bali", category: "Collection", url: "/collections/standing-flower-bali", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Bandung", category: "Collection", url: "/collections/standing-flower-bandung", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Congratulations", category: "Collection", url: "/collections/standing-flower-congratulations", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Demak", category: "Collection", url: "/collections/standing-flower-demak", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Jepara", category: "Collection", url: "/collections/standing-flower-jepara", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Semarang", category: "Collection", url: "/collections/standing-flower-semarang", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Sidoarjo", category: "Collection", url: "/collections/standing-flower-sidoarjo", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Surabaya", category: "Collection", url: "/collections/standing-flower-surabaya", images: " ", price: " " },{ label: "NIASTOTO menghadirkan akses utama provider resmi bebas VPN dengan kecepatan hingga 1000 Mbps, akses praktis, respons cepat, dan layanan yang mudah digunakan. Yogyakarta", category: "Collection", url: "/collections/standing-flower-yogyakarta", images: " ", price: " " },{ label: "Standing Giant Flower", category: "Collection", url: "/collections/standing-giant-flower", images: " ", price: " " },{ label: "Stationery", category: "Collection", url: "/collections/stationery", images: " ", price: " " },{ label: "Steekwerk", category: "Collection", url: "/collections/steekwerk", images: " ", price: " " },{ label: "Stylish Hampers", category: "Collection", url: "/collections/stylish-hampers", images: " ", price: " " },{ label: "Stylish Hampers Luar Jadetabek", category: "Collection", url: "/collections/stylish-hampers-luar-jadetabek", images: " ", price: " " },{ label: "Succulent", category: "Collection", url: "/collections/succulent", images: " ", price: " " },{ label: "Sunflower", category: "Collection", url: "/collections/bunga-matahari", images: " ", price: " " },{ label: "Sweet & Savoury Hampers", category: "Collection", url: "/collections/sweet-savoury-hampers", images: " ", price: " " },{ label: "Sweet Gracie", category: "Collection", url: "/collections/sweet-gracie", images: " ", price: " " },{ label: "Sweet Pastel Love", category: "Collection", url: "/collections/pastel-love", images: " ", price: " " },{ label: "Sweet Pastel Love Nusantara", category: "Collection", url: "/collections/sweet-pastel-love-nusantara", images: " ", price: " " },{ label: "Sweet Treats", category: "Collection", url: "/collections/sweet-treats", images: " ", price: " " },{ label: "Sweetooth", category: "Collection", url: "/collections/sweetooth", images: " ", price: " " },{ label: "Taurus âï¸ 20April - 20May", category: "Collection", url: "/collections/kado-untuk-zodiak-taurus", images: " ", price: " " },{ label: "Teddy Bear", category: "Collection", url: "/collections/boneka-teddy-bear", images: " ", price: " " },{ label: "Teh", category: "Collection", url: "/collections/teh", images: " ", price: " " },{ label: "Test Error", category: "Collection", url: "/collections/test-error", images: " ", price: " " },{ label: "Testing", category: "Collection", url: "/collections/testing", images: " ", price: " " },{ label: "Thank You", category: "Collection", url: "/collections/rangkaian-bunga-ucapan-terima-kasih", images: " ", price: " " },{ label: "The Classic Astoria", category: "Collection", url: "/collections/astoria", images: " ", price: " " },{ label: "The Classic Enchanted Dome", category: "Collection", url: "/collections/enchanted-dome", images: " ", price: " " },{ label: "The Enchanted Love Pirouette Special Edition", category: "Collection", url: "/collections/the-enchanted-love-pirouette-special-edition", images: " ", price: " " },{ label: "The F Thing", category: "Collection", url: "/collections/the-f-thing", images: " ", price: " " },{ label: "The First", category: "Collection", url: "/collections/the-first", images: " ", price: " " },{ label: "The Novo Astoria", category: "Collection", url: "/collections/the-novo-astoria", images: " ", price: " " },{ label: "The Novo Enchanted Dome", category: "Collection", url: "/collections/the-novo-enchanted-dome", images: " ", price: " " },{ label: "The Novo Enchanted Dome Special Edition", category: "Collection", url: "/collections/the-novo-enchanted-dome-special-edition", images: " ", price: " " },{ label: "The Palace", category: "Collection", url: "/collections/the-palace", images: " ", price: " " },{ label: "Ties", category: "Collection", url: "/collections/dasi", images: " ", price: " " },{ label: "Tisane", category: "Collection", url: "/collections/tisane", images: " ", price: " " },{ label: "Toko Bunga Aceh", category: "Collection", url: "/collections/toko-bunga-aceh", images: " ", price: " " },{ label: "Toko Bunga Ambon", category: "Collection", url: "/collections/toko-bunga-ambon", images: " ", price: " " },{ label: "Toko Bunga Atambua", category: "Collection", url: "/collections/toko-bunga-atambua", images: " ", price: " " },{
7936label: "Toko Bunga Bali", category: "Collection", url: "/collections/toko-bunga-bali", images: " ", price: " " },{ label: "Toko Bunga Balikpapan", category: "Collection", url: "/collections/toko-bunga-balikpapan", images: " ", price: " " },{ label: "Toko Bunga Bandar Lampung", category: "Collection", url: "/collections/toko-bunga-bandar-lampung", images: " ", price: " " },{ label: "Toko Bunga Bandung", category: "Collection", url: "/collections/toko-bunga-bandung", images: " ", price: " " },{ label: "Toko Bunga Bandung Barat", category: "Collection", url: "/collections/toko-bunga-bandung-barat", images: " ", price: " " },{ label: "Toko Bunga Banjarmasin", category: "Collection", url: "/collections/toko-bunga-banjarmasin", images: " ", price: " " },{ label: "Toko Bunga Banten", category: "Collection", url: "/collections/toko-bunga-banten", images: " ", price: " " },{ label: "Toko Bunga Banyumas", category: "Collection", url: "/collections/toko-bunga-banyumas", images: " ", price: " " },{ label: "Toko Bunga Banyuwangi", category: "Collection", url: "/collections/toko-bunga-banyuwangi", images: " ", price: " " },{ label: "Toko Bunga Batam", category: "Collection", url: "/collections/toko-bunga-batam", images: " ", price: " " },{ label: "Toko Bunga Baubau", category: "Collection", url: "/collections/toko-bunga-baubau", images: " ", price: " " },{ label: "Toko Bunga Bekasi", category: "Collection", url: "/collections/toko-bunga-bekasi", images: " ", price: " " },{ label: "Toko Bunga Bengkalis", category: "Collection", url: "/collections/toko-bunga-bengkalis", images: " ", price: " " },{ label: "Toko Bunga Bengkayang", category: "Collection", url: "/collections/toko-bunga-bengkayang", images: " ", price: " " },{ label: "Toko Bunga Binjai", category: "Collection", url: "/collections/toko-bunga-binjai", images: " ", price: " " },{ label: "Toko Bunga Bintaro", category: "Collection", url: "/collections/toko-bunga-bintaro", images: " ", price: " " },{ label: "Toko Bunga Blitar", category: "Collection", url: "/collections/toko-bunga-blitar", images: " ", price: " " },{ label: "Toko Bunga Blora", category: "Collection", url: "/collections/toko-bunga-blora", images: " ", price: " " },{ label: "Toko Bunga Bogor", category: "Collection", url: "/collections/toko-bunga-bogor", images: " ", price: " " },{ label: "Toko Bunga Bojonegoro", category: "Collection", url: "/collections/toko-bunga-bojonegoro", images: " ", price: " " },{ label: "Toko Bunga Boyolali", category: "Collection", url: "/collections/toko-bunga-boyolali", images: " ", price: " " },{ label: "Toko Bunga Brebes", category: "Collection", url: "/collections/toko-bunga-brebes", images: " ", price: " " },{ label: "Toko Bunga Bukittinggi", category: "Collection", url: "/collections/toko-bunga-bukittinggi", images: " ", price: " " },{ label: "Toko Bunga Buleleng", category: "Collection", url: "/collections/toko-bunga-buleleng", images: " ", price: " " },{ label: "Toko Bunga Cakung", category: "Collection", url: "/collections/toko-bunga-cakung", images: " ", price: " " },{ label: "Toko Bunga Cawang", category: "Collection", url: "/collections/toko-bunga-cawang", images: " ", price: " " },{ label: "Toko Bunga Cempaka Putih", category: "Collection", url: "/collections/toko-bunga-cempaka-putih", images: " ", price: " " },{ label: "Toko Bunga Cengkareng", category: "Collection", url: "/collections/toko-bunga-cengkareng", images: " ", price: " " },{ label: "Toko Bunga Ciamis", category: "Collection", url: "/collections/toko-bunga-ciamis", images: " ", price: " " },{ label: "Toko Bunga Cianjur", category: "Collection", url: "/collections/toko-bunga-cianjur", images: " ", price: " " },{ label: "Toko Bunga Cibinong", category: "Collection", url: "/collections/toko-bunga-cibinong", images: " ", price: " " },{ label: "Toko Bunga Cibubur", category: "Collection", url: "/collections/toko-bunga-cibubur", images: " ", price: " " },{ label: "Toko Bunga Cijantung", category: "Collection", url: "/collections/toko-bunga-cijantung", images: " ", price: " " },{ label: "Toko Bunga Cikarang", category: "Collection", url: "/collections/toko-bunga-cikarang", images: " ", price: " " },{ label: "Toko Bunga Cikini", category: "Collection", url: "/collections/toko-bunga-cikini", images: " ", price: " " },{ label: "Toko Bunga Cilacap", category: "Collection", url: "/collections/toko-bunga-cilacap", images: " ", price: " " },{ label: "Toko Bunga Cilandak", category: "Collection", url: "/collections/toko-bunga-cilandak", images: " ", price: " " },{ label: "Toko Bunga Cileunyi", category: "Collection", url: "/collections/toko-bunga-cileunyi", images: " ", price: " " },{ label: "Toko Bunga Ciracas", category: "Collection", url: "/collections/toko-bunga-ciracas", images: " ", price: " " },{ label: "Toko Bunga Cirebon", category: "Collection", url: "/collections/toko-bunga-cirebon", images: " ", price: " " }
7936,{ 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
7936dal", 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: " " }, 7937 { label: "grand salutation jabodetabek", category: "Produk", url: "/products/grand-salutation", images: "//outerbloom.com/cdn/shop/files/JKTCON1005_Grand-Salutation-Jabodetabek-WM_thumb.jpg?v=1703241523", price: "Rp 435.000" },{ label: "consolantibus jabodetabek", category: "Produk", url: "/products/consolantibus", images: "//outerbloom.com/cdn/shop/files/JKTDUK1011_Consolantibus-Jabodetabek-WM_thumb.jpg?v=1703239823", price: "Rp 435.000" },{ label: "classic midnight hand bouquet fiery red", category: "Produk", url: "/products/the-classic-midnight-hand-bouquet-fiery-red", images: "//outerbloom.com/cdn/shop/files/OBVBUN1422_Classic-Midnight-Hand-Bouquet---Fiery-Red-large_thumb.jpg?v=1757302521", price: "Rp 385.000" },{ label: "enchanted dome passionate red", category: "Produk", url: "/products/enchanted-dome-passionate-red", images: "//outerbloom.com/cdn/shop/files/Enchanted-dome-red-new-box_3_2_26c081bf-f2a5-42b4-9ce4-3c0304c498e5_thumb.jpg?v=1712639476", price: "Rp 1.435.000" },{ label: "endearing ruby", category: "Produk", url: "/products/endearing-ruby", images: "//outerbloom.com/cdn/shop/products/OUTSTF1003_Endearing-Ruby_thumb.jpg?v=1631296611", price: "Rp 585.000" },{ label: "gentle soul jabodetabek", category: "Produk", url: "/products/gentle-soul-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTDUK1030_Gentle-Soul-Jabodetabek-WM_thumb.jpg?v=1703239894", price: "Rp 435.000" },{ label: "belleza jabodetabek", category: "Produk", url: "/products/belleza", images: "//outerbloom.com/cdn/shop/files/Belleza-Jabodetabek-LED_aecb756a-0737-45cc-8bfb-008515ca0a37_thumb.gif?v=1759229680", price: "Rp 435.000" }
7937,{ label: "majestic pink roses with baby breath bouquet", category: "Produk", url: "/products/majestic-pink-roses-with-baby-breath-bouquet", images: "//outerbloom.com/cdn/shop/products/ef4a3be9-c938-4c70-98ac-4873e7da82bf_90820a66-923a-463d-a464-81bcbe6e6644_thumb.jpg?v=1581413440", price: "Rp 485.000" },{ label: "sentiments jabodetabek", category: "Produk", url: "/products/sentiments", images: "//outerbloom.com/cdn/shop/files/Sentiments-Jabodetabek-WM_thumb.jpg?v=1759224099", price: "Rp 485.000" },{ label: "rose poetry bouquet", category: "Produk", url: "/products/rose-poetry-bouquet", images: "//outerbloom.com/cdn/shop/products/Rose-Poetry-Bouquet-20-tangkai_thumb.jpg?v=1675151039", price: "Rp 385.000" },{ label: "genuine feeling", category: "Produk", url: "/products/genuine-feeling", images: "//outerbloom.com/cdn/shop/products/OUTSTF1004Genuine-Feeling_981ade89-af27-433e-81aa-8d76175a0e4d_thumb.jpg?v=1612352389", price: "Rp 585.000" },{ label: "eternal fidelity jabodetabek", category: "Produk", url: "/products/eternal-fidelity-jabodetabek", images: "//outerbloom.com/cdn/shop/products/0b89df45-dcc1-4876-820e-61b2243a1945_964e211d-2972-46c9-8593-976210929089_thumb.jpg?v=1590491458", price: "Rp 435.000" },{ label: "rosabelle hand bouquet", category: "Produk", url: "/products/rosabelle-hand-bouquet", images: "//outerbloom.com/cdn/shop/files/OBVBUN1429_Rosabelle-Hand-Bouquet-Medium_thumb.jpg?v=1756971848", price: "Rp 385.000" },{ label: "dreaming in pink luxury in vase", category: "Produk", url: "/products/dreaming-in-pink-luxury-in-vase", images: "//outerbloom.com/cdn/shop/products/OBVBUN1051_Dreaming-In-Pink-Luxury-In-Vase_3_thumb.jpg?v=1614594504", price: "Rp 735.000" },{ label: "excito jabodetabek", category: "Produk", url: "/products/excito", images: "//outerbloom.com/cdn/shop/files/JKTCON1010_Excito-Jabodetabek-2023_thumb.gif?v=1717494677", price: "Rp 485.000" },{ label: "golden toast jabodetabek", category: "Produk", url: "/products/golden-toast", images: "//outerbloom.com/cdn/shop/products/LED-GoldenToast_thumb.gif?v=1579249585", price: "Rp 485.000" },{ label: "spirit of eminance jabodetabek", category: "Produk", url: "/products/spirit-of-eminance-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTCON1026_Spirit-of-Eminance-Jabodetabek-newest-WM_thumb.jpg?v=1693297526", price: "Rp 485.000" },{ label: "white elysian bloom box", category: "Produk", url: "/products/white-elysian-bloom-box", images: "//outerbloom.com/cdn/shop/files/OBVBUN1704_White-Elysian-Bloom-Box_thumb.jpg?v=1757328247", price: "Rp 685.000" },{ label: "charming forevermore jabodetabek", category: "Produk", url: "/products/charming-forevermore-jabodetabek", images: "//outerbloom.com/cdn/shop/files/JKTWED1036_Charming-Forevermore-Jabodetabek-WM_thumb.jpg?v=1703239534", price: "Rp 485.000" },{ label: "moment of glory jabodetabek", category: "Produk", url: "/products/moment-of-glory-jabodetabek", images: "//outerbloom.com/cdn/shop/products/JKTCON1051_Moment-of-Glory-Jabodetabek_2_thumb.jpg?v=1596614663", price: "Rp 385.000" },{ label: "sweet romance jabodetabek", category: "Produk", url: "/products/sweet-romance", images: "//outerbloom.com/cdn/shop/products/JKTWED1005_Sweet-Romance-Jabodetabek_thumb.gif?v=1677134791", price: "Rp 635.000" },{ label: "with love bouquet", category: "Produk", url: "/products/with-love-bouquet", images: "//outerbloom.com/cdn/shop/products/c5d6fed6-8ada-4c38-ae0f-36d395aacb19_613f78f0-d52c-443b-9e13-63a151cd8ec5_thumb.jpg?v=1590748429", price: "Rp 535.000" },{ label: "sunflower yellow and with white daisies in vase", category: "Produk", url: "/products/sunflower-yellow-roses-with-white-and-yellow-daisies-in-a-glass-vase", images: "//outerbloom.com/cdn/shop/files/OBVBUN1132_Sunflower-Yellow-And-With-White-Daisies-in-Vase_thumb.jpg?v=1757930628", price: "Rp 435.000" },{ label: "everlasting peace jabodetabek", category: "Produk", url: "/products/everlasting-peace-jabodetabek", images: "//outerbloom.com/cdn/shop/products/JKTDUK1034_Everlasting-Peace-Jabodetabek_2_thumb.jpg?v=1596614613", price: "Rp 385.000" },{ label: "astoria passionate red", category: "Produk", url: "/products/astoria-passionate-red", images: "//outerbloom.com/cdn/shop/products/Astoria-passionate-red_b59b26f6-c39d-46d3-adcb-262c675bb16f_thumb.jpg?v=1633502742", price: "Rp 685.000" },{ label: "classic purple orchid majesty in vase", category: "Produk", url: "/products/classic-purple-orchid-majesty-in-vase", images: "//outerbloom.com/cdn/shop/products/Classic-Purple-Orchid-Majesty-in-Vase---White---4-Tangkai_40a5e337-283f-40f5-911c-5df9b506b9da_thumb.jpg?v=1639981404", price: "Rp 435.000" },{ label: "passion rouge bloom box", category: "Produk", url: "/products/passion-rouge-bloom-box", images: "//outerbloom.com/cdn/shop/files/OBVBUN1725_Passion-Rouge-Bloom-Box_thumb.jpg?v=1756972410", price: "Rp 385.000" },{ label: "classic white orchid majesty in vase", category: "Produk", url: "/products/classic-white-orchid-majesty-in-vase", images: "//outerbloom.com/cdn/shop/products/Classic-white-Orchid-Majesty-in-Vase---white---4-Tangkai_thumb.jpg?v=1644205542", price: "Rp 435.000" }
7937,{ 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" } 7938 ]; 7939 7940 7941 $( ".header-input-search" ).catcomplete({ 7942 appendTo: ".searchResult",source: function(request, response) { 7943 var results = $.ui.autocomplete.filter(data, request.term); 7944 var predicate = function () { 7945 var counter = { Collection: 0, Produk: 0 }; 7946 var fn = function(item) {counter[item.category] += 1;return (counter[item.category] <= 5);} 7947 return fn 7948 }(); 7949 response(results.filter(predicate)); 7950 }, 7951 minLength:1, 7952 //results are clickable 7953 select: function( event, ui ) {window.location = ui.item.url;} 7954 }); 7955 $( ".header-input-search2" ).catcomplete({ 7956 appendTo: ".searchResult2", 7957 source: function(request, response) { 7958 var results = $.ui.autocomplete.filter(data, request.term); 7959 var predicate = function () { 7960 var counter = { Collection: 0, Produk: 0 }; 7961 var fn = function(item) { 7962 counter[item.category] += 1; 7963 return (counter[item.category] <= 5); 7964 } 7965 return fn 7966 }(); 7967 response(results.filter(predicate)); 7968 }, 7969 minLength:1, 7970 //results are clickable 7971 select: function( event, ui ) { 7972 window.location = ui.item.url; 7973 } 7974 }); 7975 }); 7976 </script>
7976 7977 7978
7978<script src="//outerbloom.com/cdn/shop/t/138/assets/vendors.js?v=6349622868601634021752652419" defer></script>
7978 7979
7979<script src="//outerbloom.com/cdn/shop/t/138/assets/app.js?v=136050180318808583701752652452" defer></script>
7979 7980 7981
7981<script> 7982 ( function() { 7983 var youtube = document.querySelectorAll( ".youtube" ); 7984 for (var i = 0; i < youtube.length; i++) { 7985 var source = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault_1x.jpg"; 7986 var datasource = "https://img.youtube.com/vi/"+ youtube[i].dataset.embed +"/sddefault.jpg"; 7987 var image = new Image(); 7988 image.src = source; 7989 image.setAttribute("data-src", datasource); 7990 image.classList.add("swiper-lazy"); 7991 image.addEventListener( "load", function() { 7992 youtube[ i ].appendChild( image ); 7993 }( i ) ); 7994 youtube[i].addEventListener( "click", function() { 7995 var iframe = document.createElement( "iframe" ); 7996 iframe.setAttribute( "width", "480" ); 7997 iframe.setAttribute( "height", "480" ); 7998 iframe.setAttribute( "frameborder", "0" ); 7999 iframe.setAttribute( "allowfullscreen", "" ); 8000 iframe.setAttribute( "src", "https://www.youtube.com/embed/"+ this.dataset.embed +"?rel=0&showinfo=0&autoplay=1" ); 8001 this.innerHTML = ""; 8002 this.appendChild( iframe ); 8003 } ); 8004 }; 8005 8006 } )(); 8007 8008 /* Lazy Load */ 8009 const mainLazyLoad = new LazyLoad({threshold:400}); 8010 $(document).ready(function(){ 8011 8012 $("selectxxx").addClass("needsclick"); 8013 FastClick.attach(document.body); 8014 8015 var $customSelects = $('.select-search'); 8016 $customSelects.select2({ 8017 templateResult: function(result, container) { 8018 if (!result.id) { 8019 return result.text; 8020 } 8021 container.className += ' needsclick'; 8022 return result.text; 8023 } 8024 }); 8025 $customSelects.each(function(index, el){$(el).data('select2').$container.find('*').addClass('needsclick');}); 8026 $(document).on('select2:open', () => { 8027 document.querySelector('.select2-search__field').focus(); 8028 }); 8029 8030 8031 $(".overlay").click(function(){ 8032 $(".js-drawer-close").click(); 8033 }); 8034 $(".site-nav--mobile .js-drawer-open-left, #NavDrawer .icon-close, .overlay-nav").click(function(){ 8035 $("html").toggleClass("nav_open"); 8036 }); 8037 8038 $('.swatch-element label').on('click', function(){ 8039 var srcImg = $(this).data('src'); 8040 $('#thumb-image-product .product-single__thumbnail').each(function(){ 8041 if ($(this).attr("href") == srcImg) { 8042 $(this).trigger('click'); 8043 } 8044 }); 8045 }); 8046 var defaultValue = $(".swatch input:checked").val() 8047 8048 $('#purchaseProduct .swatch [type=radio]').change(function() { 8049 var optionIndex = $(this).closest('.swatch').attr('data-option-index'); 8050 var optionValue = $(this).val(); 8051 console.log(optionIndex, optionValue) 8052 var value = parseInt(optionValue.split(' ')[0]) 8053 $(this) 8054 .closest('#purchaseProduct') 8055 .find('.single-option-selector') 8056 .eq(optionIndex) 8057 .val(optionValue) 8058 .trigger('change'); 8059 8060 }); 8061 8062 }); 8063 $(document).ready(function(){ 8064 $(".nav-search a").click(function(e){ 8065 e.preventDefault(); 8066 $(".icon-navsearch").toggle(); 8067 $(".icon-navclose").toggle(); 8068 $(".site-nav__item > .site-nav__link").toggle(); 8069 $(".open-search").toggle(); 8070 $(".open-search input").focus(); 8071 }); 8072 $(".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'>"); 8073 if ($(window).width() < 768) { 8074 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_75x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 8075 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_45x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 8076 $(".bg-products .label-tag.free-valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-valentine_150x.png?v=171641187769238175351752652421' alt='Icon Free Valentine'>"); 8077 } else { 8078 $(".bg-products .label-tag.valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-valentine_60x.png?v=82732945490105366961752652419' alt='Icon Valentine'>"); 8079 $(".bg-products .label-tag.cny").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/icon-cny_60x.png?v=101884295148001743851752652418' alt='Icon CNY'>"); 8080 $(".bg-products .label-tag.free-valentine").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/free-valentine_200x.png?v=171641187769238175351752652421' alt='Icon Free Valentine'>"); 8081 } 8082 $(".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'>"); 8083 $(".bg-products .label-tag.mothersday").html("<img src='//outerbloom.com/cdn/shop/t/138/assets/mothers-day_70x.png?v=171373711354766377891752652419' alt='Icon Mothers day'>"); 8084 }); 8085 </script>
8085 8086 8087 8088 8089 8090 8091 8092 8093
8093<script type="text/javascript"> 8094 var wishlistpage = 0; 8095 8096 var quickShop_money_format="<span class='money'>"+"Rp {{amount_no_decimals}}"+"</span>"; 8097 </script>
8097 8098 8099 <!-- Remove duplicate wishlist.js reference --> 8100 <style> 8101 .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)}} 8102 </style> 8103 8104 <div class="modal fade" id="modalwishlist0" tabindex="-1" role="dialog"> 8105 <div class="modal-dialog" role="document"> 8106 <div class="modal-content"> 8107 <div class="modal-body">Your Wishlist is empty!</div> 8108 <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button> 8109 </div> 8110 </div> 8111 </div> 8112 8113 <div class="wishlist-model"> 8114 <div class="modal fade" id="modalwishlist1" tabindex="-1" role="dialog" aria-hidden="true"> 8115 <div class="modal-dialog white-modal"> 8116 <div class="modal-content"> 8117 <div class="modal-header"> 8118 <button type="button" class="close" data-dismiss="modal" aria-label="Close"> 8119 <svg class="icon icon-close" version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"> 8120 <title>icon-close</title> 8121 <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> 8122 </svg> 8123 </button> 8124 </div> 8125 <div class="modal-body"> 8126 <div class="wishlist-left"> 8127 <div class="wishlist-note">
8128 <span class="cirle"><svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32"> 8129 <title>icon-check</title> 8130 <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> 8131 </svg></span> 8132 Product added to <a href="/pages/wish-list">Wishlist</a> 8133 </div> 8134 <div class="wishlist-product"> 8135 <div class="product-left"> 8136 <div class="wishlist-image"></div> 8137 </div> 8138 <div class="product-right"> 8139 <div class="wishlist-name"></div> 8140 <div class="wishlist-price"></div> 8141 </div> 8142 </div> 8143 </div> 8144 <div class="wishlist-right"> 8145 <div class="wishlist-cart"> 8146 <form action="/cart/add" method="post" class="variants-form variants" id="AddToCartForm" enctype="multipart/form-data"> 8147 <div class="others-bottom"> 8148 <a class="btn btn-quick-shop" href="/pages/wish-list">View Wishlist</a> 8149 <button type="submit" name="add" id="AddToCart" class="btn btn-cta"> 8150 <span id="AddToCartText" class="">Beli Sekarang</span> 8151 </button> 8152 </div> 8153 <div id="wishlist-variants-container" class="variants-wrapper"></div> 8154 <div class="quantity-content"> 8155 <label>QTY</label> 8156 <input type="number" size="5" class="" name="quantity" value="1" /> 8157 </div> 8158 </form> 8159 </div> 8160 </div> 8161 </div> 8162 </div> 8163 </div> 8164 </div> 8165 </div> 8166 8167 8168 <style> 8169 .stamped-badge[data-rating="0.0"]{display: none !Important;} 8170 8171 div[data-load-type="continue"] ul.stamped-pagination li.next a, div[data-widget-load-type="continue"] ul.stamped-pagination li.next a { 8172 border-radius: 0px; 8173 } 8174 .stamped-review-body { 8175 padding-left: 0px !important; 8176 } 8177 #product-reviews .stamped-header:after { 8178 display:none !Important; 8179 } 8180 #stamped-main-widget .stamped-container, .stamped-badge-caption,#stamped-reviews-widget { 8181 font-family:inherit !important; 8182 } 8183 </style> 8184 8185 8186 8187 <div id='stamped-rewards-init' class='stamped-rewards-init' 8188 data-key-public='' 8189 8190 ></div> 8191 8192
8192<script src="//outerbloom.com/cdn/shop/t/138/assets/variant-sku-handler.js?v=91239063692820757781752652418" defer></script>
8192 8193 <!-- Remove duplicate jQuery reference and load wishlist script properly --> 8194
8194<script src="//outerbloom.com/cdn/shop/t/138/assets/wishlist-fixed.js?v=35991423018869066281754360012" defer></script>
8194 8195 8196 8197 8198 8199<style> 8200 .jss59 { 8201 background-color: rgba(0, 0, 0, 0.6); 8202 } 8203 .MuiBackdrop-root { 8204 top: 0; 8205 left: 0; 8206 right: 0; 8207 bottom: 0; 8208 display: flex; 8209 z-index: -1; 8210 position: fixed; 8211 align-items: center; 8212 justify-content: center; 8213 background-color: rgba(0, 0, 0, 0.5); 8214 -webkit-tap-highlight-color: transparent; 8215 } 8216 .MuiDialog-scrollPaper { 8217 display: flex; 8218 align-items: center; 8219 justify-content: center; 8220 } 8221 .MuiDialog-container { 8222 height: 100%; 8223 outline: 0; 8224 } 8225 .MuiPaper-elevation24 { 8226 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); 8227 } 8228 .MuiDialog-paper { 8229 margin: 32px; 8230 position: relative; 8231 overflow-y: auto; 8232 } 8233 .MuiDialog-paperScrollPaper { 8234 display: flex; 8235 max-height: calc(100% - 64px); 8236 flex-direction: column; 8237 } 8238 .MuiDialog-paperWidthSm { 8239 max-width: 600px; 8240 } 8241 #location-lock-dialog { 8242 top: 20%; 8243 left: 0; 8244 right: 0; 8245 width: 30%; 8246 margin: 0px auto; 8247 display: block; 8248 padding: 30px; 8249 z-index: 99999; 8250 position: fixed; 8251 font-size: 14px; 8252 background: rgb(0, 0, 0); 8253 box-shadow: rgba(11, 11, 12, 0.2) 2px 4px 5px 0px; 8254 text-align: center; 8255 font-family: Roboto, Arial, sans-serif; 8256 line-height: 1; 8257 border-radius: 8px; 8258 -webkit-font-smoothing: subpixel-antialiased; 8259 } 8260 .MuiButtonBase-root { 8261 color: inherit; 8262 border: 0; 8263 cursor: pointer; 8264 margin: 0; 8265 display: inline-flex; 8266 outline: 0; 8267 padding: 0; 8268 position: relative; 8269 align-items: center; 8270 user-select: none; 8271 border-radius: 0; 8272 vertical-align: middle; 8273 -moz-appearance: none; 8274 justify-content: center; 8275 text-decoration: none; 8276 background-color: transparent; 8277 -webkit-appearance: none; 8278 -webkit-tap-highlight-color: transparent; 8279 } 8280 .MuiIconButton-root { 8281 flex: 0 0 auto; 8282 color: rgba(0, 0, 0, 0.54); 8283 padding: 12px; 8284 overflow: visible; 8285 font-size: 1.5rem; 8286 text-align: center; 8287 transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8288 border-radius: 50%; 8289 } 8290 .MuiIconButton-label { 8291 width: 100%; 8292 display: flex; 8293 align-items: inherit; 8294 justify-content: inherit; 8295 } 8296 .MuiSvgIcon-root { 8297 fill: currentColor; 8298 width: 1em; 8299 height: 1em; 8300 display: inline-block; 8301 font-size: 1.5rem; 8302 transition: fill 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8303 flex-shrink: 0; 8304 user-select: none; 8305 } 8306 .MuiTouchRipple-root { 8307 top: 0; 8308 left: 0; 8309 right: 0; 8310 bottom: 0; 8311 z-index: 0; 8312 overflow: hidden; 8313 position: absolute; 8314 border-radius: inherit; 8315 pointer-events: none; 8316 } 8317 .jss36 { 8318 color: #222222; 8319 font-size: 24px; 8320 font-family: Roboto, Arial, sans-serif; 8321 font-weight: 500; 8322 } 8323 .jss37 { 8324 color: #555555; 8325 padding: 10px 0px 0px; 8326 font-size: 14px; 8327 } 8328 .MuiFormGroup-root { 8329 display: flex; 8330 flex-wrap: wrap; 8331 flex-direction: column; 8332 } 8333 .MuiFormGroup-row { 8334 flex-direction: row; 8335 } 8336 .jss63 { 8337 width: 85%; 8338 margin: 15px auto; 8339 display: flex; 8340 padding: 11px 0px 0px; 8341 justify-content: space-evenly; 8342 } 8343 .MuiFormControlLabel-root { 8344 cursor: pointer; 8345 display: inline-flex; 8346 align-items: center; 8347 margin-left: -11px; 8348 margin-right: 16px; 8349 vertical-align: middle; 8350 -webkit-tap-highlight-color: transparent; 8351 } 8352 .jss70 { 8353 margin: 0; 8354 } 8355 .MuiButtonBase-root { 8356 color: inherit; 8357 border: 0; 8358 cursor: pointer; 8359 margin: 0; 8360 display: inline-flex; 8361 outline: 0; 8362 padding: 0; 8363 position: relative; 8364 align-items: center; 8365 user-select: none; 8366 border-radius: 0; 8367 vertical-align: middle; 8368 -moz-appearance: none; 8369 justify-content: center; 8370 text-decoration: none; 8371 background-color: transparent; 8372 -webkit-appearance: none; 8373 -webkit-tap-highlight-color: transparent; 8374 } 8375 .MuiIconButton-root { 8376 flex: 0 0 auto; 8377 color: rgba(0, 0, 0, 0.54); 8378 padding: 12px; 8379 overflow: visible; 8380 font-size: 1.5rem; 8381 text-align: center; 8382 transition: background-color 150ms cubic-bezier(0.4, 0, 0.2, 1) 0ms; 8383 border-radius: 50%; 8384 } 8385 .MuiIconButton-colorSecondary { 8386 color: #f50057; 8387 } 8388 .jss71 { 8389 padding: 9px; 8390 } 8391 .MuiRadio-root { 8392 color: rgba(0, 0, 0, 0.54); 8393 } 8394 .jss64 { 8395 padding: 2px; 8396 } 8397 .MuiRadio-colorSecondary.Mui-checked { 8398 color: #f50057; 8399 } 8400 .MuiIconButton-label { 8401 width: 100%; 8402 display: flex; 8403 align-items: inherit; 8404 justify-content: inherit; 8405 } 8406 .MuiTypography-root { 8407 margin: 0; 8408 } 8409 .MuiTypography-body1 { 8410 font-size: 18px; 8411 font-family: Roboto,sans-serif; 8412 font-weight: 400; 8413 line-height: 1.5; 8414 } 8415 .location-popup_area-block__sp9Ws { 8416 display: -moz-box; 8417 display: flex; 8418 -moz-box-orient: vertical; 8419 -moz-box-direction: normal; 8420 flex-direction: column; 8421 -moz-box-pack: center; 8422 justify-content: center; 8423 position: relative; 8424 margin: 10px 10% 0; 8425 } 8426 .location-popup_pin-search-box__3l5mJ { 8427 width: 100%; 8428 display: -moz-box; 8429 display: flex; 8430 -moz-box-align: center; 8431 align-items: center; 8432 } 8433 .location-popup_place-icon-city__1XAX5, .location-popup_place-icon__jSG0Q { 8434 position: absolute; 8435 z-index: 999; 8436 } 8437 .location-popup_place-icon__jSG0Q { 8438 color: #ffffff; 8439 padding-left: 8px; 8440 } 8441 .location-popup_place-icon__jSG0Q svg { 8442 width: 18px; 8443 height: 18px; 8444 } 8445 .location-popup_cancel-icon__FHujU { 8446 color: #fff; 8447 right: 10px; 8448 width: 16px; 8449 cursor: pointer; 8450 height: 16px; 8451 display: none; 8452 padding: 5px; 8453 position: absolute; 8454 background: #999; 8455 text-align: center; 8456 border-radius: 50%; 8457 } 8458 .location-popup_pin-search-box__3l5mJ>div>select { 8459 /* -webkit-box-shadow: 0 0 10px #ffffff; 8460 box-shadow: 0 0 10px #ffffff; */ 8461 text-transform: capitalize; 8462 border: 1px solid #ffffff; 8463 color: #ffffff; 8464 width: 100%; 8465 margin: 0; 8466 display: -moz-box; 8467 display: flex;
8468 padding: 0 30px; 8469 -webkit-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8470 -moz-animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8471 animation: location-popup_focuses__1I8Gj 1.5s ease-in-out infinite; 8472 font-size: 16px; 8473 border-radius: 4px; 8474 height: 44px; 8475 moz-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite; 8476 webkit-animation: location-popup_focuses__1I8Gj ease-in-out 1.5s infinite; 8477 } 8478 .MuiButtonBase-root { 8479 color: inherit; 8480 border: 0; 8481 cursor: pointer; 8482 margin: 0; 8483 display: inline-flex; 8484 outline: 0; 8485 padding: 0; 8486 position: relative; 8487 align-items: center; 8488 user-select: none; 8489 border-radius: 0; 8490 vertical-align: middle; 8491 -moz-appearance: none; 8492 justify-content: center; 8493 text-decoration: none; 8494 background-color: transparent; 8495 -webkit-appearance: none; 8496 -webkit-tap-highlight-color: transparent; 8497 } 8498 .MuiButton-root { 8499 color: rgba(0, 0, 0, 0.87); 8500 padding: 6px 16px; 8501 font-size: 0.875rem; 8502 min-width: 64px; 8503 box-sizing: border-box; 8504 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; 8505 font-family: Roboto,sans-serif; 8506 font-weight: 500; 8507 line-height: 1.75; 8508 border-radius: 4px; 8509 text-transform: uppercase; 8510 } 8511 .MuiButton-contained { 8512 color: rgba(0, 0, 0, 0.87); 8513 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); 8514 background-color: #e0e0e0; 8515 } 8516 .MuiButtonBase-root.Mui-disabled { 8517 cursor: default; 8518 pointer-events: none; 8519 } 8520 .MuiButton-label { 8521 width: 100%; 8522 display: inherit; 8523 align-items: inherit; 8524 justify-content: inherit; 8525 } 8526 .cartButton_login_content__2j1f7 { 8527 display: -moz-box; 8528 display: flex; 8529 text-align: center; 8530 z-index: 9; 8531 font-size: 18px; 8532 font-weight: 500; 8533 color: #fff; 8534 } 8535 8536 .jss35 { 8537 top: 5px; 8538 right: 5px; 8539 padding: 4px; 8540 position: absolute; 8541 border-radius: 50%; 8542 } 8543 .jss67 { 8544 cursor: pointer; 8545 font-size: 15px; 8546 line-height: 1.3; 8547 padding-left: 5px; 8548 } 8549 .jss69 { 8550 color: #222222; 8551 } 8552 .jss80 { 8553 color: #fff; 8554 width: 100%; 8555 height: 52px; 8556 padding: 11px 16px; 8557 font-size: 18px; 8558 min-width: 88px; 8559 min-height: 36px; 8560 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; 8561 font-weight: 500; 8562 line-weight: 1em; 8563 border-radius: 4px; 8564 text-transform: uppercase; 8565 background-color: #f7e70a; 8566 } 8567 @media (min-width: 991px){ 8568 .cartButton_login_content__2j1f7 { 8569 font-weight: 500; 8570 } 8571 } 8572 8573 @media (max-width: 992px) { 8574 #location-lock-dialog { 8575 width: 100%; 8576 top: auto; 8577 bottom: 0; 8578 padding-left: 0; 8579 padding-right: 0; 8580 } 8581 .MuiFormGroup-row { 8582 display: block 8583 } 8584 .MuiIconButton-label input { 8585 margin: 0; 8586 } 8587 } 8588 </style> 8589 <div role="presentation" class="MuiDialog-root jss34" style="display: none;position: fixed; z-index: 9999; inset: 0px;"> 8590 <div class="MuiBackdrop-root" aria-hidden="true" style="opacity: 1; transition: opacity 225ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;"></div> 8591 <div tabindex="0" data-test="sentinelStart"></div> 8592 <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;"> 8593 <div class="MuiPaper-root MuiDialog-paper MuiDialog-paperScrollPaper MuiDialog-paperWidthSm MuiPaper-elevation24 MuiPaper-rounded" role="dialog"> 8594 <div class="jss31 undefined" id="location-lock-dialog"> 8595 <button id="close-popup-delivery" class="MuiButtonBase-root MuiIconButton-root jss35" tabindex="0" type="button" aria-label="close"> 8596 <span class="MuiIconButton-label"> 8597 <svg class="MuiSvgIcon-root" focusable="false" viewBox="0 0 24 24" aria-hidden="true"> 8598 <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> 8599 </svg> 8600 </span>
8601 <span class="MuiTouchRipple-root"></span> 8602 </button> 8603 <div> 8604 <div class="jss36">Select Delivery Location</div> 8605 <div class="jss37">Select a delivery location to see product availability</div> 8606 </div> 8607 <div class="MuiFormGroup-root jss63 MuiFormGroup-row" role="radiogroup"> 8608 <label for="jabodetabek" class="MuiFormControlLabel-root jss45"> 8609 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 jss47 Mui-checked MuiIconButton-colorSecondary" aria-disabled="false"> 8610 <span class="MuiIconButton-label"> 8611 <input id="jabodetabek" class="jss49" type="radio" value="Jabodetabek" checked="" name="location"> 8612 <span class="jss41"></span> 8613 </span> 8614 <span class="MuiTouchRipple-root"></span> 8615 </span> 8616 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 8617 <span class="jss67 jss69">Jabodetabek</span> 8618 </span> 8619 </label> 8620 <label for="non-jabodetabek" class="MuiFormControlLabel-root jss45"> 8621 <span class="MuiButtonBase-root MuiIconButton-root jss46 MuiRadio-root MuiRadio-colorSecondary jss39 MuiIconButton-colorSecondary" aria-disabled="false"> 8622 <span class="MuiIconButton-label"> 8623 <input id="non-jabodetabek" class="jss49" type="radio" value="Outside Jabodetabek" name="location"> 8624 <span class="jss40"></span> 8625 </span> 8626 <span class="MuiTouchRipple-root"></span> 8627 </span> 8628 <span class="MuiTypography-root MuiFormControlLabel-label MuiTypography-body1"> 8629 <span class="jss67 jss68">Outside Jabodetabek</span> 8630 </span> 8631 </label> 8632 </div> 8633 <div> 8634 <div class="MuiGrid-root location-popup_area-block__sp9Ws"> 8635 <div class="MuiGrid-root location-popup_pin-search-box__3l5mJ false"> 8636 <div class="MuiGrid-root location-popup_place-icon__jSG0Q"> 8637 <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> 8638 </div> 8639 <div class="MuiGrid-root location-popup_cancel-icon__FHujU false"> 8640 <i class="material-icons location-popup_clear-pin__s1dRc">close</i> 8641 </div> 8642 <div style="width: 100%;"> 8643 <select id="choose-location" class="form-control"> 8644 <option value="">Choose Location</option> 8645 <option value="jakarta">Jakarta</option> 8646 <option value="bogor">Bogor</option> 8647 <option value="depok">Depok</option> 8648 <option value="tangerang">Tangerang</option> 8649 <option value="bekasi">Bekasi</option> 8650 </select> 8651 </div> 8652 </div> 8653 </div> 8654 </div> 8655 <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=""> 8656 <span class="MuiButton-label"> 8657 <span class=""></span> 8658 <span id="location-lock-continue-btn" class="cartButton_login_content__2j1f7" style="font-weight: 500;" data-content="">Continue Shopping</span> 8659 </span> 8660 </button> 8661 </div> 8662 </div> 8663 </div> 8664 <div tabindex="0" data-test="sentinelEnd"></div> 8665 </div> 8666 8667
8667<script> 8668 const jabodetabek = [ 8669 { 8670 "code": "jakarta", 8671 "city": "jakarta", 8672 "zip": [] 8673 }, 8674 { 8675 "code": "bogor", 8676 "city": "bogor", 8677 "zip": [] 8678 }, 8679 { 8680 "code": "depok", 8681 "city": "depok", 8682 "zip": [] 8683 }, 8684 { 8685 "code": "tangerang", 8686 "city": "tangerang", 8687 "zip": [] 8688 }, 8689 { 8690 "code": "bekasi", 8691 "city": "bekasi", 8692 "zip": [] 8693 } 8694 ] 8695 let cityNonJabodetabek = [ 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 9496 9497 9498 9499 9500 9501 9502 9503 9504 9505 9506 9507 9508 9509 9510 9511 9512 9513 9514 9515 9516 9517 9518 9519 9520 9521 9522 9523 9524 9525 9526 9527 9528 9529 9530 9531 9532 9533 9534 9535 9536 9537 9538 9539 9540 9541 9542 9543 9544 9545 9546 9547 9548 9549 9550 9551 9552 9553 9554 9555 9556 9557 9558 9559 9560 9561 9562 9563 9564 9565 9566 9567 9568 9569 9570 9571 9572 9573 9574 9575 9576 9577 9578 9579 9580 9581 9582 9583 9584 9585 9586 9587 9588 9589 9590 9591 9592 9593 9594 9595 9596 9597 9598 9599 9600 9601 9602 9603 9604 9605 9606 9607 9608 9609 9610 9611 9612 9613 9614 9615 9616 9617 9618 9619 9620 9621 9622 9623 9624 9625 9626 9627 9628 9629 9630 9631 9632 9633 9634 9635 9636 9637 9638 9639 9640 9641 9642 9643 9644 9645 9646 9647 9648 9649 9650 9651 9652 9653 9654 9655 9656 9657 9658 9659 9660 9661 9662 9663 9664 9665 9666 9667 9668 9669 9670 9671 9672 9673 9674 9675 9676 9677 9678 9679 9680 9681 9682 9683 9684 9685 9686 9687 9688 9689 9690 9691 9692 9693 9694 9695 9696 9697 9698 9699 9700 9701 9702 9703 9704 9705 9706 9707 9708 9709 9710 9711 9712 9713 9714 9715 9716 9717 9718 9719 9720 9721 9722 9723 9724 9725 9726 9727 9728 9729 9730 9731 9732 9733 9734 9735 9736 9737 9738 9739 9740 9741 9742 9743 9744 9745 9746 9747 9748 9749 9750 9751 9752 9753 9754 9755 9756 9757 9758 9759 9760 9761 9762 9763 9764 9765 9766 9767 9768 9769 9770 9771 9772 9773 9774 9775 9776 9777 9778 9779 9780 9781 9782 9783 9784 9785 9786 9787 9788 9789 9790 9791 9792 9793 9794 9795 9796 9797 9798 9799 9800 9801 9802 9803 9804 9805 9806 9807 9808 9809 9810 9811 9812 9813 9814 9815 9816 9817 9818 9819 9820 9821 9822 9823 9824 9825 9826 9827 9828 9829 9830 9831 9832 9833 9834 9835 9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 9859 9860 9861 9862 9863 9864 9865 9866 9867 9868 9869 "pengiriman_aceh", 9870 9871 9872 9873 9874 9875 "pengiriman_ambon", 9876 9877 9878 9879 9880 9881 "pengiriman_atambua", 9882 9883 9884 9885 9886 9887 "pengiriman_badung", 9888 9889 9890 9891 9892 9893 "pengiriman_bali", 9894 9895 9896 9897 9898 9899 "pengiriman_balikpapan", 9900 9901 9902 9903 9904 9905 "pengiriman_bandar lampung", 9906 9907 9908 9909 9910 9911 "pengiriman_bandung", 9912 9913 9914 9915 9916 9917 "pengiriman_bandung barat", 9918 9919 9920 9921 9922 9923 "pengiriman_banjarmasin", 9924 9925 9926 9927 9928 9929 "pengiriman_banyumas", 9930 9931 9932 9933 9934 9935 "pengiriman_banyuwangi", 9936 9937 9938 9939 9940 9941 "pengiriman_batam", 9942 9943 9944 9945 9946 9947 9948 9949 9950 9951 "pengiriman_biak", 9952 9953 9954 9955 9956 9957 "pengiriman_binjai", 9958 9959 9960 9961 9962 9963 "pengiriman_blitar", 9964 9965 9966 9967 9968 9969 "pengiriman_blora", 9970 9971 9972 9973 9974 9975 9976 9977 9978 9979 "pengiriman_bojonegoro", 9980 9981 9982 9983 9984 9985 "pengiriman_boyolali", 9986 9987 9988 9989 9990 9991 "pengiriman_bukittinggi", 9992 9993 9994 9995 9996 9997 "pengiriman_buleleng", 9998 9999 10000 10001 10002 10003 "pengiriman_ciamis", 10004 10005 10006 10007 10008 10009 "pengiriman_cianjur", 10010 10011 10012 10013 10014 10015 "pengiriman_cibinong", 10016 10017 10018 10019 10020 10021 "pengiriman_cikarang", 10022 10023 10024 10025 10026 10027 "pengiriman_cikupa", 10028 10029 10030 10031 10032 10033 "pengiriman_cilacap", 10034 10035 10036 10037 10038 10039 "pengiriman_cileunyi", 10040 10041 10042 10043 10044 10045 "pengiriman_cimahi", 10046 10047 10048 10049 10050 10051 "pengiriman_cirebon", 10052 10053 10054 10055 10056 10057 "pengiriman_ciwidey", 10058 10059 10060 10061 10062 10063 "pengiriman_deli serdang", 10064 10065 10066 10067 10068 10069 "pengiriman_demak", 10070 10071 10072 10073 10074 10075 "pengiriman_denpasar", 10076 10077 10078 10079 10080 10081 10082 10083 10084 10085 "pengiriman_garut", 10086 10087 10088 10089 10090 10091 "pengiriman_gianyar", 10092 10093 10094 10095 10096 10097 "pengiriman_gresik", 10098 10099 10100 10101 10102 10103 "pengiriman_gunung kidul", 10104 10105 10106 10107 10108 10109 10110 10111 10112 10113 "pengiriman_jambi", 10114 10115 10116 10117 10118 10119 "pengiriman_jayapura", 10120 10121 10122 10123 10124 10125 "pengiriman_jember", 10126 10127 10128 10129 10130 10131 "pengiriman_jepara", 10132 10133 10134 10135 10136 10137 "pengiriman_jombang", 10138 10139 10140 10141 10142 10143 "pengiriman_karanganyar", 10144 10145 10146 10147 10148 10149 "pengiriman_karawang", 10150 10151 10152 10153 10154 10155 "pengiriman_karo", 10156 10157 10158 10159 10160 10161 "pengiriman_kebumen", 10162 10163 10164 10165 10166 10167 "pengiriman_kediri", 10168 10169 10170 10171 10172 10173 "pengiriman_keerom", 10174 10175 10176 10177 10178 10179 "pengiriman_kendal", 10180 10181 10182 10183 10184 10185 "pengiriman_klaten", 10186 10187 10188 10189 10190 10191 10192 10193 10194 10195 "pengiriman_kudus", 10196 10197 10198 10199 10200 10201 "pengiriman_kupang", 10202 10203 10204 10205 10206 10207 "pengiriman_lainnya", 10208 10209 10210 10211 10212 10213 "pengiriman_lamongan", 10214 10215 10216 10217 10218 10219 "pengiriman_lampung", 10220 10221 10222 10223 10224 10225 "pengiriman_lampung barat", 10226 10227 10228 10229 10230 10231 "pengiriman_lembang", 10232 10233 10234 10235 10236 10237 "pengiriman_lombok", 10238 10239 10240 10241 10242 10243 "pengiriman_lumajang", 10244 10245 10246 10247 10248 10249 "pengiriman_madiun", 10250 10251 10252 10253 10254 10255 "pengiriman_magelang", 10256 10257 10258 10259 10260 10261 "pengiriman_majalengka", 10262 10263 10264 10265 10266 10267 "pengiriman_makassar", 10268 10269 10270 10271 10272 10273 "pengiriman_malang", 10274 10275 10276 10277 10278 10279 "pengiriman_manado", 10280 10281 10282 10283 10284 10285 "pengiriman_medan", 10286 10287 10288 10289 10290 10291 "pengiriman_mengwi", 10292 10293 10294 10295 10296 10297 "pengiriman_mojokerto", 10298 10299 10300 10301 10302 10303 "pengiriman_nganjuk", 10304 10305 10306 10307 10308 10309 "pengiriman_ngawi", 10310 10311 10312 10313 10314 10315 "pengiriman_padang", 10316 10317 10318 10319 10320 10321 "pengiriman_palembang", 10322 10323 10324 10325 10326 10327 "pengiriman_pasuruan", 10328 10329 10330 10331 10332 10333 "pengiriman_pati", 10334 10335 10336 10337 10338 10339 "pengiriman_pekalongan", 10340 10341 10342 10343 10344 10345 "pengiriman_pekanbaru", 10346 10347 10348 10349 10350 10351 "pengiriman_pemalang", 10352 10353 10354 10355 10356 10357 "pengiriman_ponorogo", 10358 10359 10360 10361 10362 10363 "pengiriman_pontianak", 10364 10365 10366 10367 10368 10369 "pengiriman_probolinggo", 10370 10371 10372 10373 10374 10375 "pengiriman_purbalingga", 10376 10377 10378 10379 10380 10381 "pengiriman_purwakarta", 10382 10383 10384 10385 10386 10387 "pengiriman_purwokerto", 10388 10389 10390 10391 10392 10393 "pengiriman_rembang", 10394 10395 10396 10397 10398 10399 "pengiriman_riau", 10400 10401 10402 10403 10404 10405 "pengiriman_salatiga", 10406 10407 10408 10409 10410 10411 "pengiriman_samarinda", 10412 10413 10414 10415 10416 10417 "pengiriman_semarang", 10418 10419 10420 10421 10422 10423 "pengiriman_sentani", 10424 10425 10426 10427 10428 10429 "pengiriman_serang", 10430 10431 10432 10433 10434 10435 "pengiriman_sidoarjo", 10436 10437 10438 10439 10440 10441 "pengiriman_singkawang", 10442 10443 10444 10445 10446 10447 "pengiriman_sragen", 10448 10449 10450 10451 10452 10453 "pengiriman_subang", 10454 10455 10456 10457 10458 10459 "pengiriman_sukabumi", 10460 10461 10462 10463 10464 10465 "pengiriman_sumbawa", 10466 10467 10468 10469 10470 10471 "pengiriman_surabaya", 10472 10473 10474 10475 10476 10477 "pengiriman_surakarta solo", 10478 10479 10480 10481 10482 10483 10484 10485 10486 10487 "pengiriman_tasikmalaya", 10488 10489 10490 10491 10492 10493 "pengiriman_tegal", 10494 10495 10496 10497 10498 10499 "pengiriman_timika", 10500 10501 10502 10503 10504 10505 "pengiriman_wamena", 10506 10507 10508 10509 10510 10511 "pengiriman_wiyung", 10512 10513 10514 10515 10516 10517 "pengiriman_wonokromo", 10518 10519 10520 10521 10522 10523 "pengiriman_yogyakarta", 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 10761 10762 10763 10764 10765 10766 10767 10768 10769 10770 10771 10772 10773 10774 10775 10776 10777 10778 10779 10780 10781 10782 10783 10784 10785 10786 10787 10788 10789 10790 10791 10792 10793 10794 10795 10796 10797 10798 10799 10800 10801 10802 10803 10804 10805 10806 10807 10808 10809 10810 10811 10812 10813 10814 10815 10816 10817 10818 10819 10820 10821 10822 10823 10824 10825 10826 10827 10828 10829 10830 10831 10832 10833 10834 10835 10836 10837 10838 10839 10840 10841 10842 10843 10844 10845 10846 10847 10848 10849 10850 10851 10852 10853 10854 10855 10856 10857 10858 10859 10860 10861 10862 10863 10864 10865 10866 10867 10868 10869 10870 10871 10872 10873 10874 10875 10876 10877 10878 10879 10880 10881 10882 10883 10884 10885 10886 10887 10888 10889 10890 10891 10892 10893 10894 10895 10896 10897 10898 10899 10900 10901 10902 10903 10904 10905 10906 10907 10908 10909 10910 10911 10912 10913 10914 10915 10916 10917 10918 10919 10920 10921 10922 10923 10924 10925 10926 10927 10928 10929 10930 10931 10932 10933 10934 10935 10936 10937 10938 10939 10940 10941 10942 10943 10944 10945 10946 10947 10948 10949 10950 10951 10952 10953 10954 10955 10956 10957 10958 10959 10960 10961 10962 10963 10964 10965
10966 10967 10968 10969 10970 10971 10972 10973 10974 10975 10976 10977 10978 10979 10980 10981 10982 10983 10984 10985 10986 10987 10988 10989 10990 10991 10992 10993 10994 10995 10996 10997 10998 10999 11000 11001 11002 11003 11004 11005 11006 11007 11008 11009 11010 11011 11012 11013 11014 11015 11016 11017 11018 11019 11020 11021 11022 11023 11024 11025 11026 11027 11028 11029 11030 11031 11032 11033 11034 11035 11036 11037 11038 11039 11040 11041 11042 11043 11044 11045 11046 11047 11048 11049 11050 11051 11052 11053 11054 11055 11056 11057 11058 11059 11060 11061 11062 11063 11064 11065 11066 11067 11068 11069 11070 11071 11072 11073 11074 11075 11076 11077 11078 11079 11080 11081 11082 11083 11084 11085 11086 11087 11088 11089 11090 11091 11092 11093 11094 11095 11096 11097 11098 11099 11100 11101 11102 11103 11104 11105 11106 11107 11108 11109 11110 11111 11112 11113 11114 11115 11116 11117 11118 11119 11120 11121 11122 11123 11124 11125 11126 11127 11128 11129 11130 11131 11132 11133 ] 11134 console.log(cityNonJabodetabek) 11135 let non_jabodetabek = [] 11136 for(var i=0;i<cityNonJabodetabek.length;i++) { 11137 const obj = { 11138 "code": cityNonJabodetabek[i].toLowerCase().replace('pengiriman_', '').replace(' ','-'), 11139 "city": cityNonJabodetabek[i].replace('pengiriman_', '').replace(' ','-'), 11140 "zip": [] 11141 } 11142 non_jabodetabek.push(obj) 11143 } 11144 let current_location = getCookie("location_delivery") 11145 $("[name=location]").change(function(){ 11146 let v = $(this).val() 11147 let option = [] 11148 if(v == 'Jabodetabek') { 11149 for(var i=0;i<jabodetabek.length;i++) { 11150 const jabodetabekHtml = `<option value=${jabodetabek[i].city}>${jabodetabek[i].city}</option>` 11151 option.push(jabodetabekHtml) 11152 } 11153 $("#choose-location").html(`<option value="">Choose Location</option>${option}`) 11154 } else { 11155 for(var i=0;i<non_jabodetabek.length;i++) { 11156 const nonjabodetabekHtml = `<option value=${non_jabodetabek[i].city}>${non_jabodetabek[i].city}</option>` 11157 option.push(nonjabodetabekHtml) 11158 } 11159 $("#choose-location").html(`<option value="">Choose Location</option>${option}`) 11160 } 11161 }) 11162 11163 $("#location-lock-submit").click(function(e){ 11164 let select = $("#choose-location") 11165 let value = select.val().toLowerCase() 11166 console.log(value) 11167 if(select.val() == "") { 11168 return alert("Choose Your Location") 11169 e.preventDefault() 11170 } 11171 setCookie("location_delivery",value,1000000); 11172 11173 location.reload(); 11174 11175 }) 11176 11177 $("#close-popup-delivery").click(function(){ 11178 $(".MuiDialog-root").hide() 11179 if(!current_location){ 11180 setCookie("location_delivery","jakarta",1000000); 11181 $("#loc_delivery_city, #loc_delivery_city_mobile").text("Jakarta") 11182 } 11183 }) 11184 $("#loc_delivery, #loc_delivery_mobile").click(function(){ 11185 $(".MuiDialog-root").show() 11186 }) 11187 11188 11189 if(!current_location){ 11190 11191 } else { 11192 $("#loc_delivery_city, #loc_delivery_city_mobile").text(current_location) 11193 console.log(current_location) 11194 $("#choose-location").each(function(){ 11195 if(current_location == 'jakarta' || current_location == 'depok' || current_location == 'bogor' || current_location == 'tangerang' || current_location == 'bekasi'){ 11196 $("#jabodetabek").trigger("click") 11197 } else { 11198 $("#non-jabodetabek").trigger("click") 11199 } 11200 $("#choose-location").find("option[value="+current_location+"]").attr("selected", "selected") 11201 }) 11202 } 11203 11204 // 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'){ 11205 // $("#timeMalam").attr("disabled", false) 11206 // } else { 11207 // $("#timeMalam").attr("disabled", true) 11208 // } 11209 11210 if(current_location && current_location != 'jakarta') { 11211 $("#self-pickup").attr("disabled", true) 11212 } 11213 11214 function setCookie(name,value,days) { 11215 var expires = ""; 11216 if (days) { 11217 var date = new Date(); 11218 date.setTime(date.getTime() + (days*24*60*60*1000)); 11219 expires = "; expires=" + date.toUTCString(); 11220 } 11221 document.cookie = name + "=" + (value || "") + expires + "; path=/"; 11222 } 11223 function getCookie(name) { 11224 var nameEQ = name + "="; 11225 var ca = document.cookie.split(';');
11226 for(var i=0;i < ca.length;i++) { 11227 var c = ca[i]; 11228 while (c.charAt(0)==' ') c = c.substring(1,c.length); 11229 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 11230 } 11231 return null; 11232 } 11233 </script>
11233 11234<div id="shopify-block-ANVEzSUcxTUxZOGpwZ__9703700522657871012" class="shopify-block shopify-app-block"> 11235</div><div id="shopify-block-ATzRpVTBPU3k1R2pnW__286197278318599166" class="shopify-block shopify-app-block"> 11236 11237 11238 <div style="position: fixed; bottom: 0; right: 0"></div> 11239 11240 11241 11242 11243<style> 11244 .daftarku-fixed-footer { 11245 position: fixed; 11246 bottom: 20px; 11247 left: 50%; 11248 transform: translateX(-50%); 11249 width: 90%; 11250 height: 70px; 11251 background: 11252 radial-gradient(circle at top, rgba(255, 241, 118, 0.35), transparent 45%), 11253 linear-gradient(135deg, #3d1400, #8f3500, #ff9800); 11254 border: 1.5px solid rgba(255, 235, 59, 0.75); 11255 border-radius: 20px; 11256 backdrop-filter: blur(10px); 11257 box-shadow: 11258 0 0 25px rgba(255, 152, 0, 0.45), 11259 inset 0 0 15px rgba(255, 253, 231, 0.18); 11260 display: flex; 11261 justify-content: space-around; 11262 align-items: center; 11263 overflow: hidden; 11264 z-index: 9999; 11265 animation: floatUp 0.8s ease-out; 11266 } 11267 11268 .daftarku-fixed-footer::before { 11269 content: ""; 11270 position: absolute; 11271 inset: 0; 11272 border-radius: 20px; 11273 padding: 2px; 11274 background: linear-gradient( 11275 120deg, 11276 #ff9800, 11277 #fff176, 11278 #8f3500, 11279 #fffde7, 11280 #ffc400, 11281 #ff8c00, 11282 #3d1400, 11283 #ff9800 11284 ); 11285 background-size: 400%; 11286 -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); 11287 -webkit-mask-composite: xor; 11288 mask-composite: exclude; 11289 animation: ledRotate 6s linear infinite; 11290 } 11291 11292 @keyframes ledRotate { 11293 0% { background-position: 0% 50%; } 11294 100% { background-position: 400% 50%; } 11295 } 11296 11297 .daftarku-fixed-footer::after { 11298 content: ""; 11299 position: absolute; 11300 top: -50%; 11301 left: 0; 11302 width: 100%; 11303 height: 200%; 11304 background: radial-gradient(circle at 50% 0%, rgba(255, 241, 118, 0.28), transparent 70%); 11305 animation: shinePass 5s ease-in-out infinite; 11306 } 11307 11308 @keyframes shinePass { 11309 0%, 100% { opacity: 0.3; } 11310 50% { opacity: 0.7; } 11311 } 11312 11313 .daftarku-fixed-footer a { 11314 flex: 1; 11315 text-align: center; 11316 color: #fffde7; 11317 font-weight: 700; 11318 text-decoration: none; 11319 font-size: 13px; 11320 text-transform: uppercase; 11321 display: flex; 11322 flex-direction: column; 11323 align-items: center; 11324 transition: 0.3s ease; 11325 z-index: 2; 11326 text-shadow: 11327 0 1px 2px rgba(0, 0, 0, 0.85), 11328 0 0 8px rgba(255, 152, 0, 0.65); 11329 } 11330 11331 .daftarku-fixed-footer a img { 11332 width: 30px; 11333 height: 30px; 11334 margin-bottom: 4px; 11335 filter: 11336 drop-shadow(0 0 8px #ff9800) 11337 drop-shadow(0 0 12px rgba(255, 241, 118, 0.55)); 11338 transition: 0.3s ease; 11339 animation: floatBtn 3s ease-in-out infinite; 11340 } 11341 11342 @keyframes floatBtn { 11343 0%, 100% { transform: translateY(0); } 11344 50% { transform: translateY(-4px); } 11345 } 11346 11347 .daftarku-fixed-footer a:hover { 11348 color: #fff176; 11349 transform: scale(1.15); 11350 text-shadow: 11351 0 0 12px #fffde7, 11352 0 0 25px #ff9800; 11353 } 11354 11355 .daftarku-fixed-footer a:hover img { 11356 transform: scale(1.25) rotate(10deg); 11357 filter: 11358 drop-shadow(0 0 15px #ff9800) 11359 drop-shadow(0 0 20px rgba(255, 241, 118, 0.75)); 11360 } 11361 11362 .daftarku-fixed-footer a.tada { 11363 background: 11364 radial-gradient(circle, #fff176 0%, #ffc400 42%, #8f3500 80%); 11365 padding: 6px 12px; 11366 border-radius: 12px; 11367 box-shadow: 11368 0 0 20px #ff9800, 11369 inset 0 0 10px #fff176; 11370 color: #3d1400; 11371 position: relative; 11372 overflow: hidden; 11373 animation: pulseEnergy 2s infinite ease-in-out; 11374 } 11375 11376 .daftarku-fixed-footer a.tada::before { 11377 content: ""; 11378 position: absolute; 11379 top: -50%; 11380 left: -50%; 11381 width: 200%; 11382 height: 200%; 11383 background: conic-gradient( 11384 from 0deg, 11385 rgba(255, 241, 118, 0.70), 11386 transparent 60% 11387 ); 11388 animation: spinEnergy 2s linear infinite; 11389 } 11390
11391 @keyframes pulseEnergy { 11392 0%, 100% { 11393 box-shadow: 11394 0 0 20px #ff9800, 11395 inset 0 0 10px rgba(255, 241, 118, 0.45); 11396 } 11397 50% { 11398 box-shadow: 11399 0 0 40px #8f3500, 11400 0 0 55px rgba(255, 152, 0, 0.55); 11401 } 11402 } 11403 11404 @keyframes spinEnergy { 11405 to { transform: rotate(360deg); } 11406 } 11407 11408 @keyframes floatUp { 11409 0% { 11410 opacity: 0; 11411 transform: translate(-50%, 50px); 11412 } 11413 11414 100% { 11415 opacity: 1; 11416 transform: translate(-50%, 0); 11417 } 11418 } 11419</style> 11420<div class="daftarku-fixed-footer"> 11421 <a href="https://ampakses.niastotonet.com/" target="_blank" rel="nofollow noopener"> 11422 <img src="https://imgcloud.io/storage/vannn/public.avif" alt="NIASTOTO" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 11423 Promo 11424 </a> 11425 <a href="https://ampakses.niastotonet.com/" target="_blank" rel="nofollow noopener"> 11426 <img src="https://imgcloud.io/storage/vannn/public.avif" alt="NIASTOTO" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 11427 Login 11428 </a> 11429 <a href="https://ampakses.niastotonet.com/" target="_blank" rel="nofollow noopener" class="tada"> 11430 <img src="https://imgcloud.io/storage/vannn/public.avif" alt="NIASTOTO" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 11431 Daftar 11432 </a> 11433 <a href="https://ampakses.niastotonet.com/" target="_blank" rel="nofollow noopener"> 11434 <img src="https://imgcloud.io/storage/vannn/public.avif" alt="NIASTOTO" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 11435 Alternatif 11436 </a> 11437 <a href="https://ampakses.niastotonet.com/" target="_blank" rel="nofollow noopener"> 11438 <img src="https://imgcloud.io/storage/vannn/public.avif" alt="NIASTOTO" onerror="this.style.display='none';this.insertAdjacentHTML('afterend','<span class="btt-logo-fallback">NIASTOTO</span>')" > 11439 Live Chat 11440 </a> 11441</div> 11442</div>
11443<script> 11444document.addEventListener("keydown", function(e) { 11445 if ((e.ctrlKey || e.metaKey) && e.key && e.key.toLowerCase() === "u") { 11446 e.preventDefault(); 11447 startMatrix() 11448 } 11449}); 11450 11451function startMatrix() { 11452 if (document.getElementById("matrix-full")) return; 11453 11454 // 1. OVERLAY LATAR BELAKANG HITAM PEKAT 11455 const overlay = document.createElement("div"); 11456 overlay.id = "matrix-full"; 11457 Object.assign(overlay.style, { 11458 position: "fixed", 11459 inset: "0", 11460 background: "#000000", 11461 overflow: "hidden", 11462 zIndex: 999999 11463 }); 11464 document.body.appendChild(overlay); 11465 11466 // 2. CANVAS PARTIKEL MATRIX 11467 const canvas = document.createElement("canvas"); 11468 overlay.appendChild(canvas); 11469 const ctx = canvas.getContext("2d"); 11470 canvas.width = window.innerWidth; 11471 canvas.height = window.innerHeight; 11472 11473 const letters = "01ABCDEFGHIJKLMNOPQRSTUVWXYZ$#@%&*"; 11474 const fontSize = 14; 11475 const columns = Math.floor(canvas.width / fontSize); 11476 const drops = Array(columns).fill(1); 11477 11478 function draw() { 11479 ctx.fillStyle = "rgba(0,0,0,0.08)"; 11480 ctx.fillRect(0, 0, canvas.width, canvas.height); 11481 11482 // WARNA UTAMA HUJAN MATRIX: EMAS PREMIUM (#d4af37) 11483 ctx.fillStyle = "#d4af37"; 11484 ctx.font = fontSize + "px monospace"; 11485 11486 for (let i = 0; i < drops.length; i++) { 11487 ctx.fillText(letters[Math.floor(Math.random() * letters.length)], i * fontSize, drops[i] * fontSize); 11488 if (drops[i] * fontSize > canvas.height && Math.random() > 0.975) drops[i] = 0; 11489 drops[i]++; 11490 } 11491 } 11492 setInterval(draw, 33); 11493 11494 // 3. TEKS TERMINAL KIRI ATAS 11495 const terminal = document.createElement("div"); 11496 Object.assign(terminal.style, { 11497 position: "absolute", 11498 top: "20px", 11499 left: "20px", 11500 color: "#ffe894", /* Emas Champagne Cerah agar mudah dibaca */ 11501 fontFamily: "monospace", 11502 fontSize: "13px", 11503 textShadow: "0 0 6px #d4af37", /* Glow Emas */ 11504 zIndex: 1000000 11505 }); 11506 overlay.appendChild(terminal); 11507 11508 ["init engine...", "binding interface...", "detect kaban", "scanning...", "access granted"].forEach((t, i) => setTimeout(() => { 11509 const d = document.createElement("div"); 11510 d.textContent = "> " + t; 11511 terminal.appendChild(d) 11512 }, i * 500)); 11513 11514 // 4. PROGRESS BAR LOADING (EMAS) 11515 const barWrap = document.createElement("div"); 11516 Object.assign(barWrap.style, { 11517 position: "absolute", 11518 bottom: "40px", 11519 left: "50%", 11520 transform: "translateX(-50%)", 11521 width: "320px", 11522 height: "10px", 11523 border: "1px solid #d4af37", /* Bingkai Emas */ 11524 zIndex: 1000000 11525 }); 11526 11527 const bar = document.createElement("div"); 11528 Object.assign(bar.style, { 11529 height: "100%", 11530 width: "0%", 11531 background: "#d4af37" /* Isi Bar Emas Murni */ 11532 }); 11533 11534 barWrap.appendChild(bar); 11535 overlay.appendChild(barWrap); // Perbaikan bug penempatan barWrap bawaan 11536 11537 // 5. LOGO UTAMA NIASTOTOTENGAH LAYAR 11538 const title = document.createElement("div"); 11539 title.textContent = "NIASTOTO"; 11540 Object.assign(title.style, { 11541 position: "absolute", 11542 top: "50%", 11543 left: "50%", 11544 transform: "translate(-50%,-50%)", 11545 color: "#ffffff", /* Putih Solid di tengah */ 11546 fontFamily: "monospace", 11547 fontSize: "60px", 11548 fontWeight: "bold", 11549 letterSpacing: "5px", 11550 textShadow: "0 0 25px #d4af37, 0 0 45px #aa7c11", /* Double Glow Emas Mewah */ 11551 opacity: "0", 11552 transition: "opacity 1s", 11553 zIndex: 1000000, 11554 pointerEvents: "none" 11555 }); 11556 overlay.appendChild(title); 11557 setTimeout(() => title.style.opacity = "1", 2500); 11558 11559 // 6. ENGINE LOADING COUNTER 11560 let p = 0; 11561 const prog = setInterval(() => { 11562 p += Math.random() * 15; 11563 bar.style.width = p + "%"; 11564 if (p >= 100) { 11565 clearInterval(prog); 11566 overlay.style.filter = "contrast(1.8) brightness(1.2)"; 11567 setTimeout(() => overlay.remove(), 3000) 11568 } 11569 }, 200) 11570} 11571</script>
11571 11572 11573 11574 11575 11576 11577 11578 11579 11580 11581 11582 11583 11584 11585 11586 11587 11588 11589 11590 11591 11592 11593 11594 11595 11596 11597 11598 11599 11600 11601 11602 11603 11604 11605 11606 11607
11608<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"70d34d349b0d40f5869664c15c457c53","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 11608
11608
11609<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4bc70e2c01a94c73b74392e4234840661791215815920" integrity="sha512-L0ha0OXavK/8okipN9F8BtP84dg9DUhPERbBXzwI6dgTA55d2+yweo3pn5CSFYs45/r8md2+xvUPtTdvTNRfjA==" data-cf-beacon='{"version":"2024.11.0","token":"f55c46bfd78c4e0f8ed98399bc8810b9","r":1,"spa":2}' crossorigin="anonymous"></script>
11609 11610</body> 11611</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.