1<!doctype html> 2<html class="no-js" lang="en"> 3<head> 4<!-- Added by AVADA SEO Suite --> 5 6<!-- /Added by AVADA SEO Suite --> 7 8 <link rel="canonical" href="https://mermaidvenom.com/blogs/news" /> 9 10 11 12<meta name="description" content="Blog Check out the latest posts from Mermaid Venom Mermaid Venom, How to Style an Alt Bride: A Til Death Guide, A Gothic Gift Guide for Spooky Season, How to Create a Gothic Cat Tree: Stylish DIY I..."> 13 14 15<title>News and updates | Mermaid Venom</title> 16 17<!-- secomapp-json-ld --> 18 19<!-- smart-seo-json-ld-store -->
20<script type="application/ld+json"> 21{ 22 "@context": "http://schema.org", 23 "@type": "WebSite", 24 "url": "https://mermaidvenom.com/", 25 "potentialAction": { 26 "@type": "SearchAction", 27 "target": "https://mermaidvenom.com/search?q={search_term_string}", 28 "query-input": "required name=search_term_string" 29 } 30} 31</script>
vendor: 1 bytes, line 31
31
32<script type="application/ld+json"> 33{ 34 "@context": "http://schema.org", 35 "@type": "Organization", 36 "url": "http://mermaidvenom.com"} 37</script>
37 38<!-- End - smart-seo-json-ld-store --> 39 40 41 42<!-- secomapp-json-ld-Breadcrumb -->
43<script type="application/ld+json"> 44 { 45 "@context": "http://schema.org", 46 "@type": "BreadcrumbList", 47 "itemListElement": [{ 48 "@type": "ListItem", 49 "position": 1, 50 "item": { 51 "@type": "Website", 52 "@id": "https://mermaidvenom.com", 53 "name": "Mermaid Venom" 54 } 55 },{ 56 "@type": "ListItem", 57 "position": 2, 58 "item": { 59 "@type": "Blog", 60 "@id": "https://mermaidvenom.com/blogs/news", 61 "name": "Blog" 62 } 63 }] 64 65 } 66</script>
66<!-- secomapp-json-ld-blog --> 67
68<script type="application/ld+json"> 69 70 { 71 "@context" : "http://schema.org", 72 "@type" : "Blog", 73 "url": "/blogs/news", 74 "blogPosts": [ 75 76 { 77 "@context" : "http://schema.org", 78 "@type" : "BlogPosting", 79 "headline" : "How to Style an Alt Bride: A Til Death Guide", 80 "mainEntityOfPage" : "https://mermaidvenom.com/blogs/news/alt-bride-styling-guide", 81 "image": { 82 "@type": "ImageObject", 83 "url": "https://mermaidvenom.com/cdn/shopifycloud/storefront/assets/no-image-2048-a2addb12_1024x1024.gif", 84 "width": 1024, 85 "height": 1024 86 }, 87 "url" : "https://mermaidvenom.com/blogs/news/alt-bride-styling-guide", 88 "datePublished": "2026-08-25 12:28:58 -0400", 89 "dateModified" : "2026-08-25 12:28:58 -0400", 90 "dateCreated": "2026-08-25 10:31:19 -0400", 91 "description": "The alt-bride aesthetic isn't a trend anymore â it's a whole way of getting married. Here's how to build the look, piece by piece, without touching a single pastel.", 92 "author": { 93 "@type": "Person", 94 "name": "Mermaid Venom" 95 }, 96 "publisher": { 97 "@type": "Organization", 98 99 100 "logo": { 101 "@type": "ImageObject", 102 "url": "https://mermaidvenom.com/cdn/shopifycloud/storefront/assets/no-image-2048-a2addb12_1024x1024.gif" 103 }, 104 105 "name": "Mermaid Venom" 106 } 107 }, 108 109 { 110 "@context" : "http://schema.org", 111 "@type" : "BlogPosting", 112 "headline" : "A Gothic Gift Guide for Spooky Season", 113 "mainEntityOfPage" : "https://mermaidvenom.com/blogs/news/gothic-halloween-gift-guide", 114 "image": { 115 "@type": "ImageObject", 116 "url": "https://mermaidvenom.com/cdn/shopifycloud/storefront/assets/no-image-2048-a2addb12_1024x1024.gif", 117 "width": 1024, 118 "height": 1024 119 }, 120 "url" : "https://mermaidvenom.com/blogs/news/gothic-halloween-gift-guide", 121 "datePublished": "2026-08-25 12:28:57 -0400", 122 "dateModified" : "2026-08-25 12:28:57 -0400", 123 "dateCreated": "2026-08-25 10:30:56 -0400", 124 "description": "Ten gothic gifts for the people who never took their black eyeliner off after October ended â from statement home decor to something for the familiar sleeping at the foot of the bed.", 125 "author": { 126 "@type": "Person", 127 "name": "Mermaid Venom" 128 }, 129 "publisher": { 130 "@type": "Organization", 131 132 133 "logo": { 134 "@type": "ImageObject", 135 "url": "https://mermaidvenom.com/cdn/shopifycloud/storefront/assets/no-image-2048-a2addb12_1024x1024.gif" 136 }, 137 138 "name": "Mermaid Venom" 139 } 140 }, 141 142 { 143 "@context" : "http://schema.org", 144 "@type" : "BlogPosting", 145 "headline" : "How to Create a Gothic Cat Tree: Stylish DIY Ideas for Spooky Pet Parents", 146 "mainEntityOfPage" : "https://mermaidvenom.com/blogs/news/gothic-cat-tree-diy-spooky-pet-parents-6313-54", 147 "image": { 148 "@type": "ImageObject", 149 "url": "https://mermaidvenom.com/cdn/shopifycloud/storefront/assets/no-image-2048-a2addb12_1024x1024.gif", 150 "width": 1024, 151 "height": 1024 152 }, 153 "url" : "https://mermaidvenom.com/blogs/news/gothic-cat-tree-diy-spooky-pet-parents-6313-54", 154 "datePublished": "2026-04-17 13:55:07 -0400", 155 "dateModified" : "2026-04-17 13:55:07 -0400", 156 "dateCreated": "2026-04-17 13:54:33 -0400", 157 158 "author": { 159 "@type": "Person", 160 "name": "Elise Sorrentino" 161 }, 162 "publisher": { 163 "@type": "Organization", 164 165 166 "logo": { 167 "@type": "ImageObject", 168 "url": "https://mermaidvenom.com/cdn/shopifycloud/storefront/assets/no-image-2048-a2addb12_1024x1024.gif" 169 }, 170 171 "name": "Mermaid Venom" 172 } 173 }, 174 175 { 176 "@context" : "http://schema.org", 177 "@type" : "BlogPosting", 178 "headline" : "Creepy Cute Plushies", 179 "mainEntityOfPage" : "https://mermaidvenom.com/blogs/news/creepy-cute-horror-plushies", 180 "image": { 181 "@type": "ImageObject", 182 "url": "https://mermaidvenom.com/cdn/shop/articles/creepy-cute-plushies-969998_3f66fd01-b231-4501-8b43-afb1bc5d4ddf_1024x1024.jpg?v=1776447726", 183 "width": 1024, 184 "height": 1024 185 }, 186 "url" : "https://mermaidvenom.com/blogs/news/creepy-cute-horror-plushies", 187 "datePublished": "2023-09-05 12:24:29 -0400", 188 "dateModified" : "2023-09-05 12:24:29 -0400", 189 "dateCreated": "2023-09-05 12:24:20 -0400", 190 191 "author": { 192 "@type": "Person", 193 "name": "Elise Sorrentino" 194 }, 195 "publisher": { 196 "@type": "Organization", 197 198 199 "logo": { 200 "@type": "ImageObject", 201 "url": "https://mermaidvenom.com/cdn/shop/articles/creepy-cute-plushies-969998_3f66fd01-b231-4501-8b43-afb1bc5d4ddf_1024x1024.jpg?v=1776447726" 202 }, 203 204 "name": "Mermaid Venom" 205 } 206 }, 207 208 { 209 "@context" : "http://schema.org", 210 "@type" : "BlogPosting", 211 "headline" : "Take a Look at Mermaid Venom's Latest Products and Get 30% Off!", 212 "mainEntityOfPage" : "https://mermaidvenom.com/blogs/news/take-a-look-at-mermaid-venoms-latest-products-and-get-30-off", 213 "image": { 214 "@type": "ImageObject", 215 "url": "https://mermaidvenom.com/cdn/shop/articles/take-a-look-at-mermaid-venoms-latest-products-and-get-30-off-425580_8c5fbdd5-5389-44b9-a9ef-5de6574a1acd_1024x1024.jpg?v=1776447726", 216 "width": 1024, 217 "height": 1024 218 }, 219 "url" : "https://mermaidvenom.com/blogs/news/take-a-look-at-mermaid-venoms-latest-products-and-get-30-off", 220 "datePublished": "2021-02-22 15:14:05 -0500", 221 "dateModified" : "2021-02-22 15:14:05 -0500", 222 "dateCreated": "2021-02-22 15:14:05 -0500", 223 224 "author": { 225 "@type": "Person", 226 "name": "Elise Sorrentino" 227 }, 228 "publisher": { 229 "@type": "Organization", 230 231 232 "logo": { 233 "@type": "ImageObject", 234 "url": "https://mermaidvenom.com/cdn/shop/articles/take-a-look-at-mermaid-venoms-latest-products-and-get-30-off-425580_8c5fbdd5-5389-44b9-a9ef-5de6574a1acd_1024x1024.jpg?v=1776447726" 235 }, 236 237 "name": "Mermaid Venom" 238 } 239 }, 240 241 { 242 "@context" : "http://schema.org", 243 "@type" : "BlogPosting", 244 "headline" : "Things to Do (And Not Do) During Tonight's Full Corn Moon", 245 "mainEntityOfPage" : "https://mermaidvenom.com/blogs/news/things-to-do-and-not-do-during-tonights-full-corn-moon", 246 "image": { 247 "@type": "ImageObject", 248 "url": "https://mermaidvenom.com/cdn/shop/articles/things-to-do-and-not-do-during-tonights-full-corn-moon-379384_3a2d1e22-4a34-4d76-878d-9502a46193c0_1024x1024.jpg?v=1776447725", 249 "width": 1024, 250 "height": 1024 251 }, 252 "url" : "https://mermaidvenom.com/blogs/news/things-to-do-and-not-do-during-tonights-full-corn-moon", 253 "datePublished": "2020-09-01 15:05:00 -0400", 254 "dateModified" : "2020-09-01 15:05:00 -0400", 255 "dateCreated": "2020-09-01 15:06:04 -0400", 256 257 "author": { 258 "@type": "Person", 259 "name": "Mermaid Venom" 260 }, 261 "publisher": { 262 "@type": "Organization", 263 264 265 "logo": { 266 "@type": "ImageObject", 267 "url": "https://mermaidvenom.com/cdn/shop/articles/things-to-do-and-not-do-during-tonights-full-corn-moon-379384_3a2d1e22-4a34-4d76-878d-9502a46193c0_1024x1024.jpg?v=1776447725" 268 }, 269 270 "name": "Mermaid Venom" 271 } 272 }, 273 274 { 275 "@context" : "http://schema.org", 276 "@type" : "BlogPosting", 277 "headline" : "On Fridayâs We Wear Black", 278 "mainEntityOfPage" : "https://mermaidvenom.com/blogs/news/on-friday-s-we-wear-black", 279 "image": { 280 "@type": "ImageObject", 281 "url": "https://mermaidvenom.com/cdn/shop/articles/on-fridays-we-wear-black-949031_04e8bfa0-8fff-441e-ba6e-4a19d2acc0a3_1024x1024.jpg?v=1776447726", 282 "width": 1024, 283 "height": 1024 284 }, 285 "url" : "https://mermaidvenom.com/blogs/news/on-friday-s-we-wear-black", 286 "datePublished": "2020-08-14 15:49:00 -0400", 287 "dateModified" : "2020-08-14 15:49:00 -0400", 288 "dateCreated": "2020-08-14 15:50:54 -0400", 289 290 "author": { 291 "@type": "Person", 292 "name": "Elise Sorrentino" 293 }, 294 "publisher": { 295 "@type": "Organization", 296 297 298 "logo": { 299 "@type": "ImageObject", 300 "url": "https://mermaidvenom.com/cdn/shop/articles/on-fridays-we-wear-black-949031_04e8bfa0-8fff-441e-ba6e-4a19d2acc0a3_1024x1024.jpg?v=1776447726" 301 }, 302 303 "name": "Mermaid Venom" 304 } 305 } 306 307 ] 308 309 } 310</script>
310 311 312<!-- Secomapp-Redirect.liquid --> 313 314 315 316 <meta charset="utf-8"> 317 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 318 <meta name="viewport" content="width=device-width,initial-scale=1"> 319 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/pagefly-main.css?v=113708504132931128161639205235" as="style"> 320 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/pagefly.blog.css?v=152267809004655492651639205236" as="style"> 321<!-- <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/xo-scroll2top.css?v=112806898632873521361639205247" as="style"> --> 322 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/theme.scss.css?v=110375381177284928651789738305" as="style"> 323 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/hs-sl-cart.js?v=25761876551099698991639205228" as="script"> 324 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/hs-sl-rewards.js?v=104003053357846808101639205230" as="script"> 325 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/hs-sl-swiper.js?v=173349997943008961639205230" as="script"> 326 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/hs-sl-upsell.js?v=113384855114960082981639205231" as="script"> 327 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/lazysizes.min.js?v=155223123402716617051639205235" as="script"> 328 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/postscript-sdk.js?v=5214938889806146221639205239" as="script"> 329 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/sca_affiliate.js?v=9574" as="script"> 330 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/vendor.js?v=141188699437036237251639205246" as="script"> 331 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/vncv.js?v=126349281556164470901639205246" as="script"> 332 <link rel="preload" href="//mermaidvenom.com/cdn/shop/t/24/assets/theme.js?v=129662135846663698751639205262" as="script"> 333 <link rel="preconnect" href="https://aliorders.fireapps.io"> 334 <link rel="preconnect" href="https://monorail-edge.shopifysvc.com"> 335 <link rel="preconnect" href="https://cdn.xopify.com"> 336 <meta name="theme-color" content="#000000"> 337 338 339 <link rel="shortcut icon" href="//mermaidvenom.com/cdn/shop/files/new_b4a4c6b6-bf58-4bb1-be2d-98190239d384_32x32.png?v=1614308166" type="image/png" /> 340 341 342 <link rel="canonical" href="https://mermaidvenom.com/blogs/news"> 343 344 345 346 347 348 <!-- /snippets/social-meta-tags.liquid --> 349 350 351 352 353<meta property="og:site_name" content="Mermaid Venom"> 354<meta property="og:url" content="https://mermaidvenom.com/blogs/news"> 355<meta property="og:title" content="Blog"> 356<meta property="og:type" content="website"> 357<meta property="og:description" content="Mermaid Venom is a gothic and alt-fashion shop for lovers of horror, the occult, and witchy style. Shop dark clothing, jewelry and accessories, home decor, shoes, drinkware, pet accessories, plushies, and Til Death Bridal, all with a magical, macabre twist."> 358 359<meta property="og:image" content="http://mermaidvenom.com/cdn/shop/files/IMG_0178-removebg-preview_6db5344c-3a9f-4e96-a7f2-84d48cbed449_1200x1200.png?v=1719356282"> 360<meta property="og:image:secure_url" content="https://mermaidvenom.com/cdn/shop/files/IMG_0178-removebg-preview_6db5344c-3a9f-4e96-a7f2-84d48cbed449_1200x1200.png?v=1719356282"> 361 362 363 <meta name="twitter:site" content="@MermaidVenom"> 364 365<meta name="twitter:card" content="summary_large_image"> 366<meta name="twitter:title" content="Blog"> 367<meta name="twitter:description" content="Mermaid Venom is a gothic and alt-fashion shop for lovers of horror, the occult, and witchy style. Shop dark clothing, jewelry and accessories, home decor, shoes, drinkware, pet accessories, plushies, and Til Death Bridal, all with a magical, macabre twist."> 368 369 370 <link href="//mermaidvenom.com/cdn/shop/t/24/assets/theme.scss.css?v=110375381177284928651789738305" rel="stylesheet" type="text/css" media="all" /> 371 372
372<script> 373 window.theme = window.theme || {}; 374 theme.strings = { 375 cartEmpty: "Your cart is currently empty.", 376 savingHtml: "You're saving [savings]", 377 addToCart: "Add to cart", 378 soldOut: "Sold out", 379 unavailable: "Unavailable", 380 addressError: "Error looking up that address", 381 addressNoResults: "No results for that address", 382 addressQueryLimit: "You have exceeded the Google API usage limit. Consider upgrading to a \u003ca href=\"https:\/\/developers.google.com\/maps\/premium\/usage-limits\"\u003ePremium Plan\u003c\/a\u003e.", 383 authError: "There was a problem authenticating your Google Maps API Key." 384 }; 385 theme.settings = { 386 cartType: "page", 387 moneyFormat: "${{amount}}" 388 }; 389 </script>
vendor: 1 bytes, line 389
389
390<script>(function(w,d,t,r,u){var f,n,i;w[u]=w[u]||[],f=function(){var o={ti:"187049475", enableAutoSpaTracking: true};o.q=w[u],w[u]=new UET(o),w[u].push("pageLoad")},n=d.createElement(t),n.src=r,n.async=1,n.onload=n.onreadystatechange=function(){var s=this.readyState;s&&s!=="loaded"&&s!=="complete"||(f(),n.onload=n.onreadystatechange=null)},i=d.getElementsByTagName(t)[0],i.parentNode.insertBefore(n,i)})(window,document,"script","//bat.bing.com/bat.js","uetq");</script>
390 391
391<script src="//mermaidvenom.com/cdn/shop/t/24/assets/lazysizes.min.js?v=155223123402716617051639205235" async="async"></script>
391 392 393 394 395
395<script src="//mermaidvenom.com/cdn/shop/t/24/assets/vendor.js?v=141188699437036237251639205246" defer="defer"></script>
395 396 397
397<script src="//mermaidvenom.com/cdn/shopifycloud/storefront/assets/themes_support/option_selection-b017cd28.js" defer="defer"></script>
397 398 399
399<script src="//mermaidvenom.com/cdn/shop/t/24/assets/theme.js?v=129662135846663698751639205262" defer="defer"></script>
399<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
399<meta name="google-site-verification" content="gL57k-OxMQ1l-EJp_yh5iH1YUY-KP-lRMhWAkmEc95U"> 400<meta name="google-site-verification" content="84vzDi2ippr7M-XeebdDxUdXqYZ3uUBl7zgAMlxbPFw"> 401<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/10425368661/digital_wallets/dialog"> 402<meta id="in-context-paypal-metadata" data-shop-id="10425368661" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD"> 403<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" type="application/atom+xml" title="Feed" href="/blogs/news.atom" /> 404<link rel="next" href="/blogs/news?page=2"> 405<link rel="alternate" hreflang="x-default" href="https://mermaidvenom.com/blogs/news"> 406<link rel="alternate" hreflang="en" href="https://mermaidvenom.com/blogs/news"> 407<link rel="alternate" hreflang="es" href="https://mermaidvenom.com/es/blogs/news"> 408<link rel="alternate" hreflang="fr" href="https://mermaidvenom.com/fr/blogs/news"> 409<link rel="alternate" hreflang="it" href="https://mermaidvenom.com/it/blogs/news"> 410<link rel="alternate" hreflang="de" href="https://mermaidvenom.com/de/blogs/news"> 411<link rel="alternate" hreflang="ja" href="https://mermaidvenom.com/ja/blogs/news"> 412<link rel="alternate" hreflang="zh-Hans" href="https://mermaidvenom.com/zh/blogs/news">
413<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
413 414<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
415<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=10425368661" crossorigin="anonymous"></script>
vendor: 1 bytes, line 415
415
416<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":10425368661,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/10425368661","merchantName":"Mermaid Venom","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Mermaid Venom","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 416
416
417<script id="shopify-features" type="application/json">{"accessToken":"ab6eb6100c256b90fbe5099398ee68ba","betas":["rich-media-storefront-analytics"],"domain":"mermaidvenom.com","predictiveSearch":true,"shopId":10425368661,"locale":"en"}</script>
vendor: 1 bytes, line 417
417
418<script>var Shopify = Shopify || {}; 419Shopify.shop = "mermaid-vemon.myshopify.com"; 420Shopify.locale = "en"; 421Shopify.currency = {"active":"USD","rate":"1.0"}; 422Shopify.country = "US"; 423Shopify.theme = {"name":"Optimization BT","id":121070059605,"schema_name":"Boundless","schema_version":"10.0.4","theme_store_id":766,"role":"main"}; 424Shopify.theme.handle = "null"; 425Shopify.theme.style = {"id":null,"handle":null}; 426Shopify.cdnHost = "mermaidvenom.com/cdn"; 427Shopify.routes = Shopify.routes || {}; 428Shopify.routes.root = "/"; 429Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js"; 430Shopify.SignInWithShop = Shopify.SignInWithShop || {}; 431Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {}; 432Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 432
432
433<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 433
433
434<script>!function(o){function n(){var o=[];function n(){o.push(Array.prototype.slice.apply(arguments))}return n.q=o,n}var t=o.Shopify=o.Shopify||{};t.loadFeatures=n(),t.autoloadFeatures=n()}(window);</script>
vendor: 1 bytes, line 434
434
435<script> 436 window.ShopifyPay = window.ShopifyPay || {}; 437 window.ShopifyPay.apiHost = "shop.app\/pay"; 438 window.ShopifyPay.redirectState = null; 439</script>
vendor: 1 bytes, line 439
439
440<script> 441 window.Shopify = window.Shopify || {}; 442 window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {}; 443 window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 }; 444 window.Shopify.SignInWithShop.eligible = true; 445</script>
vendor: 1 bytes, line 445
445
446<script id="shop-js-analytics" type="application/json">{"pageType":"blog"}</script>
vendor: 1 bytes, line 446
446
447<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"></script>
vendor: 1 bytes, line 447
447
448<script type="module"> 449 await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js"); 450 451 window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true}); 452 453</script>
vendor: 1 bytes, line 453
453
454<script> 455 window.Shopify = window.Shopify || {}; 456 if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {}; 457 window.Shopify.featureAssets['shop-js'] = {"avatar":["modules/v2/loader.avatar.en.esm.js"],"checkout-modal":["modules/v2/loader.checkout-modal.en.esm.js"],"init-customer-accounts-sign-up":["modules/v2/loader.init-customer-accounts-sign-up.en.esm.js"],"init-customer-accounts":["modules/v2/loader.init-customer-accounts.en.esm.js"],"init-fed-cm":["modules/v2/loader.init-fed-cm.en.esm.js"],"init-shop-cart-sync":["modules/v2/loader.init-shop-cart-sync.en.esm.js"],"init-shop-email-lookup-coordinator":["modules/v2/loader.init-shop-email-lookup-coordinator.en.esm.js"],"init-shop-for-new-customer-accounts":["modules/v2/loader.init-shop-for-new-customer-accounts.en.esm.js"],"init-shop-user-recognition":["modules/v2/loader.init-shop-user-recognition.en.esm.js"],"init-windoid":["modules/v2/loader.init-windoid.en.esm.js"],"lead-capture":["modules/v2/loader.lead-capture.en.esm.js"],"listener":["modules/v2/loader.listener.en.esm.js"],"pay-button":["modules/v2/loader.pay-button.en.esm.js"],"payment-terms":["modules/v2/loader.payment-terms.en.esm.js"],"shop-button":["modules/v2/loader.shop-button.en.esm.js"],"shop-cart-sync":["modules/v2/loader.shop-cart-sync.en.esm.js"],"shop-cash-offers":["modules/v2/loader.shop-cash-offers.en.esm.js"],"shop-follow-button":["modules/v2/loader.shop-follow-button.en.esm.js"],"shop-login-button":["modules/v2/loader.shop-login-button.en.esm.js"],"shop-login":["modules/v2/loader.shop-login.en.esm.js"],"shop-toast-manager":["modules/v2/loader.shop-toast-manager.en.esm.js"],"shop-user-recognition":["modules/v2/loader.shop-user-recognition.en.esm.js"]}; 458</script>
vendor: 1 bytes, line 458
458
459<script>(function() { 460 var isLoaded = false; 461 function asyncLoad() { 462 if (isLoaded) return; 463 isLoaded = true; 464 var urls = ["","",""]; 465 for (var i = 0; i < urls.length; i++) { 466 var s = document.createElement('script'); 467 s.type = 'text/javascript'; 468 s.async = true; 469 s.src = urls[i]; 470 var x = document.getElementsByTagName('script')[0]; 471 x.parentNode.insertBefore(s, x); 472 } 473 }; 474 if(window.attachEvent) { 475 window.attachEvent('onload', asyncLoad); 476 } else { 477 window.addEventListener('load', asyncLoad, false); 478 } 479})();</script>
vendor: 1 bytes, line 479
479
480<script id="__st">var __st={"a":10425368661,"offset":-14400,"reqid":"a36d0db1-df3c-43ec-89b4-f3d92b066c2a-1790480728","pageurl":"mermaidvenom.com\/blogs\/news","s":"blogs-26376306773","u":"957cbbaa9beb","p":"blog","rtyp":"blog","rid":26376306773};</script>
vendor: 1 bytes, line 480
480
481<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 481
481
482<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.3.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'])})(!0,!1)}();</script>
vendor: 1 bytes, line 482
482
483<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//mermaidvenom.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 483
483
484<script>(function () {var userAgent = navigator.userAgent;var platform = navigator.platform;var maxTouchPoints = navigator.maxTouchPoints || 0;var isIOS = /iPad|iPhone|iPod/.test(platform) || (platform === 'MacIntel' && maxTouchPoints > 1);var isMacSafari = platform.indexOf('Mac') === 0 && /Safari/.test(userAgent) && !/Chrome|Chromium|CriOS|FxiOS|Edg|OPR|Android/.test(userAgent);var isAppleSafari = isIOS || isMacSafari;if (isAppleSafari) {fetch('/sf_private_access_tokens' + location.search).catch(function () {});}function browserMajorVersion(pattern) {var match = userAgent.match(pattern);return match ? parseInt(match[1], 10) : null;}function shouldLoadAutosizesPolyfill() {if (!window.PerformanceObserver?.supportedEntryTypes?.includes('paint')) {return false;}var chromeVersion = browserMajorVersion(/Chrome\/(\d+)/);if (chromeVersion !== null) {return chromeVersion < 126;}var firefoxVersion = browserMajorVersion(/Firefox\/(\d+)/);if (firefoxVersion !== null) {return firefoxVersion < 150;}var safariVersion = isAppleSafari ? browserMajorVersion(/Version\/(\d+).*Safari\//) : null;if (safariVersion !== null) {return safariVersion < 27;}return true;}if (shouldLoadAutosizesPolyfill()) {var autosizesScript = document.createElement('script');autosizesScript.async = true;autosizesScript.crossOrigin = 'anonymous';autosizesScript.src = "//mermaidvenom.com/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
484<script crossorigin="anonymous" defer="defer" src="//mermaidvenom.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 484
484
485<script id="shopify-origin-trials" async="async" integrity="sha256-qJbe/jEZBHtr5W/BlA2cKAz3vkXu6vJQyLjgvgCC86g=" src="//cdn.shopify.com/shopifycloud/storefront/assets/storefront/origin_trials-318ab40a.js" crossorigin="anonymous" onload="window.__shopifyOriginTrialsDone = true" onerror="window.__shopifyOriginTrialsDone = true"></script>
vendor: 1 bytes, line 485
485
486<script> 487 window.Shopify = window.Shopify || {}; 488 window.Shopify.MCP = window.Shopify.MCP || {}; 489 window.Shopify.MCP.enabled = true; 490 window.Shopify.MCP.shop = "mermaid-vemon.myshopify.com"; 491 window.Shopify.MCP.mcpEndpoint = "https:\/\/mermaidvenom.com\/api\/mcp"; 492 window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n - What is your return policy?\n - What is your shipping policy?\n - What is your phone number?\n - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}]; 493</script>
vendor: 1 bytes, line 493
493
494<script>(()=>{var d="shopify:webmcp_adapter_loaded",n=Symbol.for("shopify.webmcp_adapter_loading");function s(c,a,{win:r=window,doc:o=document}={}){function p(){try{return r.localStorage.getItem(d)==="true"}catch{return!1}}function l(){try{r.localStorage.setItem(d,"true")}catch{}}function u(){return typeof(o.modelContext||r.navigator?.modelContext)?.registerTool=="function"}function f(){if(r[n]||!u())return;let t=o.head||o.getElementsByTagName("head")[0];if(!t)return;let e=o.createElement("script");e.type="module",e.crossOrigin="anonymous",a&&(e.integrity=a),e.src=c,e.addEventListener("load",l,{once:!0}),e.addEventListener("error",()=>{r[n]=!1},{once:!0}),t.appendChild(e),r[n]=!0}function _(t){let e=o.getElementById("shopify-origin-trials");if(!e||r.__shopifyOriginTrialsDone){t();return}e.addEventListener("load",t,{once:!0}),e.addEventListener("error",t,{once:!0})}function i(){_(()=>r.setTimeout(f,0))}function m(){o.addEventListener("DOMContentLoaded",i,{once:!0})}p()?i():m()}s("\/\/mermaidvenom.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})(); 495</script>
vendor: 1 bytes, line 495
495
496<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://mermaidvenom.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}}; 497</script>
vendor: 1 bytes, line 497
497
498<script data-source-attribution="shopify.dynamic_checkout.buyer_consent"> 499 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); 500</script>
vendor: 1 bytes, line 500
500
501<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})}})); 502</script>
vendor: 1 bytes, line 502
502
503<script id='scb4127' type='text/javascript' async='' src='https://mermaidvenom.com/cdn/shopifycloud/privacy-banner/storefront-banner.js'></script>
503<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://mermaidvenom.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous"> 504<style id="shopify-accelerated-checkout-cart"> 505 #shopify-buyer-consent { 506 margin-top: 1em; 507 display: inline-block; 508 width: 100%; 509} 510 511#shopify-buyer-consent.hidden { 512 display: none; 513} 514 515#shopify-subscription-policy-button { 516 background: none; 517 border: none; 518 padding: 0; 519 text-decoration: underline; 520 font-size: inherit; 521 cursor: pointer; 522} 523 524#shopify-subscription-policy-button::before { 525 box-shadow: none; 526} 527 528 </style> 529
530<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
vendor: 1 bytes, line 530
530
531<script>window.BOLD = window.BOLD || {}; 532 window.BOLD.common = window.BOLD.common || {}; 533 window.BOLD.common.Shopify = window.BOLD.common.Shopify || {}; 534 window.BOLD.common.Shopify.shop = { 535 domain: 'mermaidvenom.com', 536 permanent_domain: 'mermaid-vemon.myshopify.com', 537 url: 'https://mermaidvenom.com', 538 secure_url: 'https://mermaidvenom.com', 539 money_format: "${{amount}}", 540 currency: "USD" 541 }; 542 window.BOLD.common.Shopify.customer = { 543 id: null, 544 tags: null, 545 }; 546 window.BOLD.common.Shopify.cart = {"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":"USD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}; 547 window.BOLD.common.template = 'blog';window.BOLD.common.Shopify.formatMoney = function(money, format) { 548 function n(t, e) { 549 return "undefined" == typeof t ? e : t 550 } 551 function r(t, e, r, i) { 552 if (e = n(e, 2), 553 r = n(r, ","), 554 i = n(i, "."), 555 isNaN(t) || null == t) 556 return 0; 557 t = (t / 100).toFixed(e); 558 var o = t.split(".") 559 , a = o[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g, "$1" + r) 560 , s = o[1] ? i + o[1] : ""; 561 return a + s 562 } 563 "string" == typeof money && (money = money.replace(".", "")); 564 var i = "" 565 , o = /\{\{\s*(\w+)\s*\}\}/ 566 , a = format || window.BOLD.common.Shopify.shop.money_format || window.Shopify.money_format || "$ {{ amount }}"; 567 switch (a.match(o)[1]) { 568 case "amount": 569 i = r(money, 2, ",", "."); 570 break; 571 case "amount_no_decimals": 572 i = r(money, 0, ",", "."); 573 break; 574 case "amount_with_comma_separator": 575 i = r(money, 2, ".", ","); 576 break; 577 case "amount_no_decimals_with_comma_separator": 578 i = r(money, 0, ".", ","); 579 break; 580 case "amount_with_space_separator": 581 i = r(money, 2, " ", ","); 582 break; 583 case "amount_no_decimals_with_space_separator": 584 i = r(money, 0, " ", ","); 585 break; 586 case "amount_with_apostrophe_separator": 587 i = r(money, 2, "'", "."); 588 break; 589 } 590 return a.replace(o, i); 591 }; 592 window.BOLD.common.Shopify.saveProduct = function (handle, product) { 593 if (typeof handle === 'string' && typeof window.BOLD.common.Shopify.products[handle] === 'undefined') { 594 if (typeof product === 'number') { 595 window.BOLD.common.Shopify.handles[product] = handle; 596 product = { id: product }; 597 } 598 window.BOLD.common.Shopify.products[handle] = product; 599 } 600 }; 601 window.BOLD.common.Shopify.saveVariant = function (variant_id, variant) { 602 if (typeof variant_id === 'number' && typeof window.BOLD.common.Shopify.variants[variant_id] === 'undefined') { 603 window.BOLD.common.Shopify.variants[variant_id] = variant; 604 } 605 };window.BOLD.common.Shopify.products = window.BOLD.common.Shopify.products || {}; 606 window.BOLD.common.Shopify.variants = window.BOLD.common.Shopify.variants || {}; 607 window.BOLD.common.Shopify.handles = window.BOLD.common.Shopify.handles || {};window.BOLD.common.Shopify.saveProduct(null, null);window.BOLD.apps_installed = {"Loyalties":2,"Recurring Orders":1} || {};window.BOLD.common.Shopify.metafields = window.BOLD.common.Shopify.metafields || {};window.BOLD.common.Shopify.metafields["bold_rp"] = {"recurring_type":1};window.BOLD.common.Shopify.metafields["bold_csp_defaults"] = {};window.BOLD.common.cacheParams = window.BOLD.common.cacheParams || {}; 608</script>
608<!-- __LXV: 1789615327685;__LXR: https://loox.io;__LXC: N1WbMhyfKw; -->
608<script>var loox_global_hash = '1789615327685'; 609var loox_bundle_reviews_enabled = false;</script>
609<style>.loox-reviews-default { max-width: 1200px; margin: 0 auto; }.loox-rating .loox-icon { color:#DAC08E; } 610:root { --lxs-rating-icon-color: #DAC08E; }</style><svg xmlns="http://www.w3.org/2000/svg" style="display: none" id="loox-rating-icon-svg-store"> 611 <defs /> 612 <symbol id="looxicons-rating-icon-fill" viewBox="0 0 24 24" fill="currentcolor"> 613 <path 614 d="M12 0a10.799 10.799 0 0 1 10.8 10.8v8.998a4.2 4.2 0 0 1-7.668 2.371 3.599 3.599 0 0 1-6.267 0 4.2 4.2 0 0 1-7.658-2.14l-.006-.232V10.8A10.8 10.8 0 0 1 12 0Zm0 11.999c-1.326 0-2.4 1.344-2.4 3s1.074 3 2.4 3c1.326 0 2.4-1.344 2.4-3s-1.074-3-2.4-3Zm-3-4.8a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6Zm6 0a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6Z" 615 /> 616 </symbol> 617 <symbol id="looxicons-rating-icon-line" viewBox="0 0 24 24" fill="currentcolor"> 618 <path 619 d="M12 0a10.799 10.799 0 0 1 10.8 10.8v8.998a4.2 4.2 0 0 1-7.668 2.371 3.599 3.599 0 0 1-6.267 0 4.2 4.2 0 0 1-7.658-2.14l-.006-.232V10.8A10.8 10.8 0 0 1 12 0Zm0 2.4a8.4 8.4 0 0 0-8.394 8.111L3.6 10.8v8.934l.002.166a1.8 1.8 0 0 0 3.174 1.056l.105-.14a2.4 2.4 0 0 1 4.072.171 1.199 1.199 0 0 0 2.087.004 2.401 2.401 0 0 1 3.955-.334l.117.156a1.8 1.8 0 0 0 3.28-.84l.006-.174V10.8A8.4 8.4 0 0 0 12 2.4Zm0 9.599c1.326 0 2.4 1.344 2.4 3s-1.074 3-2.4 3c-1.326 0-2.4-1.344-2.4-3s1.074-3 2.4-3Zm-3-4.8a1.8 1.8 0 1 1 0 3.6 1.8 1.8 0 0 1 0-3.6Zm6 0a1.8 1.8 0 1 1 0 3.6 1.8 1.8 0 0 1 0-3.6Z" 620 /> 621 </symbol> 622 <defs> 623 <style> 624 .lx-icon-fill { 625 --lx-fill-width: calc(100% - var(--lx-rating-percent, 0%)); 626 clip-path: inset(0 var(--lx-fill-width, 0) 0 0); 627 } 628 .lx-icon-line { 629 clip-path: inset(0 0 0 var(--lx-rating-percent, 0%)); 630 } 631 [data-lx-fill='empty'] { 632 --lx-rating-percent: 0%; 633 } 634 [data-lx-fill='half'] { 635 --lx-rating-percent: 50%; 636 } 637 [data-lx-fill='full'] { 638 --lx-rating-percent: 100%; 639 } 640 </style> 641 642 <g id="looxicons-rating-icon"> 643 <use href="#looxicons-rating-icon-line" class="lx-icon-line"></use> 644 <use href="#looxicons-rating-icon-fill" class="lx-icon-fill"></use> 645 </g> 646 </defs> 647</svg> 648 649 650 651 652<!--
652<script src="https://cdn.younet.network/main.js" defer="defer" ></script>
652 --> 653 654<!-- <link href="//mermaidvenom.com/cdn/shop/t/24/assets/paymentfont.scss.css?v=94762929284206309931789738305" rel="stylesheet" type="text/css" media="all" /> --> 655 656 657 658 659 660 661<!--
661<script src="https://d9fvwtvqz2fm1.cloudfront.net/shop/js/discount-on-cart-pro.min.js?shop=mermaid-vemon.myshopify.com" type="text/javascript" defer="defer"></script>
661 --> 662 663 664
664<script id="omgfbc-script" type='text/javascript' data-type="custom"> 665 var facebookChatSettings = {"id":"59253","shop":"mermaid-vemon.myshopify.com","script_tag_id":"132615733333","page_info":{"user_name":"Elise Maria Sorrentino","access_token":"EAAbSADU4UKABAG8z9AuWNudFYNAvNtZCYLmbtFGdVeb88dW6fvFZBYJZBI2YmuK3R7bk3Mr0EvzALSZA7al5fx2MZAsNT4WyoZAnK5gK7QZCqyxgktqIFkVOjzk4K2jC8ZBZB4UgH9MAX3pvQ4LsXtSQcNYyMKIxu5NBNAwZA6ZCUL32VkUZBq0imv2GYH6ZAF2i3GHw6RwfmxhKa4AZDZD","category":"Women's Clothing Store","category_list":[{"id":"128753240528981","name":"Women's Clothing Store"}],"name":"Mermaid Venom","id":"107403157325090","tasks":["ANALYZE","ADVERTISE","MESSAGING","MODERATE","CREATE_CONTENT","MANAGE"]},"language":"en_US","position":"0","greeting_message":"Hi! How can we help you?","icon_type":"icon_5","icon_text":"Chat With Us","tab_size":"small","auto_display":"0","tab_color":"#ffffff","icon_text_color":"#de66f6","theme_color":"#bd10e0","custom_css":{"status":false,"code":""},"working_time":{"status":"1","start":"01:00","end":"23:59","time_zone":"America\/Denver","not_available_option":"noneOpt","email":{"username":"","password":"","smtp":"smtp.gmail.com","port":"465","encryption":"ssl"},"fb_messages":"It's none - working time. We'll be back and support you!"},"status_connect":"2","app_status":"1","device_target":"0","page_target":"0","margin_bottom":"0","chat_type":"0","exclude_pages":["template-cart"],"specific_pages":["template-index"],"plan":"free","active_plan_at":"1631467554","last_access":"1631467563","deleted":"0","shop_info":{"id":10425368661,"name":"Mermaid Venom","email":"[email protected]","domain":"mermaidvenom.com","province":"Florida","country":"US","address1":"2091 NE 36th St ","zip":"33074","city":"Lighthouse Point","source":null,"phone":"9542755541","latitude":null,"longitude":null,"primary_locale":"en","address2":"#5096","created_at":"2019-09-05T17:02:38-04:00","updated_at":"2020-12-05T18:55:12-05:00","country_code":"US","country_name":"United States","currency":"USD","customer_email":"[email protected]","timezone":"(GMT-05:00) America\/New_York","iana_timezone":"America\/New_York","shop_owner":"Elise Sorrentino","money_format":"$","money_with_currency_format":"$ USD","weight_unit":"lb","province_code":"FL","taxes_included":false,"auto_configure_tax_inclusivity":null,"tax_shipping":null,"county_taxes":true,"plan_display_name":"Basic Shopify","plan_name":"basic","has_discounts":true,"has_gift_cards":true,"myshopify_domain":"mermaid-vemon.myshopify.com","google_apps_domain":null,"google_apps_login_enabled":null,"money_in_emails_format":"$","money_with_currency_in_emails_format":"$ USD","eligible_for_payments":true,"requires_extra_payments_agreement":false,"password_enabled":false,"has_storefront":true,"eligible_for_card_reader_giveaway":true,"finances":true,"primary_location_id":18761449557,"cookie_consent_level":"implicit","visitor_tracking_consent_preference":"allow_all","force_ssl":true,"checkout_api_supported":true,"multi_location_enabled":true,"setup_required":false,"pre_launch_enabled":false,"enabled_presentment_currencies":["AUD","CAD","DKK","EUR","GBP","HKD","JPY","NZD","SEK","SGD","USD"]},"weekdays":[{"name":"Sunday","id":"0"},{"name":"Monday","id":"1"},{"name":"Tuesday","id":"2"},{"name":"Wednesday","id":"3"},{"name":"Thursday","id":"4"},{"name":"Friday","id":"5"},{"name":"Saturday","id":"6"}],"show_after":"0","update_cache":"0","tab_style":"two_box","version_app":"1","theme_publish":"0","display_mode":"customize","enable_fbChat_btn":"1","setting_page":"2","front_check":"2","error_connect_page":"{\"show\":false,\"errorAdmin\":0,\"errorAge\":0,\"errorCountry\":0,\"errorPrivate\":0}","white_list_domain":"","customer_question":"","guide_step":"{\"current_step\":2}","customer_error":"0","addToCart_widget":"{\"enable\":0,\"text\":\"Get order updates on Messenger!\",\"subscribed_text\":\"You will receive order updates on Messenger!\",\"text_alignment\":\"left\",\"widget_layout\":\"light\",\"widget_size\":\"medium\"}","infomation_fb_user":"","customer_answer":"","urlApp":"https:\/\/apps.omegatheme.com\/facebook-chat\/","abTests":[],"appIdFB":"1919748194980000"}; 666 var iconHtml = {"icon_1":"<svg xmlns='http:\/\/www.w3.org\/2000\/svg' width='25' height='25' viewB
666ox='96 93 322 324'><g><path d='M257 93c-88.918 0-161 67.157-161 150 0 47.205 23.412 89.311 60 116.807V417l54.819-30.273C225.449 390.801 240.948 393 257 393c88.918 0 161-67.157 161-150S345.918 93 257 93zm16 202l-41-44-80 44 88-94 42 44 79-44-88 94z'><\/path><rect x='13.445' y='20.996' width='37' height='4'><\/rect><rect x='13.445' y='32.828' width='37' height='4'><\/rect><rect x='13.445' y='44.66' width='37' height='4'><\/rect><\/g><\/svg>","icon_2":"<svg xmlns='http:\/\/www.w3.org\/2000\/svg' width='25' height='25' viewBox='0 0 24 24'><path d='M9 8h-3v4h3v12h5v-12h3.642l.358-4h-4v-1.667c0-.955.192-1.333 1.115-1.333h2.885v-5h-3.808c-3.596 0-5.192 1.583-5.192 4.615v3.385z'><\/path><\/svg>","icon_3":"<svg width='25' height='25' version='1.1' id='Capa_1' xmlns='http:\/\/www.w3.org\/2000\/svg' xmlns:xlink='http:\/\/www.w3.org\/1999\/xlink' x='0px' y='0px' viewBox='0 0 88.695 88.695' xml:space='preserve'> <g><path d='M84.351,68.07c2.508-4.59,3.829-9.759,3.829-15.006c0-13.118-8.112-24.36-19.575-29.021 C62.65,12.338,50.493,4.295,36.486,4.295c-19.862,0-36.021,16.159-36.021,36.021c0,6.072,1.541,12.057,4.462,17.36L0,76.059 l18.011-4.824c5.403,3.236,11.549,4.975,17.862,5.082c5.558,5.019,12.913,8.083,20.973,8.083c5.64,0,11.142-1.512,15.971-4.379 l15.878,4.254L84.351,68.07z M18.655,66.921L5.657,70.402l3.561-13.285l-0.419-0.72c-2.835-4.873-4.334-10.434-4.334-16.082 c0-17.656,14.365-32.021,32.021-32.021s32.021,14.364,32.021,32.021S54.142,72.337,36.486,72.337 c-6.066,0-11.976-1.711-17.091-4.948L18.655,66.921z M83.037,78.618l-10.861-2.91l-0.74,0.468C67.07,78.94,62.025,80.4,56.847,80.4 c-
6665.511,0-10.633-1.656-14.93-4.473c17.294-2.626,30.59-17.595,30.59-35.611c0-3.712-0.565-7.294-1.612-10.667 c7.947,4.786,13.286,13.48,13.286,23.415c0,4.823-1.28,9.57-3.701,13.728l-0.419,0.72L83.037,78.618z'><\/path><\/g><\/svg>","icon_4":"<svg width='25' height='25' version='1.1' id='Capa_1' xmlns='http:\/\/www.w3.org\/2000\/svg' xmlns:xlink='http:\/\/www.w3.org\/1999\/xlink' x='0px' y='0px' viewBox='0 0 81.146 81.146' xml:space='preserve'><g><path d='M11.902,67.18l0.021-14.51L0,52.559V8.524h64.319v44.053h-31.25L11.902,67.18z M4,48.596l11.928,0.111l-0.016,10.846 l15.911-10.976h28.496V12.524H4V48.596z'><\/path><path d='M81.146,26.524H64.319v-18H0v44.035l11.922,0.111l-0.021,14.51L31.16,53.895v7.167h24.152l16.763,11.561l-0.018-11.495 l9.089-0.084V26.524z M4,48.596V12.524h56.319v36.053H31.823L15.912,59.553l0.016-10.846L4,48.596z M77.146,57.08l-9.095,0.084 l0.012,7.833l-11.505-7.936H35.16v-4.484h29.159V30.524h12.827C77.146,30.524,77.146,57.08,77.146,57.08z'><\/path><\/g><\/svg>","icon_5":"<svg width='25' height='25' version='1.1' id='Capa_1' xmlns='http:\/\/www.w3.org\/2000\/svg' xmlns:xlink='http:\/\/www.w3.org\/1999\/xlink' x='0px' y='0px' viewBox='0 0 75.333 75.333' xml:space='preserve'><g><path d='M37.666,75.318l-9.413-16.303H17c-9.374,0-17-7.626-17-17v-25c0-9.374,7.626-17,17-17h41.333c9.374,0,17,7.626,17,17v25 c0,9.374-7.626,17-17,17H47.078L37.666,75.318z M17,4.016c-7.168,0-13,5.832-13,13v25c0,7.168,5.832,13,13,13h13.563l7.103,12.302 l7.104-12.303h13.563c7.168,0,13-5.832,13-13v-25c0-7.168-5.832-13-13-13L17,4.016L17,4.016z'><\/path><circle cx='54.822' cy='31.128' r='4.206'><\/circle><circle cx='37.667' cy='31.128' r='4.206'><\/circle><circle cx='20.511' cy='31.128' r='4.206'><\/circle><\/g><\/svg>","icon_6":"<svg width='25' height='25' version='1.1' id='Capa_1' xmlns='http:\/\/www.w3.org\/2000\/svg' xmlns:xlink='http:\/\/www.w3.org\/1999\/xlink' x='0px' y='0px' viewBox='0 0 71.015 71.015' xml:space='preserve'><g><circle cx='52.46' cy='27.353' r='4.206'><\/circle><circle cx='35.306' cy='27.353' r='4.206'><\/circle><circle cx='18.151' cy='27.353' r='4.206'><\/circle><path d='M13.223,67.769l0.022-15.916L0,51.728V3.247h71.015v48.5H36.448L13.223,67.769z M4,47.765l13.25,0.125l-0.017,12.252 l17.968-12.396h31.813v-40.5H4V47.765z'><\/path><\/g><\/svg>","icon_7":"<svg xmlns='http:\/\/www.w3.org\/2000\/svg' width='25' height='25' viewB
666ox='0 0 512 512'><path d='M456,224V200a8,8,0,0,0-8-8h-8.18C435.61,94.24,354.78,16,256,16S76.39,94.24,72.18,192H64a8,8,0,0,0-8,8v24A48.051,48.051,0,0,0,8,272v96a48.051,48.051,0,0,0,48,48h8v16a48.051,48.051,0,0,0,48,48H216v8a8,8,0,0,0,8,8h64a8,8,0,0,0,8-8V456a8,8,0,0,0-8-8H224a8,8,0,0,0-8,8v8H112a32.036,32.036,0,0,1-32-32V416h32a8,8,0,0,0,8-8V392h4a28.031,28.031,0,0,0,28-28V276a28.031,28.031,0,0,0-28-28h-4V200c0-74.99,61.01-136,136-136s136,61.01,136,136v48h-4a28.031,28.031,0,0,0-28,28v88a28.031,28.031,0,0,0,28,28h4v16a8,8,0,0,0,8,8h56a48.051,48.051,0,0,0,48-48V272A48.051,48.051,0,0,0,456,224ZM232,464h48v16H232Zm160-88h-4a12.01,12.01,0,0,1-12-12V276a12.01,12.01,0,0,1,12-12h4Zm48-168v16H408V208ZM104,400H56a32.036,32.036,0,0,1-32-32V272a32.036,32.036,0,0,1,32-32h48Zm0-176H72V208h32Zm20,40a12.01,12.01,0,0,1,12,12v88a12.01,12.01,0,0,1-12,12h-4V264ZM256,48c-81.13,0-147.62,63.89-151.79,144H88.19C92.39,103.06,166.05,32,256,32s163.61,71.06,167.81,160H407.79C403.62,111.89,337.13,48,256,48ZM488,368a32.036,32.036,0,0,1-32,32H408V240h48a32.036,32.036,0,0,1,32,32Z'><\/path><\/svg>","icon_8":"<svg xmlns='http:\/\/www.w3.org\/2000\/svg' height='25' viewB
666ox='0 0 512 512' width='25'><path d='m464 48h-320a40.045 40.045 0 0 0 -40 40v64h-56a40.045 40.045 0 0 0 -40 40v160a40.045 40.045 0 0 0 40 40h40v72a8 8 0 0 0 13.657 5.657l77.657-77.657h188.686a40.045 40.045 0 0 0 40-40v-64h56a40.045 40.045 0 0 0 40-40v-160a40.045 40.045 0 0 0 -40-40zm-72 304a24.027 24.027 0 0 1 -24 24h-192a8 8 0 0 0 -5.657 2.343l-66.343 66.343v-60.686a8 8 0 0 0 -8-8h-48a24.027 24.027 0 0 1 -24-24v-160a24.027 24.027 0 0 1 24-24h320a24.027 24.027 0 0 1 24 24zm96-104a24.027 24.027 0 0 1 -24 24h-56v-80a40.045 40.045 0 0 0 -40-40h-248v-64a24.027 24.027 0 0 1 24-24h320a24.027 24.027 0 0 1 24 24z'><\/path><path d='m208 248a32 32 0 1 0 32 32 32.036 32.036 0 0 0 -32-32zm0 48a16 16 0 1 1 16-16 16.019 16.019 0 0 1 -16 16z'><\/path><path d='m112 248a32 32 0 1 0 32 32 32.036 32.036 0 0 0 -32-32zm0 48a16 16 0 1 1 16-16 16.019 16.019 0 0 1 -16 16z'><\/path><path d='m304 312a32 32 0 1 0 -32-32 32.036 32.036 0 0 0 32 32zm0-48a16 16 0 1 1 -16 16 16.019 16.019 0 0 1 16-16z'><\/path><path d='m336 344h-72a8 8 0 0 0 0 16h72a8 8 0 0 0 0-16z'><\/path><path d='m368 344h-8a8 8 0 0 0 0 16h8a8 8 0 0 0 0-16z'><\/path><\/svg>","icon_9":"<svg xmlns='http:\/\/www.w3.org\/2000\/svg' height='25' viewB
666ox='0 -12 496 495' width='25'><path d='m472 192.5h-56v-168c0-13.253906-10.746094-24-24-24h-368c-13.253906 0-24 10.746094-24 24v264c0 13.253906 10.746094 24 24 24h24v88c0 3.367188 2.109375 6.371094 5.273438 7.519531 3.167968 1.152344 6.71875.191407 8.878906-2.398437l77.601562-93.121094h52.246094v80c0 13.253906 10.746094 24 24 24h193.199219l32 52.175781c1.878906 3.03125 5.539062 4.453125 8.972656 3.484375s5.8125-4.09375 5.828125-7.660156v-48h16c13.253906 0 24-10.746094 24-24v-176c0-13.253906-10.746094-24-24-24zm-336 104c-2.375-.003906-4.628906 1.046875-6.152344 2.871094l-65.847656 79.03125v-73.902344c0-4.417969-3.582031-8-8-8h-32c-4.417969 0-8-3.582031-8-8v-264c0-4.417969 3.582031-8 8-8h368c4.417969 0 8 3.582031 8 8v168h-184c-13.253906 0-24 10.746094-24 24v80zm344 96c0 4.417969-3.582031 8-8 8h-24c-4.417969 0-8 3.582031-8 8v27.632812l-19.503906-31.808593c-1.453125-2.375-4.035156-3.820313-6.816406-3.824219h-197.679688c-4.417969 0-8-3.582031-8-8v-176c0-4.417969 3.582031-8 8-8h256c4.417969 0 8 3.582031 8 8zm0 0'><\/path><path d='m344 280.5c-13.253906 0-24 10.746094-24 24s10.746094 24 24 24 24-10.746094 24-24-10.746094-24-24-24zm0 32c-4.417969 0-8-3.582031-8-8s3.582031-8 8-8 8 3.582031 8 8-3.582031 8-8 8zm0 0'><\/path><path d='m416 280.5c-13.253906 0-24 10.746094-24 24s10.746094 24 24 24 24-10.746094 24-24-10.746094-24-24-24zm0 32c-4.417969 0-8-3.582031-8-8s3.582031-8 8-8 8 3.582031 8 8-3.582031 8-8 8zm0 0'><\/path><path d='m272 280.5c-13.253906 0-24 10.746094-24 24s10.746094 24 24 24 24-10.746094 24-24-10.746094-24-24-24zm0 32c-4.417969 0-8-3.582031-8-8s3.582031-8 8-8 8 3.582031 8 8-3.582031 8-8 8zm0 0'><\/path><\/svg>"}; 667 var rootLinkChat = facebookChatSettings.urlApp; 668 var shopFbChat = facebookChatSettings.shop; 669 670 window.addEventListener('load', function() { 671 var body = document.getElementsByTagName("body")[0]; 672 let elementChat = document.createElement('div'); 673 elementChat.className = 'otFacbookChat'; 674 body.appendChild(elementChat); 675 676 loadJqueryChat(async function(jQuery) { 677 const appStatus = await checkInstallApp(jQuery) 678 679 if (facebookChatSettings.app_status == 1 && appStatus) { 680 createFacebookChat(jQuery); 681 } 682 }); 683 684 function loadJqueryChat(callback) { 685 if (typeof jQuery === "undefined") { 686 getScript({ 687 source: "//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js", 688 callback: () => { 689 jQuery224 = jQuery.noConflict(true); 690 callback(jQuery224); 691 }, 692 }); 693 } else { 694 callback(jQuery); 695 } 696 } 697 698 function getScript({ source, callback }) { 699 var script = document.createElement("script"); 700 var prior = document.getElementsByTagName("script")[0]; 701 script.async = 1; 702 703 script.onload = script.onreadystatechange = function (_, isAbort) { 704 if ( 705 isAbort || 706 !script.readyState || 707 /loaded|complete/.test(script.readyState) 708 ) { 709 script.onload = script.onreadystatechange = null; 710 script = undefined; 711 712 if (!isAbort) { 713 if (callback) callback(); 714 } 715 } 716 }; 717 718 script.src = source; 719 prior.parentNode.insertBefore(script, prior); 720 } 721 722 function checkInstallApp(jQuery){ 723 return new Promise(resolve => { 724 jQuery.ajax({ 725 url: rootLinkChat + `backend/storefront/facebook-message.php`, 726 data: { 727 shop: shopFbChat, 728 action: "checkInstallApp", 729 }, 730 dataType: "JSON", 731 type: "GET" 732 }).done(function (data) { 733 resolve(data) 734 }) 735 }) 736 } 737 738 var $;let windowWidth=0;const isDefaultMode="default"===facebookChatSettings.display_mode;let isNotAvailableWork=!1;function createFacebookChat(t){$=t,windowWidth=document.body.clientWidth;const e=document.getElementsByTagName("head")[0];let o=document.createElement("link");if(o.href=`${rootLinkChat}client/omg-facebook-chat_style.css?v=${Math.floor(Date.now()/1e3)}`,o.type="text/css",o.rel="stylesheet",e.appendChild(o),0==parseInt(facebookChatSettings.show_after))setTimeCreateChat();else{const t=parseInt(facebookChatSettings.show_after)>5?1e3*parseInt(facebookChatSettings.show_after):5e3;setTimeout((function(){setTimeCreateChat()}),t)}$(document).on("click",".fb_dialog.fb_dialog_mobile iframe",(function(t){if(windowWidth<800&&"1"==facebookChatSettings.chat_type){let t=facebookChatSettings.page_info.id;window.open("https://www.messenger.com/t/"+t,"_blank")}}))}function iconChatClickAvailable(){let t=0;const e=setInterval(()=>{let o=$(".fb-customerchat.fb_invisible_flow.fb_iframe_widget iframe");t++,t>40&&clearInterval(e),windowWidth>1025&&o.length&&o.hasClass("fb_customer_chat_bounce_in_v2")&&("fb_bounce_in_v2"===o.css("animation-name")&&"1"==facebookChatSettings.auto_display||"0"==facebookChatSettings.auto_display)&&(o.removeClass("fb_customer_chat_bounce_in_v2"),clearInterval(e))},50);setInterval(()=>{let t=$(".fb-customerchat.fb_invisible_flow.fb_iframe_widget iframe");
738if(t.length){t=$(".fb-customerchat.fb_invisible_flow.fb_iframe_widget iframe");let e=400;t.css("width")&&(e=parseInt(t.css("width"),10));const o=(windowWidth-e)/100*parseInt(facebookChatSettings.position);t.css("left",o)}},500),$(document).on("click",".ot-fb-logo",(function(){processFbBoxChat()}))}function iconChatClickUnavailable(){if(!("messOpt"===facebookChatSettings.working_time.not_available_option&&windowWidth<=1025)){if("messOpt"!==facebookChatSettings.working_time.not_available_option){const t=setInterval(()=>{$("#fb-root").length&&($(".ot-fb-logo").css("z-index","99999999999999"),$("#fb-root .fb_iframe_widget iframe").addClass("ot-fb-hide"),clearInterval(t))},50)}isDefaultMode&&$(".otFacbookChat").append('<div class="facebook-chat-button-custom"></div>'),$(document).on("click",".ot-fb-logo, .facebook-chat-button-custom",(function(){$(".available-work-container").hasClass("ot-fb-hide")?$(".fb-customerchat.fb_invisible_flow.fb_iframe_widget iframe").hasClass("fb_customer_chat_bounce_in_v2")&&"messOpt"===facebookChatSettings.working_time.not_available_option?processFbBoxChat("not-available"):$(".available-work-container").removeClass("ot-fb-hide").addClass("ot-fb-flex"):closeNotAvailableOpt()}))}}function setTimeCreateChat(){if(facebookChatSettings.page_target&&"0"!==facebookChatSettings.page_target){const t=window.location.pathname;let e="";if("/"===t)e="template-index";else if(t.startsWith("/collections/"))e="template-collection";else if(t.startsWith("/products/"))e="template-product";else if(t.startsWith("/cart"))e="template-cart";else if(t.startsWith("/search"))e="template-search";else if(t.startsWith("/pages/")){e=t.replace("/pages/","")}if("1"===facebookChatSettings.page_target){if(facebookChatSettings.specific_pages.indexOf(e)<0)return void console.log("Not specifics page")}else if("2"===facebookChatSettings.page_target){if(facebookChatSettings.exclude_pages.indexOf(e)>=0)return void console.log("excludes page")}}const t=facebookChatInit();$(".otFacbookChat").append(t);facebookChatSettings.position>50?$(".icon-text-content").addClass("icon-text-content-left"):$(".icon-text-content").addClass("icon-text-content-right"),"0"==facebookChatSettings.auto_display&&windowWidth>1024&&"default"!=facebookChatSettings.display_mode&&$("#fb-root").addClass("ot-fb-hide")}function facebookChatInit(){let t="",e=window.location.protocol+"//"+window.location.host+"/"+window.location.pathname+window.location.search;return"2"===facebookChatSettings.status_connect&&"1"===facebookChatSettings.app_status&&(t+=makeHtml(e)+callInitFaceBook(),getStyleCustom()),t}function makeHtml(t){facebookChatSettings.language;const e=facebookChatSettings.theme_color,o=facebookChatSettings.greeting_message.replace(/&/g,"&").replace(/>/g,">").replace(/</g,"<").replace(/"/g,"""),a=facebookChatSettings.page_info,n=facebookChatSettings.icon_type;let i=windowWidth>=1025?facebookChatSettings.icon_text:"";const s=facebookChatSettings.icon_text_color,c=facebookChatSettings.tab_color,l=facebookChatSettings.tab_size,f=facebookChatSettings.tab_style,b=i?"has_text":"none_text";let r="28px";"medium"==l?r="32px":"large"==l&&(r="36px");const g=`color: ${s}; background-color: ${c}; line-height: ${r};`,d=iconHtml?""+iconHtml[n]:"",h=`<span style='${g}' class='ml-1 icon-text-content'> ${i}</span>`,_="1"==facebookChatSettings.auto_display?"show":"hide",m="1"==facebookChatSettings.chat_type?"redirect_icon":"";let p="";0===$("body #fb-root").length&&(OMGFBisCheckFBRoot=!0,p+="<div id='fb-root'></div>");const u=isDefaultMode?"":`<div class='ot-fb-logo ${m} facebook-chat-button ${l} ${f} ${b}' style='${"one_box"==f?"background-color: "+c+";":""}'>\n <div class='ot-fb-icon' style='background-color: ${c}; fill: ${s};'>\n ${d}\n </div>\n ${h}\n </div>`,k="messOpt"===facebookChatSettings.working_time.not_available_option&&facebookChatSettings.abTests.available_working_time_Aug_2021?`<div class="fb-mess-widget available-work-container ot-fb-hide">\n <i class="fb-mess__close" onClick="closeNotAvailableOpt()">\n <svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0"\n width="10px" height="10px" viewBox="0 0 123.05 123.05" style="enable-background:new 0 0 123.05 123.05;"\n xml:space="preserve">\n <g>\n <path d="M121.325,10.925l-8.5-8.399c-2.3-2.3-6.1-2.3-8.5,0l-42.4,42.399L18.726,1.726c-2.301-2.301-6.101-2.301-8.5,0l-8.5,8.5\n c-2.301,2.3-2.301,6.1,0,8.5l43.1,43.1l-42.3,42.5c-2.3,2.3-2.3,6.1,0,8.5l8.5,8.5c2.3,2.3,6.1,2.3,8.5,0l42.399-42.4l42.4,42.4\n c2.3,2.3,6.1,2.3,8.5,0l8.5-8.5c2.3-2.3,2.3-6.
7381,0-8.5l-42.5-42.4l42.4-42.399C123.625,17.125,123.625,13.325,121.325,10.925z"/>\n </g>\n </svg>\n </i>\n <p class="fb-mess-widget__text">${convertHtml(facebookChatSettings.working_time.fb_messages)}</p>\n <button style='background-color: ${s};' onClick="fbMessageNotAvailable()" id="unavailable-working-fb-chat">\n <svg\n viewBox="0 0 40 40"\n x="0"\n y="0"\n width="16px"\n height="16px"\n >\n <g\n stroke="none"\n strokeWidth=1\n fill="none"\n fillRule="evenodd"\n >\n <g>\n <svg x="0" y="0">\n <path\n d="M20,0 C31.2666,0 40,8.2528 40,19.4 C40,30.5472 31.2666,38.8 20,38.8 C17.9763,38.8 16.0348,38.5327 14.2106,38.0311 C13.856,37.9335 13.4789,37.9612 13.1424,38.1098 L9.1727,39.8621 C8.1343,40.3205 6.9621,39.5819 6.9273,38.4474 L6.8184,34.8894 C6.805,34.4513 6.6078,34.0414 6.2811,33.7492 C2.3896,30.2691 0,25.2307 0,19.4 C0,8.2528 8.7334,0 20,0 Z M7.99009,25.07344 C7.42629,25.96794 8.52579,26.97594 9.36809,26.33674 L15.67879,21.54734 C16.10569,21.22334 16.69559,21.22164 17.12429,21.54314 L21.79709,25.04774 C23.19919,26.09944 25.20039,25.73014 26.13499,24.24744 L32.00999,14.92654 C32.57369,14.03204 31.47419,13.02404 30.63189,13.66324 L24.32119,18.45264 C23.89429,18.77664 23.30439,18.77834 22.87569,18.45674 L18.20299,14.95224 C16.80079,13.90064 14.79959,14.26984 13.86509,15.75264 L7.99009,25.07344 Z"\n fill="#FFFFFF"\n />\n </svg>\n </g>\n </g>\n </svg>\n <span class="fb-mess-widget__btn-text">\n Leave us a message\n </span>\n </button>\n </div>`:"",C="emailOpt"===facebookChatSettings.working_time.not_available_option&&facebookChatSettings.abTests.available_working_time_Aug_2021?`<div class="fb-email-form available-work-container ot-fb-hide">\n <i class="fb-mess__close" onClick="closeNotAvailableOpt()">\n <svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"\n width="10px" height="10px" viewBox="0 0 123.05 123.05" style="enable-background:new 0 0 123.05 123.05;"\n xml:space="preserve">\n <g>\n <path d="M121.325,10.925l-8.5-8.399c-2.3-2.3-6.1-2.3-8.5,0l-42.4,42.399L18.726,1.726c-2.301-2.301-6.101-2.301-8.5,0l-8.5,8.5\n c-2.301,2.3-2.301,6.1,0,8.5l43.1,43.1l-42.3,42.5c-2.3,2.3-2.3,6.1,0,8.5l8.5,8.5c2.3,2.3,6.1,2.3,8.5,0l42.399-42.4l42.4,42.4\n c2.3,2.3,6.1,2.3,8.5,0l8.5-8.5c2.3-2.3,2.3-6.1,0-8.5l-42.5-42.4l42.4-42.399C123.625,17.125,123.625,13.325,121.325,10.925z"/>\n </g>\n </svg>\n </i>\n <h3>Leave us a message</h3>\n <div class="fb-email-form__email">\n <label for="otEmail">Email</label>\n <input type="text" id="otEmail" name="otEmail" />\n </div>\n <div class="fb-email-form__subject">\n <label for="otSubject">Subject</label>\n <input type="text" id="otSubject" name="otSubject" />\n </div>\n <div class="fb-email-form__textarea">\n <label for="otMessage">Message</label>\n <textarea\n type="text" id="otMessage" name="otMessage"\n />\n </div>\n <button class="fb-email-form__submit" style='background-color: ${s};' onClick="submitEmailForm()">\n Submit\n </button>\n </div>`:"";return OMGFBisCheckFBRoot?p+=`\n <div class='fb-customerchat'\n attribution='setup_tool'\n fb-xfbml-state='rendered'\n page_id='${a.id}
738'\n themeColor='${e}'\n logged_in_greeting="${o}"\n logged_out_greeting="${o}"\n rel='${t}'\n greeting_dialog_display='${_}'\n >\n </div> \n `:($("#fb-root").append(`\n <div class='fb-customerchat'\n attribution='setup_tool'\n fb-xfbml-state='rendered'\n page_id='${a.id}'\n themeColor='${e}'\n logged_in_greeting="${o}"\n logged_out_greeting="${o}"\n rel='${t}'\n greeting_dialog_display='${_}'\n >\n </div> \n `),$(".fb-customerchat").children().length||$("#fb-root .fb-customerchat").children().length||initFBChat()),p+=` \n ${u}\n ${k}\n ${C}\n </div>\n `,p}function convertHtml(t){return t.replace(/</g,"<").replace(/>/g,">")}function callInitFaceBook(){const t=facebookChatSettings.device_target;let e="",o=!1,a=!1;if(facebookChatSettings.working_time){const t=facebookChatSettings.working_time;if("0"==t.status){let e="";const n={"-12":"Pacific/Midway","-11":"Pacific/Midway","-10":"Pacific/Honolulu","-9":"America/Anchorage","-8":"America/Los_Angeles","-7":"America/Cambridge_Bay","-6":"America/Mexico_City","-5":"America/Atikokan","-4":"Canada/Atlantic","-3":"America/Sao_Paulo","-2":"America/Noronha","-1":"Atlantic/Azores",0:"Europe/London",1:"Europe/Amsterdam",2:"Europe/Bucharest",3:"Asia/Baghdad",4:"Asia/Muscat",5:"Asia/Karachi",6:"Asia/Almaty",7:"Asia/Bangkok",8:"Asia/Hong_Kong",9:"Asia/Irkutsk",10:"Australia/Brisbane",11:"Asia/Vladivostok",12:"Pacific/Auckland"};e=Object.keys(n).indexOf(t.time_zone)>-1?n[t.time_zone]:t.time_zone;let i=(new Date).toLocaleString("en-US",{timeZone:e});i=new Date(i);const s=i.getFullYear(),c=i.getMonth(),l=i.getDay(),f=i.getHours(),b=i.getMinutes();let r;if(facebookChatSettings.weekdays){r=facebookChatSettings.weekdays;let t=[];for(const e of Object.values(r))t.push(parseInt(e.id));-1===t.indexOf(parseInt(l))&&(a=setAvailableWork())}const g=new Date(s,c,l,f,b).getTime();let d=t.start.split(":");const h=new Date(s,c,l,d[0],d[1]).getTime();let _=t.end.split(":");const m=new Date(s,c,l,_[0],_[1]).getTime();h<g&&m>g?(console.log(g,h,m),o=!1):o=setAvailableWork()}}a||o?(isNotAvailableWork=!0,iconChatClickUnavailable()):iconChatClickAvailable(),"1"==t?$(".otFacbookChat").addClass("hide-mobile"):"2"==t&&$(".otFacbookChat").addClass("hide-desktop");return e+="\n
738<script>\n if (OMGFBisCheckFBRoot) {\n window.fbAsyncInit = function() {\n FB.init({\n appId: "+(facebookChatSettings.appIdFB?facebookChatSettings.appIdFB:"1919748194980000")+",\n autoLogAppEvents : true,\n xfbml : true,\n version : 'v11.0'\n });\n };\n }\n \n (function(d, s, id) {\n var js, fjs = d.getElementsByTagName(s)[0];\n if (d.getElementById(id)) return;\n js = d.createElement(s); \n js.id = id;\n js.src = 'https://connect.facebook.net/"+facebookChatSettings.language+"/sdk/xfbml.customerchat.js';\n fjs.parentNode.insertBefore(js, fjs);\n }(document, 'script', 'facebook-jssdk'));\n <\/script>",e}function setAvailableWork(){return console.log("Facebook live chat by Omega: Not in the working days"),"noneOpt"===facebookChatSettings.working_time.not_available_option&&$(".otFacbookChat").addClass("ot-fb-hide"),!0}function getStyleCustom(){const t=setInterval(()=>{if(!isDefaultMode&&$(".ot-fb-logo").length&&"auto"!==$(".ot-fb-logo").css("z-index")||isDefaultMode&&$(".fb_dialog_content iframe")&&$(".fb_dialog_content iframe").width()>0){let e="",o="",a=parseInt(facebookChatSettings.position);const n=parseInt(facebookChatSettings.margin_bottom),i=1==facebookChatSettings.chat_type?" display: none !important;":"";if(""!==facebookChatSettings.custom_css){const t=facebookChatSettings.custom_css;t.status&&(e=t.code)}let s;switch(facebookChatSettings.tab_size){case"small":s=55;break;case"medium":s=65;break;case"large":s=75;break;default:s=80}const c=windowWidth<1025||isDefaultMode?60:$(".ot-fb-logo").width(),l=(windowWidth-c)/100*parseInt(a);o+=`<style type='text/css'>\n .fb_iframe_widget iframe {\n bottom: ${n+s}px !important;\n }\n \n .otFacbookChat .available-work-container {\n left: ${(windowWidth-$(".available-work-container").width())/100*parseInt(a)+"px !important;"};\n bottom: ${n+s+6}px !important;\n }\n \n .fb_dialog .fb_dialog_content {\n ${isDefaultMode?"":"opacity: 0.002!important;"}\n }\n \n .facebook-chat-button-custom,\n .ot-fb-logo.facebook-chat-button,\n .fb_dialog .fb_dialog_content iframe {\n bottom: ${n}px !important;\n left: ${l}px !important;\n }\n \n .fb_dialog .fb_dialog_content iframe,\n .fb_dialog .fb_dialog_content #_no-clickjacking-0,\n .fb_dialog .fb_dialog_content #_no-clickjacking-1 {\n ${i}\n }\n \n .ot-fb-logo.facebook-chat-button {\n direction: ${a>50?"rtl":"ltr"};\n }\n \n @media screen and (max-width: 1025px) {\n .fb_iframe_widget iframe {\n left: auto !important;\n bottom: ${n+50}px !important;\n ${i}\n }\n \n .fb_dialog.fb_dialog_mobile {\n bottom: ${n}px!important;\n }\n }\n \n ${e}\n </style>`,$(".otFacbookChat").append(o),clearInterval(t)}},50)}function initFBChat(){const t=facebookChatSettings.appIdFB?facebookChatSettings.appIdFB:"1919748194980000";window.fbAsyncInit=function(){FB.init({appId:t,autoLogAppEvents:!0,xfbml:!0,version:"v11.0"})}}function closeNotAvailableOpt(){$(".available-work-container").removeClass("ot-fb-flex").addClass("ot-fb-hide")}function submitEmailForm(){const t=$(".fb-email-form__email input").val(),e=$(".fb-email-form__subject input").val(),o=$(".fb-email-form__textarea textarea").val();return new Promise(a=>{$.ajax({url:rootLinkChat+"backend/storefront/facebook-message.php",data:{email:t,subject:e,message:o,action:"sendMessage",shop:shopFbChat},dataType:"JSON",type:"POST"}).done((function(t){}))})}function fbMessageNotAvailable(){$(document).on("click","#unavailable-working-fb-chat",(function(){process
738FbBoxChat("not-available")}))}function processFbBoxChat(t=""){$("#fb-root").addClass("ot-fb-show"),"not-available"===t&&closeNotAvailableOpt();const e=$(".fb-customerchat.fb_invisible_flow.fb_iframe_widget iframe");if(windowWidth<800&&$(".ot-fb-logo.redirect_icon").length>0){let t=facebookChatSettings.page_info.id;window.open("https://www.messenger.com/t/"+t,"_blank")}windowWidth<=1025||($(".fb-customerchat").children().length||(FB.Event.subscribe("customerchat.show",processShowDialog("callToGetPopup")),window.OMGFBisGetPopup="getPopup"),e.hasClass("fb_customer_chat_bounce_out_v2")||!e.hasClass("fb_customer_chat_bounce_out_v2")&&!e.hasClass("fb_customer_chat_bounce_in_v2")?FB.Event.subscribe("customerchat.show",processShowDialog(OMGFBisGetPopup)):FB.Event.subscribe("customerchat.hide",processHideDialog(OMGFBisGetPopup)))}function processShowDialog(t=""){!t&&FB.CustomerChat&&FB.CustomerChat.show(!0),"callToGetPopup"==t&&FB.XFBML.parse(),omgFBAddRemoveClassShowHide()}function processHideDialog(t=""){!t&&FB.CustomerChat&&FB.CustomerChat.hideDialog(),omgFBAddRemoveClassShowHide("remove")}function omgFBAddRemoveClassShowHide(t="add"){const e="remove"===t?"0":"calc(100% - 80px)",o="remove"===t?"fb_customer_chat_bounce_out_v2":"fb_customer_chat_bounce_in_v2",a="remove"===t?"fb_customer_chat_bounce_in_v2":"fb_customer_chat_bounce_out_v2",n=setInterval(()=>{let i=$(".fb-customerchat.fb_invisible_flow.fb_iframe_widget iframe");i.length&&("add"===t&&setTimeout(()=>{i=$(".fb-customerchat.fb_invisible_flow.fb_iframe_widget iframe"),"fb_bounce_in_v2"===i.css("animation-name")&&i.addClass("omg-fb-set-height")},250),i.css("max-height",e),i.removeClass(a).addClass(o),clearInterval(n))},50)}window.OMGFBisGetPopup="",window.OMGFBisCheckFBRoot=!1,facebookChatSettings.page_info="string"==typeof facebookChatSettings.page_info?JSON.parse(facebookChatSettings.page_info):facebookChatSettings.page_info,facebookChatSettings.specific_pages="string"==typeof facebookChatSettings.specific_pages?JSON.parse(facebookChatSettings.specific_pages):facebookChatSettings.specific_pages,facebookChatSettings.exclude_pages="string"==typeof facebookChatSettings.exclude_pages?JSON.parse(facebookChatSettings.exclude_pages):facebookChatSettings.exclude_pages,facebookChatSettings.specific_pages="string"==typeof facebookChatSettings.specific_pages?JSON.parse(facebookChatSettings.specific_pages):facebookChatSettings.specific_pages,facebookChatSettings.working_time="string"==typeof facebookChatSettings.working_time?JSON.parse(facebookChatSettings.working_time):facebookChatSettings.working_time,facebookChatSettings.custom_css="string"==typeof facebookChatSettings.custom_css?JSON.parse(facebookChatSettings.custom_css):facebookChatSettings.custom_css,facebookChatSettings.weekdays="string"==typeof facebookChatSettings.weekdays?JSON.parse(facebookChatSettings.weekdays):facebookChatSettings.weekdays,facebookChatSettings.abTests="string"==typeof facebookChatSettings.abTests?JSON.parse(facebookChatSettings.abTests):facebookChatSettings.abTests; 739 }, false); 740</script>
740 741 742 743<!-- DO NOT REMOVE Effective Apps TiXel Code Start--><link id="eaManualTPI" />
743<script> 744 !function (w, d, t) { 745 w.TiktokAnalyticsObject=t;var ttq=w[t]=w[t]||[];ttq.methods=["page","track","identify","instances","debug","on","off","once","ready","alias","group","enableCookie","disableCookie"],ttq.setAndDefer=function(t,e){t[e]=function(){t.push([e].concat(Array.prototype.slice.call(arguments,0)))}};for(var i=0;i<ttq.methods.length;i++)ttq.setAndDefer(ttq,ttq.methods[i]);ttq.instance=function(t){for(var e=ttq._i[t]||[],n=0;n<ttq.methods.length;n++ 746)ttq.setAndDefer(e,ttq.methods[n]);return e},ttq.load=function(e,n){var i="https://analytics.tiktok.com/i18n/pixel/events.js";ttq._i=ttq._i||{},ttq._i[e]=[],ttq._i[e]._u=i,ttq._t=ttq._t||{},ttq._t[e]=+new Date,ttq._o=ttq._o||{},ttq._o[e]=n||{};n=document.createElement("script");n.type="text/javascript",n.async=!0,n.src=i+"?sdkid="+e+"&lib="+t;e=document.getElementsByTagName("script")[0];e.parentNode.insertBefore(n,e)}; 747 748 ttq.load('C75LUFLHGFJDMDOJPH3G'); 749 ttq.page(); 750 }(window, document, 'ttq'); 751 </script>
751<!-- DO NOT REMOVE Effective Apps TiXel Code End--> 752<!-- GSSTART Slider code start. Do not change --><!-- Slider code end. Do not change GSEND --><!-- BEGIN app block: shopify://apps/uppromote-affiliate/blocks/customer-referral/64c32457-930d-4cb9-9641-e24c0d9cf1f4 --><link rel="preload" href="https://cdn.shopify.com/extensions/01a0dc73-b89f-7d38-a898-a6ad1c9584a2/affliate-by-secomapp-127/assets/customer-referral.css" as="style" onload="this.onload=null;this.rel='stylesheet'">
753<script> 754 document.addEventListener("DOMContentLoaded", function () { 755 const params = new URLSearchParams(window.location.search); 756 if (params.has('sca_ref') || params.has('sca_crp')) { 757 document.body.setAttribute('is-affiliate-link', ''); 758 } 759 }); 760</script>
760 761 762 763<!-- END app block --><!-- BEGIN app block: shopify://apps/vslide-variant-images-gallery/blocks/app-embed/e22d46a9-b20f-46ef-839e-96f4f8caeb06 -->
763<script type="text/javascript"> 764 gsCollection = { 765 766 }; 767 </script>
767 768 769 770 <!-- END app block --><!-- BEGIN app block: shopify://apps/ultimate-product-icons/blocks/app-embed-block/42c1dd38-3f32-4069-9b37-3ccc8e6db688 --> 771<!-- END app block --><!-- BEGIN app block: shopify://apps/shopclimb-trust-badges/blocks/app-embed-block/d9412ad3-cc85-4163-8f55-90aed51fe5a7 -->
771<script id="trust-badge-settings" type="application/json"> 772{"cart_badge":{"app_embed_enabled":"enabled","text_font":"","trust_badges":[{"icon":"3071-paypal","label":"PayPal"},{"icon":"3133-apple-pay","label":"Apple Pay"},{"icon":"3076-shop-pay","label":"Shop Pay"},{"icon":"flaticon-visa-pay-logo","label":"Visa"},{"icon":"3006-amazon-logo","label":"Amazon Pay"}],"trust_badge_cart_page":"","trust_badge_cart_page_alignment":"right","trust_badge_element_color":"#f5eaea","trust_badge_element_width":"65","trust_badge_font_size":"12","trust_badge_footer":"","trust_badge_footer_alignment":"center","trust_badge_footer_hide_text":"enabled","trust_badge_footer_icon_size":"30","trust_badge_hide_label":"","trust_badge_home_page":"","trust_badge_home_page_alignment":"center","trust_badge_icon_size":"65","trust_badge_label_color":"#470047","trust_badge_pitch_alignment":"center","trust_badge_pitch_color":"#fefdff","trust_badge_pitch_font_size":"18","trust_badge_pitch_font_weight":"normal","trust_badge_pitch_text":"Secured and trusted checkout with:","trust_badge_product_page":"custom","trust_badge_product_page_alignment":"center","trust_badge_product_page_position":{"selector":"div.social-sharing","insertionOrder":0,"insertionMode":"sibling-after"},"enabled":"enabled","trust_badge_home_page_position":"","trust_badge_cart_page_position":"","trust_badge_footer_position":""}} 773</script>
773 774 775 776<!-- END app block --><!-- BEGIN app block: shopify://apps/inbox/blocks/chat/841fc607-4181-4ad1-842d-e24d7f8bad6b --><link rel='modulepreload' href='https://cdn.shopify.com/storefront/web-components/chat.js' crossorigin fetchpriority='low'> 777
778<script id='shopify-chat-app-embed-data' type='application/json'> 779 { 780 "settings": { 781 "invertActivatorColors": true, 782 "greetingMessage": "Hi!", 783 "showFeaturedProducts": true, 784 "featuredProducts": [], 785 "horizontalPosition": "bottom_left", 786 "icon": "chat_bubble", 787 "buttonLabel": "Chat" 788 } 789 } 790</script>
790 791 792<style data-shopify> 793 794 795 /* Shadow DOM content does not prevent theme-wide :empty rules from matching the host. */ 796 shopify-chat:defined:empty { 797 display: grid; 798 } 799 800 :root { 801 --shopify-chat-bg-color: #000000; 802 --shopify-chat-text-color: #ffffff; 803 --shopify-chat-accent-bg-color: #ffffff; 804 --shopify-chat-accent-text-color: #000000; 805 --shopify-chat-activator-offset: 20px; 806 807 808 809 --shopify-chat-activator-font-size: 16px; 810 --shopify-chat-border-radius: 16px; 811 } 812 813 814</style> 815
816<script src='https://cdn.shopify.com/storefront/web-components/chat.js' type='module' crossorigin fetchpriority='low' async></script>
816 817 818 819<!-- END app block -->
819<script src="https://cdn.shopify.com/extensions/01a0dc73-b89f-7d38-a898-a6ad1c9584a2/affliate-by-secomapp-127/assets/customer-referral.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 819
819
820<script src="https://cdn.shopify.com/extensions/b71f3499-d380-4614-acf3-3b908ae28e7b/0.3.0/assets/trustseals.min.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 820
820
821<script src="https://cdn.shopify.com/extensions/605f8970-8c38-4310-9cce-856f0ceab008/shopclimb-trust-badges-5/assets/trustbadge.min.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 821
821
822<script src="https://cdn.shopify.com/extensions/01a0aa7a-f99f-7ab6-a36e-9673fd70d8d4/omnisend-57/assets/omnisend-in-shop.js" type="text/javascript" defer="defer"></script>
822 823<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
824<script>(function(){if ("sendBeacon" in navigator && "performance" in window) {try {var session_token_from_headers = performance.getEntriesByType('navigation')[0].serverTiming.find(x => x.name == '_s').description;} catch {var session_token_from_headers = undefined;}var session_cookie_matches = document.cookie.match(/_shopify_s=([^;]*)/);var session_token_from_cookie = session_cookie_matches && session_cookie_matches.length === 2 ? session_cookie_matches[1] : "";var session_token = session_token_from_headers || session_token_from_cookie || "";function handle_abandonment_event(e) {var entries = performance.getEntries().filter(function(entry) {return /monorail-edge.shopifysvc.com/.test(entry.name);});if (!window.abandonment_tracked && entries.length === 0) {window.abandonment_tracked = true;var currentMs = Date.now();var navigation_start = performance.timing.navigationStart;var payload = {shop_id: 10425368661,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "blog"};window.navigator.sendBeacon("https://monorail-edge.shopifysvc.com/v1/produce", JSON.stringify({schema_id: "online_store_buyer_site_abandonment/1.1",payload: payload,metadata: {event_created_at_ms: currentMs,event_sent_at_ms: currentMs}}));}}window.addEventListener('pagehide', handle_abandonment_event);}}());</script>
vendor: 1 bytes, line 824
824
825<script> 826 window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || []; 827</script>
vendor: 1 bytes, line 827
827
828<script>(function(){var wpmLoader=function(){"use strict";var e=/Googlebot|Storebot-Google|bingbot|Baiduspider|YandexBot|DuckDuckBot|Slurp|facebookexternalhit|Twitterbot|LinkedInBot|Applebot|AdsBot-Google|Mediapartners-Google|APIs-Google|PetalBot|SemrushBot|AhrefsBot|MJ12bot|DotBot|Acunetix|PerplexityBot|Perplexity-User/i,t=/bytedance/i;function i(){try{var e=document.cookie;if(!e||"string"!=typeof e)return;for(var t=0,i=e.split(";");t<i.length;t++){var n=i[t],r=n.indexOf("=");if(-1!==r){var o=n.slice(0,r).trim();if(o){var a=void 0;try{a=decodeURIComponent(o)}catch(e){a=o}if("_shopify_s"===a){var d=n.slice(r+1).trim();try{return decodeURIComponent(d)}catch(e){return d}}}}}return}catch(e){return}}function n(e){try{"undefined"!=typeof console&&"function"==typeof console.warn&&console.warn(e)}catch(e){}}function r(e,t){return"string"==typeof e&&e.length>0&&e.length<=t?e:void 0}function o(e){var t;switch(null==(t=null==e?void 0:e.navigation)?void 0:t.type){case 0:return"navigate";case 1:return"reload";case 2:return"back_forward";default:return}}function a(){var e,t,i;try{var n=null==(i=null==(t=null==(e=self.ShopifyAnalytics)?void 0:e.lib)?void 0:t.trekkie)?void 0:i.state;return"awaiting-consent"===n||"initialized"===n?n:void 0}catch(e){return}}return function(d,s,u,l){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};try{var p=c.trekkieShim;!0!==p&&"true"!==p||null!=window.__TREKKIE_SHIM_QUEUE||(window.__TREKKIE_SHIM_QUEUE=[])}catch(e){}var f,v,h,y,g=(v=(f={modern:/Edge?\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Firefox\/(1{2}[4-9]|1[2-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Chrom(ium|e)\/(9{2}|\d{3,})\.\d+(\.\d+|)|(Maci|X1{2}).+ Version\/(15\.\d+|(1[6-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(9{2}|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(15[._]\d+|(1[6-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|SamsungBrowser\/([2-9]\d|\d{3,})\.\d+/,legacy:/Edge?\/(1[6-9]|[2-9]\d|\d{3,})\.\d+(\.\d+|)|Firefox\/(5[4-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)|Chrom(ium|e)\/(5[1-9]|[6-9]\d|\d{3,})\.\d+(\.\d+|)([\d.]+$|.*Safari\/(?![\d.]+ Edge\/[\d.]+$))|(Maci|X1{2}).+ Version\/(10\.\d+|(1[1-9]|[2-9]\d|\d{3,})\.\d+)([,.]\d+|)( \(\w+\)|)( Mobile\/\w+|) Safari\/|Chrome.+OPR\/(3[89]|[4-9]\d|\d{3,})\.\d+\.\d+|(CPU[ +]OS|iPhone[ +]OS|CPU[ +]iPhone|CPU IPhone OS|CPU iPad OS)[ +]+(10[._]\d+|(1[1-9]|[2-9]\d|\d{3,})[._]\d+)([._]\d+|)|Android:?[ /-](14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})(\.\d+|)(\.\d+|)|Mobile Safari.+OPR\/([89]\d|\d{3,})\.\d+\.\d+|Android.+Firefox\/(15\d|1[6-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+Chrom(ium|e)\/(14[89]|1[5-9]\d|[2-9]\d{2}|\d{4,})\.\d+(\.\d+|)|Android.+(UC? ?Browser|UCWEB|U3)[ /]?(15\.([5-9]|\d{2,})|(1[6-9]|[2-9]\d|\d{3,})\.\d+)\.\d+|SamsungBrowser\/(5\.\d+|([6-9]|\d{2,})\.\d+)|Android.+MQ{2}Browser\/(14(\.(9|\d{2,})|)|(1[5-9]|[2-9]\d|\d{3,})(\.\d+|))(\.\d+|)|K[Aa][Ii]OS\/(3\.\d+|([4-9]|\d{2,})\.\d+)(\.\d+|)/}).modern,h=f.legacy,(y=navigator.userAgent).match(e)?"bot":y.match(v)?"modern":y.match(h)?"legacy":y.match(t)?"bot":"unknown"),m=function(e){var t,i,n=r(e,128);try{var a=window.performance,d=null==(t=null==a?void 0:a.getEntriesByType)?void 0:t.call(a,"navigation")[0];if(!d)return{requestId:n,navigationType:o(a)};var s="type"in d?r(d.type,64):void 0,u="serverTiming"in d&&Array.isArray(d.serverTiming)?d.serverTiming:[];return{requestId:null!=n?n:r(null==(i=u.find(function(e){return"requestID"===e.name}))?void 0:i.description,128),navigationType:s}}catch(e){return{requestId:n}}}(c.requestId),w=function(e){var t=e.version,r=e.browserTarget,o=e.surface,a=e.shopId,d=e.monorailEndpoint,s=window.location.href;return{emit:function(e){var u=e.status,l=e.errorMsg,c=e.failureReason,p=e.useKeepaliveFallback,f=void 0!==p&&p,v=e.navigationType,h=e.pagehidePersisted,y=e.requestId,g=e.trekkieState;if(d){var m,w;try{var b=(new Date).getTime();m=JSON.stringify({metadata:{event_sent_at_ms:b},events:[{schema_id:"web_pixels_manager_load/3.3",payload:{version:t,bundle_target:r,page_url:s,status:u,surface:o,error_msg:l,failure_reason:c,navigation_type:v,pagehide_persisted:h,request_id:y,trekkie_state:g,shop_id:a,visit_token:i()},metadata:{event_created_at_ms:b}}]})}catch(e){return}try{if("function"==typeof window.navigator.sendBeacon&&-1===(w=window.navigator.userAgent).indexOf("iPhone; CPU iPhone OS 12_")&&-1===w.indexOf("iPad; CPU OS 12_")&&-1===w.indexOf("iPod touch; CPU iPhone OS 12_")&&window.navigator.sendBeacon.bind(window.navigator)(d,m))return}catch(e){}if(f)try{"function"==typeof window.fetch&&window.fetch(d,{method:"POST",headers:{"Content-Type":"text/plain"},body:m,keepalive:!0}
828).catch(function(){})}catch(e){}else try{var _=new XMLHttpRequest;_.open("POST",d,!0),_.setRequestHeader("Content-Type","text/plain"),_.send(m)}catch(e){n("[Web Pixels Manager] Got an unhandled error while logging to Monorail.")}}else n("[Web Pixels Manager] No Monorail endpoint provided, skipping logging.")}}}({version:u,browserTarget:g,surface:d.surface,shopId:d.shopId,monorailEndpoint:d.monorailEndpoint});if(Boolean(null==(_=null==(b=window.Shopify)?void 0:b.analytics)?void 0:_.replayQueue))w.emit({status:"setup-skipped",errorMsg:"replay queue already initialized."});else{var b,_;w.emit({status:"setup-started"}),window.Shopify=window.Shopify||{};var S=window.Shopify;S.analytics=S.analytics||{};var P=S.analytics;P.replayQueue=[],P.publish=function(e,t,i){return P.replayQueue.push([e,t,i]),!0};try{self.performance.mark("wpm:start")}catch(e){}var k,C="modern"===g?"modern":"legacy",E=(null!=l?l:{modern:"",legacy:""})[C],I=[(k={baseUrl:s,hashVersion:u,buildTarget:C}).baseUrl,"/wpm","/b",k.hashVersion,"modern"===k.buildTarget?"m":"l",".js"].join(""),O=!1,T=!1;try{c.browserTarget=g,function(){O=!0;try{window.addEventListener("pagehide",M)}catch(e){O=!1}}(),R(function(){try{R(x)}catch(e){D(e)}}),w.emit({status:"loading",requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()})}catch(e){D(e)}}function U(){var e;if(q(),!function(){var e,t;return Boolean(null==(t=null==(e=window.Shopify)?void 0:e.analytics)?void 0:t.initialized)}()){var t,i,n;try{if("function"!=typeof(null==(e=window.webPixelsManager)?void 0:e.init))return void A();if(!(null!==(n=i=t=window.webPixelsManager.init(d))&&"function"!=typeof n&&Object(n)===n&&"publish"in i&&"function"==typeof i.publish&&"publishCustomEvent"in i&&"function"==typeof i.publishCustomEvent&&"visitor"in i&&"function"==typeof i.visitor))return void A()}catch(e){return void A(e)}var r=window.Shopify.analytics;r.replayQueue.forEach(function(e){var i=e[0],n=e[1],r=e[2];t.publishCustomEvent(i,n,r)}),r.replayQueue=[],r.publish=t.publishCustomEvent,r.visitor=t.visitor,r.initialized=!0}}function A(e){B("manager_api_unavailable",void 0===e?void 0:Q(e))}function x(){B("script_load_failed","".concat(I," has failed to load"))}function B(e,t){T||(T=!0,q(),w.emit({status:"failed",errorMsg:t,failureReason:e,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function M(e){O&&(q(),w.emit({status:"pagehide-while-loading",useKeepaliveFallback:!0,pagehidePersisted:e.persisted,requestId:m.requestId,navigationType:m.navigationType,trekkieState:a()}))}function q(){O=!1;try{window.removeEventListener("pagehide",M)}catch(e){}}function R(e){var t;!function(e){var t=e.src,i=e.async,n=void 0===i||i,r=e.onload,o=e.onerror,a=e.sri,d=e.scriptDataAttributes,s=void 0===d?{}:d,u=document.createElement("script"),l=document.querySelector("head"),c=document.querySelector("body");if(u.async=n,u.src=t,a&&(u.integrity=a,u.crossOrigin="anonymous"),s)for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))try{u.dataset[p]=String(s[p])}catch(e){}if(r&&u.addEventListener("load",r),o&&u.addEventListener("error",o),l)l.appendChild(u);else{if(!c)throw new Error("Did not find a head or body element to append the script");c.appendChild(u)}}({src:I,async:!0,onload:U,onerror:e,sri:(t=E,"string"==typeof t&&/^sha384-[A-Za-z0-9+/=]+$/.test(t)?E:""),scriptDataAttributes:c})}function D(e){B("script_append_failed",Q(e))}function Q(e){return e instanceof Error?e.message:"Unknown error"}}}();wpmLoader({shopId: 10425368661,storefrontBaseUrl: "https://mermaidvenom.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://mermaidvenom.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"1776025685","configuration":"{\"ti\":\"97264264\",\"endpoint\":\"https:\/\/bat.bing.com\/action\/0\",\"tagIds\":\"[\\\"-1\\\"]\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"58a904981d2724b937c16718aa2f1aee","type":"APP","apiClientId":2997493,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_personal_data"],"dataSharingControls":[]},"dataSharingState":"optimized"}
828,{"id":"1775173717","configuration":"{\"tagID\":\"2612853533318\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7ae565e198624b39e0856d352b9a6b4c","type":"APP","apiClientId":3009811,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1664712789","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"GT-KD722HFN\\\",\\\"AW-699804817\\\",\\\"G-FBK6P4RLD0\\\",\\\"GT-57SQM99\\\"],\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":[\\\"G-FBK6P4RLD0\\\",\\\"MC-1W73EH2HE6\\\"]},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":[\\\"AW-699804817\\\/CTRkCJT9hrMZEJHZ2M0C\\\",\\\"G-FBK6P4RLD0\\\",\\\"MC-1W73EH2HE6\\\"]},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"MC-K0V29198K7\\\",\\\"G-FBK6P4RLD0\\\",\\\"MC-1W73EH2HE6\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"MC-K0V29198K7\\\",\\\"G-FBK6P4RLD0\\\",\\\"MC-1W73EH2HE6\\\"]},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"MC-K0V29198K7\\\",\\\"G-FBK6P4RLD0\\\",\\\"MC-1W73EH2HE6\\\"]},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":[\\\"G-FBK6P4RLD0\\\",\\\"MC-1W73EH2HE6\\\"]},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":[\\\"G-FBK6P4RLD0\\\",\\\"MC-1W73EH2HE6\\\"]}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"235765845","configuration":"{\"storeIdentity\":\"mermaid-vemon.myshopify.com\",\"baseURL\":\"https:\\\/\\\/api.printful.com\\\/shopify-pixels\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"74f275712857ab41bea9d998dcb2f9da","type":"APP","apiClientId":156624,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"74678357","configuration":"{\"shopId\":\"5825\",\"env\":\"production\",\"metaData\":\"[]\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"de1f24f7dbc015cb4d3a1ef53d018b51","type":"APP","apiClientId":2773553,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"55705685","configuration":"{\"pixel_id\":\"984362968422381\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"48267349","configuration":"{\"apiURL\":\"https:\/\/api.omnisend.com\",\"appURL\":\"https:\/\/app.omnisend.com\",\"brandID\":\"5d8ff9768653ed2dfe199c0a\",\"trackingURL\":\"https:\/\/wt.omnisendlink.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"1e2b45bbee5b360dff908f60423b89f8","type":"APP","apiClientId":186001,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"57770069","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS"],"name":"Google Analytics tag (migrated)"},{"id":"shopify-app-pixel","configuration":"{}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"APP","privacyPurposes":["ANALYTICS","MARKETING"]},{"id":"shopify-custom-pixel","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"0530","apiClientId":"shopify-pixel","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING"]}],isMerchantRequest: false,initData: {"shop":{"name":"Mermaid Venom","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"mermaid-vemon.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/mermaidvenom.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://mermaidvenom.com/cdn","c8540278we853e1abpb62b2c4amde256306",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"121070059605","themeStoreId":"766","themePublished":"true","eventMetadataId":"910607f3-b525-492a-bb83-b781424ed14d","pageType":"blog","resourceId":"26376306773","shopId":"10425368661","storefrontBaseUrl":"https:\/\/mermaidvenom.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"c8540278we853e1abpb62b2c4amde256306","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
828<script> 829 window.ShopifyAnalytics = window.ShopifyAnalytics || {}; 830 window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {}; 831 window.ShopifyAnalytics.meta.currency = 'USD'; 832 var meta = {"page":{"pageType":"blog","resourceType":"blog","resourceId":26376306773,"requestId":"a36d0db1-df3c-43ec-89b4-f3d92b066c2a-1790480728"}}; 833 for (var attr in meta) { 834 window.ShopifyAnalytics.meta[attr] = meta[attr]; 835 } 836</script>
vendor: 1 bytes, line 836
836
837<script class="analytics"> 838 (function () { 839 var customDocumentWrite = function(content) { 840 var jquery = null; 841 842 if (window.jQuery) { 843 jquery = window.jQuery; 844 } else if (window.Checkout && window.Checkout.$) { 845 jquery = window.Checkout.$; 846 } 847 848 if (jquery) { 849 jquery('body').append(content); 850 } 851 }; 852 853 var hasLoggedConversion = function(token) { 854 if (token) { 855 return document.cookie.indexOf('loggedConversion=' + token) !== -1; 856 } 857 return false; 858 } 859 860 var setCookieIfConversion = function(token) { 861 if (token) { 862 var twoMonthsFromNow = new Date(Date.now()); 863 twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2); 864 865 document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow; 866 } 867 } 868 869 var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || []; 870 window.ShopifyAnalytics.lib.trekkie = window.trekkie; 871 if (trekkie.integrations) { 872 return; 873 } 874 trekkie.methods = [ 875 'identify', 876 'page', 877 'ready', 878 'track', 879 'trackForm', 880 'trackLink' 881 ]; 882 trekkie.factory = function(method) { 883 return function() { 884 var args = Array.prototype.slice.call(arguments); 885 args.unshift(method); 886 trekkie.push(args); 887 if (method == 'track' || method == 'page') { 888 var pageUrl; 889 try { 890 pageUrl = window.location.href; 891 } catch (e) {} 892 var pageReferrer; 893 try { 894 pageReferrer = document.referrer; 895 } catch (e) {} 896 try { 897 if (window.__TREKKIE_SHIM_QUEUE == null) { 898 window.__TREKKIE_SHIM_QUEUE = []; 899 } 900 window.__TREKKIE_SHIM_QUEUE.push({ 901 from: 'trekkie-stub', 902 method: method, 903 args: args.slice(1), 904 pageContext: { 905 url: pageUrl, 906 referrer: pageReferrer 907 } 908 }); 909 } catch (e) { 910 // no-op 911 } 912 } 913 return trekkie; 914 }; 915 }; 916 for (var i = 0; i < trekkie.methods.length; i++) { 917 var key = trekkie.methods[i]; 918 trekkie[key] = trekkie.factory(key); 919 } 920 trekkie.load = function(config) { 921 trekkie.config = config || {}; 922 trekkie.config.initialDocumentCookie = document.cookie; 923 var first = document.getElementsByTagName('script')[0]; 924var script = document.createElement('script'); 925script.type = 'text/javascript'; 926script.onerror = function(e) { 927 var scriptFallback = document.createElement('script'); 928 scriptFallback.type = 'text/javascript'; 929 scriptFallback.onerror = function(error) { 930 var Monorail = { 931 produce: function produce(monorailDomain, schemaId, payload) { 932 var currentMs = new Date().getTime(); 933 var event = { 934 schema_id: schemaId, 935 payload: payload, 936 metadata: { 937 event_created_at_ms: currentMs, 938 event_sent_at_ms: currentMs 939 } 940 }; 941 return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event)); 942 }, 943 sendRequest: function sendRequest(endpointUrl, payload) { 944 // Try the sendBeacon API 945 if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) { 946 var blobData = new window.Blob([payload], { 947 type: 'text/plain' 948 }); 949 950 if (window.navigator.sendBeacon(endpointUrl, blobData)) { 951 return true; 952 } // sendBeacon was not successful 953 954 } // XHR beacon 955 956 var xhr = new XMLHttpRequest(); 957 958 try { 959 xhr.open('POST', endpointUrl); 960 xhr.setRequestHeader('Content-Type', 'text/plain'); 961 xhr.send(payload); 962 } catch (e) { 963 console.log(e); 964 } 965 966 return false; 967 }, 968 isIos12: function isIos12() { 969 return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1; 970 } 971 }; 972 Monorail.produce('monorail-edge.shopifysvc.com', 973 'trekkie_storefront_load_errors/1.1', 974 {shop_id: 10425368661, 975 theme_id: 121070059605, 976 app_name: "storefront", 977 context_url: window.location.href, 978 source_url: "//mermaidvenom.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js"}); 979 980 }; 981 scriptFallback.async = true; 982 scriptFallback.src = '//mermaidvenom.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js'; 983 first.parentNode.insertBefore(scriptFallback, first); 984}; 985script.async = true; 986script.src = '//mermaidvenom.com/cdn/s/trekkie.storefront.f1ba865b3fecd812ad617f74ac079261075e9edb.min.js'; 987first.parentNode.insertBefore(script, first); 988 989 }; 990 trekkie.load( 991 {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":10425368661,"isMerchantRequest":null,"themeId":121070059605,"themeCityHash":"8457626450378577139","contentLanguage":"en","currency":"USD","eventMetadataId":"910607f3-b525-492a-bb83-b781424ed14d"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}} 992 ); 993 994 var loaded = false;
995 trekkie.ready(function() { 996 if (loaded) return; 997 loaded = true; 998 999 window.ShopifyAnalytics.lib = window.trekkie; 1000 1001 var originalDocumentWrite = document.write; 1002 document.write = customDocumentWrite; 1003 try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {}; 1004 document.write = originalDocumentWrite; 1005 1006 var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/) 1007 var token = match? match[1]: undefined; 1008 if (!hasLoggedConversion(token)) { 1009 setCookieIfConversion(token); 1010 1011 } 1012 }); 1013 1014 window.ShopifyAnalytics.lib.page(null,{"pageType":"blog","resourceType":"blog","resourceId":26376306773,"requestId":"a36d0db1-df3c-43ec-89b4-f3d92b066c2a-1790480728","shopifyEmitted":true}); 1015 1016 var eventsListenerScript = document.createElement('script'); 1017 eventsListenerScript.async = true; 1018 eventsListenerScript.src = "//mermaidvenom.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js"; 1019 document.getElementsByTagName('head')[0].appendChild(eventsListenerScript); 1020})();</script>
1020 1021
1021<script> 1022 if (!window.ga || (window.ga && typeof window.ga !== 'function')) { 1023 window.ga = function ga() { 1024 (window.ga.q = window.ga.q || []).push(arguments); 1025 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 1026 window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"}); 1027 } 1028 console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information."); 1029 }; 1030 if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') { 1031 window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"}); 1032 } 1033 } 1034</script>
vendor: 1 bytes, line 1034
1034
1035<script 1036 defer 1037 src="https://mermaidvenom.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js" 1038 data-application="storefront-renderer" 1039 data-shop-id="10425368661" 1040 data-render-region="gcp-us-central1" 1041 data-page-type="blog" 1042 data-theme-instance-id="121070059605" 1043 data-theme-name="Boundless" 1044 data-theme-version="10.0.4" 1045 data-monorail-region="shop_domain" 1046 data-resource-timing-sampling-rate="10" 1047 data-shs="true" 1048 data-shs-beacon="true" 1049 data-shs-export-with-fetch="true" 1050 data-shs-logs-sample-rate="1" 1051 data-shs-beacon-endpoint="https://mermaidvenom.com/api/collect" 1052></script>
vendor: 1 bytes, line 1052
1052
1053<script id="shopify-chat-page-data" type="application/json">{"greetingMessage":"Welcome to Mermaid Venom. How can I help?","customerServiceEmail":"[email protected]","onlineStorePasswordProtected":false,"translations":[{"key":"agent_chat.panel.open_chat","value":"Open chat"},{"key":"agent_chat.panel.ask_anything","value":"Ask anything"},{"key":"agent_chat.panel.title","value":"Storekick"},{"key":"agent_chat.panel.unread_replies","value":"Unread replies"},{"key":"agent_chat.panel.back_to_chat","value":"Back to chat"},{"key":"agent_chat.panel.see_history","value":"See chat history"},{"key":"agent_chat.panel.new_chat","value":"Create a new chat"},{"key":"agent_chat.panel.close","value":"Close chat"},{"key":"agent_chat.panel.undock","value":"Undock chat"},{"key":"agent_chat.panel.dock","value":"Dock chat"},{"key":"agent_chat.panel.expand","value":"Expand chat"},{"key":"agent_chat.panel.contract","value":"Contract chat"},{"key":"agent_chat.panel.jump_to_latest","value":"Jump to latest"},{"key":"agent_chat.panel.loading_chat","value":"Loading chat"},{"key":"agent_chat.input.label","value":"Type your message"},{"key":"agent_chat.input.placeholder","value":"Ask anything..."},{"key":"agent_chat.input.send","value":"Send"},{"key":"agent_chat.input.stop","value":"Stop generating"},{"key":"agent_chat.thinking","value":"Thinking..."},{"key":"agent_chat.first_response_delayed","value":"Agent is taking longer to respondâ¦"},{"key":"agent_chat.searching","value":"Searching..."},{"key":"agent_chat.message.sent_timestamp","value":"Sent · {{time}}"},{"key":"agent_chat.message.automated_label","value":"Automated"},{"key":"agent_chat.message.automated_timestamp","value":"Automated · {{time}}"},{"key":"agent_chat.liveAgentHandoff","value":"Someone from our team will be with you shortly"},{"key":"agent_chat.human_handoff.action","value":"Chat with our team"},{"key":"agent_chat.human_handoff.request","value":"Iâd like to talk to someone from your team"},{"key":"agent_chat.human_handoff.ai_assistant","value":"AI assistant"},{"key":"agent_chat.greeting.default","value":"Hi there!"},{"key":"agent_chat.greeting.with_name","value":"Hi {{name}}!"},{"key":"agent_chat.greeting.welcome","value":"You can ask questions about shopping, sizing\/dimensions, shipping, returns, or order status."},{"key":"agent_chat.greeting.welcome_back","value":"Welcome back to %{shop_name}! How can I help?"},{"key":"agent_chat.greeting.welcome_back_no_shop","value":"Welcome back! How can I help?"},{"key":"agent_chat.greeting.welcome_to_shop","value":"Welcome to %{shop_name}. How can I help?"},{"key":"agent_chat.greeting.generic","value":"How can I help?"},{"key":"agent_chat.disclaimer.text","value":"This chat is powered by AI from Shopify and may make mistakes. Your messages are visible to {{shop_name}}. See"},{"key":"agent_chat.disclaimer.text_human","value":"Your messages are visible to {{shop_name}} and to Shopify for the provision and improvement of the services. See"},{"key":"agent_chat.disclaimer.link_text","value":"privacy policy"},{"key":"agent_chat.error.response_unavailable","value":"Response unavailable"},{"key":"agent_chat.error.generic","value":"Something went wrong."},{"key":"agent_chat.error.response_failed","value":"Couldnât load this message"},{"key":"agent_chat.error.message_send_failed","value":"Your message couldnât be sent"},{"key":"agent_chat.error.attachment_upload_failed","value":"Your attachment didnât upload"},{"key":"agent_chat.error.first_response_stalled","value":"Agent couldnât respond"},{"key":"agent_chat.error.try_again","value":"Try again"},{"key":"agent_chat.error.unavailable","value":"Chat isn't available right now - try again later"},{"key":"agent_chat.error.usage_limit","value":"Message limit reached â try again later or email us at {{email}}"},{"key":"agent_chat.error.usage_limit_no_email","value":"Message limit reached â try again later"},{"key":"agent_chat.error.cost_quota_unhandled","value":"Chat isnât available right nowâemail us at {{email}}"},{"key":"agent_chat.error.cost_quota_unhandled_no_email","value":"Chat isnât available right now"},{"key":"agent_chat.error.cost_quota_handover","value":"AI assistant isnât available right now â our team will reply shortly"},{"key":"agent_chat.history.heading","value":"Chat history"},{"key":"agent_chat.history.loading","value":"Loading conversation history"},{"key":"agent_chat.history.aria_label","value":"Conversation history"},{"key":"agent_chat.history.no_conversations","value":"No conversations"},{"key":"agent_chat.history.conversation.one","value":"conversation"},{"key":"agent_chat.history.conversation.other","value":"conversations"},{"key":"agent_chat.history.error_message","value":"Something went wrong."},{"key":"agent_chat.history.try_again","value":"Try again"},{"key":"agent_chat.history.no_past","value":"No past conversations"},{"key":"agent_chat.history.start_new","value":"Start a new chat"},{"key":"agent_chat.history.untitled","value":"Untitled conversation"},{"key":"agent_chat.history.resume","value":"Resume: {{title}}"},{"key":"agent_chat.history.resume_with_time","value":"Resume: {{title}}, {{time}}"},{"key":"agent_chat.history.delete","value":"Delete conversation: {{title}}"},{"key":"agent_chat.history.delete_failed","value":"Could not delete conversation"},{"key":"agent_chat.feedback.group_label","value":"Message feedback"},{"key":"agent_chat.feedback.thumbs_up","value":"Thumbs up"},{"key":"agent_chat.feedback.thumbs_down","value":"Thumbs down"},{"key":"agent_chat.feedback.add_comment","value":"Add comment"},{"key":"agent_chat.feedback.thanks","value":"Thanks for your feedback"},{"key":"agent_chat.feedback.placeholder_up","value":"Tell us what went well"},{"key":"agent_chat.feedback.placeholder_down","value":"Tell us what could have been better"},{"key":"agent_chat.feedback.comment_label","value":"Feedback comment"},{"key":"agent_chat.feedback.cancel","value":"Cancel"},{"key":"agent_chat.feedback.submit","value":"Submit"},{"key":"agent_chat.feedback.character_count","value":"{{current}}\/{{max}}"},{"key":"agent_chat.feedback.character_limit_reached","value":"Maximum length reached. Feedback is limited to {{max}} characters."},{"key":"agent_chat.buyer_profile.button.open","value":"Buyer Profile"},{"key":"agent_chat.buyer_profile.title","value":"Buyer Profile"},{"key":"agent_chat.buyer_profile.empty","value":"No buyer profile available."},{"key":"agent_chat.buyer_profile.close","value":"Close"},{"key":"agent_chat.suggestions.empty_state_label","value":"Suggested questions"},{"key":"agent_chat.suggestions.quick_reply_label","value":"Suggested replies"},{"key":"agent_chat.auth.sign_in_to_continue","value":"Sign in to continue"},{"key":"agent_chat.auth.sign_in","value":"Sign in"},{"key":"agent_chat.auth.skip_and_chat","value":"Skip and start chatting"},{"key":"agent_chat.auth.pre_chat_title","value":"Sign in to personalize and save your chats"},{"key":"agent_chat.auth.pre_chat_subtitle","value":"Sign in or create an account"},{"key":"agent_chat.auth.staff_chat_required_title","value":"Don't miss a reply"},{"key":"agent_chat.auth.staff_chat_required_subtitle","value":"Sign in to chat with our team. We'll email you if you leave the chat."},{"key":"agent_chat.auth.share_disclaimer","value":"By continuing, Shop will share your name and email with this store. See their {{terms_link}} and {{privacy_link}}"},{"key":"agent_chat.auth.terms_link","value":"terms"},{"key":"agent_chat.auth.privacy_link","value":"privacy policy"},{"key":"agent_chat.auth.declined_pre_chat","value":"I canât connect you with the store unless you sign in."},{"key":"agent_chat.reply_by_email.continuation_prompt","value":"If you leave the chat, weâll email you when thereâs a reply."},{"key":"agent_chat.reply_by_email.sign_in_prompt","value":"Sign in to get emailed when thereâs a reply."},{"key":"agent_chat.order_lookup.track_order","value":"Track my order"},{"key":"agent_chat.order_lookup.track_another_order","value":"Track another order"},{"key":"agent_chat.order_lookup.new_conversation","value":"New conversation"},{"key":"agent_chat.order_lookup.follow_up_label","value":"Order lookup actions"},{"key":"agent_chat.order_lookup.enter_order_information","value":"Enter order information"},{"key":"agent_chat.order_lookup.prompt","value":"To see your order status, please provide your order details."},{"key":"agent_chat.order_lookup.form_title","value":"Track my order"},{"key":"agent_chat.order_lookup.form_subtitle","value":"Please provide your information."},{"key":"agent_chat.order_lookup.order_number_label","value":"Order number"},{"key":"agent_chat.order_lookup.email_label","value":"Email address"},{"key":"agent_chat.order_lookup.submit","value":"Track my order"},{"key":"agent_chat.order_lookup.cancel","value":"Cancel"},{"key":"agent_chat.order_lookup.invalid_order_number","value":"Please enter a valid order number with only numbers and letters, no spaces (e.g. 1006)."},{"key":"agent_chat.order_lookup.invalid_order_number_whitespace","value":"Please enter a valid order number with only numbers and letters, no spaces (e.g. 1006)."},{"key":"agent_chat.order_lookup.invalid_email","value":"Please enter a valid email address"},{"key":"agent_chat.order_lookup.generic_error","value":"There was a problem looking up your order. Please try again."},{"key":"agent_chat.order_lookup.rate_limited_error","value":"Too many attempts. Try again later."},{"key":"agent_chat.order_lookup.locked_composer_status","value":"Order lookup is in progress. Start a new conversation to ask something else."},{"key":"agent_chat.legacy_contact.form_title","value":"Before we get started"},{"key":"agent_chat.legacy_contact.form_subtitle","value":"Please provide your information so we can reply to you if you leave the chat."},{"key":"agent_chat.legacy_contact.first_name_label","value":"First name"},{"key":"agent_chat.legacy_contact.last_name_label","value":"Last name"},{"key":"agent_chat.legacy_contact.email_label","value":"Email"},{"key":"agent_chat.legacy_contact.marketing_opt_in","value":"Email me with news and offers"},{"key":"agent_chat.legacy_contact.submit","value":"Start chat"},{"key":"agent_chat.legacy_contact.cancel","value":"Cancel"}
1053,{"key":"agent_chat.legacy_contact.invalid_first_name","value":"Enter a valid first name."},{"key":"agent_chat.legacy_contact.invalid_last_name","value":"Enter a valid last name."},{"key":"agent_chat.legacy_contact.invalid_email","value":"Enter a valid email address."},{"key":"agent_chat.legacy_contact.invalid_email_length","value":"Email address is too long."},{"key":"agent_chat.legacy_contact.generic_error","value":"Something went wrong."},{"key":"agent_chat.legacy_contact.rate_limited_error","value":"Too many attempts. Try again later."},{"key":"agent_chat.discountCard.useDiscount","value":"Use discount"},{"key":"agent_chat.discountCard.discountApplicationContext","value":"Applies automatically at checkout"},{"key":"agent_chat.cart.checkout","value":"Checkout"},{"key":"agent_chat.product.add_to_cart","value":"Add to cart"},{"key":"agent_chat.product.view_details","value":"View details"},{"key":"agent_chat.product.out_of_stock","value":"Out of stock"},{"key":"agent_chat.product.compare_suggestions","value":"Compare suggestions"},{"key":"agent_chat.product.hide_suggestions","value":"Hide suggestions"},{"key":"agent_chat.product.sold_out","value":"Sold out"},{"key":"agent_chat.order.item.one","value":"item"},{"key":"agent_chat.order.item.other","value":"items"},{"key":"agent_chat.order.less_items.one","value":"- hide {{count}} item"},{"key":"agent_chat.order.less_items.other","value":"- hide {{count}} items"},{"key":"agent_chat.order.more_items.one","value":"+ {{count}} more item"},{"key":"agent_chat.order.more_items.other","value":"+ {{count}} more items"},{"key":"agent_chat.order.view_order","value":"View order {{orderId}}"},{"key":"agent_chat.order.track_shipment","value":"Track shipment"},{"key":"agent_chat.order.of_total","value":"{{index}} of {{total}}"},{"key":"agent_chat.order.label","value":"Order {{number}}"},{"key":"agent_chat.order.count.one","value":"{{count}} Order"},{"key":"agent_chat.order.count.other","value":"{{count}} Orders"},{"key":"agent_chat.order.ordered_on","value":"Ordered {{date}}"},{"key":"agent_chat.order.select","value":"Select order {{number}}"},{"key":"agent_chat.return.heading","value":"Select items to return"},{"key":"agent_chat.return.toggle_item","value":"Select {{name}}"},{"key":"agent_chat.return.select_item_non_returnable","value":"{{name}}, not returnable"},{"key":"agent_chat.return.quantity_label","value":"Return quantity"},{"key":"agent_chat.return.reason_label","value":"Reason for return"},{"key":"agent_chat.return.reason_placeholder","value":"Select a reason"},{"key":"agent_chat.return.confirm","value":"Request return"},{"key":"agent_chat.return.confirmed","value":"Return requested"},{"key":"agent_chat.return.reason.size_too_small","value":"Size too small"},{"key":"agent_chat.return.reason.size_too_large","value":"Size too large"},{"key":"agent_chat.return.reason.unwanted","value":"Unwanted"},{"key":"agent_chat.return.reason.not_as_described","value":"Not as described"},{"key":"agent_chat.return.reason.wrong_item","value":"Wrong item"},{"key":"agent_chat.return.reason.defective","value":"Defective"},{"key":"agent_chat.return.reason.style","value":"Style"},{"key":"agent_chat.return.reason.color","value":"Color"},{"key":"agent_chat.return.reason.other_reason","value":"Other"},{"key":"agent_chat.scroll.previous","value":"Previous"},{"key":"agent_chat.scroll.next","value":"Next"}]}</script>
vendor: 1 bytes, line 1053
1053
1054<script id="shopify-customer-account-data" type="application/json">{"customer":null,"shop":{"id":"10425368661","customerAccountTranslations":[{"key":"account_menu.signed_out_state.sheet_title","value":"Sign in or create account"},{"key":"account_menu.signed_out_state.section_divider","value":"More ways to sign in"},{"key":"account_menu.signed_out_state.alternate_divider","value":"OR"},{"key":"account_menu.signed_out_state.email_field_label","value":"Email"},{"key":"account_menu.signed_out_state.orders_button","value":"Orders"},{"key":"account_menu.signed_out_state.profile_button","value":"Profile"},{"key":"account_menu.signed_out_state.shop_login_button","value":"Sign in with Shop"},{"key":"account_menu.signed_out_state.continue_with_google","value":"Continue with Google"},{"key":"account_menu.signed_out_state.continue_with_facebook","value":"Continue with Facebook"},{"key":"account_menu.signed_out_state.marketing_consent_label","value":"Email me with news and offers"},{"key":"account_menu.signed_in_state.greeting_with_name","value":"Hi, {{first_name}}"},{"key":"account_menu.signed_in_state.greeting_without_name","value":"Account"},{"key":"account_menu.signed_in_state.orders_button","value":"Orders"},{"key":"account_menu.signed_in_state.profile_button","value":"Profile"},{"key":"account_menu.location_picker.sheet_title","value":"Locations"},{"key":"account_menu.location_picker.search_field_placeholder","value":"Search"},{"key":"account_menu.aria_labels.close_menu","value":"Close menu"},{"key":"account_menu.aria_labels.back_to_main_menu","value":"Back to main menu from {{title}}"},{"key":"account_menu.aria_labels.open_submenu","value":"{{title}}, opens submenu"},{"key":"account_menu.aria_labels.loading_menu","value":"Loading menu"},{"key":"account_menu.aria_labels.account","value":"Account"},{"key":"account_menu.aria_labels.sign_in_with_email","value":"Sign in with email"},{"key":"account_menu.aria_labels.sign_in","value":"Sign in"}],"socialLoginProviders":[{"handle":"Shop"}],"legacyCustomerAccounts":false,"signInLinksVisible":true,"b2bEnabled":false,"marketingConsentSigninEnabled":true,"marketingConsentPreselected":false},"visitor":{"country":"US","language":"en"}}</script>
1054 1055<meta name="shopify-y" content="57dd7ac5-1c05-4d24-88fe-2ad16166fee0" data-expiration="1822038328000"><meta name="shopify-s" content="e2c400bf-0df3-42e5-994d-89f28b27445d" data-expiration="1790482528000"><meta name="new-cookie-storage-activated" content="t"> 1056</head> 1057 1058<body id="blog" class="template-blog"> 1059 <div id="SearchDrawer" class="search-bar drawer drawer--top"> 1060 <div class="search-bar__table"> 1061 <form action="/search" method="get" class="search-bar__table-cell search-bar__form" role="search"> 1062 <div class="search-bar__table"> 1063 <div class="search-bar__table-cell search-bar__icon-cell"> 1064 <button type="submit" class="search-bar__icon-button search-bar__submit"> 1065 <span class="icon icon-search" aria-hidden="true"></span> 1066 <span class="icon__fallback-text">Search</span> 1067 </button> 1068 </div> 1069 <div class="search-bar__table-cell"> 1070 <input type="search" id="SearchInput" name="q" value="" placeholder="Search our store" aria-label="Search our store" class="search-bar__input"> 1071 </div> 1072 </div> 1073 </form> 1074 <div class="search-bar__table-cell text-right"> 1075 <button type="button" class="search-bar__icon-button search-bar__close js-drawer-close"> 1076 <span class="icon icon-x" aria-hidden="true"></span> 1077 <span class="icon__fallback-text">close (esc)</span> 1078 </button> 1079 </div> 1080 </div> 1081 </div> 1082 <div id="NavDrawer" class="drawer drawer--left"> 1083 <div id="shopify-section-sidebar-menu" class="shopify-section sidebar-menu-section"><div class="drawer__header" data-section-id="sidebar-menu" data-section-type="sidebar-menu-section"> 1084 <div class="drawer__close"> 1085 <button type="button" class="drawer__close-button js-drawer-close"> 1086 <span class="icon icon-x" aria-hidden="true"></span> 1087 <span class="icon__fallback-text">Close menu</span> 1088 </button> 1089 </div> 1090</div> 1091<div class="drawer__inner"> 1092 <ul class="drawer-nav"> 1093 1094 1095 1096 <li class="drawer-nav__item"> 1097 <a href="/collections/home-decor-1" class="drawer-nav__link h2">Home Decor</a> 1098 </li> 1099 1100 1101 1102 1103 <li class="drawer-nav__item"> 1104 <a href="/collections/clothing-clothing" class="drawer-nav__link h2">Clothing</a> 1105 </li> 1106 1107 1108 1109 1110 <li class="drawer-nav__item"> 1111 <a href="https://mermaidvenom.com/collections/shoes" class="drawer-nav__link h2">Shoes</a> 1112 </li> 1113 1114 1115 1116 1117 <li class="drawer-nav__item"> 1118 <a href="/collections/accessories-accessories" class="drawer-nav__link h2">Accessories</a> 1119 </li> 1120 1121 1122 1123 1124 <li class="drawer-nav__item"> 1125 <a href="/collections/drinkware" class="drawer-nav__link h2">Drinkware</a> 1126 </li> 1127 1128 1129 1130 1131 <li class="drawer-nav__item"> 1132 <a href="/collections/pet-accessories" class="drawer-nav__link h2">Pet Accessories</a> 1133 </li> 1134 1135 1136 1137 1138 <li class="drawer-nav__item"> 1139 <a href="/collections/plushies" class="drawer-nav__link h2">Plushies</a> 1140 </li> 1141 1142 1143 1144 1145 <li class="drawer-nav__item"> 1146 <a href="/collections/til-death-bridal" class="drawer-nav__link h2">Til Death Bridal </a> 1147 </li> 1148 1149 1150 1151 1152 <li class="drawer-nav__item"> 1153 <a href="/collections/avada-best-sellers" class="drawer-nav__link h2">View all</a> 1154 </li> 1155 1156 1157 1158 1159 <li class="drawer-nav__item"> 1160 <a href="/pages/about-us" class="drawer-nav__link h2">About Us</a> 1161 </li> 1162 1163 1164 1165 1166 <li class="drawer-nav__item"> 1167 <a href="/pages/shipping-policy" class="drawer-nav__link h2">Shipping & Delivery </a> 1168 </li> 1169 1170 1171 1172 1173 <li class="drawer-nav__item"> 1174 <a href="/pages/refund-policy" class="drawer-nav__link h2">Returns & Refunds</a> 1175 </li> 1176 1177 1178 1179 1180 <li class="drawer-nav__item"> 1181 <a href="https://mermaidvenom.com/apps/track123?nums=TK123" class="drawer
1181-nav__link h2">Track order</a> 1182 </li> 1183 1184 1185 1186 <li class="drawer-nav__spacer"></li> 1187 1188 1189 1190 <li class="drawer-nav__item drawer-nav__item--secondary"> 1191 <a href="https://mermaidvenom.com/customer_authentication/redirect?locale=en&region_country=US" id="customer_login_link">Log in</a> 1192 </li> 1193 <li class="drawer-nav__item drawer-nav__item--secondary"> 1194 <a href="https://shopify.com/10425368661/account?locale=en&buyer_flags=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJtZXJtYWlkLXZlbW9uLm15c2hvcGlmeS5jb20iLCJmbGFncyI6W10sImV4cCI6MTc5MTA4NTUyOCwibmJmIjoxNzkwNDgwNzI4fQ.JIaSan0n7zXNFXh4Oa3NcQZK6fPsqxiPnIqPTmyAanw" id="customer_register_link">Create account</a> 1195 </li> 1196 1197 1198 1199 </ul> 1200 1201 <ul class="list--inline social-icons social-icons--drawer"> 1202 1203 <li> 1204 <a href="https://twitter.com/MermaidVenom" title="Mermaid Venom on Twitter"> 1205 <span class="icon icon-twitter" aria-hidden="true"></span> 1206 <span class="visually-hidden">Twitter</span> 1207 </a> 1208 </li> 1209 1210 1211 <li> 1212 <a href="https://www.facebook.com/shopmermaidvenom/" title="Mermaid Venom on Facebook"> 1213 <span class="icon icon-facebook" aria-hidden="true"></span> 1214 <span class="visually-hidden">Facebook</span> 1215 </a> 1216 </li> 1217 1218 1219 <li> 1220 <a href="https://www.pinterest.com/shopmermaidvenom/_shop" title="Mermaid Venom on Pinterest"> 1221 <span class="icon icon-pinterest" aria-hidden="true"></span> 1222 <span class="visually-hidden">Pinterest</span> 1223 </a> 1224 </li> 1225 1226 1227 1228 <li> 1229 <a href="https://www.instagram.com/shopmermaidvenom" title="Mermaid Venom on Instagram"> 1230 <span class="icon icon-instagram" aria-hidden="true"></span> 1231 <span class="visually-hidden">Instagram</span> 1232 </a> 1233 </li> 1234 1235 1236 1237 1238 1239 1240 </ul> 1241</div> 1242 1243 1244 1245 1246</div> 1247 </div> 1248 <div id="CartDrawer" class="drawer drawer--right drawer--has-fixed-footer"> 1249 <div class="drawer__header"> 1250 <div class="drawer__close"> 1251 <button type="button" class="drawer__close-button js-drawer-close"> 1252 <span class="icon icon-x" aria-hidden="true"></span> 1253 <span class="icon__fallback-text">Close cart</span> 1254 </button> 1255 </div> 1256 </div> 1257 <div class="drawer__inner"> 1258 <div id="CartContainer"> 1259 </div> 1260 </div> 1261 </div> 1262 1263 <div id="PageContainer"> 1264 <div id="shopify-section-announcement-bar" class="shopify-section"> 1265 1266 <style> 1267 .announcement-bar { 1268 background-color: #1a1a1a; 1269 } 1270 1271 .announcement-bar--link:hover { 1272 1273 1274 1275 1276 background-color: #3f3f3f; 1277 1278 } 1279 1280 .announcement-bar__message { 1281 color: #ffffff; 1282 } 1283 </style> 1284 1285 1286 <a href="https://www.mermaidvenom.com" class="announcement-bar announcement-bar--link"> 1287 1288 1289 <p class="announcement-bar__message">25% OFF & FREE SHIPPING ENDS SOON!!</p> 1290 1291 1292 </a> 1293 1294 1295 1296 1297 1298 1299 1300 1301</div> 1302 1303 <div class="site-header-wrapper"> 1304 <div class="site-header-container"> 1305 <div id="shopify-section-header" class="shopify-section header-section"><style> 1306 .site-header__logo img { 1307 max-width: 600px; 1308 } 1309 @media screen and (max-width: 749px) { 1310 .site-header__logo img { 1311 max-width: 100%; 1312 } 1313 } 1314</style> 1315 1316<header class="site-header" role="banner" data-section-id="header" data-section-type="header-section"> 1317 <div class="grid grid--no-gutters grid--table site-header__inner"> 1318 <div class="grid__item one-third medium-up--one-sixth"> 1319 <button type="button" class="site-header__link text-link site-header__toggle-nav js-drawer-open-left"> 1320 <span class="icon icon-hamburger" aria-hidden="true"></span> 1321 <span class="icon__fallback-text">Menu</span> 1322 </button> 1323 </div> 1324 <div class="grid__item one-third medium-up--two-thirds"> 1325 <div class="site-header__logo h1" itemscope itemtype="http://schema.org/Organization"><a href="/" itemprop="url" class="site-header__logo-link"> 1326 1327 <img class="site-header__logo-image" src="//mermaidvenom.com/cdn/shop/files/400_c33a6f3f-097d-4033-9094-b8f178ad5f90_600x.png?v=1704741555" 1328 srcset="//mermaidvenom.com/cdn/shop/files/400_c33a6f3f-097d-4033-9094-b8f178ad5f90_600x.png?v=1704741555 1x, //mermaidvenom.com/cdn/shop/files/[email protected]?v=1704741555 2x" alt="Mermaid Venom" itemprop="logo"> 1329 </a></div> 1330 </div> 1331 1332 <div class="grid__item one-third medium-up--one-sixth text-right"> 1333 <a href="/search" class="site-header__link site-header__search js-drawer-open-top">
1334 <span class="icon icon-search" aria-hidden="true"></span> 1335 <span class="icon__fallback-text">Search</span> 1336 </a> 1337 <a href="/cart" class="site-header__link site-header__cart cart-link"> 1338 <span class="icon icon-cart" aria-hidden="true"></span> 1339 <span class="icon__fallback-text">Cart</span> 1340 </a> 1341 </div> 1342 </div> 1343</header> 1344 1345 1346 1347</div> 1348 1349 <div class="action-area"><!-- action bar section --> 1350<div id="shopify-section-action-bar" class="shopify-section action-bar-section"><!-- snippets/action-bar.liquid --> 1351 1352 1353 1354 1355 1356 1357 1358 <div class="action-bar-wrapper " data-section-id="action-bar" data-section-type="action-bar-section"> 1359 1360 1361 <nav class="action-bar action-bar--has-menu" role="presentation"> 1362 <ul class="action-bar__menu--main action-bar__menu list--inline action-bar--show" id="SiteNav" role="navigation"> 1363 1364 1365 1366 1367 <li class="action-bar__menu-item "> 1368 <a href="/collections/home-decor-1" class="action-bar__link">Home Decor</a> 1369 </li> 1370 1371 1372 1373 1374 <li class="action-bar__menu-item "> 1375 <a href="/collections/clothing-clothing" class="action-bar__link">Clothing</a> 1376 </li> 1377 1378 1379 1380 1381 <li class="action-bar__menu-item "> 1382 <a href="https://mermaidvenom.com/collections/shoes" class="action-bar__link">Shoes</a> 1383 </li> 1384 1385 1386 1387 1388 <li class="action-bar__menu-item "> 1389 <a href="/collections/accessories-accessories" class="action-bar__link">Accessories</a> 1390 </li> 1391 1392 1393 1394 1395 <li class="action-bar__menu-item "> 1396 <a href="/collections/drinkware" class="action-bar__link">Drinkware</a> 1397 </li> 1398 1399 1400 1401 1402 <li class="action-bar__menu-item "> 1403 <a href="/collections/pet-accessories" class="action-bar__link">Pet Accessories</a> 1404 </li> 1405 1406 1407 1408 1409 <li class="action-bar__menu-item "> 1410 <a href="/collections/plushies" class="action-bar__link">Plushies</a> 1411 </li> 1412 1413 1414 1415 1416 <li class="action-bar__menu-item "> 1417 <a href="/collections/til-death-bridal" class="action-bar__link">Til Death Bridal </a> 1418 </li> 1419 1420 1421 1422 1423 <li class="action-bar__menu-item "> 1424 <a href="/collections/avada-best-sellers" class="action-bar__link">View all</a> 1425 </li> 1426 1427 1428 1429 1430 <li class="action-bar__menu-item "> 1431 <a href="/pages/about-us" class="action-bar__link">About Us</a> 1432 </li> 1433 1434 1435 1436 1437 <li class="action-bar__menu-item "> 1438 <a href="/pages/shipping-policy" class="action-bar__link">Shipping & Delivery </a> 1439 </li> 1440 1441 1442 1443 1444 <li class="action-bar__menu-item "> 1445 <a href="/pages/refund-policy" class="action-bar__link">Returns & Refunds</a> 1446 </li> 1447 1448 1449 1450 1451 <li class="action-bar__menu-item "> 1452 <a href="https://mermaidvenom.com/apps/track123?nums=TK123" class="action-bar__link">Track order</a> 1453 </li> 1454 1455 1456 </ul> 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 </nav> 1499 </div> 1500 1501 1502 1503 1504</div> 1505</div> 1506 </div> 1507 </div> 1508 1509 <main class="main-content" role="main"> 1510 <!-- /templates/blog.liquid --> 1511 1512 1513 1514<div class="page-width page-container" itemscope itemtype="http://schema.org/Article"> 1515 <header class="visually-hidden"> 1516 1517 <h1>Blog</h1> 1518 1519 </header> 1520 1521 1522 <h2><a href="/blogs/news/alt-bride-styling-guide">
1522How to Style an Alt Bride: A Til Death Guide</a></h2> 1523 1524 1525 <div class="rte rte--indented-images"> 1526 1527 1528 1529 <p>The alt-bride aesthetic isn't a trend anymore â it's a whole way of getting married. Here's how to build the look, piece by piece, without touching a single pastel.</p> 1530 1531 </div> 1532 1533 <p class="action-link"> 1534 <a href="/blogs/news/alt-bride-styling-guide">Read the article <span class="icon icon-arrow-right action-link__icon" aria-hidden="true"></span></a> 1535 </p> 1536 1537 1538 <hr class="hr--clear"> 1539 1540 1541 1542 <h2><a href="/blogs/news/gothic-halloween-gift-guide">A Gothic Gift Guide for Spooky Season</a></h2> 1543 1544 1545 <div class="rte rte--indented-images"> 1546 1547 1548 1549 <p>Ten gothic gifts for the people who never took their black eyeliner off after October ended â from statement home decor to something for the familiar sleeping at the foot of the bed.</p> 1550 1551 </div> 1552 1553 <p class="action-link"> 1554 <a href="/blogs/news/gothic-halloween-gift-guide">Read the article <span class="icon icon-arrow-right action-link__icon" aria-hidden="true"></span></a> 1555 </p> 1556 1557 1558 <hr class="hr--clear"> 1559 1560 1561 1562 <h2><a href="/blogs/news/gothic-cat-tree-diy-spooky-pet-parents-6313-54">How to Create a Gothic Cat Tree: Stylish DIY Ideas for Spooky Pet Parents</a></h2> 1563 1564 1565 <div class="rte rte--indented-images"> 1566 1567 1568 1569 <p><article><p>Are you a spooky pet parent wanting to blend your love for gothic style with your catâs play space? Creating <strong>a gothic cat tree</strong> can transform your petâs environment into a chic, dark aesthetic haven. This article shares inspiration and DIY tips so you can craft a unique cat tower that complements your gothhomedecor while keeping your feline friend happy and comfy. Discover how to design a functional pet tower that reflects your alternative style and supports the growing community of gothcat enthusiasts.</p> <h2>Why Choose a Gothic Cat Tree for Your Pet</h2> <p>Choosing a gothic cat tree brings an edgy...</p> 1570 1571 </div> 1572 1573 <p class="action-link"> 1574 <a href="/blogs/news/gothic-cat-tree-diy-spooky-pet-parents-6313-54">Read the article <span class="icon icon-arrow-right action-link__icon" aria-hidden="true"></span></a> 1575 </p> 1576 1577 1578 <hr class="hr--clear"> 1579 1580 1581 1582 <h2><a href="/blogs/news/creepy-cute-horror-plushies">Creepy Cute Plushies</a></h2> 1583 1584 1585 <div class="rte rte--indented-images"> 1586 1587 <p> 1588 <a href="/blogs/news/creepy-cute-horror-plushies"> 1589 <img src="//mermaidvenom.com/cdn/shop/articles/creepy-cute-plushies-969998_3f66fd01-b231-4501-8b43-afb1bc5d4ddf.jpg?v=1776447726" alt="Creepy Cute Plushies" /> 1590 </a> 1591 </p> 1592 1593 1594 1595 <p><p>Are you a fan of horror movies? Do you also have a soft spot for cute and cuddly plushies? If so, we have the perfect combination for you - Creepy Cute Plushies inspired by Chucky and Tiffany, the iconic characters from your favorite horror movie.</p> <h2>What are Creepy Cute Plushies?</h2> <p>Creepy Cute Plushies are a unique spooky collection of stuffed toys that bring together the creepy and cute elements in a delightful way. These plushies are designed to resemble Chucky and Tiffany, the beloved characters from the horror movie franchise. With their eerie yet adorable appearance, they are a must-have...</p> 1596 1597 </div> 1598 1599 <p class="action-link"> 1600 <a href="/blogs/news/creepy-cute-horror-plushies">Read the article <span class="icon icon-arrow-right action-link__icon" aria-hidden="true"></span></a> 1601 </p> 1602 1603 1604 <hr class="hr--clear"> 1605 1606 1607 1608 <h2><a href="/blogs/news/take-a-look-at-mermaid-venoms-latest-products-and-get-30-off">Take a Look at Mermaid Venom's Latest Products and Get 30% Off!</a></h2> 1609 1610 1611 <div class="rte rte--indented-images"> 1612 1613 <p> 1614 <a href="/blogs/news/take-a-look-at-mermaid-venoms-latest-products-and-get-30-off"> 1615 <img src="//mermaidvenom.com/cdn/shop/articles/take-a-look-at-mermaid-venoms-latest-products-and-get-30-off-425580_8c5fbdd5-5389-44b9-a9ef-5de6574a1acd.jpg?v=1776447726" alt="Take a Look at Mermaid Venom's Latest Products and Get 30% Off!" /> 1616 </a> 1617 </p> 1618 1619 1620 1621 <p><p>First of all, thank you for 30,000 followers on our Instagram account! We wouldn't be where we are today without all of you. If you are not following us on Instagram, check us out here:Â <a href="https://www.instagram.com/shopmermaidvenom/" target="_blank" title="Mermaid Venom Instagram" rel="noopener noreferrer">https://www.instagram.com/shopmermaidvenom/</a></p> <p>The website is still 30% off - NO PROMO CODE NEEDED AND ALWAYS FREE SHIPPING!</p> <p>Here are our latest products:</p> <p><a href="https://mermaidvenom.com/products/on-wednesdays-we-smash-the-patriarchy-cotton-tee-1" target="_blank" title="Smash the Patriarchy Tee" rel="noopener noreferrer">On Wednesdays We Smash The Patriarchy Cotton Tee</a></p> <p><img src="https://cdn.shopify.com/s/files/1/0104/2536/8661/files/22eb37c825496ab8d345527140598878_1519x.progressive_23298d60-163f-472d-91d2-54a7d5a1440e_480x480.jpg?v=1614024825" alt="Smash The Patriarchy Mermaid Venom"></p> <p><a href="https://mermaidvenom.com/products/sad-pin-pendant-necklace" title="Sad Pin Pend
1621ant Necklace Mermaid Venom">Sad Pin Pendant Necklace</a></p> <p><img src="https://cdn.shopify.com/s/files/1/0104/2536/8661/products/product-image-1687770467_480x480.jpg?v=1614019459" alt=""></p> <p><a...</p> 1622 1623 </div> 1624 1625 <p class="action-link"> 1626 <a href="/blogs/news/take-a-look-at-mermaid-venoms-latest-products-and-get-30-off">Read the article <span class="icon icon-arrow-right action-link__icon" aria-hidden="true"></span></a> 1627 </p> 1628 1629 1630 1631 1632 1633 1634 <hr class="hr--clear"> 1635 1636 <div class="pagination"> 1637 <span class="page current">1</span> <span class="page"><a href="/blogs/news?page=2" title="">2</a></span> <span class="next"><a href="/blogs/news?page=2" title="">Next »</a></span> 1638</div> 1639 1640</div> 1641 1642 1643 <div class="aionewarrival" id="aionewarrival"></div> 1644<div class="aiotrendingproducts" id="aiotrendingproducts"></div> 1645<div class="aiorecentview" id="aiorecentview"></div> 1646 </main> 1647 1648 <div id="shopify-section-footer" class="shopify-section footer-section"><footer class="site-footer" role="contentinfo"> 1649 1650 1651 <ul class="list--inline site-footer__linklist"> 1652 1653 <li class="h4"><a href="/apps/track123">Track Order</a></li> 1654 1655 <li class="h4"><a href="/pages/refund-policy">Returns</a></li> 1656 1657 <li class="h4"><a href="/pages/about-us">About us</a></li> 1658 1659 <li class="h4"><a href="/pages/sizing-chart">Sizing Chart</a></li> 1660 1661 <li class="h4"><a href="/pages/shipping-policy">Shipping & Delivery</a></li> 1662 1663 <li class="h4"><a href="/blogs/news">Newsletter</a></li> 1664 1665 <li class="h4"><a href="/pages/register-affiliate-account">Become A Brand Ambassador</a></li> 1666 1667 <li class="h4"><a href="/pages/privacy-policy">Privacy Policy</a></li> 1668 1669 <li class="h4"><a href="/pages/terms-of-service">Terms and Conditions</a></li> 1670 1671 <li class="h4"><a href="/blogs/news">Blog</a></li> 1672 1673 </ul> 1674 1675 1676 <div class="grid text-center large-up--grid--table"> 1677 <div class="grid__item large-up--one-quarter text-center"> 1678 <ul class="list--inline social-icons social-icons--footer"> 1679 1680 <li> 1681 <a href="https://twitter.com/MermaidVenom" title="Mermaid Venom on Twitter"> 1682 <span class="icon icon-twitter" aria-hidden="true"></span> 1683 <span class="visually-hidden">Twitter</span> 1684 </a> 1685 </li> 1686 1687 1688 <li> 1689 <a href="https://www.facebook.com/shopmermaidvenom/" title="Mermaid Venom on Facebook"> 1690 <span class="icon icon-facebook" aria-hidden="true"></span> 1691 <span class="visually-hidden">Facebook</span> 1692 </a> 1693 </li> 1694 1695 1696 <li> 1697 <a href="https://www.pinterest.com/shopmermaidvenom/_shop" title="Mermaid Venom on Pinterest"> 1698 <span class="icon icon-pinterest" aria-hidden="true"></span> 1699 <span class="visually-hidden">Pinterest</span> 1700 </a> 1701 </li> 1702 1703 1704 1705 <li> 1706 <a href="https://www.instagram.com/shopmermaidvenom" title="Mermaid Venom on Instagram"> 1707 <span class="icon icon-instagram" aria-hidden="true"></span> 1708 <span class="visually-hidden">Instagram</span> 1709 </a> 1710 </li> 1711 1712 1713 1714 1715 1716 1717 </ul> 1718 </div> 1719 <div class="grid__item large-up--one-half"> 1720 <span class="site-footer__copyright">© 2026, <a href="/">Mermaid Venom</a>. <a target="_blank" rel="nofollow" href="https://www.shopify.com?utm_campaign=poweredby&utm_medium=shopify&utm_source=onlinestore"> </a></span> 1721 </div> 1722 <div class="grid__item large-up--one-quarter text-center"></div> 1723 </div> 1724</footer> 1725 1726 1727 1728 1729</div> 1730 1731<!--
1731<script src="//cdn.codeblackbelt.com/js/modules/frequently-bought-together/main.min.js?shop=mermaid-vemon.myshopify.com" defer></script>
1731 --> 1732 1733 1734 1735 </div> 1736 1737 1738 1739 <ul hidden> 1740 <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li> 1741 <li id="a11y-selection-message">Press the space key then arrow keys to make a selection.</li> 1742 </ul> 1743 1744
1744<script async src="https://loox.io/widget/N1WbMhyfKw/loox.1625010130313.js?shop=mermaid-vemon.myshopify.com"></script>
1744 1745<!-- XO-Scroll2Top - Don't change here --> 1746 1747<!-- End: XO-Scroll2Top --> 1748 1749 1750 1751<!-- **BEGIN** Hextom CTB Integration // Main Include - DO NOT MODIFY --> 1752 <!-- **BEGIN** Hextom CTB Integration // Main - DO NOT MODIFY -->
1753<script type="application/javascript"> 1754 window.hextom_ctb = { 1755 p1: [ 1756 1757 ], 1758 p2: { 1759 1760 } 1761 }; 1762</script>
1762 1763<!-- **END** Hextom CTB Integration // Main - DO NOT MODIFY --> 1764 <!-- **END** Hextom CTB Integration // Main Include - DO NOT MODIFY --> 1765 1766 1767 1768
1768<script> 1769 if(typeof(Spurit) === 'undefined'){ 1770 var Spurit = {}; 1771 } 1772 if(!Spurit.InstallmentPayments){ 1773 Spurit.InstallmentPayments = {}; 1774 } 1775 if(!Spurit.InstallmentPayments.snippet){ 1776 Spurit.InstallmentPayments.snippet = {}; 1777 } 1778 Spurit.InstallmentPayments.snippet.shopHash = 'ec7e9e35d93e8d4ed5e6d626b2877234'; 1779 Spurit.InstallmentPayments.snippet.productId = +''; 1780 Spurit.InstallmentPayments.snippet.productPrice = +''; 1781 Spurit.InstallmentPayments.snippet.productCollections = [ 1782 1783 ]; 1784 1785 1786 if (typeof(Spurit.globalSnippet) === 'undefined') { 1787 Spurit.globalSnippet = { 1788 shop_currency: 'USD', 1789 money_format: '${{amount}}', 1790 cart: {"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":"USD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}, 1791 customer_id: '' 1792 }; 1793 } 1794</script>
1794 1795 1796
1796<script src="https://cdn-spurit.com/shopify-apps/installment-payments/common.js"></script>
1796 1797 <link href="https://cdn-spurit.com/shopify-apps/installment-payments/common.css" rel="stylesheet" type="text/css" media="all"> 1798 1799 1800 <div id="blp-container" class="blp-container"></div>
1801<script> 1802 var BOLD = BOLD || {}; 1803 BOLD.loyalties = BOLD.loyalties || {}; 1804 BOLD.loyalties.widget = BOLD.loyalties.widget || {}; 1805 BOLD.loyalties.widget.state = BOLD.loyalties.widget.state || { customer: {shopifyCustomerId:0}, context: {}, cart: {} }; 1806 1807 1808 1809 1810 1811 1812 1813 1814</script>
1814 1815 1816 1817 1818 1819<form action="/cart" method="post" style="display:none;"><input type="submit" name="checkout" id="hs-checkout-bold" value="Check Out"><input type="checkbox" id="agree" checked="checked"></form> 1820<!--
1820<script src="//instant.page/5.1.0" type="module" integrity="sha384-by67kQnR+pyfy8yWP4kPO12fHKRLHZPfEsiSXR8u2IKcTdxD805MGUXBzVPnkLHw"></script>
1820 --> 1821<link rel="stylesheet" href="https://gravity-software.com/js/shopify/rondell/jquery.rondellf85.css?v=123"/>
1822<script src="//mermaidvenom.com/cdn/shop/t/24/assets/tiny-img-link-preloader.js?v=26403198945174473401702481669" type="text/javascript"></script>
1822 1823<div id="shopify-block-AV1c1MGppS3Bld2V0Z__1967102994182284862" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: connected_sdk_script -->
1823<script src='https://www.paypalobjects.com/pa/js/min/pa.js'></script>
1823 1824
1825<script 1826 src='https://www.paypal.com/sdk/js?client-id=AbtXlp5R3xc83T9xW_ZXKTK8IVZ-14EMelDioU4VC285IqSuxUI4yotKxjV0sz_X6YsONYi10vSBPNKM&merchant-id=AGJQV4RF5Z8YY&components=messages' 1827 data-namespace='PayPalSDK' 1828 data-partner-attribution-id='JADEDPIXEL_SHOPPINGCART_EC_CA' 1829></script>
1829 1830<!-- END app snippet --><!-- BEGIN app snippet: utils -->
1830<script> 1831 // ============================================ 1832 // Core Utilities 1833 // ============================================ 1834 1835 // Setup FPTI Analytics 1836 if (PAYPAL && PAYPAL.analytics) { 1837 PAYPAL.analytics.setup({ 1838 data: { 1839 pgrp: 'shopify:messaging:app-embed', 1840 comp: 'shopify-app-embed', 1841 }, 1842 }); 1843 } 1844 1845 const recordEvent = (event_name, additionalData) => { 1846 PAYPAL.analytics.instance.recordEvent(event_name, { 1847 theme: window?.Shopify?.theme?.name || 'unknown', 1848 shop: window?.Shopify?.shop || 'unknown', 1849 path: window.location.pathname, 1850 flow: 'Shopify - Pay Later', 1851 space_key: 'SKD8GM', 1852 ...additionalData, 1853 }); 1854 }; 1855 1856 // In Theme Editor when using Advanced Settings 1857 // User chooses copy as JS Path from their browser 1858 // The pasted value will be a string that contains "document.querySelector("...") 1859 // Remove document.querySelector(" and ") 1860 // Using JS Path we can ensure the path to the element is accurate 1861 const parseSelector = (selector) => { 1862 try { 1863 // Handle both single and double quotes 1864 return selector 1865 .replace(/document\.querySelector\(["']/g, '') 1866 .replace(/["']\)/g, ''); 1867 } catch (e) { 1868 recordEvent('appEmbed:parseSelector:error', { error: e.message }); 1869 } 1870 }; 1871 1872 // Waits for Element to be rendered 1873 // Uses mutation observer to watch for changes in the DOM 1874 // https://developer.mozilla.org/en-US/docs/Web/API/MutationObserver 1875 // On changes, check for the selector again 1876 const waitForElement = (selector) => { 1877 try { 1878 return new Promise((resolve) => { 1879 const existing = document.querySelector(selector); 1880 if (existing) return resolve(existing); 1881 1882 const observer = new MutationObserver(() => { 1883 const el = document.querySelector(selector); 1884 if (el) { 1885 observer.disconnect(); 1886 resolve(el); 1887 } 1888 }); 1889 1890 observer.observe(document.body, { 1891 childList: true, 1892 subtree: true, 1893 }); 1894 }); 1895 } catch (e) { 1896 recordEvent('appEmbed:waitForElement:error', { error: e.message }); 1897 } 1898 }; 1899 1900 // Formats correct cart/drawer subtotal and adds or updates messaging 1901 const addOrUpdateMessagingPriceAttribute = async (price, locator, messaging) => { 1902 try { 1903 // Format price to 2 decimal places ex: 150000 => 1500.00 1904 // Messaging requires price to be in string format 1905 const formattedPrice = Number((price / 100).toFixed(2)).toString(); 1906 1907 const messagingId = messaging.id; 1908 const existingMessaging = document.getElementById(messagingId); 1909 1910 if (existingMessaging) { 1911 // Update the data-pp-amount attribute on the existing element 1912 existingMessaging.setAttribute('data-pp-amount', formattedPrice); 1913 } else { 1914 const element = await waitForElement(locator); 1915 1916 const updatedPriceMessaging = messaging.cloneNode(); 1917 updatedPriceMessaging.setAttribute('data-pp-amount', formattedPrice); 1918 1919 element.after(updatedPriceMessaging); 1920 } 1921 } catch (e) { 1922 recordEvent('appEmbed:addOrUpdateMessagingPriceAttribute:error', { error: e.message }); 1923 } 1924 }; 1925 1926 // Fetches cart details from Shopify cart endpoint 1927 const fetchCartDetails = async () => { 1928 try { 1929 const response = await fetch('/cart.js'); 1930 const cart = await response.json(); 1931 1932 return cart.total_price; 1933 } catch (e) { 1934 recordEvent('appEmbed:fetchCartDetails:error', { error: e.message }); 1935 } 1936 }; 1937 1938 // Fetches variant details Shopify product endpoint 1939 // https://shopify.dev/docs/api/ajax/reference/product 1940 const fetchVariant = async () => { 1941 try { 1942 // Ex: https://test-store.myshopify.com/products/the-multi-location-snowboard?variant=45268551368883 1943 const urlParams = new URLSearchParams(window.location.search); 1944 const urlVariantId = parseInt(urlParams.get('variant'), 10); 1945 const productHandle = window.location.pathname.split('/products/')[1]?.split('?')[0]; 1946 1947 const response = await fetch(`/products/${productHandle}.js`); 1948 const productData = await response.json(); 1949 const variants = productData.variants; 1950 const selectedVariant = variants.find(v => v.id === urlVariantId); 1951 1952 if (selectedVariant) { 1953 return selectedVariant; 1954 } 1955 1956 return variants.find(v => v.available) || variants[0]; 1957 } catch (e) { 1958 recordEvent('appEmbed:fetchVariant:error', { error: e.message }); 1959 } 1960 }; 1961 1962 // Get the selected variant ID from URL, form input, or select element
1963 const getSelectedVariantId = () => { 1964 try { 1965 const urlParams = new URLSearchParams(window.location.search); 1966 const urlVariant = urlParams.get('variant'); 1967 if (urlVariant) return parseInt(urlVariant, 10); 1968 1969 const formInput = document.querySelector('form[action*="/cart/add"] input[name="id"]'); 1970 if (formInput?.value) return parseInt(formInput.value, 10); 1971 1972 const selectInput = document.querySelector('form[action*="/cart/add"] select[name="id"]'); 1973 if (selectInput?.value) return parseInt(selectInput.value, 10); 1974 1975 return null; 1976 } catch (e) { 1977 recordEvent('appEmbed:getSelectedVariantId:error', { error: e.message }); 1978 return null; 1979 } 1980 }; 1981 1982 const getShopifyData = () => { 1983 try { 1984 const selectedVariantId = getSelectedVariantId(); 1985 1986 const findVariant = (variants) => { 1987 if (!variants?.length) return null; 1988 if (selectedVariantId) { 1989 const selected = variants.find(v => v.id === selectedVariantId); 1990 if (selected) return selected; 1991 } 1992 return variants.find(v => v.available) || variants[0]; 1993 }; 1994 1995 if (window.meta?.product) { 1996 const product = window.meta.product; 1997 const variant = findVariant(product.variants); 1998 return { 1999 product: { title: product.title, vendor: product.vendor, type: product.type, id: product.id }, 2000 price: variant ? { 2001 priceInCents: variant.price, 2002 compareAtPrice: variant.compare_at_price, 2003 currency: window.Shopify?.currency?.active || 'USD', 2004 variantId: variant.id, 2005 variantTitle: variant.title 2006 } : null 2007 }; 2008 } 2009 2010 if (window.ShopifyAnalytics?.meta?.product) { 2011 const product = window.ShopifyAnalytics.meta.product; 2012 const variant = findVariant(product.variants); 2013 return { 2014 product: { title: product.title, vendor: product.vendor, id: product.id }, 2015 price: variant ? { 2016 priceInCents: variant.price, 2017 currency: window.Shopify?.currency?.active || 'USD', 2018 variantId: variant.id 2019 } : null 2020 }; 2021 } 2022 2023 return null; 2024 } catch (e) { 2025 recordEvent('appEmbed:getShopifyData:error', { error: e.message }); 2026 return null; 2027 } 2028 }; 2029 2030 // Generic function to watch for changes in the DOM 2031 // and listen for specific API calls made by the Shopify store 2032 // Callback provides specific logic for handling the response 2033 const watchForChanges = (locator, messaging, callback) => { 2034 try { 2035 // Overrides the native `fetch` function to listen for specific API calls. 2036 // Wrapped in an Immediately Invoked Function Expression (IIFE) 2037 // To avoid polluting the global namespace. 2038 (function (window, windowFetch) { 2039 // Check if `fetch` is a function. If not, exit early. 2040 if (typeof fetch !== 'function') return; 2041 2042 window.fetch = function () { 2043 // Call the original `fetch` function with the provided arguments. 2044 const response = windowFetch.apply(this, arguments); 2045 2046 response.then(async (res) => { 2047 if (typeof callback === 'function') { 2048 callback(res, locator, messaging); 2049 } 2050 }); 2051 2052 // Return the original `fetch` response. 2053 return response; 2054 }; 2055 })(window, window.fetch); 2056 } catch (e) { 2057 recordEvent('appEmbed:watchForChanges:error', { error: e.message }); 2058 } 2059 }; 2060 2061 // Provides ability to watch for cart changes 2062 // such as increment, decrement, or remove items 2063 // Also handles adding new items which opens Cart Drawer 2064 // and updates the messaging with the new cart total 2065 // This function is used for both Cart Drawer and Cart Page 2066 const watchForCartChanges = (locator, messaging) => { 2067 const cartChangeCallback = async (res, locator, messaging) => { 2068 // Determine the id of messaging div either #paypal-upstream-messaging-cart-{page | drawer} 2069 const messagingId = messaging.id; 2070 2071 // Changes (e.g., increment, decrement, or remove items). 2072 if (res.url.includes('/cart/change')) { 2073 // Clone the response to read its JSON data without consuming the original response. 2074 res 2075 .clone() 2076 .json() 2077 .then((data) => { 2078 addOrUpdateMessagingPriceAttribute(data.total_price, locator, messaging); 2079 }); 2080 2081 // Called when adding a new item which opens Cart Drawer 2082 } else if (res.url.includes('/cart/add')) { 2083 // Adding items does not return the updated cart details, 2084 // Fetch the updated cart details (e.g., total_price). 2085 const updatedPrice = await fetchCartDetails(); 2086 2087 // Introduce a delay to handle potential race conditions where the cart drawer has not rendered yet. 2088 setTimeout(async () => { 2089 await addOrUpdateMessagingPriceAttribute(updatedPrice, locator, messaging); 2090 }, 500); 2091 } 2092 }; 2093 2094 watchForChanges(locator, messaging, cartChangeCallback); 2095 }; 2096
2097 // Provides ability to watch for product specific changes 2098 // such as variant selection on product pages 2099 const watchForProductChanges = (locator, messaging) => { 2100 let lastVariantId = new URLSearchParams(window.location.search).get('variant'); 2101 2102 const handleVariantChange = async () => { 2103 const currentVariantId = new URLSearchParams(window.location.search).get('variant'); 2104 if (currentVariantId && currentVariantId !== lastVariantId) { 2105 lastVariantId = currentVariantId; 2106 2107 const newVariantData = await fetchVariant(); 2108 const newPriceInCents = newVariantData?.price; 2109 2110 if (newPriceInCents) { 2111 await addOrUpdateMessagingPriceAttribute(newPriceInCents, locator, messaging); 2112 } else { 2113 recordEvent('appEmbed:watchForProductChanges:error:noNewVariantPrice'); 2114 } 2115 } 2116 }; 2117 2118 // Shopify themes can either handle variant changes on the client-side or server-side (via variant API calls) 2119 // We will "intercept" and handle variant changes by: 2120 // 1. Watching for URL changes 2121 const _pushState = history.pushState.bind(history); 2122 const _replaceState = history.replaceState.bind(history); 2123 2124 history.pushState = function (...args) { 2125 _pushState(...args); 2126 handleVariantChange(); 2127 }; 2128 2129 history.replaceState = function (...args) { 2130 _replaceState(...args); 2131 handleVariantChange(); 2132 }; 2133 2134 // 2. Watching for back/forward browser clicks 2135 window.addEventListener('popstate', handleVariantChange); 2136 2137 // 3. Fallback: Watching for variant API calls 2138 // Future optimization: This fallback could be removed if all Shopify themes can be handled with 1. and 2. 2139 const productChangeCallback = async (res, locator, messaging) => { 2140 if (res.url.includes('/variants')) { 2141 await handleVariantChange(); 2142 return; 2143 } 2144 }; 2145 2146 watchForChanges(locator, messaging, productChangeCallback); 2147 }; 2148</script>
2148 2149<!-- END app snippet --><!-- BEGIN app snippet: price-detection -->
2149<script> 2150 // ============================================ 2151 // Price Detection & Element Scoring 2152 // Depends on: utils.liquid (recordEvent, getShopifyData) 2153 // ============================================ 2154 2155 const extractPriceFromText = (text) => { 2156 const match = text.match(/[\d,]+\.?\d*/); 2157 if (!match) return null; 2158 return parseFloat(match[0].replace(/,/g, '')); 2159 }; 2160 2161 const textMatchesPrice = (text, knownPriceInCents) => { 2162 const extracted = extractPriceFromText(text); 2163 if (extracted === null) return false; 2164 const knownPrice = knownPriceInCents / 100; 2165 return Math.abs(extracted - knownPrice) < 0.01; 2166 }; 2167 2168 const hasStrikethrough = (element) => { 2169 let el = element; 2170 while (el && el !== document.body) { 2171 const style = getComputedStyle(el); 2172 if (style.textDecoration.includes('line-through') || 2173 style.textDecorationLine?.includes('line-through')) { 2174 return true; 2175 } 2176 if (['S', 'DEL', 'STRIKE'].includes(el.tagName)) { 2177 return true; 2178 } 2179 el = el.parentElement; 2180 } 2181 return false; 2182 }; 2183 2184 // Find the add-to-cart button. Result is cached since the button doesn't change per page load. 2185 let _cachedAddToCartButton; 2186 const findAddToCartButton = () => { 2187 if (_cachedAddToCartButton !== undefined) return _cachedAddToCartButton; 2188 try { 2189 const formButton = document.querySelector('form[action*="/cart/add"] button[type="submit"]'); 2190 if (formButton) return (_cachedAddToCartButton = formButton); 2191 2192 const buttons = document.querySelectorAll('button'); 2193 for (const btn of buttons) { 2194 const text = btn.textContent.toLowerCase(); 2195 if (text.includes('add to cart') || text.includes('add to bag') || 2196 text.includes('buy now') || text.includes('add to basket')) { 2197 return (_cachedAddToCartButton = btn); 2198 } 2199 } 2200 2201 return (_cachedAddToCartButton = null); 2202 } catch (e) { 2203 recordEvent('appEmbed:findAddToCartButton:error', { error: e.message }); 2204 return (_cachedAddToCartButton = null); 2205 } 2206 }; 2207 2208 // Find element containing specific text (used for product title proximity). 2209 // Result is cached per text string â title is static per page load and scoreElement 2210 // calls this once per candidate, so without caching it's O(candidates) full DOM walks. 2211 let _titleElementCache = {}; 2212 const findElementContainingText = (text) => { 2213 if (text in _titleElementCache) return _titleElementCache[text]; 2214 try { 2215 const normalizedText = text.toLowerCase().trim(); 2216 const walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT); 2217 2218 let node; 2219 while (node = walker.nextNode()) { 2220 const nodeText = node.textContent.trim().toLowerCase(); 2221 if (nodeText.length > 5 && normalizedText.includes(nodeText.substring(0, 20))) { 2222 const el = node.parentElement; 2223 const rect = el.getBoundingClientRect(); 2224 if (rect.width > 0 && rect.height > 0) { 2225 const fontSize = parseFloat(getComputedStyle(el).fontSize); 2226 if (fontSize >= 16) return (_titleElementCache[text] = el); 2227 } 2228 } 2229 } 2230 return (_titleElementCache[text] = null); 2231 } catch (e) { 2232 return null; 2233 } 2234 }; 2235 2236 const getViewportThresholds = () => { 2237 const vh = window.innerHeight; 2238 const isMobile = window.innerWidth < 768; 2239 2240 return { 2241 position: [[vh * 0.6, 50], [vh * 1.2, 30], [vh * 2.0, 10]], 2242 fontSize: [ 2243 [isMobile ? 18 : 24, 40], 2244 [isMobile ? 14 : 18, 25], 2245 [isMobile ? 12 : 14, 10], 2246 ], 2247 proximity: { 2248 close: isMobile ? 60 : 100, 2249 medium: isMobile ? 120 : 200, 2250 far: isMobile ? 240 : 400, 2251 }, 2252 }; 2253 }; 2254 2255 const getTieredScore = (value, tiers, defaultScore = 0) => { 2256 for (const [threshold, points] of tiers) { 2257 if (value < threshold) return points; 2258 } 2259 return defaultScore; 2260 }; 2261 2262 // Scores a DOM element on how likely it is to be the product's main price. 2263 // Higher score = better candidate. Factors: 2264 // - Position on page (elements higher up score better) 2265 // - Font size (larger text = more likely a displayed price) 2266 // - Proximity to product title and add-to-cart button 2267 // - Structural exclusions (footer/header/nav/hidden = heavy penalty) 2268 // - Strikethrough detection (compare-at prices = heavy penalty) 2269 const scoreElement = (element, productMeta = null, debug = false) => { 2270 let score = 0; 2271 const breakdown = debug ? {} : null; 2272 const { position, fontSize, proximity } = getViewportThresholds(); 2273 const { close, medium, far } = proximity; 2274 const rect = element.getBoundingClientRect(); 2275 2276 // POSITION ON PAGE 2277 const absoluteTop = rect.top + window.scrollY; 2278 const posScore = getTieredScore(absoluteTop, position, -30); 2279 score += posScore; 2280 if (debug) breakdown.position = `${posScore >= 0 ? '+' : ''}${posScore} (top ${Math.round(absoluteTop)}px)`; 2281 2282 // FONT SIZE 2283 const fontPx = parseFloat(getComputedStyle(element).fontSize); 2284 const fontScore = fontSize.find(([t]) => fontPx >= t)?.[1] ?? -10; 2285 score += fontScore; 2286 if (debug) breakdown.fontSize = `${fontScore >= 0 ? '+' : ''}${fontScore} (${fontPx}px)`; 2287 2288 // PROXIMITY TO PRODUCT TITLE 2289 if (productMeta?.title) { 2290 const titleElement = findElementContainingText(productMeta.title); 2291 if (titleElement) { 2292 const distance = Math.abs(titleElement.getBoundingClientRect().bottom - rect.top); 2293 const titleScore = getTieredScore(distance, [[close, 40], [medium, 25], [far, 10]], 0); 2294 score += titleScore; 2295 if (debug) breakdown.titleProximity = `+${titleScore} (${Math.round(distance)}px)`; 2296 } else if (debug) { 2297 breakdown.titleProximity = 'title element not found'; 2298 } 2299 } else if (debug) { 2300 breakdown.titleProximity = 'no product title'; 2301 } 2302 2303 // PROXIMITY TO ADD-TO-CART BUTTON 2304 const addButton = findAddToCartButton(); 2305 if (addButton) { 2306 const distance = Math.abs(addButton.getBoundingClientRect().top - rect.top); 2307 const cartScore = getTieredScore(distance, [[close, 30], [medium, 20], [far, 10]], 0); 2308 score += cartScore; 2309 if (debug) breakdown.cartProximity = `+${cartScore} (${Math.round(distance)}px)`; 2310 } else if (debug) { 2311 breakdown.cartProximity = 'add-to-cart not found'; 2312 } 2313 2314 // STRUCTURAL EXCLUSIONS 2315 const exclusions = [ 2316 ['footer, header, nav', 'in footer/header/nav'], 2317 ['button, a[href*="/cart"], [type="submit"]', 'in button/link'], 2318 ['[aria-hidden="true"], [hidden], .hidden, .visually-hidden', 'hidden'], 2319 ]; 2320 for (const [selector, reason] of exclusions) { 2321 if (element.closest(selector)) { 2322 score -= 100; 2323 if (debug) breakdown.structural = `-100 (${reason})`; 2324 break; 2325 } 2326 } 2327 if (debug && !breakdown.structural) breakdown.structural = '+0'; 2328 2329 // STRIKETHROUGH 2330 if (hasStrikethrough(element)) { 2331 score -= 100; 2332 if (debug) breakdown.strikethrough = '-100 (compare-at price)'; 2333 } else if (debug) { 2334 breakdown.strikethrough = '+0'; 2335 } 2336 2337 if (debug) { 2338 breakdown.totalScore = score; 2339 breakdown.elementText = element.textContent.trim().substring(0, 30); 2340 breakdown.elementTag = element.tagName; 2341 } 2342 2343 return debug ? { score, breakdown } : score; 2344 }; 2345 2346 // Find all elements containing a specific price value 2347 const findElementsWithPrice = (knownPriceInCents, productMeta = null, debug = false, log = () => {}) => { 2348 const candidates = []; 2349 const walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT); 2350 2351 let node; 2352 while (node = walker.nextNode()) { 2353 const text = node.textContent.trim(); 2354 if (text.length > 30 || !textMatchesPrice(text, knownPriceInCents)) continue; 2355 2356 const element = node.parentElement; 2357 const rect = element.getBoundingClientRect(); 2358 2359 if (rect.width === 0 || rect.height === 0 || hasStrikethrough(element)) continue; 2360 2361 const score = scoreElement(element, productMeta, false); 2362 candidates.push({ element, text, score }); 2363 } 2364 2365 if (debug && candidates.length > 0) { 2366 candidates.sort((a, b) => b.score - a.score); 2367 log(` Candidates: ${candidates.length}, top: score=${candidates[0].score}, text="${candidates[0].text}"`); 2368 } 2369 2370 return candidates; 2371 }; 2372 2373 // Find the /cart/add form by traversing from the price element 2374 // This is more reliable than name-based container detection since all Shopify themes have this form 2375 const findCartFormFromPrice = (priceElement, debug = false, log = () => {}) => { 2376 let el = priceElement; 2377 2378 while (el && el !== document.body) { 2379 if (el.tagName === 'FORM' && el.action?.includes('/cart/add')) { 2380 if (debug) log(` Found /cart/add form (element itself)`); 2381 return el; 2382 } 2383 2384 let sibling = el.nextElementSibling; 2385 while (sibling) { 2386 if (sibling.tagName === 'FORM' && sibling.action?.includes('/cart/add')) { 2387 if (debug) log(` Found /cart/add form as sibling`); 2388 return sibling; 2389 } 2390 // Check if sibling contains the form 2391 const formInSibling = sibling.querySelector('form[action*="/cart/add"]'); 2392 if (formInSibling) { 2393 if (debug) log(` Found /cart/add form inside sibling`); 2394 return formInSibling; 2395 } 2396 sibling = sibling.nextElementSibling; 2397 } 2398 2399 el = el.parentElement; 2400 } 2401 2402 if (debug) log(` No /cart/add form found`); 2403 return null; 2404 }; 2405 2406 // Fallback: walk up from the price text element to find a suitable wrapper. 2407 // Used when no /cart/add form exists near the price element. 2408 const findPriceContainer = (priceElement) => { 2409 let el = priceElement; 2410 let bestContainer = priceElement; 2411 2412 while (el && el !== document.body) { 2413 // Look for elements with price-related IDs (common Shopify pattern) 2414 if (el.id && /price/i.test(el.id)) { 2415 bestContainer = el; 2416 } 2417 // Look for elements with price-related classes that seem like containers 2418 if (el.className && typeof el.className === 'string') { 2419 const classes = el.className.toLowerCase(); 2420 if (/\bprice\b/.test(classes) && !/price-item|price__regular|price__sale/.test(classes)) { 2421 bestContainer = el; 2422 } 2423 } 2424 // Stop at major structural elements 2425 if (el.tagName === 'SECTION' || el.tagName === 'ARTICLE' || el.tagName === 'MAIN') { 2426 break; 2427 } 2428 el = el.parentElement; 2429 } 2430 2431 return bestContainer; 2432 }; 2433 2434 // Try common Shopify theme price selectors (Dawn and derivatives) 2435 const findPriceByTemplateSelector = (debug = false, log = () => {}) => { 2436 const selectors = [ 2437 '[id*="price-template"]', // Dawn theme pattern 2438 '.price-item--regular:not(s):not(del)',
2439 '[data-product-price]', 2440 ]; 2441 2442 for (const selector of selectors) { 2443 const el = document.querySelector(selector); 2444 if (el && !hasStrikethrough(el)) { 2445 if (debug) log(`Template selector found: ${selector}`); 2446 return el; 2447 } 2448 } 2449 return null; 2450 }; 2451 2452 // Check if we're in an isolated/sandboxed iframe (theme editor) 2453 const isIsolatedContext = () => { 2454 if (window === window.top) return false; // Not in iframe 2455 try { 2456 // Try to access parent - if cross-origin, we're isolated 2457 const test = window.parent.document; 2458 return false; // Can access parent, not isolated 2459 } catch (e) { 2460 return true; // Cross-origin, we're isolated 2461 } 2462 }; 2463 2464 // Try to find price element in sibling iframes (theme editor workaround) 2465 const findPriceInSiblingIframes = (knownPriceInCents) => { 2466 const iframes = document.querySelectorAll('iframe'); 2467 2468 for (const iframe of iframes) { 2469 try { 2470 const iframeDoc = iframe.contentDocument || iframe.contentWindow?.document; 2471 if (!iframeDoc) continue; 2472 2473 const priceElement = iframeDoc.querySelector('.price-item, .price, [data-product-price]'); 2474 if (priceElement) { 2475 return { element: priceElement, document: iframeDoc }; 2476 } 2477 } catch (e) { 2478 // Cross-origin iframe, skip 2479 } 2480 } 2481 2482 return null; 2483 }; 2484 2485 // Helper: Insert messaging near a price element (before cart form or after price container). 2486 // Returns the price container element used as the logical anchor. 2487 const insertMessagingNearPrice = (priceElement, messaging, debug = false, log = () => {}) => { 2488 const cartForm = findCartFormFromPrice(priceElement, debug, log); 2489 const container = findPriceContainer(priceElement); 2490 if (cartForm) { 2491 cartForm.before(messaging.cloneNode()); 2492 if (debug) log('Inserted messaging before /cart/add form'); 2493 } else { 2494 container.after(messaging.cloneNode()); 2495 if (debug) log('Inserted after price container (no form found)'); 2496 } 2497 return container; 2498 }; 2499 2500 // Insert messaging after price element 2501 const insertMessagingWithRetry = (shopifyData, messaging, debug = false, log = () => {}) => { 2502 // Skip visual preview iframe 2503 if (window.location.search.includes('source=visualPreviewInitialLoad')) return; 2504 if (document.querySelector('#paypal-upstream-messaging-product')) return; 2505 2506 const liquidPriceInCents = shopifyData?.price?.priceInCents; 2507 const isIsolated = isIsolatedContext(); 2508 2509 if (debug) { 2510 log('=== Price Detection ==='); 2511 log(`Context: ${isIsolated ? 'Theme Editor' : 'Live Storefront'}`); 2512 log(`Price: ${liquidPriceInCents} cents ($${(liquidPriceInCents / 100).toFixed(2)})`); 2513 } 2514 2515 // Priority 1: Template selectors (common theme patterns like Dawn) 2516 const templateElement = findPriceByTemplateSelector(debug, log); 2517 if (templateElement) { 2518 return insertMessagingNearPrice(templateElement, messaging, debug, log); 2519 } 2520 2521 // Priority 2: Scoring-based price detection 2522 const priceElement = findPriceElement(shopifyData, debug, log); 2523 if (priceElement) { 2524 return insertMessagingNearPrice(priceElement, messaging, debug, log); 2525 } 2526 2527 // Priority 3: Sibling iframes (theme editor only) 2528 if (isIsolated) { 2529 const siblingResult = findPriceInSiblingIframes(liquidPriceInCents); 2530 if (siblingResult) { 2531 return insertMessagingNearPrice(siblingResult.element, messaging, debug, log); 2532 } 2533 } 2534 2535 if (!isIsolated) { 2536 log('Could not find price element. Consider using Advanced Settings with a custom selector.'); 2537 } 2538 return null; 2539 }; 2540 2541 const findPriceElement = (shopifyData = null, debug = false, log = () => {}) => { 2542 try { 2543 const knownPriceInCents = shopifyData?.price?.priceInCents; 2544 const productMeta = shopifyData?.product; 2545 2546 if (debug) log(`findPriceElement: ${knownPriceInCents} cents`); 2547 2548 if (knownPriceInCents) { 2549 const candidates = findElementsWithPrice(knownPriceInCents, productMeta, debug, log); 2550 if (candidates.length > 0) { 2551 candidates.sort((a, b) => b.score - a.score); 2552 if (debug) log(` â FOUND (score=${candidates[0].score})`); 2553 return candidates[0].element; 2554 } 2555 } 2556 2557 if (debug) log(' â null (no candidates)'); 2558 return null; 2559 } catch (e) { 2560 if (debug) log(` â Error: ${e.message}`); 2561 recordEvent('appEmbed:findPriceElement:error', { error: e.message }); 2562 return null; 2563 } 2564 }; 2565</script>
2565 2566<!-- END app snippet --><!-- BEGIN app snippet: navigator-panel --><template id="pp-nav-template"> 2567 <style> 2568 /* --- Floating placement panel shell --- */ 2569 #pp-nav-panel { 2570 position: fixed; 2571 top: 50%; 2572 left: 20px; 2573 transform: translateY(-50%); 2574 background: #fff; 2575 border-radius: 12px; 2576 font-family: system-ui, -apple-system, sans-serif; 2577 font-size: 13px; 2578 z-index: 999999; 2579 width: 340px; 2580 box-shadow: 0 8px 32px rgba(0,0,0,0.18); 2581 overflow: hidden; 2582 transition: transform 0.3s ease, height 0.3s ease; 2583 } 2584 #pp-nav-panel.minimized { 2585 display: none; 2586 } 2587 2588 /* --- Minimized pill button --- */ 2589 #pp-nav-pill { 2590 position: fixed; 2591 bottom: 20px; 2592 left: 20px; 2593 background: #003087; 2594 color: #fff; 2595 border: none; 2596 border-radius: 24px; 2597 padding: 10px 18px; 2598 font-family: system-ui, -apple-system, sans-serif; 2599 font-size: 13px; 2600 font-weight: 600; 2601 cursor: pointer; 2602 z-index: 999999; 2603 box-shadow: 0 4px 16px rgba(0,48,135,0.3); 2604 display: none; 2605 align-items: center; 2606 gap: 8px; 2607 transition: box-shadow 0.2s; 2608 } 2609 #pp-nav-pill:hover { 2610 box-shadow: 0 6px 20px rgba(0,48,135,0.45); 2611 } 2612 2613 /* --- Header --- */ 2614 .pp-panel-header { 2615 background: #003087; 2616 color: #fff; 2617 padding: 14px 16px; 2618 display: flex; 2619 align-items: center; 2620 justify-content: space-between; 2621 } 2622 .pp-panel-title { 2623 font-size: 14px; 2624 font-weight: 700; 2625 margin: 0; 2626 letter-spacing: 0.01em; 2627 } 2628 .pp-minimize-btn { 2629 background: none; 2630 border: none; 2631 color: rgba(255,255,255,0.8); 2632 cursor: pointer; 2633 font-size: 18px; 2634 line-height: 1; 2635 padding: 2px; 2636 border-radius: 4px; 2637 transition: color 0.15s; 2638 } 2639 .pp-minimize-btn:hover { 2640 color: #fff; 2641 } 2642 2643 /* --- Panel body --- */ 2644 .pp-panel-content { 2645 padding: 16px; 2646 } 2647 2648 /* --- Step info boxes --- */ 2649 .pp-step-box { 2650 border-radius: 8px; 2651 padding: 10px 12px; 2652 font-size: 12px; 2653 line-height: 1.5; 2654 margin-bottom: 12px; 2655 display: flex; 2656 align-items: flex-start; 2657 gap: 8px; 2658 } 2659 .pp-step-box.blue { 2660 background: #e8f4fd; 2661 border: 1px solid #b8dff5; 2662 color: #0a5a96; 2663 } 2664 .pp-step-box.green { 2665 background: #e6f9ee; 2666 border: 1px solid #a3e4b8; 2667 color: #1a7a3a; 2668 } 2669 .pp-step-text { 2670 flex: 1; 2671 } 2672 .pp-step-text p { 2673 margin: 0 0 8px 0; 2674 } 2675 .pp-step-text p:last-child { 2676 margin-bottom: 0; 2677 } 2678 .pp-step-text strong { 2679 display: block; 2680 font-size: 12px; 2681 margin-bottom: 2px; 2682 } 2683 .pp-step-dismiss { 2684 background: none; 2685 border: none; 2686 color: inherit; 2687 opacity: 0.5; 2688 cursor: pointer; 2689 font-size: 16px; 2690 line-height: 1; 2691 padding: 0; 2692 flex-shrink: 0; 2693 } 2694 .pp-step-dismiss:hover { 2695 opacity: 1; 2696 } 2697 2698 /* --- Warning banners --- */ 2699 .pp-warning { 2700 background: #fff3cd; 2701 border: 1px solid #ffc107; 2702 border-radius: 8px; 2703 padding: 10px 12px; 2704 margin-bottom: 12px; 2705 font-size: 12px; 2706 color: #856404; 2707 line-height: 1.4; 2708 } 2709 .pp-warning-icon { 2710 margin-right: 4px; 2711 } 2712 2713 /* --- Pick placement + copy actions --- */ 2714 .pp-pick-btn { 2715 width: 100%; 2716 padding: 12px; 2717 border: 2px solid #0070ba; 2718 border-radius: 8px; 2719 background: #0070ba; 2720 color: #fff; 2721 cursor: pointer; 2722 font-size: 13px; 2723 font-weight: 600; 2724 transition: all 0.15s; 2725 display: flex; 2726 align-items: center; 2727 justify-content: center; 2728 gap: 8px; 2729 } 2730 .pp-pick-btn:hover { 2731 opacity: 0.9; 2732 } 2733 .pp-pick-btn.active { 2734 background: #f0f7ff; 2735 color: #0070ba; 2736 border-color: #b8dff5; 2737 } 2738 .pp-pick-btn.active:hover { 2739 background: #e0efff; 2740 } 2741 2742 /* --- Copy button --- */ 2743 #pp-apply-btn { 2744 width: 100%; 2745 background: #28a745; 2746 color: #fff; 2747 border: none; 2748 padding: 12px; 2749 border-radius: 8px; 2750 font-weight: 600; 2751 cursor: pointer; 2752 font-size: 13px; 2753 transition: all 0.2s; 2754 display: none; 2755 align-items: center; 2756 justify-content: center; 2757 gap: 8px; 2758 margin-top: 12px; 2759 } 2760 #pp-apply-btn:hover { 2761 opacity: 0.9; 2762 } 2763 #pp-apply-btn.applied { 2764 background: #28a745; 2765 } 2766 2767 /* --- Step 2 confirmation --- */ 2768 #pp-step2 { 2769 display: none; 2770 margin-top: 18px; 2771 } 2772 </style> 2773 <div class='pp-panel-header'> 2774 <div class='pp-panel-title'>PayPal Pay Later Messaging</div> 2775 <button class='pp-minimize-btn' id='pp-collapse-btn' title='Minimize panel'>▾</button> 2776 </div> 2777 <div class='pp-panel-content'> 2778 <div id='pp-warning' class='pp-warning' style='display: none;'></div> 2779 <div id='pp-inspector-warning' class='pp-warning' style='display: none;'></div> 2780 <div class='pp-step-box blue' id='pp-step1'>
2781 <span class='pp-step-text' 2782 ><strong>Step 1: Choose message placement</strong> 2783 Click the button below and then hover over your page to select a placement. 2784 </span> 2785 </div> 2786 <button id='pp-pick-btn' class='pp-pick-btn'>◎ Start Picking Placement</button 2787 ><button id='pp-apply-btn'>Copy Current Placement</button> 2788 <div id='pp-step2' style='display:none;'> 2789 <div class='pp-step-box green'> 2790 <span class='pp-step-text' 2791 ><strong>Step 2: Paste and save</strong> 2792 <p style='margin: 0 0 8px 0;'> 2793 You have copied the placement for the <b id='pp-context-name'>Product Page</b>. 2794 </p> 2795 <p style='margin: 0;'> 2796 Go back to the App Embeds section, and in the Paypal Advanced Settings, paste the copied value into the 2797 <b id='pp-selector-name'>Product Page</b> field and click the 'Save' button in the top right corner. 2798 </p></span 2799 ><button class='pp-step-dismiss' id='pp-step2-dismiss' title='Dismiss'>×</button> 2800 </div> 2801 </div> 2802 </div> 2803</template> 2804<!-- END app snippet --><!-- BEGIN app snippet: navigator -->
2804<script> 2805 // ============================================ 2806 // DOM Traversal Controls for Theme Editor 2807 // Depends on: price-detection.liquid (isIsolatedContext) 2808 // ============================================ 2809 2810 const OVERLAY_STYLE = 2811 'position:fixed;pointer-events:none;background:rgba(255,152,0,0.12);border:2px solid rgba(255,152,0,0.6);z-index:999998;display:none;'; 2812 const OVERLAY_LABEL_STYLE = 2813 'position:absolute;bottom:100%;left:-2px;background:#f57c00;color:#fff;font:10px system-ui;padding:2px 6px;border-radius:3px 3px 0 0;white-space:nowrap;'; 2814 const COPY_BUTTON_LABEL = 'Copy Current Placement'; 2815 const COPIED_BUTTON_LABEL = 'Placement Copied!'; 2816 2817 const isInOverlay = (el) => { 2818 while (el && el !== document.body) { 2819 if (getComputedStyle(el).position === 'fixed') return true; 2820 el = el.parentElement; 2821 } 2822 return false; 2823 }; 2824 2825 // Position a fixed overlay to cover a target element 2826 const positionOverlayOnElement = (overlay, el) => { 2827 const rect = el.getBoundingClientRect(); 2828 Object.assign(overlay.style, { 2829 top: rect.top + 'px', 2830 left: rect.left + 'px', 2831 width: rect.width + 'px', 2832 height: rect.height + 'px', 2833 display: 'block', 2834 }); 2835 }; 2836 2837 // Module-level refs for global listeners added by createNavigationPanel. 2838 // Stored here so they can be removed if the panel is re-initialized. 2839 let _panelInspectorActivate = null; 2840 let _panelInspectorDeactivate = null; 2841 let _highlightedElement = null; 2842 let _panelPickModeCleanup = null; 2843 2844 // Detect UID pattern in ID (Shopify's --suffix or long numeric/hex suffixes) 2845 const hasUid = (id) => { 2846 if (!id) return false; 2847 if (/--/.test(id)) return true; 2848 return /[-_](\d{5,}|[a-f0-9]{8,})$/i.test(id); 2849 }; 2850 const getIdPrefix = (id) => { 2851 if (id.includes('--')) return id.split('--')[0]; 2852 const match = id.match(/^(.+?)[-_](\d{5,}|[a-f0-9]{8,})$/i); 2853 return match ? match[1] : null; 2854 }; 2855 const getMeaningfulClasses = (el) => { 2856 if (!el.className || typeof el.className !== 'string') return []; 2857 return el.className.trim().split(/\s+/).filter(c => 2858 c && !c.startsWith('_') && !c.startsWith('js-') && 2859 c.length < 30 && !/^[a-f0-9]{6,}$/i.test(c) && !/^[A-Z]/.test(c) 2860 ); 2861 }; 2862 const isUnique = (selector) => document.querySelectorAll(selector).length === 1; 2863 2864 // Returns null if no unique selector can be generated 2865 const generateSelector = (element) => { 2866 if (!element || element === document.body || element === document.documentElement) { 2867 return null; 2868 } 2869 const classes = getMeaningfulClasses(element); 2870 2871 // Priority 1: Clean ID 2872 if (element.id && !hasUid(element.id)) return `#${element.id}`; 2873 2874 // Priority 2: ID with UID â attribute wildcard selector 2875 if (element.id && hasUid(element.id)) { 2876 const prefix = getIdPrefix(element.id); 2877 if (prefix) { 2878 const selector = `[id^="${prefix}-"]`; 2879 if (isUnique(selector)) return selector; 2880 } 2881 } 2882 2883 // Priority 3: Unique class 2884 for (const cls of classes) { 2885 if (isUnique('.' + cls)) return '.' + cls; 2886 } 2887 2888 // Priority 4: Ancestor + target class combinations (walk up to 5 levels) 2889 if (classes.length > 0) { 2890 let ancestor = element.parentElement; 2891 let depth = 0; 2892 while (ancestor && ancestor !== document.body && ancestor !== document.documentElement && depth < 5) { 2893 const ancClasses = getMeaningfulClasses(ancestor); 2894 if (ancClasses.length > 0) { 2895 const s1 = `.${ancClasses[0]} .${classes[0]}`; 2896 if (isUnique(s1)) return s1; 2897 const s2 = `.${ancClasses[0]} > .${classes[0]}`; 2898 if (isUnique(s2)) return s2; 2899 } 2900 if (ancestor.id && !hasUid(ancestor.id)) { 2901 const s3 = `#${ancestor.id} .${classes[0]}`; 2902 if (isUnique(s3)) return s3; 2903 } 2904 ancestor = ancestor.parentElement; 2905 depth++; 2906 } 2907 } 2908 2909 // NO FALLBACK - return null if no unique selector exists 2910 return null; 2911 }; 2912 const hasSpecificSelector = (el) => generateSelector(el) !== null; 2913 const shouldSkipElement = (el) => { 2914 if (!el || el.hidden) return true; 2915 if (['SCRIPT', 'STYLE', 'TEMPLATE'].includes(el.tagName)) return true; 2916 if ( 2917 el.closest('#pp-nav-panel') || 2918 el.closest('#pp-nav-pill') || 2919 el.closest('#pp-pick-overlay') 2920 ) 2921 return true; 2922 if (el.hasAttribute('data-pp-message')) return true; 2923 if (!hasSpecificSelector(el)) return true; 2924 return false;
2925 }; 2926 const resolveContextName = (providedContextName, messagingTemplate) => { 2927 if (providedContextName && providedContextName !== 'this area') return providedContextName; 2928 const id = messagingTemplate?.id || ''; 2929 if (id.includes('cart-drawer')) return 'Cart Drawer'; 2930 if (id.includes('cart')) return 'Cart Page'; 2931 if (id.includes('product')) return 'Product Page'; 2932 return 'this area'; 2933 }; 2934 2935 // Called when the cart drawer closes (via IntersectionObserver in cartDrawer.liquid) 2936 // and at the start of createNavigationPanel to tear down any existing instance. 2937 // Cleans up pick mode listeners, DOM elements, highlights, and preview clones. 2938 const destroyNavigationPanel = () => { 2939 if (_panelPickModeCleanup) { 2940 _panelPickModeCleanup(); 2941 _panelPickModeCleanup = null; 2942 } 2943 document.getElementById('pp-nav-panel')?.remove(); 2944 document.getElementById('pp-nav-pill')?.remove(); 2945 const preview = document.querySelector('[id$="-preview"][data-pp-message]'); 2946 if (preview) preview.remove(); 2947 if (_highlightedElement) { 2948 _highlightedElement.style.outline = ''; 2949 _highlightedElement.style.outlineOffset = ''; 2950 _highlightedElement = null; 2951 } 2952 if (_panelInspectorActivate) { 2953 document.removeEventListener('shopify:inspector:activate', _panelInspectorActivate); 2954 document.removeEventListener('shopify:inspector:deactivate', _panelInspectorDeactivate); 2955 _panelInspectorActivate = _panelInspectorDeactivate = null; 2956 } 2957 document.documentElement.style.cursor = ''; 2958 }; 2959 2960 const createNavigationPanel = ( 2961 initialElement, 2962 messagingTemplate, 2963 warningMessage = null, 2964 contextName = 'this area', 2965 ) => {
2966 let currentTarget = initialElement; 2967 let resolvedContextName = resolveContextName(contextName, messagingTemplate); 2968 destroyNavigationPanel(); 2969 2970 const panel = document.createElement('div'); 2971 panel.id = 'pp-nav-panel'; 2972 const tmpl = document.getElementById('pp-nav-template'); 2973 panel.appendChild(tmpl.content.cloneNode(true)); 2974 2975 // Create minimized pill button (separate from panel) 2976 const pill = document.createElement('button'); 2977 pill.id = 'pp-nav-pill'; 2978 pill.innerHTML = 'PayPal Pay Later Messaging'; 2979 const applyBtn = panel.querySelector('#pp-apply-btn'); 2980 const warningEl = panel.querySelector('#pp-warning'); 2981 const step2 = panel.querySelector('#pp-step2'); 2982 const step2Dismiss = panel.querySelector('#pp-step2-dismiss'); 2983 const contextEl = panel.querySelector('#pp-context-name'); 2984 const selectorEl = panel.querySelector('#pp-selector-name'); 2985 const updateContextUI = (newContext) => { 2986 resolvedContextName = newContext; 2987 if (contextEl) contextEl.textContent = resolvedContextName; 2988 if (selectorEl) { 2989 selectorEl.textContent = resolvedContextName; 2990 } 2991 }; 2992 updateContextUI(resolvedContextName); 2993 const detectContextFromElement = (el) => { 2994 if (el.closest('#CartDrawer, .drawer, .cart-drawer, [id*="cart-drawer"], [class*="cart-drawer"]')) 2995 return 'Cart Drawer'; 2996 if (window.location.pathname.endsWith('/cart') || el.closest('.cart, #cart, #main-cart-items, #main-cart-footer')) 2997 return 'Cart Page'; 2998 return 'Product Page'; 2999 }; 3000 3001 // Show warning message if provided 3002 if (warningMessage && warningEl) { 3003 warningEl.innerHTML = `<span class="pp-warning-icon">â ï¸</span>${warningMessage}`; 3004 warningEl.style.display = 'block'; 3005 } 3006 let isInitialRender = true; 3007 const updateUI = () => { 3008 // Highlight element 3009 highlightElement(currentTarget); 3010 // Update button states 3011 applyBtn.textContent = COPY_BUTTON_LABEL; 3012 applyBtn.classList.remove('applied'); 3013 // Reposition messaging â skip on initial render (already placed correctly by auto-detection) 3014 if (!isInitialRender) repositionMessaging(); 3015 isInitialRender = false;
3016 }; 3017 3018 const highlightElement = (el) => { 3019 if (_highlightedElement) { 3020 _highlightedElement.style.outline = ''; 3021 _highlightedElement.style.outlineOffset = ''; 3022 } 3023 _highlightedElement = el; 3024 if (el) { 3025 el.style.outline = '2px solid rgba(255,152,0,0.6)'; 3026 el.style.outlineOffset = '-1px'; 3027 } 3028 }; 3029 3030 const repositionMessaging = () => { 3031 if (!currentTarget) return; 3032 const existing = document.getElementById(messagingTemplate.id); 3033 const targetInOverlay = isInOverlay(currentTarget); 3034 const msgInOverlay = existing && isInOverlay(existing); 3035 if (targetInOverlay !== msgInOverlay) { 3036 // Cross-context: reposition messaging in the target's context without touching the original 3037 const allMessaging = document.querySelectorAll('[data-pp-message]'); 3038 let contextMsg = null; 3039 for (const el of allMessaging) { 3040 if (isInOverlay(el) === targetInOverlay) { contextMsg = el; break; } 3041 } 3042 if (!contextMsg) { 3043 contextMsg = messagingTemplate.cloneNode(true); 3044 contextMsg.id = messagingTemplate.id + '-preview'; 3045 } 3046 contextMsg.remove(); 3047 currentTarget.after(contextMsg); 3048 return; 3049 } 3050 if (existing) existing.remove(); 3051 const newMessaging = messagingTemplate.cloneNode(true); 3052 currentTarget.after(newMessaging); 3053 }; 3054 3055 const collapseBtn = panel.querySelector('#pp-collapse-btn'); 3056 const pickBtn = panel.querySelector('#pp-pick-btn'); 3057 let pickMode = false; 3058 let pickHoverTarget = null; 3059 let pickOverlay = null; 3060 let pickLabel = null; 3061 let applyBtnResetTimer = null; 3062 let _pickRafId = null; 3063 3064 const enterPickMode = () => { 3065 pickMode = true; 3066 document.documentElement.style.cursor = 'crosshair'; 3067 pickBtn.classList.add('active'); 3068 pickBtn.innerHTML = 'â Pick a spot on the page...'; 3069 applyBtn.textContent = COPY_BUTTON_LABEL; 3070 applyBtn.classList.remove('applied'); 3071 applyBtn.style.display = 'flex'; 3072 step2.style.display = 'none'; 3073 if (contextEl) contextEl.textContent = resolvedContextName; 3074 // Create overlay for highlighting (pointer-events:none prevents interference) 3075 pickOverlay = document.createElement('div'); 3076 pickOverlay.id = 'pp-pick-overlay'; 3077 pickOverlay.style.cssText = OVERLAY_STYLE; 3078 pickLabel = document.createElement('div'); 3079 pickLabel.style.cssText = OVERLAY_LABEL_STYLE; 3080 pickOverlay.appendChild(pickLabel); 3081 document.body.appendChild(pickOverlay); 3082 3083 document.addEventListener('mousemove', onPickHover, true); 3084 document.addEventListener('click', onPickClick, true); 3085 document.addEventListener('mousedown', onPickSuppressEvent, true); 3086 document.addEventListener('pointerdown', onPickSuppressEvent, true); 3087 }; 3088 3089 const exitPickMode = () => { 3090 pickMode = false; 3091 document.documentElement.style.cursor = ''; 3092 pickBtn.classList.remove('active'); 3093 pickBtn.innerHTML = 'â Start Picking Placement'; 3094 applyBtn.style.display = 'none'; 3095 // Remove overlay 3096 const overlay = document.getElementById('pp-pick-overlay'); 3097 if (overlay) overlay.remove(); 3098 pickOverlay = null; 3099 pickLabel = null; 3100 pickHoverTarget = null; 3101 3102 if (_pickRafId) { cancelAnimationFrame(_pickRafId); _pickRafId = null; } 3103 document.removeEventListener('mousemove', onPickHover, true); 3104 document.removeEventListener('click', onPickClick, true); 3105 document.removeEventListener('mousedown', onPickSuppressEvent, true); 3106 document.removeEventListener('pointerdown', onPickSuppressEvent, true); 3107 }; 3108 3109 // Find the nearest visible child element to cursor coordinates 3110 const snapToNearestChild = (parent, cx, cy) => { 3111 const children = parent.children; 3112 if (!children.length) return null; 3113 let best = null; 3114 let bestDist = 30; 3115 for (const child of children) { 3116 if (shouldSkipElement(child)) continue; 3117 const r = child.getBoundingClientRect(); 3118 if (r.width === 0 || r.height === 0) continue; 3119 const dx = cx < r.left ? r.left - cx : cx > r.right ? cx - r.right : 0; 3120 const dy = cy < r.top ? r.top - cy : cy > r.bottom ? cy - r.bottom : 0; 3121 const dist = Math.sqrt(dx * dx + dy * dy); 3122 if (dist < bestDist) { 3123 bestDist = dist; 3124 best = child; 3125 } 3126 } 3127 return best; 3128 }; 3129 3130 const onPickHover = (e) => { 3131 if (_pickRafId) return; 3132 _pickRafId = requestAnimationFrame(() => { 3133 _pickRafId = null; 3134 let el = document.elementFromPoint(e.clientX, e.clientY); 3135 if (!el || shouldSkipElement(el)) { 3136 document.documentElement.style.cursor = 'not-allowed'; 3137 if (pickOverlay) pickOverlay.style.display = 'none'; 3138 pickHoverTarget = null; 3139 return; 3140 } 3141 3142 if (el.children.length > 0) { 3143 const snapped = snapToNearestChild(el, e.clientX, e.clientY); 3144 if (snapped) el = snapped; 3145 } 3146 3147 // Skip elements without a unique selector 3148 if (shouldSkipElement(el)) { 3149 document.documentElement.style.cursor = 'not-allowed'; 3150 pickHoverTarget = null; 3151 if (pickOverlay) pickOverlay.style.display = 'none'; 3152 return; 3153 } 3154 document.documentElement.style.cursor = 'crosshair'; 3155 if (el === pickHoverTarget) return; 3156 pickHoverTarget = el; 3157 positionOverlayOnElement(pickOverlay, el);
3158 pickLabel.innerHTML = 'Select this placement'; 3159 }); 3160 }; 3161 3162 const onPickSuppressEvent = (e) => { 3163 if (e.target.closest('#pp-nav-panel')) return; 3164 e.preventDefault(); 3165 e.stopPropagation(); 3166 }; 3167 3168 const onPickClick = (e) => { 3169 if (e.target.closest('#pp-nav-panel')) return; 3170 e.preventDefault(); 3171 e.stopPropagation(); 3172 e.stopImmediatePropagation(); 3173 if (pickHoverTarget && !shouldSkipElement(pickHoverTarget)) { 3174 currentTarget = pickHoverTarget; 3175 updateContextUI(detectContextFromElement(currentTarget)); 3176 updateUI(); 3177 } 3178 }; 3179 3180 // --- Pick button --- 3181 pickBtn.addEventListener('click', () => { 3182 if (pickMode) exitPickMode(); 3183 else enterPickMode(); 3184 }); 3185 3186 _panelPickModeCleanup = () => { if (pickMode) exitPickMode(); }; 3187 3188 // --- Minimize / expand --- 3189 collapseBtn.addEventListener('click', () => { 3190 if (pickMode) exitPickMode(); 3191 panel.classList.add('minimized'); 3192 pill.style.display = 'flex'; 3193 highlightElement(null); 3194 }); 3195 pill.addEventListener('click', () => { 3196 panel.classList.remove('minimized'); 3197 pill.style.display = 'none'; 3198 highlightElement(currentTarget); 3199 }); 3200 3201 // --- Step 2 dismiss --- 3202 step2Dismiss.addEventListener('click', () => { 3203 step2.style.display = 'none'; 3204 }); 3205 3206 // Handle copy button click 3207 panel.addEventListener('click', async (e) => { 3208 const button = e.target.closest('#pp-apply-btn'); 3209 if (!button) return; 3210 // Skip buttons handled separately 3211 if (button.id === 'pp-collapse-btn' || button.id === 'pp-pick-btn' || button.id === 'pp-step2-dismiss') return; 3212 if (button.id === 'pp-apply-btn') { 3213 const selector = generateSelector(currentTarget); 3214 if (!selector) return; 3215 let copied = false; 3216 try { 3217 // Try multiple copy methods (iframe security blocks clipboard API) 3218 if (navigator.clipboard?.writeText) { 3219 await navigator.clipboard.writeText(selector); 3220 copied = true; 3221 } 3222 } catch {} 3223 if (!copied) { 3224 try { 3225 const ta = document.createElement('textarea'); 3226 ta.value = selector; 3227 ta.style.position = 'fixed'; 3228 ta.style.opacity = '0'; 3229 document.body.appendChild(ta); 3230 ta.select(); 3231 copied = document.execCommand('copy'); 3232 ta.remove(); 3233 } catch {} 3234 } 3235 if (copied) { 3236 applyBtn.textContent = COPIED_BUTTON_LABEL; 3237 applyBtn.classList.add('applied'); 3238 if (applyBtnResetTimer) clearTimeout(applyBtnResetTimer); 3239 applyBtnResetTimer = setTimeout(() => { 3240 applyBtn.textContent = COPY_BUTTON_LABEL; 3241 applyBtn.classList.remove('applied'); 3242 applyBtnResetTimer = null; 3243 }, 1200); 3244 // Show Step 2 confirmation 3245 step2.style.display = 'block'; 3246 } 3247 exitPickMode(); 3248 } 3249 }); 3250 3251 // --- Inspector mode detection --- 3252 const inspectorWarning = panel.querySelector('#pp-inspector-warning'); 3253 let inspectorActive = typeof Shopify !== 'undefined' && Shopify.inspectMode; 3254 const isMac = navigator.platform?.startsWith('Mac') || navigator.userAgentData?.platform === 'macOS'; 3255 const shortcut = isMac ? 'â â§ I' : 'Ctrl + Shift + I'; 3256 const enableInspectorMode = () => { 3257 inspectorActive = true; 3258 inspectorWarning.innerHTML = `<span class="pp-warning-icon">â ï¸</span> For a better experience, press <strong>${shortcut}</strong> to turn off inspector mode`; 3259 inspectorWarning.style.display = 'block'; 3260 }; 3261 const disableInspectorMode = () => { 3262 inspectorActive = false; 3263 inspectorWarning.style.display = 'none'; 3264 }; 3265 _panelInspectorActivate = enableInspectorMode; 3266 _panelInspectorDeactivate = disableInspectorMode; 3267 document.addEventListener('shopify:inspector:activate', enableInspectorMode); 3268 document.addEventListener('shopify:inspector:deactivate', disableInspectorMode); 3269 3270 // Prevent panel/pill clicks from closing cart drawer (themes close drawer on outside mousedown) 3271 const stopBubble = (e) => e.stopPropagation(); 3272 panel.addEventListener('mousedown', stopBubble); 3273 panel.addEventListener('pointerdown', stopBubble); 3274 pill.addEventListener('mousedown', stopBubble); 3275 pill.addEventListener('pointerdown', stopBubble); 3276 3277 document.body.appendChild(panel); 3278 document.body.appendChild(pill); 3279 if (inspectorActive) enableInspectorMode(); 3280 updateUI(); 3281 return panel; 3282 }; 3283</script>
3283 3284<!-- END app snippet --><!-- BEGIN app snippet: cartDrawer -->
3284<script> 3285 // Determine correct locator by theme name 3286 const cartDrawerThemeName = window.Shopify.theme.name; 3287 let cartDrawerLocator, cartDrawerNodeToObserve, cartDrawerMutationNode; 3288 3289 switch (cartDrawerThemeName) { 3290 // to support other themes add cases 3291 // default case supports Shopify Free themes 3292 default: 3293 cartDrawerLocator = '.cart-drawer__footer .totals'; 3294 cartDrawerNodeToObserve = '#CartDrawer'; 3295 cartDrawerMutationNode = 'drawer__inner'; 3296 break; 3297 } 3298 // Begin Upstream Messaging Implementation 3299 try { 3300 const cartDrawerMessaging = document.createElement('div'); 3301 const price = 0 / 100; 3302 3303 const cartDrawerAttributes = { 3304 'id': 'paypal-upstream-messaging-cart-drawer', 3305 'data-pp-message': '', 3306 'data-pp-placement': 'cart', 3307 'data-pp-style-layout': 'text', 3308 'data-pp-style-text-align': 'right', 3309 'data-pp-style-logo-type': "inline", 3310 'data-pp-style-text-color': "white", 3311 'data-pp-style-text-size': "12", 3312 'data-pp-style-logo-position': "", 3313 'data-pp-amount': price, 3314 }; 3315 3316 Object.keys(cartDrawerAttributes).forEach((key) => { 3317 cartDrawerMessaging.setAttribute(key, cartDrawerAttributes[key]); 3318 }); 3319 3320 const advancedSettingsEnabled = 'false' === 'true'; 3321 const customCartDrawerSelector = ''.trim(); 3322 3323 if (advancedSettingsEnabled && customCartDrawerSelector !== '') { 3324 // utils.liquid 3325 cartDrawerLocator = parseSelector(customCartDrawerSelector); 3326 } 3327 3328 if ("enabled" === 'enabled') { 3329 waitForElement(cartDrawerLocator).then(elem => { 3330 elem.after(cartDrawerMessaging.cloneNode()); 3331 3332 if (advancedSettingsEnabled && isIsolatedContext() && !document.getElementById('pp-nav-panel')) { 3333 let drawerPanelActive = false; 3334 new IntersectionObserver((entries) => { 3335 if (entries[0].isIntersecting) { 3336 if (!document.getElementById('pp-nav-panel')) { 3337 setTimeout(() => { 3338 if (!document.getElementById('pp-nav-panel')) { 3339 createNavigationPanel(elem, cartDrawerMessaging, null, 'Cart Drawer'); 3340 drawerPanelActive = true; 3341 } 3342 }, 300); 3343 } 3344 } else if (drawerPanelActive) { 3345 destroyNavigationPanel(); 3346 drawerPanelActive = false; 3347 } 3348 }, { threshold: 0.1 }).observe(elem); 3349 } 3350 }); 3351 3352 // Custom selector not found â show navigator with warning when drawer opens 3353 if (advancedSettingsEnabled && customCartDrawerSelector && !document.querySelector(cartDrawerLocator) && isIsolatedContext() && !document.getElementById('pp-nav-panel')) { 3354 const drawerContainer = document.querySelector(cartDrawerNodeToObserve); 3355 if (drawerContainer) { 3356 let warningPanelActive = false; 3357 const warning = 'Selected placement not found on this page. Please choose an element that is present on all page templates.'; 3358 recordEvent('appEmbed:advanced-settings-selector-not-found', { locator: cartDrawerLocator }); 3359 new IntersectionObserver((entries) => { 3360 if (entries[0].isIntersecting) { 3361 if (!document.getElementById('pp-nav-panel')) { 3362 setTimeout(() => { 3363 if (!document.getElementById('pp-nav-panel')) { 3364 createNavigationPanel(drawerContainer, cartDrawerMessaging, warning, 'Cart Drawer'); 3365 warningPanelActive = true; 3366 } 3367 }, 300); 3368 } 3369 } else if (warningPanelActive) { 3370 destroyNavigationPanel(); 3371 warningPanelActive = false; 3372 } 3373 }, { threshold: 0.1 }).observe(drawerContainer); 3374 } 3375 } 3376 3377 // utils.liquid 3378 watchForCartChanges(cartDrawerLocator, cartDrawerMessaging); 3379 } 3380 } catch (e) { 3381 // utils.liquid 3382 recordEvent('appEmbed:query-selector-not-found-cart-drawer', { locator: cartDrawerLocator, error: e.message }); 3383 } 3384 </script>
3384 3385<!-- END app snippet --> 3386 3387 3388</div><div id="shopify-block-AakNoTzR0N0NkN3Z2W__11532412952436166569" class="shopify-block shopify-app-block">
3388<script async src="https://loox.io/widget/N1WbMhyfKw/loox.1625010130313.js?shop=mermaid-vemon.myshopify.com"></script>
3388 3389 3390 3391 <!-- __LXV: 1789615327685;__LXR: https://loox.io;__LXC: N1WbMhyfKw; -->
3391<script>var loox_global_hash = '1789615327685'; 3392var loox_bundle_reviews_enabled = false;</script>
3392<style>.loox-reviews-default { max-width: 1200px; margin: 0 auto; }.loox-rating .loox-icon { color:#DAC08E; } 3393:root { --lxs-rating-icon-color: #DAC08E; }</style><svg xmlns="http://www.w3.org/2000/svg" style="display: none" id="loox-rating-icon-svg-store"> 3394 <defs /> 3395 <symbol id="looxicons-rating-icon-fill" viewBox="0 0 24 24" fill="currentcolor"> 3396 <path 3397 d="M12 0a10.799 10.799 0 0 1 10.8 10.8v8.998a4.2 4.2 0 0 1-7.668 2.371 3.599 3.599 0 0 1-6.267 0 4.2 4.2 0 0 1-7.658-2.14l-.006-.232V10.8A10.8 10.8 0 0 1 12 0Zm0 11.999c-1.326 0-2.4 1.344-2.4 3s1.074 3 2.4 3c1.326 0 2.4-1.344 2.4-3s-1.074-3-2.4-3Zm-3-4.8a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6Zm6 0a1.8 1.8 0 1 0 0 3.6 1.8 1.8 0 0 0 0-3.6Z" 3398 /> 3399 </symbol> 3400 <symbol id="looxicons-rating-icon-line" viewBox="0 0 24 24" fill="currentcolor"> 3401 <path 3402 d="M12 0a10.799 10.799 0 0 1 10.8 10.8v8.998a4.2 4.2 0 0 1-7.668 2.371 3.599 3.599 0 0 1-6.267 0 4.2 4.2 0 0 1-7.658-2.14l-.006-.232V10.8A10.8 10.8 0 0 1 12 0Zm0 2.4a8.4 8.4 0 0 0-8.394 8.111L3.6 10.8v8.934l.002.166a1.8 1.8 0 0 0 3.174 1.056l.105-.14a2.4 2.4 0 0 1 4.072.171 1.199 1.199 0 0 0 2.087.004 2.401 2.401 0 0 1 3.955-.334l.117.156a1.8 1.8 0 0 0 3.28-.84l.006-.174V10.8A8.4 8.4 0 0 0 12 2.4Zm0 9.599c1.326 0 2.4 1.344 2.4 3s-1.074 3-2.4 3c-1.326 0-2.4-1.344-2.4-3s1.074-3 2.4-3Zm-3-4.8a1.8 1.8 0 1 1 0 3.6 1.8 1.8 0 0 1 0-3.6Zm6 0a1.8 1.8 0 1 1 0 3.6 1.8 1.8 0 0 1 0-3.6Z" 3403 /> 3404 </symbol> 3405 <defs> 3406 <style> 3407 .lx-icon-fill { 3408 --lx-fill-width: calc(100% - var(--lx-rating-percent, 0%)); 3409 clip-path: inset(0 var(--lx-fill-width, 0) 0 0); 3410 } 3411 .lx-icon-line { 3412 clip-path: inset(0 0 0 var(--lx-rating-percent, 0%)); 3413 } 3414 [data-lx-fill='empty'] { 3415 --lx-rating-percent: 0%; 3416 } 3417 [data-lx-fill='half'] { 3418 --lx-rating-percent: 50%; 3419 } 3420 [data-lx-fill='full'] { 3421 --lx-rating-percent: 100%; 3422 } 3423 </style> 3424 3425 <g id="looxicons-rating-icon"> 3426 <use href="#looxicons-rating-icon-line" class="lx-icon-line"></use> 3427 <use href="#looxicons-rating-icon-fill" class="lx-icon-fill"></use> 3428 </g> 3429 </defs> 3430</svg> 3431 3432 3433 3434 3435 3436 3437 3438 3439</div><div id="shopify-block-AZU5IUEdHNlJQMExoZ__10910696115237310528" class="shopify-block shopify-app-block"><!-- BEGIN app snippet: hs-global-variables --> 3440 3441 3442
3443<script id="hs-config-global"> 3444 window.HSSLIDECART = window.HSSLIDECART || {}; 3445 window.HSSLIDECART = window.HSSLIDECART || {}; 3446 window.HSSLIDECART.setSettings = {"dashboard":{"dashboard_general_app":1},"settings":{"devices":{"id":1138,"enabled_desktop":1,"enabled_mobile":1,"money_format":"${{amount}}","personalize":"","template_item_cart":"{{#each items}} {{#if this.hs_sl_content.custom_bundle}} {{{this.hs_sl_content.custom_bundle}}} {{else}} <div class=\"hs-item-cart-content hs-product-{{this.id}}{{this.hs_sl_content.discount_class}}\" data-item-key=\"{{this.key}}\" data-item-qty=\"{{this.quantity}}\"> <div class=\"hs-item-content-variants\"> <div class=\"hs-item-cart-image\"> {{#if this.hs_sl_content.url}} <a class=\"hs-item-cart-image-content\" href=\"{{this.hs_sl_content.url}}\">{{{this.hs_sl_content.image}}}</a> {{else}} <span class=\"hs-item-cart-image-content\">{{{this.hs_sl_content.image}}}</span> {{/if}} </div> <div class=\"hs-item-cart-description\"> <div class=\"hs-item-top\"> <div class=\"hs-item-top-left\"> <div class=\"hs-content-product-and-variant-title\"> {{#if this.hs_sl_content.url}} <a href=\"{{this.hs_sl_content.url}}\" class=\"hs-product-title\">{{this.product_title}}</a> {{else}} <div class=\"hs-product-title\">{{this.product_title}}</div> {{/if}} <div class=\"jdgm-badge-placeholder\" data-handle=\"{{this.handle}}\"></div> <div class=\"hs-variant-title\">{{this.variant_title}}</div> <div class=\"hs-content-selling-plan\">{{{this.hs_sl_content.selling_plan}}}</div> <div class=\"hs-propertie-content\">{{{this.hs_sl_content.text_variant_propertie}}}</div> </div> </div> <div class=\"hs-item-close\"> {{{this.hs_sl_content.remove_item}}} </div> </div> <div class=\"hs-content-quantity-price\"> <div class=\"hs-item-cart-content-quantity\"> {{{this.hs_sl_content.quantity_box}}} </div> <div class=\"hs-cart-content-price\"> {{{this.hs_sl_content.price}}} </div> </div> <div class=\"hs-cart-content-weight\"> {{{this.hs_sl_content.item_grams}}} </div> </div> </div> </div> {{/if}} {{/each}}","customCss":"","customJs":""},"additional_settings":{"hide_slide_cart":0,"hide_cart":1,"hide_decimal":0,"hide_discount_money_cart":0,"hide_discount_list_footer":0,"add_url_item_cart":1,"reverse_currency_symbol":1,"prices_reverse_order":0,"show_especial":1,"show_discount":1,"show_clear_all":0,"show_products_count":1,"show_prices_x_qty":0,"show_compare_price":0,"show_save_item":0,"show_labels_discount":1,"base_price_for_discount":1,"show_discount_order_x_item":1,"hidden_variant_title_cart":0,"show_product_property":0,"show_weight":0,"show_unit_price":0,"show_quantity_box_cart":1,"hidden_quantity_box_cart_free":1,"show_quantity_box_upsells":0,"selected_subscribe_upsell":0,"add_utm":0,"cart_links":0,"open_cart":1,"show_subscription_option":0,"show_subscription_option_upsell":1,"cart_redirect_enabled":0,"cart_redirect_url":"/","currency_format_type":0,"variant_availability_mode":1,"image_quality":"x120","image_container":"70"},"cart_empty":{"enabled_cart_empty":1,"cart_empty_title":"YOUR CART IS EMPTY!","cart_empty_title_font_size":"15px","cart_empty_title_text_transform":"uppercase","cart_empty_title_font_weight":"700","cart_empty_title_color_hex":"#000000","cart_empty_subtitle":"Add your favorite items to your cart.","cart_empty_subtitle_font_size":"16px","cart_empty_subtitle_text_transform":"uppercase","cart_empty_subtitle_font_weight":"normal","cart_empty_subtitle_color_hex":"#000000","cart_empty_button_background_color_hex":"#000000","cart_empty_button_text":"Shop Now","cart_empty_button_font_size":"16px","cart_empty_button_url":"collections/all","cart_empty_button_font_weight":"normal","cart_empty_button_text_transform":"none","cart_empty_button_font_color_hex":"#ffffff","cart_empty_button_border_radius":"0px","cart_empty_enabled_upsell":1,"cart_empty_upsell_type":0,"cart_empty_upsell_list_collections":"","cart_empty_upsell_list_products":"","cart_empty_upsell_font_size":"16px","cart_empty_upsell_mode":1,"cart_empty_upsell_qty":1,"cart_empty_upsell_autoplay_time":0,"cart_empty_upsell_add_to_cart_mode":0,"cart_empty_upsell_heading":"YOU MAY ALSO LIKE","cart_empty_upsell_heading_background_color_hex":"#000000","cart_empty_upsell_text_color_hex":"#ffffff","cart_empty_upsell_heading_bold_font":0,"cart_empty_upsell_product_url":1,"cart_empty_upsell_max_item":1},"countdown":{"enabled_countdown":0,"countdown_minutes_reservation":"5","countdown_reset":1,"countdown_text":"ð¥ Your cart is reserved for {{time_remaining}} minutes!","countdown_text_expire":"Cart reservation expired.","countdown_expire_clear_cart":0,"countdown_background_color_hex":"#000000","countdown_border_color_hex":"#000000","countdown_font_color_hex":"#ffffff","countdown_font_size":"14px","countdown_text_transform":"uppercase","countdown_font_weight":"700","countdown_text_alignment":"center","countdown_timer_background_color_hex":"#000000ff","countdown_timer_text_color_hex":"#ffffffff","countdown_timer_background_border_radius":"1px"},"announcement":{"enabled_announcement":1,"announcement_background_color_hex":"#000000","announcement_border_color_hex":"#000000","announcement_font_color_hex":"#ffffff","announcement_font_size":"14px","announcement_text_transform":"none","announcement_font_weight":"700","announcement_text_alignment":"center","announcement_autoplay_time":0},"announcement_tiers":[{"announcement_id":20973,"announcement_text":"SAVE 25% OFF AT CHECKOUT & FREE SHIPPING NOW!","settings_announcement_id":1138},{"announcement_id":20974,"announcement_text":"Enjoy free 2-day shipping on all orders","settings_announcement_id":1138}],"rewards":{"enabled_rewards":0,"rewards_countries":0,"rewards_enabled_
3446in_cartEmpty":1,"rewards_converted_amount":0,"rewards_show_goals":0,"rewards_auto_open_picker_popup":0,"rewards_show_goals_prices":0,"rewards_bar_no_dscto":0,"rewards_show_prices_percentages":1,"rewards_mode":2,"rewards_range":"5","rewards_font_size":"14px","rewards_text_transform":"uppercase","rewards_font_weight":"700","rewards_background_content_color_hex":"#ffffff","rewards_background_primary_color_hex":"#000000","rewards_background_secondary_color_hex":"#cccccc","rewards_font_color_hex":"#000000","rewards_border_radius":"0px","rewards_basis":0,"rewards_content_popup_title":"Get awesome FREE gifts today only!\t","rewards_content_popup_description":"","rewards_union_of_tables":1},"rewards_all_countries_tiers":[],"rewards_specific_countries_tiers":[{"reward_id":1140,"rewards_title_specific_countries":"You are {{ price }} away from free shipping!","rewards_item_count_title_specific_countries":"You are {COUNT} away from free shipping!","rewards_congratulations_specific_countries":"Congratulations! You unlocked free shipping!","rewards_amount_specific_countries":"100.00","rewards_item_count_specific_countries":1,"rewards_confetti_time_specific_countries":300,"rewards_confetti_specific_countries":0,"rewards_specific_country":"Select Country","rewards_type_specific_countries":0,"rewards_mode_add_specific_countries":0,"rewards_description_specific_countries":"Free Shipping","rewards_products_specific_countries":[],"rewards_products_limit_enabled_specific_countries":0,"rewards_products_limit_specific_countries":1,"rewards_discount_code_specific_countries":"","rewards_discount_type_specific_countries":0,"rewards_discount_value_specific_countries":"0","rewards_type_icon_specific_countries":"<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" x=\"0\" y=\"0\" viewBox=\"0 0 24 24\"><g transform=\"matrix(6.123233995736766e-17,1,-1,6.123233995736766e-17,24.010900132736424,0.013266563415527344)\"><path d=\"m22.576 12.52-8.727-8.67a3.892 3.892 0 0 0-3.221-1.09l-5.803.651L1.707.293A.999.999 0 1 0 .293 1.707l3.118 3.118-.696 6.088a3.865 3.865 0 0 0 1.136 3.062l8.713 8.645a4.789 4.789 0 0 0 3.4 1.404h.02a4.787 4.787 0 0 0 3.408-1.431l3.21-3.242a4.848 4.848 0 0 0-.025-6.832Zm-1.396 5.426-3.21 3.242a2.8 2.8 0 0 1-1.994.837h-.011a2.807 2.807 0 0 1-1.992-.823l-8.714-8.647a1.861 1.861 0 0 1-.554-1.449l.512-4.474 1.857 1.857A1.967 1.967 0 0 0 7 9.001a2 2 0 1 0 2-2c-.178 0-.347.031-.512.074L6.634 5.221l4.226-.474.021-.003a1.884 1.884 0 0 1 1.559.525l8.726 8.668a2.846 2.846 0 0 1 .015 4.009Zm-3.974-5.151a.999.999 0 0 0-1.414 0l-3 3a.999.999 0 0 0 0 1.414l2.5 2.5a.997.997 0 0 0 1.414 0l3-3a.999.999 0 0 0 0-1.414l-2.5-2.5Zm-1.207 4.793-1.086-1.086 1.586-1.586 1.086 1.086-1.586 1.586Z\"></path></g></svg>"},{"reward_id":17057,"rewards_title_specific_countries":"You are {{ price }} away from free shipping!","rewards_item_count_title_specific_countries":"You are {COUNT} away from free shipping!","rewards_congratulations_specific_countries":"ð Congrats! you have unlocked free shipping!","rewards_amount_specific_countries":"100.00","rewards_item_count_specific_countries":1,"rewards_confetti_time_specific_countries":300,"rewards_confetti_specific_countries":0,"rewards_specific_country":"1","rewards_type_specific_countries":0,"rewards_mode_add_specific_countries":0,"rewards_description_specific_countries":"Free Shipping","rewards_products_specific_countries":[],"rewards_products_limit_enabled_specific_countries":0,"rewards_products_limit_specific_countries":0,"rewards_discount_code_specific_countries":"","rewards_discount_type_specific_countries":0,"rewards_discount_value_specific_countries":"0","rewards_type_icon_specific_countries":"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\">\n <path d=\"m19,5h-2.077c-.336-1.903-1.753-3.474-3.674-3.968-.529-.137-1.079.185-1.218.719-.138.535.185,1.08.72,1.217,1.324.341,2.249,1.536,2.249,2.906v11.126H4c-1.103,0-2-.897-2-2v-4h2.5c.553,0,1-.448,1-1s-.447-1-1-1h-2.5c-1.103,0-2,.897-2,2v4c0,1.88,1.304,3.461,3.055,3.887-.036.201-.055.406-.055.613,0,1.93,1.57,3.5,3.5,3.5s3.5-1.57,3.5-3.5c0-.169-.013-.335-.037-.5h4.074c-.024.165-.037.331-.037.5,0,1.93,1.57,3.5,3.5,3.5s3.5-1.57,3.5-3.5c0-.207-.019-.412-.055-.613,1.751-.426,3.055-2.007,3.055-3.887v-5c0-2.757-2.243-5-5-5Zm3,5v1h-5v-4h2c1.654,0,3,1.346,3,3Zm-14,9.5c0,.827-.673,1.5-1.5,1.5s-1.5-.673-1.5-1.5c0-.189.037-.356.091-.5h2.819c.054.144.091.311.091.5Zm9.5,1.5c-.827,0-1.5-.673-1.5-1.5,0-.189.037-.356.091-.5h2.819c.054.144.091.311.091.5,0,.827-.673,1.5-1.5,1.5Zm2.5-4h-3v-4h5v2c0,1.103-.897,2-2,2ZM0,2c0-.552.447-1,1-1h8.154c.553,0,1,.448,1,1s-.447,1-1,1H1c-.553,0-1-.448-1-1Zm0,4c0-.552.447-1,1-1h6.154c.553,0,1,.448,1,1s-.447,1-1,1H1c-.553,0-1-.448-1-1Z\"/>\n</svg>"}],"product_recommendations_settings":{"enabled_product_recommendations":1,"based_last_product":1,"intent_upsell_automatic":"related","section_heading_products":"Frequently Bought Together","mode_upsell_automatic":1,"slides_per_view_automatic":1,"slides_autoplay_time_automatic":0,"mode_add_to_cart_automatic":0,"heading_background_color_hex":"#000000","heading_text_color_hex":"#ffffff","heading_bold_font":1,"font_size_upsell_automatic":"16px","upsell_product_url_automatic":1,"maximum_items_suggest":2,"random_products_automatic":0},"manually_products_upsells":{"enabled_product_manually":0,"section_heading_products_manually":"You Might Also Like These","mode_upsell_manually":1,"slides_per_view_manually":1,"slides_autoplay_time_manually":0,"mode_add_to_cart_manually":0,"heading_background_color_hex_manually":"#000000","heading_text_color_hex_manually":"#ffffff","heading_bold_font_manually":0,"upsell_product_font_size_manually":"16px","upsell_product_url_manually":1,"maximum_items_suggest_manually":2,"random_groups_manually":0,"random_products_manually":0,"cross_upsell_groups_manually":0},"static_products_upsells":{"enabled_static_products_upsell":0,"upsell_type_static":0,"list_products_static":"","list_collections_static":"","section_heading_products_static":"You Might Also Like These\t","mode_upsell_static":1,"slides_per_view_static":1,"slides_autoplay_time_static":0,"mode_add_to_cart_static":0,"heading_background_color_hex_static":"#000000","heading_text_color_hex_static":"#ffffff","heading_bold_font_static":1,"font_size_upsell_static":"14px","upsell_product_url_static":1,"maximum_items_suggest_static":4,"random_products_static":0},"tiered_free_items":{"enabled_tiered_free_items":0,"tfi_mode_view":1,"tfi_slides_per_view":1,"tfi_slides_autoplay_time":0,"tfi_mode_add_to_cart":0,"tfi_section_heading":"FREE GIFT WITH YOUR PURCHASE","tfi_heading_background_color_hex":"#000000","tfi_heading_text_color_hex":"#ffffff","tfi_heading_bold_font":1,"tfi_product_url_automatic":1,"tfi_heading_font_size":"16px","tfi_lock_method":0,"tfi_unlock_text":"Unlock to {{amount}}","tfi_unlock_text_show":0,"tfi_unlock_text_transform":"none","tfi_unlock_text_font_size":"14px","tfi_unlock_text_font_weight":"700","tfi_unlock_text_color_hex":"#000000","tfi_unlock_bar_color_primary_hex":"#000000","tfi_unlock_bar_color_secondary_hex":"#cccccc","tfi_unlock_bar_border_radius":"10px","tfi_calculate_based_on":"cart_total_price","tfi_locked_limit":1,"tfi_unlocked_limit":1,"tfi_show_quantity_box":0,"tif_auto_add":0,"tfi_only_product_tier":0},"tiered_free_items_tiers":[],"special_offer_notification":{"enabled_special_offer_notification":1,"offer_based_notification":"total_price","max_offers_show_notification":"1","qualified_background_color_hex_notification":"#000000","qualified_text_color_hex_notification":"#000000","qualified_bold_font_notification":0,"unqualified_background_color_hex_notification":"#000000","unqualified_text_color_hex_notification":"#000000","unqualified_bold_font_notification":0},"special_offer_notification_tier":[{"id":1138,"settings_special_offer_notification_id":1138,"num_special_offer_notification_tier":1,"min_val_qualify":"100.00","special_offer_message_qualify":"Congratulations, You've qualified for free shipping.","special_offer_message_not_qualify":"Almost there, Add {{ remaining_amount }} more to get free shipping.","tier_name":"Tier 1","customer_id":3239}],"minimum_order":{"enabled_minimum_order":0,"minimum_order":"0.00","minimum_order_option":0,"minimum_order_text":"Minimum Order {{ money }}","minimum_font_size":"16px","minimum_color_hex":"#000000"},"cart_coupon":{"enabled_cart_coupon_button":1,"position_cart_coupon_button":1,"name_cart_
3446coupon_button":"Apply","placeholder_cart_coupon_button":"Discount Code","button_background_color_hex":"#000000","button_background_colorHover_hex":"#000000","button_font_color_hex":"#ffffff","button_font_colorHover_hex":"#ffffff","button_font_size":"14px","button_text_transform":"uppercase","button_font_weight":"700","button_border_radius":"0px"},"cart_note":{"enabled_cart_note":1,"cart_note_show_icon":1,"cart_note_show_ini":0,"cart_note_heading":"Add an optional note","cart_note_heading_close":"Close optional note","cart_note_heading_placeholder":"Special instructions","cart_note_heading_color_hex":"#000000","cart_note_font_size":"14px","cart_note_text_transform":"none","cart_note_font_weight":"normal","cart_note_additional":0,"cart_note_additional_text":"Receive Gift","cart_note_additional_message":"Accept gift","cart_note_additional_color_hex":"#000000","cart_note_additional_font_size":"12px"},"additional_check":{"enabled_additional_checkout_buttons":0},"language_settings":{"cart_title_language_settings":"Cart","cart_empty_text_language_settings":"Your cart is empty.","add_to_cart_language_settings":"ADD TO CART","add_in_upsell_language_settings":"ADD","rc_withOutSub_in_upsell_language_settings":"One Time","rc_withSub_in_upsell_language_settings":"Subscribe & Save {{percentage}}","rc_upgrade_language_settings":"Upgrade","rc_downgrade_language_settings":"Downgrade","discount_savings_language_settings":"(Save {{money}})","shopping_cart_language_settings":"Your Cart ⢠{qty}","product_language_settings":"Product","products_language_settings":"Products","subtotal_language_settings":"Subtotal","clear_all_language_settings":"Clear all","remove_language_settings":"Clear","sold_out_language_settings":"Sold out","unavailable_language_settings":"Unavailable","free_language_settings":"Free","free_gnral_language_settings":"","add_discount_code_language_settings":"Add discount code if applicable","discount_applied_language_settings":"Discount of {{ money }} applied","checkout_button_textlanguage_settings":"Checkout","vendor_key_text_language_settings":"Vendor","subscription_text_language_settings":"Subscription","valid_coupon_text":"Please Enter Valid Coupon Code.","original_total_price_language_settings":"Original Total Price","total_discount_savings_language_settings":"Discount","notification_button_text":"Okay","rewards_selected_language_settings":"selected","rewards_items_language_settings":"items","rewards_popup_pick_language_settings":"Pick","rewards_popup_continue_language_settings":"Continue","rewards_popup_remove_language_settings":"Remove","shipping_taxes_discounts_language_settings":"","amazing_badge_language_settings":""},"gift_wrap":{"enabled_gift_wrap":0,"product_type":"specificProduct","gift_wrap_icon":10,"gift_wrap_icon_color_hex":"#000000","offer_name":"Gift wrap","offer_name_color_hex":"#000000","offer_price":"0.00","offer_price_color_hex":"#000000","offer_compare_price":"0.00","offer_compare_price_color_hex":"#000000","offer_icon_url_img_host":"","offer_icon_url_img_shopify":"","featured_product_shopify_handle":"","featured_product_shopify_title":"","featured_product_shopify_originalSrc":"","featured_product_shopify_id_variants":"","featured_product_title":"Your offer is {{ Product-title }} now available","featured_product_title_bold":0,"featured_product_show_image":0,"display_selling_color_hex":"#000000","display_compare_price_color_hex":"#000000","offer_font_size":"13px","gift_wrap_auto_add":0,"icon":"<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.1\" x=\"0px\" y=\"0px\" viewBox=\"0 0 502.4 502.4\" style=\"enable-background:new 0 0 502.4 502.4;\" xml:space=\"preserve\">\n<g>\n\t<g>\n\t\t<path d=\"M481.066,126.933H312.533c10.667-12.8,16-29.867,16-48c0-42.667-34.133-77.867-77.867-77.867 C208,1.067,172.8,35.2,172.8,78.933c0,18.133,6.4,35.2,16,48H21.333C9.6,126.933,0,136.533,0,148.267v93.867 c0,11.733,9.6,21.333,21.333,21.333h12.8V480c0,11.733,9.6,21.333,21.333,21.333h390.4c11.733,0,20.267-9.6,21.333-21.333V263.467 h13.867c11.733,0,21.333-9.6,21.333-21.333v-93.867C502.4,136.533,492.8,126.933,481.066,126.933z M250.666,41.6 c20.267,0,36.267,17.067,36.267,36.267c0,20.267-16,36.267-36.267,36.267s-36.267-16-36.267-36.267S230.4,41.6,250.666,41.6z M186.666,459.734H76.8V263.467h109.867V459.734z M273.066,459.734h-44.8V263.467h44.8V459.734z M425.6,459.734H315.733V263.467 H425.6V459.734z M460.8,220.8H41.6v-52.267h419.2V220.8z\"/>\n\t</g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n<g>\n</g>\n</svg>"},"shipping_protection":{"enabled_shipping_protection":0,"sp_featured_product_shopify_handle":"","sp_featured_product_shopify_id_variant":"","sp_show_image":1,"sp_auto_add":0,"sp_title_color_hex":"#000000","sp_title_font_size":"14px","sp_title_transform":"none","sp_title_font_weight":"normal","sp_description_color_hex":"#737373","sp_description_font_size":"12px","sp_description_transform":"none","sp_description_font_weight":"normal","sp_price_color_hex":"#000000","sp_price_font_size":"14px","sp_price_font_weight":"normal","sp_compare_price_color_hex":"#737373","sp_compare_price_font_size":"14px","sp_compare_price_font_weight":"normal","sp_toggle_color_hex":"#008060"},"terms_conditions":{"enabled_terms":0,"text_terms":"I have understood & agreed with your {{ terms & conditions }}.","font_size_terms":"12px","url_terms":"","notify_terms":"You must accept the terms and conditions\t"},"checkout_button":{"enabled_checkout_button":1,"checkout_button_icon":"78","checkout_button_icon_enabled":0,"checkout_button_show_subtotal_text":1,"checkout_button_text":"Checkout","checkout_button_text_color_hex":"#ffffff","checkout_button_text_colorHover_hex":"#ffffff","checkout_button_text_font_size":"16px","checkout_button_text_transform":"uppercase","checkout_button_text_weight":"700","checkout_button_background_color_hex":"#000000","checkout_button_background_colorHover_hex":"#000000","checkout_button_border":"1px","checkout_button_height":"52px","checkout_button_icon_svg":"<svg viewBox=\"0 0 24 24\" fill=\"black\" xmlns=\"http://www.w3.org/2000/svg\" width=\"800px\" height=\"800px\"><g stroke-width=\"0\"></g><g stroke-linecap=\"round\" stroke-linejoin=\"round\"></g><g><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M5.25 10.0546V8C5.25 4.27208 8.27208 1.25 12 1.25C15.7279 1.25 18.75 4.27208 18.75 8V10.0546C19.8648 10.1379 20.5907 10.348 21.1213 10.8787C22
344611.7574 22 13.1716 22 16C22 18.8284 22 20.2426 21.1213 21.1213C20.2426 22 18.8284 22 16 22H8C5.17157 22 3.75736 22 2.87868 21.1213C2 20.2426 2 18.8284 2 16C2 13.1716 2 11.7574 2.87868 10.8787C3.40931 10.348 4.13525 10.1379 5.25 10.0546ZM6.75 8C6.75 5.10051 9.10051 2.75 12 2.75C14.8995 2.75 17.25 5.10051 17.25 8V10.0036C16.867 10 16.4515 10 16 10H8C7.54849 10 7.13301 10 6.75 10.0036V8Z\"></path></g></svg>"},"cart_button":{"enabled_cart_button":1,"cart_button_text":"Go to cart","cart_button_text_color_hex":"#ffffff","cart_button_text_colorHover_hex":"#ffffff","cart_button_text_font_size":"16px","cart_button_text_transform":"uppercase","cart_button_text_weight":"700","cart_button_background_color_hex":"#000000","cart_button_background_colorHover_hex":"#000000","cart_button_border":"1px","cart_button_height":"38px"},"continue_shopping":{"enabled_continue_shopping":1,"continue_shopping_text":"Continue Shopping","continue_shopping_text_font_size":"16px","continue_shopping_text_transform":"uppercase","continue_shopping_text_weight":"normal","continue_shopping_text_decoration":"underline","continue_shopping_text_color_hex":"#737373","continue_shopping_text_colorHover_hex":"#000000","continue_shopping_button_url":""},"payment_badges":{"enabled_payment_badges":0,"url_img_host":"https://node.slidecartapp.heysenior.com/payment_badges/trust-payment.png","url_img_shopify":"https://cdn.shopify.com/s/files/1/0566/9804/4568/t/1/assets/trust-payment.png?v=1624376564"}},"customize":{"customize_slidecart_design":1,"customize_slidecart_size":450,"customize_slidecart_position":2,"customize_slidecart_animation_mobile":0,"customize_slidecart_time_transition":"0.249","customize_slidecart_footer_fixed":1,"customize_slidecart_rtl":0,"customize_slidecart_margin_left":0,"customize_enabled_loading":0,"customize_loading_background_rgb":"rgba(255,255,255,0.2)","customize_loading_icon_hex":"#000000","customize_header_title_type":"custom","customize_header_background_color_hex":"#ffffff","customize_header_text_color_hex":"#000000","customize_header_text_font_size":"14px","customize_header_text_font_weight":"500","customize_header_text_transform":"uppercase","customize_header_text_alignment":1,"customize_header_text_level":"h3","customize_header_logo_url":"","customize_header_logo_size":30,"customize_header_height":0,"customize_header_bottom_border":1,"customize_header_icon_position":1,"customize_header_icon_background_color_hex":"#ff000000","customize_header_icon_background_hov_color_hex":"#ff000000","customize_header_icon_color_hex":"#7d7d7d","customize_header_icon_color_hov_hex":"#7d7d7d","customize_header_icon_size":16,"customize_header_icon_thickness":0,"customize_header_icon_border":0,"customize_header_icon_border_color_hex":"#ff000000","customize_header_icon_border_hov_color_hex":"#ff000000","customize_body_background_color_hex":"#ffffff","customize_body_text_color_hex":"#000000","customize_body_border_color_hex":"#e5e5e5","customize_body_prod_icon_remove_color_hex":"#7d7d7d","customize_body_design_qty":0,"customize_body_prod_remove_enabled":0,"customize_body_prod_remove_text":"","customize_body_prod_icon_remove_size":9,"customize_body_prod_icon_remove_color_hov_hex":"#7d7d7d","customize_body_prod_title_color_text_hex":"#000000","customize_body_prod_title_font_size":"14px","customize_body_prod_title_font_weigth":"600","customize_body_prod_title_text_transform":"none","customize_body_var_title_color_text_hex":"#000000","customize_body_var_title_font_size":"14px","customize_body_var_title_font_weigth":"normal","customize_body_var_title_text_transform":"none","customize_body_price_color_text_hex":"#000000","customize_body_price_font_size":"14px","customize_body_price_font_weigth":"normal","customize_body_compare_price_color_text_hex":"#737373","customize_body_compare_price_font_size":"14px","customize_body_compare_price_font_weigth":"normal","customize_body_enabled_sale_price":0,"customize_body_sale_price_color_text_hex":"#000000","customize_body_sale_price_font_size":"14px","customize_body_sale_price_font_weigth":"normal","customize_body_discount_color_text_hex":"#737373","customize_body_discount_font_size":"14px","customize_body_discount_font_weigth":"normal","customize_body_saving_color_text_hex":"#2EA818","customize_body_saving_font_size":"14px","customize_body_saving_font_weigth":"800","customize_body_upgrade_button_background_color_hex":"#000000","customize_body_upgrade_button_text_color_hex":"#ffffff","customize_body_upgrade_button_text_transform":"uppercase","customize_body_upgrade_button_text_font_size":"14px","customize_body_upgrade_button_text_font_weigth":"700","customize_body_upgrade_button_border_radius":"3px","customize_body_upsell_background_color_hex":"#f7f8f9","customize_body_upsell_border_color_hex":"#e5e5e5","customize_body_upsell_arrows_color_hex":"#000000","customize_body_upsell_prod_title_color_text_hex":"#000000","customize_body_upsell_prod_title_font_size":"14px","customize_body_upsell_prod_title_font_weigth":"600","customize_body_upsell_prod_title_text_transform":"none","customize_body_upsell_var_title_text_color_hex":"#000000","customize_body_upsell_var_title_font_size":"14px","customize_body_upsell_var_title_font_weigth":"normal","customize_body_upsell_var_title_text_transform":"none","customize_body_upsell_price_color_text_hex":"#000000","customize_body_upsell_price_font_size":"14px","customize_body_upsell_price_font_weigth":"normal","customize_body_upsell_compare_price_color_text_hex":"#737373","customize_body_upsell_compare_price_font_size":"14px","customize_body_upsell_compare_price_font_weigth":"normal","customize_body_upsell_enabled_sale_price":0,"customize_body_upsell_sale_price_color_text_hex":"#000000","customize_body_upsell_sale_price_font_size":"14px","customize_body_upsell_sale_price_font_weigth":"normal","customize_body_upsell_var_options_color_text_hex":"#000000","customize_body_upsell_var_options_font_size":"14px","customize_body_upsell_var_options_font_weigth":"600","customize_body_upsell_var_options_text_transform":"none","customize_body_upsell_button_background_color_hex":"#000000","customize_body_upsell_button_text_color_hex":"#ffffff","customize_body_upsell_button_text_font_size":"14px","customize_body_upsell_button_text_font_weigth":"600","customize_body_upsell_button_text_transform":"uppercase","customize_body_upsell_button_border_radius":"0px","customize_body_upsell_button_hov_background_color_hex":"#000000","customize_body_upsell_button_hov_text_color_hex":"#ffffff","customize_popup_background_color_hex":"#ffffff","customize_popup_border_color_hex":"#e5e5e5","customize_popup_title_text_color_hex":"#000000","customize_popup_title_font_size":"14px","customize_popup_title_font_weigth":"600","customize_popup_title_text_transform":"none","customize_popup_price_text_color_hex":"#000000","customize_popup_price_font_size":"14px","customize_popup_price_font_weigth":"600","customize_popup_compare_price_text_color_hex":"#737373","customize_popup_compare_price_font_size":"14px","customize_popup_compare_price_font_weigth":"600","customize_popup_enabled_sale_price":0,"customize_popup_sale_price_text_color_hex":"#000000","customize_popup_sale_price_font_size":"14px","customize_popup_sale_price_font_weigth":"600","customize_popup_var_options_design":0,"customize_popup_button_background_color_hex":"#000000","customize_popup_button_text_color_hex":"#ffffff","customize_popup_button_border_radius":"0px","customize_popup_button_text_font_size":"14px","customize_popup_button_text_font_weigth":"600","customize_popup_button_text_transform":"uppercase","customize_popup_button_hov_background_color_hex":"#000000","customize_popup_button_hov_text_color_hex":"#ffffff","customize_footer_total_price_text_color_hex":"#000000","customize_footer_total_price_font_size":"16px","customize_footer_total_price_font_weigth":"normal","customize_footer_compare_price_text_color_hex":"#737373","customize_footer_compare_price_font_size":"16px","customize_footer_compare_price_font_weigth":"normal","customize_footer_discount_text_color_hex":"#737373","customize_footer_discount_font_size":"16px","customize_footer_discount_font_weigth":"normal","customize_footer_background_color_hex":"#ffffff","customize_footer_text_color_hex":"#000000","customize_footer_orig_total_price_text_color_hex":"#000000","customize_footer_orig_total_price_text_font_size":"14px","customize_footer_orig_total_price_text_font_weight":"normal","customize_footer_orig_total_price_color_hex":"#000000","customize_footer_orig_total_price_font_size":"14px","customize_footer_orig_total_price_font_weight":"normal","customize_footer_total_discount_text_color_hex":"#000000","customize_footer_total_discount_text_font_size":"14px","customize_footer_total_discount_text_font_weight":"normal","customize_footer_total_discount_color_hex":"#000000","customize_footer_total_discount_font_size":"14px","customize_footer_total_discount_font_weight":"normal","customize_footer_enabled_shipping_label":0,"customize_footer_shipping_text_label":"","customize_footer_shipping_price_label":"","customize_footer_shipping_label_text_color_hex":"#000000","customize_footer_shipping_label_text_font_size":"14px","customize_footer_shipping_label_text_font_weight":"normal","customize_footer_shipping_label_price_color_hex":"#000000","customize_footer_shipping_label_price_font_size":"14px","customize_footer_shipping_label_price_font_weight":"normal","icon":"<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 329.26933 329\" width=\"16px\" height=\"12px\"><path d=\"m194.800781 164.769531 128.210938-128.214843c8.34375-8.339844 8.34375-21.824219 0-30.164063-8.339844-8.339844-21.824219-8.339844-30.164063 0l-128.214844 128.214844-128.210937-128.214844c-8.34375-8.339844-21.824219-8.339844-30.164063 0-8.34375 8.339844-8.34375 21.824219 0 30.164063l128.210938 128.214843-128.210938 128.214844c-8.34375 8.339844-8.34375 21.824219 0 30.164063 4.15625 4.160156 9.621094 6.25 15.082032 6.25 5.460937 0 10.921875-2.089844 15.082031-6.25l128.210937-128.214844 128.214844 128.214844c4.160156 4.160156 9.621094 6.25 15.082032 6.25 5.460937 0 10.921874-2.089844 15.082031-6.25 8.34375-8.339844 8.34375-21.824219 0-30.164063zm0 0\"/></svg>"},"upsell":[],"integrations":[{"enabled_app":1,"integrations_app_key":"","integrations_app_require_key":0,"automatic":1,"integrations_app_id":3},{"enabled_app":1,"integrations_app_key":"","integrations_app_require_key":0,"automatic":1,"integrations_app_id":7},{"enabled_app":0,"integrations_app_key":"","integrations_app_require_key":0,"automatic":0,"integrations_app_id":8},{"enabled_app":0,"integrations_app_key":"","integrations_app_require_key":0,"automatic":0,"integrations_app_id":9},{"enabled_app":1,"integrations_app_key":"","integrations_app_require_key":0,"automatic":0,"integrations_app_id":11},{"enabled_app":0,"integrations_app_key":"","integrations_app_require_key":0,"automatic":0,"integrations_app_id":12},{"enabled_app":0,"integrations_app_key":"","integrations_app_require_key":1,"automatic":0,"integrations_app_id":13},{"enabled_app":0,"integrations_app_key":"","integrations_app_require_key":0,"automatic":0,"integrations_app_id":14},{"enabled_app":0,"integrations_app_key":"","integrations_app_require_key":0,"automatic":0,"integrations_app_id":15}],"position":{"cart_body_order":"[ { \"key\": \"hs-countdown\", \"label\": \"Countdown\", \"order\": 1 }, { \"key\": \"hs-announcement\", \"label\": \"Announcement\", \"order\": 2 }, { \"key\": \"hs-rewards\", \"label\": \"Rewards\", \"order\": 3 }, { \"key\": \"hs-clearAll\", \"label\": \"Clear All\", \"order\": 4 }, { \"key\": \"hs-products\", \"label\": \"Products\", \"order\": 5 }, { \"key\": \"hs-discountCode\", \"label\": \"Discount Code\", \"order\": 6}, { \"key\": \"hs-note\", \"label\": \"Note\", \"order\": 7}, { \"key\": \"hs-tiered\", \"label\": \"Tiered\", \"order\": 8}, { \"key\": \"hs-upsellAutomatic\", \"label\": \"Upsell Automatic\", \"order\": 9}, { \"key\": \"hs-upsellManually\", \"label\": \"Upsell Manually\", \"order\": 10 }, { \"key\": \"hs-upsellStatic\", \"label\": \"Upsell Static\", \"order\": 11 } ]","empty_cart_body_order":"[ { \"key\": \"hs-rewards\", \"label\": \"Rewards\", \"order\": 1 }, { \"key\": \"hs-emptyCart\", \"label\": \"Empty Cart\", \"order\": 2 }, { \"key\": \"hs-upsell\", \"label\": \"Upsell\", \"order\": 3 } ]"},"cart_bar":{"enabled_cart_bar":0,"enabled_cart_bar_home_page":0,"cart_bar_product_shopify_handle":"","cart_bar_product_shopify_title":"","cart_bar_product_shopify_originalSrc":"","cart_bar_button_text":"ADD TO CART","cart_bar_button_redirect":"no-redirect","cart_bar_show_prices_x_qty":0,"cart_bar_button_background_color_hex":"#000000","cart_bar_button_text_color_hex":"#ffffff","cart_bar_background_color_hex":"#ffffff","cart_bar_productTitle_color_hex":"#000000","cart_bar_price_color_hex":"#000000","cart_bar_comparePrice_color_hex":"#999999","cart_bar_show_mobile":1,"cart_bar_mobile_position":"1","cart_bar_mobile_hide_atc":0,"cart_bar_mobile_hide_stickybarButton":0,"cart_bar_mobile_show_full_stickybarButton":0,"cart_bar_mobile_show_productImage":1,"cart_bar_mobile_show_productTitle":1,"cart_bar_mobile_show_reviewStarts":0,"cart_bar_mobile_show_variantSelect":1,"cart_bar_mobile_show_quantitySelect":1,"cart_bar_mobile_show_price":1,"cart_bar_mobile_show_comparePrice":1,"cart_bar_mobile_positionOffset":0,"cart_bar_show_desktop":1,"cart_bar_desktop_position":"0","cart_bar_desktop_hide_atc":0,"cart_bar_desktop_hide_stickybarButton":0,"cart_bar_desktop_show_productImage":1,"cart_bar_desktop_show_productTitle":1,"cart_bar_desktop_show_reviewStars":0,"cart_bar_desktop_show_variantSelect":1,"cart_bar_desktop_show_quantitySelect":1,"cart_bar_desktop_show_price":1,"cart_bar_desktop_show_comparePrice":1,"cart_bar_desktop_positionOffset":0},"sticky_cart":{"enabled_sticky_cart":0,"sticky_cart_show_mobile":1,"sticky_cart_show_desktop":1,"sticky_cart_hide_page":1,"sticky_cart_hide_empty":0,"sticky_cart_show_countdown":1,"sticky_cart_position":"hs-bottom-right","sticky_cart_distance":"25","sticky_cart_redirect":"no-redirect","sticky_cart_icon":1,"sticky_cart_total_color_hex":"#222222","sticky_cart_total_background_color_hex":"#ffffff","sticky_cart_icon_color_hex":"#222222","sticky_cart_background_color_hex":"#cccccc","sticky_cart_countdown_color_hex":"#222222","sticky_cart_countdown_background_color_hex":"#ffffff","icon":"<svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"shopping-cart\" class=\"svg-inline--fa fa-shopping-cart fa-w-18\" role=\"img\" viewBox=\"0 0 576 512\" width=\"25\" height=\"22.22222222222222\">
3446<path fill=\"currentColor\" d=\"M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z\"/></svg>"},"quick_buy":{"enabled_quick_buy":1,"quick_buy_button_type":0,"quick_buy_button_show_mobile":1,"quick_buy_button_show_desktop":1,"quick_buy_button_show_quantity_selector":0,"quick_buy_button_size":"35","quick_buy_button_position":"hs-top-right","quick_buy_button_redirect":"no-redirect","quick_buy_button_background_color_hex":"#cccccc","quick_buy_button_icon":1,"quick_buy_button_icon_color_hex":"#ac3ce2","quick_buy_button_variants_background_color_rgb":"rgba(238,238,238,0.9)","quick_buy_button_variants_line_color_hex":"#dddddd","quick_buy_button_variants_font_size":"13px","quick_buy_button_variants_font_weight":"normal","icon":"<svg xmlns=\"http://www.w3.org/2000/svg\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"shopping-cart\" class=\"svg-inline--fa fa-shopping-cart fa-w-18\" role=\"img\" viewBox=\"0 0 576 512\" width=\"25\" height=\"22.22222222222222\"><path fill=\"currentColor\" d=\"M528.12 301.319l47.273-208C578.806 78.301 567.391 64 551.99 64H159.208l-9.166-44.81C147.758 8.021 137.93 0 126.529 0H24C10.745 0 0 10.745 0 24v16c0 13.255 10.745 24 24 24h69.883l70.248 343.435C147.325 417.1 136 435.222 136 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-15.674-6.447-29.835-16.824-40h209.647C430.447 426.165 424 440.326 424 456c0 30.928 25.072 56 56 56s56-25.072 56-56c0-22.172-12.888-41.332-31.579-50.405l5.517-24.276c3.413-15.018-8.002-29.319-23.403-29.319H218.117l-6.545-32h293.145c11.206 0 20.92-7.754 23.403-18.681z\"/></svg>"},"cart_animator":{"enabled_cart_animator":1,"cart_animator_add_cart_button":"none","cart_animator_add_cart_button_time":1,"cart_animator_sticky_bar_button":"none","cart_animator_sticky_bar_button_time":1,"cart_animator_sticky_cart_button":"none","cart_animator_sticky_cart_button_time":1,"cart_animator_quick_buy_button":"none","cart_animator_quick_buy_button_time":1,"cart_animator_checkout_button":"none","cart_animator_checkout_button_time":1},"coupon_bar":{"enabled_coupon_bar":0,"coupon_bar_timer":60,"coupon_bar_position":0,"coupon_bar_text":"FREEBIE SALE ENDS {{ COUNTDOWN }} ","coupon_bar_text_expire":"Coupon expired","coupon_bar_hours":"hours","coupon_bar_minutes":"minutes","coupon_bar_seconds":"seconds","coupon_bar_clear_offer":0,"coupon_bar_background_color_hex":"#000000","coupon_bar_font_color_hex":"#ffffff","coupon_bar_font_size":"14px","coupon_bar_text_transform":"uppercase","coupon_bar_font_weight":"700","coupon_bar_text_alignment":"center","coupon_bar_desktop_positionOffset":0,"coupon_bar_mobile_positionOffset":0},"locale":{},"token":{"auth":"e23eec90cee3bf6c7c4d9697ee381439"},"updateLanguage":1}; 3447 window.HSSLIDECART.money_html = `$10.00`; 3448 window.HSSLIDECART.money_currency_html = `$10.00 USD`; 3449 window.HSSLIDECART.shop_url = "mermaid-vemon.myshopify.com"; 3450 window.HSSLIDECART.apk = "e23eec90cee3bf6c7c4d9697ee381439"; 3451 window.HSSLIDECART.auth = "ec7e9e35d93e8d4ed5e6d626b2877234"; 3452 window.HSSLIDECART.localCountryCode = ""; 3453 try { 3454 window.HSSLIDECART.money_format = '${{amount}}'; 3455 window.HSSLIDECART.money_currency_format = '${{amount}} USD'; 3456 } catch (error) { 3457 window.HSSLIDECART.money_format = ''; 3458 window.HSSLIDECART.money_currency_format = ''; 3459 }; 3460</script>
3460<!-- END app snippet --><!-- BEGIN app snippet: hs-cart-drawer-additional-checkout --> 3461 3462 3463 3464 3465 3466 3467 3468 3469<!-- END app snippet --><!-- BEGIN app snippet: hs-product -->
3469<script id="hs-config-store"> 3470 3471 window.HSSLIDECART.SHOP = {}; 3472 window.HSSLIDECART.SHOP.secure_url = 'https://mermaidvenom.com'; 3473 window.HSSLIDECART.CART = {"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":"USD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}; 3474</script>
3474<!-- END app snippet --><!-- BEGIN app snippet: hs-cart-drawer --><link href="//cdn.shopify.com/extensions/01a0c98b-9c41-7fc1-9875-219881746b36/hs-slide-cart-drawer-665/assets/hs-sl-cart-styles.css" rel="stylesheet" type="text/css" media="all" /> 3475<link href="//cdn.shopify.com/extensions/01a0c98b-9c41-7fc1-9875-219881746b36/hs-slide-cart-drawer-665/assets/hs-swiper-bundle.min.css" rel="stylesheet" type="text/css" media="all" />
3476<script 3477 type="text/javascript" 3478 integrity="sha256-+1jhGsfZNQccvv6BwELTNLvxDrxMaZEx/5dGdHwG8sc=" 3479 crossorigin="anonymous" 3480 src="https://cdn.shopify.com/extensions/01a0c98b-9c41-7fc1-9875-219881746b36/hs-slide-cart-drawer-665/assets/hs-swiper-bundle.min.js" 3481 defer 3482></script>
vendor: 2 bytes, line 3482
3482
3483<script 3484 type="text/javascript" 3485 integrity="sha256-i6BiULu1oCCigsIJkQZcjA4ioPX4CzJ07OuOc7nenns=" 3486 crossorigin="anonymous" 3487 src="https://cdn.shopify.com/extensions/01a0c98b-9c41-7fc1-9875-219881746b36/hs-slide-cart-drawer-665/assets/hs-handlebars.min.js" 3488 defer="defer" 3489></script>
vendor: 2 bytes, line 3489
3489
3490<script 3491 type="text/javascript" 3492 integrity="sha256-F1AAEBCC/sMDbtNxYhZ++XJObfRE/6RqCoX0mtLShak=" 3493 crossorigin="anonymous" 3494 src="https://cdn.shopify.com/extensions/01a0c98b-9c41-7fc1-9875-219881746b36/hs-slide-cart-drawer-665/assets/hs-confetti.min.js" 3495 defer 3496></script>
vendor: 2 bytes, line 3496
3496
3497<script 3498 type="text/javascript" 3499 integrity="sha256-UCibPrr3SJ0Ph15TtUKV/eHIuCrflEalqFmkIKAanpY=" 3500 crossorigin="anonymous" 3501 src="https://cdn.shopify.com/extensions/01a0c98b-9c41-7fc1-9875-219881746b36/hs-slide-cart-drawer-665/assets/hs-circle-progress.js" 3502 defer 3503></script>
vendor: 2 bytes, line 3503
3503
3504<script 3505 type="text/javascript" 3506 integrity="sha256-1B90ADWXcGWR0/g5Mrb8wyHrG87dfYpaDbRl+T4m62o=" 3507 crossorigin="anonymous" 3508 src="https://cdn.shopify.com/extensions/01a0c98b-9c41-7fc1-9875-219881746b36/hs-slide-cart-drawer-665/assets/hs-additional-functions.js" 3509 defer 3510></script>
3510 3511 3512
3512<script 3513 type="text/javascript" 3514 integrity="sha256-Md4sfJuBw+KYjonkCl/7hSTxujlG3FUQ6xhWBw7bfjY=" 3515 crossorigin="anonymous" 3516 src="https://cdn.shopify.com/extensions/01a0c98b-9c41-7fc1-9875-219881746b36/hs-slide-cart-drawer-665/assets/hs-sl-cart.js" 3517 defer 3518 ></script>
3518 3519 3520<!-- END app snippet --><!-- BEGIN app snippet: hs-cart-drawer-subscriptions --><div class='hs-customer-session'><form action="/cart" method="post" style="display:none;"><label for="hs-checkout-bold">Checkout:</label><input type="submit" name="checkout" id="hs-checkout-bold" value="Check Out" /><label for="agree">Agree:</label><input type="checkbox" id="agree" checked="checked" /></form></div><!-- END app snippet --><!-- BEGIN app snippet: hs-cart-drawer-custom-css --><style type="text/css" id="hs-customCss"></style><!-- END app snippet --> 3521 3522</div><div id="shopify-block-AYkpjcWFINkF3RWlJV__1513253815146976218" class="shopify-block shopify-app-block"> 3523</div><div id="shopify-block-AQ3hNeFE1dUJ4dlA4d__5846654113244447633" class="shopify-block shopify-app-block"> 3524 3525<link href="//cdn.shopify.com/extensions/5e39e146-0368-46de-9a5c-89f7f070a322/xo-scroll-to-top-4/assets/xo-scroll2top.css" rel="stylesheet" type="text/css" media="all" /> 3526<div id="xo-scroll2top" class="xo-scroll2top xo-scroll2top--1 xo-scroll2top--right 3527 xo-scroll2top--fade "><svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" > 3528 <polygon fill=#ffffff points="396.6,352 416,331.3 256,160 96,331.3 115.3,352 256,201.5 "/> 3529 </svg></div> 3530 3531<style>.xo-scroll2top { --xo-st-bg-color:rgba(0,0,0,1);--xo-st-bg-color2:rgba(245,166,35,1); --xo-st-bd-radius:3px;--xo-st-bd-radius2:3px;--xo-st-width:38px;--xo-st-height:38px;--xo-st-scale: 1; 3532 --xo-st-textColor: rgba(0,0,0,1);--xo-st-textColor2: rgba(35,123,226,1);right: 20px;bottom: 20px; } 3533@media only screen and (min-width: 992px) {.xo-scroll2top {display: none}}</style>
3534<script type="text/javascript"> 3535const xoscroll2topInit = { 3536 id: 'xo-scroll2top', duration: 600, 3537 3538 3539 status: false }; 3540</script>
vendor: 1 bytes, line 3540
3540
3541<script src="https://cdn.shopify.com/extensions/5e39e146-0368-46de-9a5c-89f7f070a322/xo-scroll-to-top-4/assets/xo-scroll2top.js" defer="defer"></script>
3541 3542 3543 3544</div>
3544<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
3544 3545<shopify-store store-domain="https://mermaidvenom.com" country="US" language="en"></shopify-store> 3546<shopify-chat></shopify-chat> 3547</body>
3547<script src=//mermaidvenom.com/cdn/shop/t/24/assets/eosh-loadmoreAndinfinitescroll.js?v=116607951346057239491639205227 defer='defer'></script>
3547 3548 3549</html> 3550<style type="text/css"> 3551 .aliorders-bukl-action-edit { 3552 position: fixed; 3553 left: 20px; 3554 bottom: 88px; 3555 width: 60px; 3556 height: 60px; 3557 cursor: pointer; 3558 display: none; 3559 z-index: 9999; 3560 } 3561 .aliorders-bukl-action-edit > span { 3562 position: relative; 3563 display: inline-block; 3564 width: 60px; 3565 height: 60px; 3566 border-radius: 50%; 3567 } 3568 .ao__tooltip_wrap { 3569 display: none; 3570 padding: 10px 15px; 3571 position: absolute; 3572 top: 1px; 3573 left: calc(100% + 10px); 3574 font-size: 13px; 3575 border-radius: 6px; 3576 background: #242539; 3577 color: #FFF; 3578 white-space: nowrap; 3579 } 3580 .ao__tooltip_wrap.active { 3581 display: block 3582 } 3583 .ao__tooltip_wrap > span { 3584 width: 0; 3585 height: 0; 3586 border-style: solid; 3587 border-width: 10px 8px 10px 0; 3588 border-color: transparent #242539 transparent transparent; 3589 position: absolute; 3590 top: 19px; 3591 left: -8px; 3592 } 3593</style>
3594<script type="text/javascript"> 3595 document.addEventListener('DOMContentLoaded', function() { 3596 function loadScript(url, callback){ 3597 var script = document.createElement("script") 3598 script.type = "text/javascript"; 3599 if (script.readyState){ 3600 script.onreadystatechange = function(){ 3601 if (script.readyState == "loaded" || 3602 script.readyState == "complete"){ 3603 script.onreadystatechange = null; 3604 callback(); 3605 } 3606 }; 3607 } else { 3608 script.onload = function(){ 3609 callback(); 3610 }; 3611 } 3612 script.src = url; 3613 document.getElementsByTagName("head")[0].appendChild(script); 3614 } 3615 3616 let adminBarIframe = document.getElementById('admin-bar-iframe'); 3617 let checkShopStatus = function($, adminBarIframe) { 3618 let status = 0; 3619 $.ajax({ 3620 url: "https://aliorders.fireapps.io/api/shop/mermaid-vemon.myshopify.com", 3621 dataType: "json", 3622 success : function(res) { 3623 status = res.data.status; 3624 if(status == 1 && adminBarIframe != null) { 3625 $(".aliorders-bukl-action-edit").css("display", "block"); 3626 } else { 3627 $(".aliorders-bukl-action-edit").css("display", "none"); 3628 } 3629 document.getElementById("ao__icon_shop_owner").addEventListener("mouseover", function() { 3630 document.querySelector(".ao__tooltip_wrap").classList.add('active') 3631 }); 3632 3633 document.getElementById("ao__icon_shop_owner").addEventListener("mouseout", function() { 3634 document.querySelector(".ao__tooltip_wrap").classList.remove('active') 3635 }); 3636 } 3637 }); 3638 } 3639 3640 if ((typeof jQuery === "undefined") || (parseFloat(jQuery.fn.jquery) < 1.7)) { 3641 loadScript("https://code.jquery.com/jquery-3.3.1.min.js", function(){ 3642 jQuery191 = jQuery.noConflict(true); 3643 checkShopStatus(jQuery191, adminBarIframe); 3644 }); 3645 } else { 3646 checkShopStatus(jQuery, adminBarIframe); 3647 } 3648 }); 3649</script>
3649 3650<!-- Begin Shopify-Afterpay JavaScript Snippet (v1.0.1) -->
3651<script type="text/javascript"> 3652 // Liquid variables: 3653 var afterpay_product = null; 3654 var afterpay_product_variant = null; 3655 var afterpay_cart_total_price = 0; 3656</script>
3656 3657<!-- End Shopify-Afterpay JavaScript Snippet (v1.0.1) -->
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.