PageSourceSearch

https://perfectlyposh.com/pages/about

html perfectlyposh.com collected 2026-10-01 12:28:37 UTC 505,731 bytes, 6,572 lines download raw bytes

1<!doctype html>
2<html
3  
4  lang="en"
5>
6  <head>
7    <meta name="p:domain_verify" content="207bae5a35d6cb16a7402a68e4bfa570"/>
8    <meta name="facebook-domain-verification" content="weoibcsugnio79d5q6iko2cpvvu6ov" />
9<meta name="google-site-verification" content="5rZMEHWA8F7oUpA7iFeTzz0BduiClzQCrxjsZ4ZGo78" />
10	<!-- Added by APP PLAZA -->
11	
12
13	<!-- /Added by APP PLAZA --><link
14        rel="icon"
15        type="image/png"
16        href="//perfectlyposh.com/cdn/shop/files/favicon.png?crop=center&height=32&v=1778884143&width=32"
17      >
18    
19    
20
21
22<meta charset="utf-8">
23<meta
24  http-equiv="X-UA-Compatible"
25  content="IE=edge"
26>
27<meta
28  name="viewport"
29  content="width=device-width,initial-scale=1"
30>
31<meta
32  name="view-transition"
33  content="same-origin"
34>
35<meta
36  name="theme-color"
37  content=""
38>
39
40<meta
41  property="og:site_name"
42  content="Perfectly Posh"
43>
44<meta
45  property="og:url"
46  content="https://perfectlyposh.com/pages/about"
47>
48<meta
49  property="og:title"
50  content="About"
51>
52<meta
53  property="og:type"
54  content="website"
55>
56<meta
57  property="og:description"
58  content="Good. Clean. Fun. Discover naturally based skincare, bath, body, hair, and self-care products made with feel-good ingredients. Cruelty-free, USA-made, and designed to help you look good, feel amazing, and enjoy every moment of self-care."
59><meta
60    property="og:image"
61    content="http://perfectlyposh.com/cdn/shop/files/image_10fb7a76-2b0f-4d5d-b0ad-14bac2877669.png?v=1782368732"
62  >
63  <meta
64    property="og:image:secure_url"
65    content="https://perfectlyposh.com/cdn/shop/files/image_10fb7a76-2b0f-4d5d-b0ad-14bac2877669.png?v=1782368732"
66  >
67  <meta
68    property="og:image:width"
69    content="1734"
70  >
71  <meta
72    property="og:image:height"
73    content="907"
74  ><meta
75  name="twitter:card"
76  content="summary_large_image"
77>
78<meta
79  name="twitter:title"
80  content="About"
81>
82<meta
83  name="twitter:description"
84  content="Good. Clean. Fun. Discover naturally based skincare, bath, body, hair, and self-care products made with feel-good ingredients. Cruelty-free, USA-made, and designed to help you look good, feel amazing, and enjoy every moment of self-care."
85>
86
87<title>
88  About
89 &ndash; Perfectly Posh</title>
90
91<link
92  rel="canonical"
93  href="https://perfectlyposh.com/pages/about"
94>
95
96
97<link href="//perfectlyposh.com/cdn/shop/t/1/assets/overflow-list.css?v=16727044177065489451777514867" as="style" rel="preload">
98<link href="//perfectlyposh.com/cdn/shop/t/1/assets/base.css?v=110558660533795380521777514867" rel="stylesheet" type="text/css" media="all" />
99
100<link
101    rel="preload"
102    as="font"
103    href="//perfectlyposh.com/cdn/fonts/inter/inter_n4.b2a3f24c19b4de56e8871f609e73ca7f6d2e2bb9.woff2"
104    type="font/woff2"
105    crossorigin
106    fetchpriority="low"
107  ><link
108    rel="preload"
109    as="font"
110    href="//perfectlyposh.com/cdn/fonts/inter/inter_n5.d7101d5e168594dd06f56f290dd759fba5431d97.woff2"
111    type="font/woff2"
112    crossorigin
113    fetchpriority="low"
114  ><link
115    rel="preload"
116    as="font"
117    href="//perfectlyposh.com/cdn/fonts/inter/inter_n7.02711e6b374660cfc7915d1afc1c204e633421e4.woff2"
118    type="font/woff2"
119    crossorigin
120    fetchpriority="low"
121  ><link
122    rel="preload"
123    as="font"
124    href="//perfectlyposh.com/cdn/fonts/inter/inter_n7.02711e6b374660cfc7915d1afc1c204e633421e4.woff2"
125    type="font/woff2"
126    crossorigin
127    fetchpriority="low"
128  >
129
130
131<script async crossorigin fetchpriority="high" src="/cdn/shopifycloud/importmap-polyfill/es-modules-shim.2.4.0.js"></script>
vendor: 1 bytes, line 131
131
132<script type="importmap">
133  {
134    "imports": {
135      "@theme/overflow-list": "//perfectlyposh.com/cdn/shop/t/1/assets/overflow-list.js?v=46858356770684902511777514867",
136      "@theme/product-title": "//perfectlyposh.com/cdn/shop/t/1/assets/product-title-truncation.js?v=81744426891537421781777514867",
137      "@theme/component": "//perfectlyposh.com/cdn/shop/t/1/assets/component.js?v=184240237101443119871777514867",
138      "@theme/dialog": "//perfectlyposh.com/cdn/shop/t/1/assets/dialog.js?v=150888536568694194021777514867",
139      "@theme/events": "//perfectlyposh.com/cdn/shop/t/1/assets/events.js?v=1118589085892804011777514867",
140      "@theme/focus": "//perfectlyposh.com/cdn/shop/t/1/assets/focus.js?v=60436577539430446401777514867",
141      "@theme/morph": "//perfectlyposh.com/cdn/shop/t/1/assets/morph.js?v=104045809772310330131777514867",
142      "@theme/paginated-list": "//perfectlyposh.com/cdn/shop/t/1/assets/paginated-list.js?v=95298315036233333871777514867",
143      "@theme/performance": "//perfectlyposh.com/cdn/shop/t/1/assets/performance.js?v=171015751390534793081777514867",
144      "@theme/product-form": "//perfectlyposh.com/cdn/shop/t/1/assets/product-form.js?v=142170751179338062901777514867",
145      "@theme/recently-viewed-products": "//perfectlyposh.com/cdn/shop/t/1/assets/recently-viewed-products.js?v=94729125001750262651777514867",
146      "@theme/scrolling": "//perfectlyposh.com/cdn/shop/t/1/assets/scrolling.js?v=162288454571026455011777514867",
147      "@theme/section-renderer": "//perfectlyposh.com/cdn/shop/t/1/assets/section-renderer.js?v=123311117485513785771777514867",
148      "@theme/section-hydration": "//perfectlyposh.com/cdn/shop/t/1/assets/section-hydration.js?v=108434990705342316311777514867",
149      "@theme/money-formatting": "//perfectlyposh.com/cdn/shop/t/1/assets/money-formatting.js?v=182191346160333327151777514867",
150      "@theme/utilities": "//perfectlyposh.com/cdn/shop/t/1/assets/utilities.js?v=28506172887375975941777514867",
151      "@theme/variant-picker": "//perfectlyposh.com/cdn/shop/t/1/assets/variant-picker.js?v=24924540959574313291777514867",
152      "@theme/media-gallery": "//perfectlyposh.com/cdn/shop/t/1/assets/media-gallery.js?v=14624021005636302161777514867",
153      "@theme/quick-add": "//perfectlyposh.com/cdn/shop/t/1/assets/quick-add.js?v=114575661933533593881777514867",
154      "@theme/paginated-list-aspect-ratio": "//perfectlyposh.com/cdn/shop/t/1/assets/paginated-list-aspect-ratio.js?v=25254270272143792451777514867",
155      "@theme/popover-polyfill": "//perfectlyposh.com/cdn/shop/t/1/assets/popover-polyfill.js?v=119029313658895111201777514867",
156      "@theme/component-quantity-selector": "//perfectlyposh.com/cdn/shop/t/1/assets/component-quantity-selector.js?v=67906657287482036641777514867",
157      "@theme/comparison-slider": "//perfectlyposh.com/cdn/shop/t/1/assets/comparison-slider.js?v=106705562947035711941777514867",
158      "@theme/sticky-add-to-cart": "//perfectlyposh.com/cdn/shop/t/1/assets/sticky-add-to-cart.js?v=48956925339276737091777514867",
159      "@theme/fly-to-cart": "//perfectlyposh.com/cdn/shop/t/1/assets/fly-to-cart.js?v=48483246440248933081777514867"
160    }
161  }
162</script>
162
163
164<script
165  src="//perfectlyposh.com/cdn/shop/t/1/assets/view-transitions.js?v=7106414069516106341777514867"
166  async
167  
168></script>
168
169
170<link
171  rel="modulepreload"
172  href="//perfectlyposh.com/cdn/shop/t/1/assets/utilities.js?v=28506172887375975941777514867"
173  fetchpriority="low"
174>
175<link
176  rel="modulepreload"
177  href="//perfectlyposh.com/cdn/shop/t/1/assets/component.js?v=184240237101443119871777514867"
178  fetchpriority="low"
179>
180<link
181  rel="modulepreload"
182  href="//perfectlyposh.com/cdn/shop/t/1/assets/section-renderer.js?v=123311117485513785771777514867"
183  fetchpriority="low"
184>
185<link
186  rel="modulepreload"
187  href="//perfectlyposh.com/cdn/shop/t/1/assets/section-hydration.js?v=108434990705342316311777514867"
188  fetchpriority="low"
189>
190<link
191  rel="modulepreload"
192  href="//perfectlyposh.com/cdn/shop/t/1/assets/morph.js?v=104045809772310330131777514867"
193  fetchpriority="low"
194>
195
196
197
198<link
199  rel="modulepreload"
200  href="//perfectlyposh.com/cdn/shop/t/1/assets/focus.js?v=60436577539430446401777514867"
201  fetchpriority="low"
202>
203<link
204  rel="modulepreload"
205  href="//perfectlyposh.com/cdn/shop/t/1/assets/recently-viewed-products.js?v=94729125001750262651777514867"
206  fetchpriority="low"
207>
208<link
209  rel="modulepreload"
210  href="//perfectlyposh.com/cdn/shop/t/1/assets/scrolling.js?v=162288454571026455011777514867"
211  fetchpriority="low"
212>
213<link
214  rel="modulepreload"
215  href="//perfectlyposh.com/cdn/shop/t/1/assets/events.js?v=1118589085892804011777514867"
216  fetchpriority="low"
217>
218<script
219  src="//perfectlyposh.com/cdn/shop/t/1/assets/popover-polyfill.js?v=119029313658895111201777514867"
220  type="module"
221  fetchpriority="low"
222></script>
vendor: 1 bytes, line 222
222
223<script
224  src="//perfectlyposh.com/cdn/shop/t/1/assets/overflow-list.js?v=46858356770684902511777514867"
225  type="module"
226  fetchpriority="low"
227></script>
vendor: 1 bytes, line 227
227
228<script
229  src="//perfectlyposh.com/cdn/shop/t/1/assets/quick-add.js?v=114575661933533593881777514867"
230  type="module"
231  fetchpriority="low"
232></script>
232
233
234  
234<script
235    src="//perfectlyposh.com/cdn/shop/t/1/assets/cart-discount.js?v=107077853990124422021777514867"
236    type="module"
237    fetchpriority="low"
238  ></script>
238
239
240
241<script
242  src="//perfectlyposh.com/cdn/shop/t/1/assets/dialog.js?v=150888536568694194021777514867"
243  type="module"
244  fetchpriority="low"
245></script>
vendor: 1 bytes, line 245
245
246<script
247  src="//perfectlyposh.com/cdn/shop/t/1/assets/variant-picker.js?v=24924540959574313291777514867"
248  type="module"
249  fetchpriority="low"
250></script>
vendor: 1 bytes, line 250
250
251<script
252  src="//perfectlyposh.com/cdn/shop/t/1/assets/product-card.js?v=28695665944407642501777514867"
253  type="module"
254  fetchpriority="low"
255></script>
vendor: 1 bytes, line 255
255
256<script
257  src="//perfectlyposh.com/cdn/shop/t/1/assets/product-form.js?v=142170751179338062901777514867"
258  type="module"
259  fetchpriority="low"
260></script>
vendor: 1 bytes, line 260
260
261<script
262  src="//perfectlyposh.com/cdn/shop/t/1/assets/fly-to-cart.js?v=48483246440248933081777514867"
263  type="module"
264  fetchpriority="low"
265></script>
vendor: 1 bytes, line 265
265
266<script
267  src="//perfectlyposh.com/cdn/shop/t/1/assets/accordion-custom.js?v=97588419883090888471777514867"
268  type="module"
269  fetchpriority="low"
270></script>
vendor: 1 bytes, line 270
270
271<script
272  src="//perfectlyposh.com/cdn/shop/t/1/assets/media.js?v=37825095869491791421777514867"
273  type="module"
274  fetchpriority="low"
275></script>
vendor: 1 bytes, line 275
275
276<script
277  src="//perfectlyposh.com/cdn/shop/t/1/assets/product-price.js?v=83480980452100801711777514867"
278  type="module"
279  fetchpriority="low"
280></script>
vendor: 1 bytes, line 280
280
281<script
282  src="//perfectlyposh.com/cdn/shop/t/1/assets/product-sku.js?v=121804655373531320511777514867"
283  type="module"
284  fetchpriority="low"
285></script>
vendor: 1 bytes, line 285
285
286<script
287  src="//perfectlyposh.com/cdn/shop/t/1/assets/product-title-truncation.js?v=81744426891537421781777514867"
288  type="module"
289  fetchpriority="low"
290></script>
vendor: 1 bytes, line 290
290
291<script
292  src="//perfectlyposh.com/cdn/shop/t/1/assets/product-inventory.js?v=81520546963552472391777514867"
293  type="module"
294  fetchpriority="low"
295></script>
vendor: 1 bytes, line 295
295
296<script
297  src="//perfectlyposh.com/cdn/shop/t/1/assets/show-more.js?v=94563802205717136101777514867"
298  type="module"
299  fetchpriority="low"
300></script>
vendor: 1 bytes, line 300
300
301<script
302  src="//perfectlyposh.com/cdn/shop/t/1/assets/slideshow.js?v=168726587398279102001777514867"
303  type="module"
304  fetchpriority="low"
305></script>
vendor: 1 bytes, line 305
305
306<script
307  src="//perfectlyposh.com/cdn/shop/t/1/assets/layered-slideshow.js?v=30135417790894624731777514867"
308  type="module"
309  fetchpriority="low"
310></script>
vendor: 1 bytes, line 310
310
311<script
312  src="//perfectlyposh.com/cdn/shop/t/1/assets/anchored-popover.js?v=95953304814728754461777514867"
313  type="module"
314  fetchpriority="low"
315></script>
vendor: 1 bytes, line 315
315
316<script
317  src="//perfectlyposh.com/cdn/shop/t/1/assets/floating-panel.js?v=151277338116891310371777514867"
318  type="module"
319  fetchpriority="low"
320></script>
vendor: 1 bytes, line 320
320
321<script
322  src="//perfectlyposh.com/cdn/shop/t/1/assets/video-background.js?v=25237992823806706551777514867"
323  type="module"
324  fetchpriority="low"
325></script>
vendor: 1 bytes, line 325
325
326<script
327  src="//perfectlyposh.com/cdn/shop/t/1/assets/component-quantity-selector.js?v=67906657287482036641777514867"
328  type="module"
329  fetchpriority="low"
330></script>
vendor: 1 bytes, line 330
330
331<script
332  src="//perfectlyposh.com/cdn/shop/t/1/assets/media-gallery.js?v=14624021005636302161777514867"
333  type="module"
334  fetchpriority="low"
335></script>
vendor: 1 bytes, line 335
335
336<script
337  src="//perfectlyposh.com/cdn/shop/t/1/assets/rte-formatter.js?v=40306132146590816021777514867"
338  type="module"
339  fetchpriority="low"
340></script>
vendor: 1 bytes, line 340
340
341<script
342  src="//perfectlyposh.com/cdn/shop/t/1/assets/volume-pricing.js?v=15442793518842484731777514867"
343  type="module"
344  fetchpriority="low"
345></script>
vendor: 1 bytes, line 345
345
346<script
347  src="//perfectlyposh.com/cdn/shop/t/1/assets/price-per-item.js?v=144512917617120124431777514867"
348  type="module"
349  fetchpriority="low"
350></script>
vendor: 1 bytes, line 350
350
351<script
352  src="//perfectlyposh.com/cdn/shop/t/1/assets/volume-pricing-info.js?v=94479640769665442661777514867"
353  type="module"
354  fetchpriority="low"
355></script>
355
356
357
358
359
360
361<script
362  src="//perfectlyposh.com/cdn/shop/t/1/assets/auto-close-details.js?v=58350291535404441581777514867"
363  defer="defer"
364></script>
364
365
366<script>
367  const Theme = {
368    translations: {
369      placeholder_image: `Placeholder image`,
370      added: `Added`,
371      recipient_form_fields_visible: `Recipient form fields are now visible`,
372      recipient_form_fields_hidden: `Recipient form fields are now hidden`,
373      recipient_form_error: `There was an error with the form submission`,
374      items_added_to_cart_one: `1 item added to cart`,
375      items_added_to_cart_other: `{{ count }} items added to cart`,
376      cart_count: `Total items in cart`,
377    },
378    routes: {
379      cart_add_url: '/cart/add.js',
380      cart_change_url: '/cart/change',
381      cart_update_url: '/cart/update',
382      cart_url: '/cart',
383      predictive_search_url: '/search/suggest',
384      search_url: '/search',
385    },
386    template: {
387      name: 'page.pf-258e770a',
388    },
389  };
390</script>
390
391<style data-shopify>
392@font-face {
393  font-family: Inter;
394  font-weight: 400;
395  font-style: normal;
396  font-display: swap;
397  src: url("//perfectlyposh.com/cdn/fonts/inter/inter_n4.b2a3f24c19b4de56e8871f609e73ca7f6d2e2bb9.woff2") format("woff2"),
398       url("//perfectlyposh.com/cdn/fonts/inter/inter_n4.af8052d517e0c9ffac7b814872cecc27ae1fa132.woff") format("woff");
399}
400@font-face {
401  font-family: Inter;
402  font-weight: 700;
403  font-style: normal;
404  font-display: swap;
405  src: url("//perfectlyposh.com/cdn/fonts/inter/inter_n7.02711e6b374660cfc7915d1afc1c204e633421e4.woff2") format("woff2"),
406       url("//perfectlyposh.com/cdn/fonts/inter/inter_n7.6dab87426f6b8813070abd79972ceaf2f8d3b012.woff") format("woff");
407}
408@font-face {
409  font-family: Inter;
410  font-weight: 400;
411  font-style: italic;
412  font-display: swap;
413  src: url("//perfectlyposh.com/cdn/fonts/inter/inter_i4.feae1981dda792ab80d117249d9c7e0f1017e5b3.woff2") format("woff2"),
414       url("//perfectlyposh.com/cdn/fonts/inter/inter_i4.62773b7113d5e5f02c71486623cf828884c85c6e.woff") format("woff");
415}
416@font-face {
417  font-family: Inter;
418  font-weight: 700;
419  font-style: italic;
420  font-display: swap;
421  src: url("//perfectlyposh.com/cdn/fonts/inter/inter_i7.b377bcd4cc0f160622a22d638ae7e2cd9b86ea4c.woff2") format("woff2"),
422       url("//perfectlyposh.com/cdn/fonts/inter/inter_i7.7c69a6a34e3bb44fcf6f975857e13b9a9b25beb4.woff") format("woff");
423}
424@font-face {
425  font-family: Inter;
426  font-weight: 500;
427  font-style: normal;
428  font-display: swap;
429  src: url("//perfectlyposh.com/cdn/fonts/inter/inter_n5.d7101d5e168594dd06f56f290dd759fba5431d97.woff2") format("woff2"),
430       url("//perfectlyposh.com/cdn/fonts/inter/inter_n5.5332a76bbd27da00474c136abb1ca3cbbf259068.woff") format("woff");
431}
432@font-face {
433  font-family: Inter;
434  font-weight: 500;
435  font-style: italic;
436  font-display: swap;
437  src: url("//perfectlyposh.com/cdn/fonts/inter/inter_i5.4474f48e6ab2b1e01aa2b6d942dd27fa24f2d99f.woff2") format("woff2"),
438       url("//perfectlyposh.com/cdn/fonts/inter/inter_i5.493dbd6ee8e49f4ad722ebb68d92f201af2c2f56.woff") format("woff");
439}
440
441
442  :root {
443    /* Page Layout */
444    --sidebar-width: 25rem;
445    --narrow-content-width: 36rem;
446    --normal-content-width: 42rem;
447    --wide-content-width: 46rem;
448    --narrow-page-width: 90rem;
449    --normal-page-width: 120rem;
450    --wide-page-width: 150rem;
451
452    /* Section Heights */
453    --section-height-small: 15rem;
454    --section-height-medium: 25rem;
455    --section-height-large: 35rem;
456
457    @media screen and (min-width: 40em) {
458      --section-height-small: 40svh;
459      --section-height-medium: 55svh;
460      --section-height-large: 70svh;
461    }
462
463    @media screen and (min-width: 60em) {
464      --section-height-small: 50svh;
465      --section-height-medium: 65svh;
466      --section-height-large: 80svh;
467    }
468
469    /* Letter spacing */
470    --letter-spacing-sm: 0.06em;
471    --letter-spacing-md: 0.13em;
472
473    /* Font families */
474    --font-body--family: Inter, sans-serif;
475    --font-body--style: normal;
476    --font-body--weight: 400;
477    --font-subheading--family: Inter, sans-serif;
478    --font-subheading--style: normal;
479    --font-subheading--weight: 500;
480    --font-heading--family: Inter, sans-serif;
481    --font-heading--style: normal;
482    --font-heading--weight: 700;
483    --font-accent--family: Inter, sans-serif;
484    --font-accent--style: normal;
485    --font-accent--weight: 700;
486
487    /* Margin sizes */
488    --font-heading--spacing: 0.25em;
489    --font-h1--spacing: var(--font-heading--spacing);
490    --font-h2--spacing: var(--font-heading--spacing);
491    --font-h3--spacing: var(--font-heading--spacing);
492    --font-h4--spacing: var(--font-heading--spacing);
493    --font-h5--spacing: var(--font-heading--spacing);
494    --font-h6--spacing: var(--font-heading--spacing);
495    --font-paragraph--spacing: 0.5em;
496
497    /* Heading colors */
498    --font-h1--color: var(--color-foreground-heading);
499    --font-h2--color: var(--color-foreground-heading);
500    --font-h3--color: var(--color-foreground-heading);
501    --font-h4--color: var(--color-foreground-heading);
502    --font-h5--color: var(--color-foreground-heading);
503    --font-h6--color: var(--color-foreground-heading);
504
505    /** Z-Index / Layering */
506    --layer-section-background: -2;
507    --layer-lowest: -1;
508    --layer-base: 0;
509    --layer-flat: 1;
510    --layer-raised: 2;
511    --layer-heightened: 4;
512    --layer-sticky: 8;
513    --layer-window-overlay: 10;
514    --layer-header-menu: 12;
515    --layer-overlay: 16;
516    --layer-menu-drawer: 18;
517    --layer-temporary: 20;
518
519    /* Max-width / Measure */
520    --max-width--body-normal: 32.5em;
521    --max-width--body-narrow: 22.75em;
522
523    --max-width--heading-normal: 32.5em;
524    --max-width--heading-narrow: 19.5em;
525
526    --max-width--display-normal: 13em;
527    --max-width--display-narrow: 9.75em;
528    --max-width--display-tight: 3.25em;
529
530    /* Letter-spacing / Tracking */
531    --letter-spacing--display-tight: -0.03em;
532    --letter-spacing--display-normal: 0em;
533    --letter-spacing--display-loose: 0.03em;
534
535    --letter-spacing--heading-tight: -0.03em;
536    --letter-spacing--heading-normal: 0em;
537    --letter-spacing--heading-loose: 0.03em;
538
539    --letter-spacing--body-tight: -0.03em;
540    --letter-spacing--body-normal: 0em;
541    --letter-spacing--body-loose: 0.03em;
542
543    /* Line height / Leading */
544    --line-height: 1;
545
546    --line-height--display-tight: 1;
547    --line-height--display-normal: 1.1;
548    --line-height--display-loose: 1.2;
549
550    --line-height--heading-tight: 1.15;
551    --line-height--heading-normal: 1.25;
552    --line-height--heading-loose: 1.35;
553
554    --line-height--body-tight: 1.2;
555    --line-height--body-normal: 1.4;
556    --line-height--body-loose: 1.6;
557
558    /* Typography presets */
559    --font-size--paragraph: 0.875rem;--font-size--h1: clamp(3.0rem, 5.6vw, 3.5rem);--font-size--h2: clamp(2.25rem, 4.8vw, 3.0rem);--font-size--h3: 2.0rem;--font-size--h4: 1.5rem;--font-size--h5: 0.875rem;--font-size--h6: 0.75rem;--font-paragraph--weight: 400;--font-paragraph--letter-spacing: var(--letter-spacing--body-normal);--font-paragraph--size: var(--font-size--paragraph);--font-paragraph--family: var(--font-body--family);--font-paragraph--style: var(--font-body--style);--font-paragraph--case: ;--font-paragraph--line-height: var(--line-height--body-loose);--font-h1--weight: var(--font-heading--weight);--font-h1--letter-spacing: var(--letter-spacing--heading-normal);--font-h1--size: var(--font-size--h1);--font-h1--family: var(--font-heading--family);--font-h1--style: var(--font-heading--style);--font-h1--case: none;--font-h1--line-height: var(--line-height--display-tight);--font-h2--weight: var(--font-heading--weight);--font-h2--letter-spacing: var(--letter-spacing--heading-normal);--font-h2--size: var(--font-size--h2);--font-h2--family: var(--font-heading--family);--font-h2--style: var(--font-heading--style);--font-h2--case: none;--font-h2--line-height: var(--line-height--display-tight);--font-h3--weight: var(--font-heading--weight);--font-h3--letter-spacing: var(--letter-spacing--heading-normal);--font-h3--size: var(--font-size--h3);--font-h3--family: var(--font-heading--family);--font-h3--style: var(--font-heading--style);--font-h3--case: none;--font-h3--line-height: var(--line-height--display-normal);--font-h4--weight: var(--font-heading--weight);--font-h4--letter-spacing: var(--letter-spacing--heading-normal);--font-h4--size: var(--font-size--h4);--font-h4--family: var(--font-heading--family);--font-h4--style: var(--font-heading--style);--font-h4--case: none;--font-h4--line-height: var(--line-height--display-tight);--font-h5--weight: var(--font-subheading--weight);--font-h5--letter-spacing: var(--letter-spacing--heading-normal);--font-h5--size: var(--font-size--h5);--font-h5--family: var(--font-subheading--family);--font-h5--style: var(--font-subheading--style);--font-h5--case: none;--font-h5--line-height: var(--line-height--display-loose);--font-h6--weight: var(--font-subheading--weight);--font-h6--letter-spacing: var(--letter-spacing--heading-normal);--font-h6--size: var(--font-size--h6);--font-h6--family: var(--font-subheading--family);--font-h6--style: var(--font-subheading--style);--font-h6--case: none;--font-h6--line-height: var(--line-height--display-loose);
560
561    /* Hardcoded font sizes */
562    --font-size--3xs: 0.625rem;
563    --font-size--2xs: 0.75rem;
564    --font-size--xs: 0.8125rem;
565    --font-size--sm: 0.875rem;
566    --font-size--md: 1rem;
567    --font-size--lg: 1.125rem;
568    --font-size--xl: 1.25rem;
569    --font-size--2xl: 1.5rem;
570    --font-size--3xl: 2rem;
571    --font-size--4xl: 2.5rem;
572    --font-size--5xl: 3rem;
573    --font-size--6xl: 3.5rem;
574
575    /* Menu font sizes */
576    --menu-font-sm--size: 0.875rem;
577    --menu-font-sm--line-height: calc(1.1 + 0.5 * min(16 / 14));
578    --menu-font-md--size: 1rem;
579    --menu-font-md--line-height: calc(1.1 + 0.5 * min(16 / 16));
580    --menu-font-lg--size: 1.125rem;
581    --menu-font-lg--line-height: calc(1.1 + 0.5 * min(16 / 18));
582    --menu-font-xl--size: 1.25rem;
583    --menu-font-xl--line-height: calc(1.1 + 0.5 * min(16 / 20));
584    --menu-font-2xl--size: 1.75rem;
585    --menu-font-2xl--line-height: calc(1.1 + 0.5 * min(16 / 28));
586
587    /* Colors */
588    --color-error: #8B0000;
589    --color-success: #006400;
590    --color-white: #FFFFFF;
591    --color-white-rgb: 255 255 255;
592    --color-black: #000000;
593    --color-instock: #3ED660;
594    --color-lowstock: #EE9441;
595    --color-outofstock: #C8C8C8;
596
597    /* Opacity */
598    --opacity-5: 0.05;
599    --opacity-8: 0.08;
600    --opacity-10: 0.1;
601    --opacity-15: 0.15;
602    --opacity-20: 0.2;
603    --opacity-25: 0.25;
604    --opacity-30: 0.3;
605    --opacity-40: 0.4;
606    --opacity-50: 0.5;
607    --opacity-60: 0.6;
608    --opacity-70: 0.7;
609    --opacity-80: 0.8;
610    --opacity-85: 0.85;
611    --opacity-90: 0.9;
612    --opacity-subdued-text: var(--opacity-70);
613
614    --shadow-button: 0 2px 3px rgb(0 0 0 / 20%);
615    --gradient-image-overlay: linear-gradient(to top, rgb(0 0 0 / 0.5), transparent);
616
617    /* Spacing */
618    --margin-3xs: 0.125rem;
619    --margin-2xs: 0.3rem;
620    --margin-xs: 0.5rem;
621    --margin-sm: 0.7rem;
622    --margin-md: 0.8rem;
623    --margin-lg: 1rem;
624    --margin-xl: 1.25rem;
625    --margin-2xl: 1.5rem;
626    --margin-3xl: 1.75rem;
627    --margin-4xl: 2rem;
628    --margin-5xl: 3rem;
629    --margin-6xl: 5rem;
630
631    --scroll-margin: 50px;
632
633    --padding-3xs: 0.125rem;
634    --padding-2xs: 0.25rem;
635    --padding-xs: 0.5rem;
636    --padding-sm: 0.7rem;
637    --padding-md: 0.8rem;
638    --padding-lg: 1rem;
639    --padding-xl: 1.25rem;
640    --padding-2xl: 1.5rem;
641    --padding-3xl: 1.75rem;
642    --padding-4xl: 2rem;
643    --padding-5xl: 3rem;
644    --padding-6xl: 4rem;
645
646    --gap-3xs: 0.125rem;
647    --gap-2xs: 0.3rem;
648    --gap-xs: 0.5rem;
649    --gap-sm: 0.7rem;
650    --gap-md: 0.9rem;
651    --gap-lg: 1rem;
652    --gap-xl: 1.25rem;
653    --gap-2xl: 2rem;
654    --gap-3xl: 3rem;
655
656    --spacing-scale-sm: 0.6;
657    --spacing-scale-md: 0.7;
658    --spacing-scale-default: 1.0;
659
660    /* Checkout buttons gap */
661    --checkout-button-gap: 10px;
662
663    /* Borders */
664    --style-border-width: 1px;
665    --style-border-radius-xs: 0.2rem;
666    --style-border-radius-sm: 0.6rem;
667    --style-border-radius-md: 0.8rem;
668    --style-border-radius-50: 50%;
669    --style-border-radius-lg: 1rem;
670    --style-border-radius-pills: 40px;
671    --style-border-radius-inputs: 4px;
672    --style-border-radius-buttons-primary: 14px;
673    --style-border-radius-buttons-secondary: 14px;
674    --style-border-width-primary: 0px;
675    --style-border-width-secondary: 1px;
676    --style-border-width-inputs: 1px;
677    --style-border-radius-popover: 14px;
678    --style-border-popover: 1px none rgb(var(--color-border-rgb) / 50%);
679    --style-border-drawer: 1px none rgb(var(--color-border-rgb) / 50%);
680    --style-border-swatch-opacity: 10%;
681    --style-border-swatch-width: 1px;
682    --style-border-swatch-style: solid;
683
684    /* Animation */
685    --ease-out-cubic: cubic-bezier(0.33, 1, 0.68, 1);
686    --ease-out-quad: cubic-bezier(0.32, 0.72, 0, 1);
687    --ease-in-out-quad: cubic-bezier(0.455, 0.03, 0.515, 0.955);
688    --animation-speed-fast: 0.0625s;
689    --animation-speed: 0.125s;
690    --animation-speed-slow: 0.2s;
691    --animation-speed-medium: 0.15s;
692    --animation-easing: ease-in-out;
693    --animation-slideshow-easing: cubic-bezier(0.4, 0, 0.2, 1);
694    --drawer-animation-speed: 0.2s;
695    --animation-values-slow: var(--animation-speed-slow) var(--animation-easing);
696    --animation-values: var(--animation-speed) var(--animation-easing);
697    --animation-values-fast: var(--animation-speed-fast) var(--animation-easing);
698    --animation-values-allow-discrete: var(--animation-speed) var(--animation-easing) allow-discrete;
699    --animation-timing-hover: cubic-bezier(0.25, 0.46, 0.45, 0.94);
700    --animation-timing-active: cubic-bezier(0.5, 0, 0.75, 0);
701    --animation-timing-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
702    --animation-timing-default: cubic-bezier(0, 0, 0.2, 1);
703    --animation-timing-fade-in: cubic-bezier(0.16, 1, 0.3, 1);
704    --animation-timing-fade-out: cubic-bezier(0.4, 0, 0.2, 1);
705    /* Spring definitions suffixed with perceptual duration (d<ms>) and bounce (b<%>)*/
706    --spring-d300-b0-easing: linear(0, 0.0033 0.81%, 0.027 2.42%, 0.0916 4.84%, 0.4745 15.32%, 0.6422 20.97%, 0.7175, 0.7789, 0.8283 30.64%, 0.876, 0.9111 38.71%, 0.941, 0.9611 48.39%, 0.9707, 0.978 54.84%, 0.9885 62.1%, 0.9949 70.97%, 0.9982 82.26%, 0.9997 100%);
707    --spring-d300-b0-duration: 0.4980s;
708    --spring-d280-b0-easing: linear(0, 0.0044, 0.0164 1.85%, 0.085 4.63%, 0.4571 14.81%, 0.575 18.52%, 0.6505, 0.7148 24.07%, 0.7849, 0.8393, 0.8809 35.18%, 0.9189, 0.9453 44.44%, 0.9662, 0.9793 55.55%, 0.9894 62.95%, 0.995 71.28%, 0.9982 82.39%, 0.9997 99.98%);
709    --spring-d280-b0-duration: 0.4648s;
710    --spring-d260-b0-easing: linear(0, 0.0058, 0.0216 2.15%, 0.0748 4.29%, 0.4646 15.03%, 0.5673, 0.655, 0.7279, 0.7872, 0.8349, 0.8727 34.36%, 0.9107, 0.9379 42.95%, 0.9609 48.31%, 0.9778 54.76%, 0.9887 62.27%, 0.9948 70.86%, 0.9983 82.67%, 0.9997 99.85%);
711    --spring-d260-b0-duration: 0.4316s;
712    --spring-d220-b0-easing: linear(
713      0,
714      0.0093 1.37%,
715      0.0696 4.12%,
716      0.4667 15.09%,
717      0.6322 20.58%,
718      0.6986 23.32%,
719      0.7793 27.44%,
720      0.8219 30.18%,
721      0.8721,
722      0.9089 38.42%,
723      0.9427,
724      0.9644,
725      0.978 54.88%,
726      0.9881 61.74%,
727      0.9944 69.97%,
728      0.998 80.95%,
729      0.9996 98.78%
730    );
731    --spring-d220-b0-duration: 0.3818s;
732    --spring-d180-b0-easing: linear(0, 0.0234, 0.0805 4.48%, 0.4865 15.68%, 0.6211 20.16%, 0.7696 26.88%, 0.8064 29.12%, 0.8646, 0.9063, 0.9358, 0.9563 47.04%, 0.9757, 0.9867 60.48%, 0.9941 69.44%, 0.9979 80.64%, 0.9996 98.56%);
733    --spring-d180-b0-duration: 0.2988s;
734
735    /* View transitions */
736    /* View transition old */
737    --view-transition-old-main-content: var(--animation-speed) var(--animation-easing) both fadeOut;
738
739    /* View transition new */
740    --view-transition-new-main-content: var(--animation-speed) var(--animation-easing) both fadeIn, var(--animation-speed) var(--animation-easing) both slideInTopViewTransition;
741
742    /* Focus */
743    --focus-outline-width: 0.09375rem;
744    --focus-outline-offset: 0.2em;
745
746    /* Badges */
747    --badge-blob-padding-block: 1px;
748    --badge-blob-padding-inline: 12px 8px;
749    --badge-rectangle-padding-block: 1px;
750    --badge-rectangle-padding-inline: 6px;
751    @media screen and (min-width: 750px) {
752      --badge-blob-padding-block: 4px;
753      --badge-blob-padding-inline: 16px 12px;
754      --badge-rectangle-padding-block: 4px;
755      --badge-rectangle-padding-inline: 10px;
756    }
757
758    /* Icons */
759    --icon-size-2xs: 0.6rem;
760    --icon-size-xs: 0.85rem;
761    --icon-size-sm: 1.25rem;
762    --icon-size-md: 1.375rem;
763    --icon-size-lg: 1.5rem;
764    --icon-stroke-width: 1.5px;
765
766    /* Input */
767    --input-email-min-width: 200px;
768    --input-search-max-width: 650px;
769    --input-padding-y: 0.8rem;
770    --input-padding-x: 0.8rem;
771    --input-padding: var(--input-padding-y) var(--input-padding-x);
772    --input-box-shadow-width: var(--style-border-width-inputs);
773    --input-box-shadow: 0 0 0 var(--input-box-shadow-width) var(--color-input-border);
774    --input-box-shadow-focus: 0 0 0 calc(var(--input-box-shadow-width) + 0.5px) var(--color-input-border);
775    --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
776    --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5));
777    --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
778    --input-textarea-min-height: 55px;
779
780    /* Checkbox */
781    --checkbox-size: 22px;
782    --checkbox-border-radius: 7px;
783    --checkbox-border: 1px solid rgb(var(--color-foreground-rgb) / var(--opacity-35-55));
784    --checkbox-label-padding: 8px;
785
786    @media screen and (min-width: 750px) {
787      --checkbox-size: 16px;
788      --checkbox-border-radius: 5px;
789      --checkbox-label-padding: 6px;
790    }
791
792    /* Button size */
793    --button-size-sm: 30px;
794    --button-size-md: 36px;
795    --button-size: var(--minimum-touch-target);
796    --button-padding-inline: 24px;
797    --button-padding-block: 16px;
798
799    /* Button font-family */
800    --button-font-family-primary: var(--font-body--family);
801    --button-font-family-secondary: var(--font-body--family);
802
803    /* Button text case */
804    --button-text-case: ;
805    --button-text-case-primary: default;
806    --button-text-case-secondary: default;
807
808    /* Borders */
809    --border-color: rgb(var(--color-border-rgb) / var(--opacity-50));
810    --border-width-sm: 1px;
811    --border-width-md: 2px;
812    --border-width-lg: 5px;
813    --border-radius-sm: 0.25rem;
814
815    /* Drawers */
816    --drawer-inline-padding: 25px;
817    --drawer-menu-inline-padding: 2.5rem;
818    --drawer-header-block-padding: 20px;
819    --drawer-content-block-padding: 10px;
820    --drawer-header-desktop-top: 0rem;
821    --drawer-padding: calc(var(--padding-sm) + 7px);
822    --drawer-height: 100dvh;
823    --drawer-width: 95vw;
824    --drawer-max-width: 500px;
825
826    /* Variant Picker Swatches */
827    --variant-picker-swatch-width-unitless: 34;
828    --variant-picker-swatch-height-unitless: 34;
829    --variant-picker-swatch-width: 34px;
830    --variant-picker-swatch-height: 34px;
831    --variant-picker-swatch-radius: 32px;
832    --variant-picker-border-width: 1px;
833    --variant-picker-border-style: solid;
834    --variant-picker-border-opacity: 10%;
835
836    /* Variant Picker Buttons */
837    --variant-picker-button-radius: 14px;
838    --variant-picker-button-border-width: 1px;
839
840    /* Slideshow */
841    --slideshow-controls-size: 3.5rem;
842    --slideshow-controls-icon: 2rem;
843    --peek-next-slide-size: 3rem;
844
845    /* Utilities */
846    --backdrop-opacity: 0.15;
847    --backdrop-color-rgb: var(--color-shadow-rgb);
848    --minimum-touch-target: 44px;
849    --disabled-opacity: 0.5;
850    --skeleton-opacity: 0.025;
851
852    /* Shapes */
853    --shape--circle: circle(50% at center);
854    --shape--sunburst: polygon(100% 50%,94.62% 55.87%,98.3% 62.94%,91.57% 67.22%,93.3% 75%,85.7% 77.39%,85.36% 85.36%,77.39% 85.7%,75% 93.3%,67.22% 91.57%,62.94% 98.3%,55.87% 94.62%,50% 100%,44.13% 94.62%,37.06% 98.3%,32.78% 91.57%,25% 93.3%,22.61% 85.7%,14.64% 85.36%,14.3% 77.39%,6.7% 75%,8.43% 67.22%,1.7% 62.94%,5.38% 55.87%,0% 50%,5.38% 44.13%,1.7% 37.06%,8.43% 32.78%,6.7% 25%,14.3% 22.61%,14.64% 14.64%,22.61% 14.3%,25% 6.7%,32.78% 8.43%,37.06% 1.7%,44.13% 5.38%,50% 0%,55.87% 5.38%,62.94% 1.7%,67.22% 8.43%,75% 6.7%,77.39% 14.3%,85.36% 14.64%,85.7% 22.61%,93.3% 25%,91.57% 32.78%,98.3% 37.06%,94.62% 44.13%);
855    --shape--diamond: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
856    --shape--blob: polygon(85.349% 11.712%, 87.382% 13.587%, 89.228% 15.647%, 90.886% 17.862%, 92.359% 20.204%, 93.657% 22.647%, 94.795% 25.169%, 95.786% 27.752%, 96.645% 30.382%, 97.387% 33.048%, 98.025% 35.740%, 98.564% 38.454%, 99.007% 41.186%, 99.358% 43.931%, 99.622% 46.685%, 99.808% 49.446%, 99.926% 52.210%, 99.986% 54.977%, 99.999% 57.744%, 99.975% 60.511%, 99.923% 63.278%, 99.821% 66.043%, 99.671% 68.806%, 99.453% 71.565%, 99.145% 74.314%, 98.724% 77.049%, 98.164% 79.759%, 97.433% 82.427%, 96.495% 85.030%, 95.311% 87.529%, 93.841% 89.872%, 92.062% 91.988%, 89.972% 93.796%, 87.635% 95.273%, 85.135% 96.456%, 82.532% 97.393%, 79.864% 98.127%, 77.156% 98.695%, 74.424% 99.129%, 71.676% 99.452%, 68.918% 99.685%, 66.156% 99.844%, 63.390% 99.942%, 60.624% 99.990%, 57.856% 99.999%, 55.089% 99.978%, 52.323% 99.929%, 49.557% 99.847%, 46.792% 99.723%, 44.031% 99.549%, 41.273% 99.317%, 38.522% 99.017%, 35.781% 98.639%, 33.054% 98.170%, 30.347% 97.599%, 27.667% 96.911%, 25.024% 96.091%, 22.432% 95.123%, 19.907% 93.994%, 17.466% 92.690%, 15.126% 91.216%, 12.902% 89.569%, 10.808% 87.761%, 8.854% 85.803%, 7.053% 83.703%, 5.418% 81.471%, 3.962% 79.119%, 2.702% 76.656%, 1.656% 74.095%, 0.846% 71.450%, 0.294% 68.740%, 0.024% 65.987%, 0.050% 63.221%, 0.343% 60.471%, 0.858% 57.752%, 1.548% 55.073%, 2.370% 52.431%, 3.283% 49.819%, 4.253% 47.227%, 5.249% 44.646%, 6.244% 42.063%, 7.211% 39.471%, 8.124% 36.858%, 8.958% 34.220%, 9.711% 31.558%, 10.409% 28.880%, 11.083% 26.196%, 11.760% 23.513%, 12.474% 20.839%, 13.259% 18.186%, 14.156% 15.569%, 15.214% 13.012%, 16.485% 10.556%, 18.028% 8.261%, 19.883
856% 6.211%, 22.041% 4.484%, 24.440% 3.110%, 26.998% 2.057%, 29.651% 1.275%, 32.360% 0.714%, 35.101% 0.337%, 37.859% 0.110%, 40.624% 0.009%, 43.391% 0.016%, 46.156% 0.113%, 48.918% 0.289%, 51.674% 0.533%, 54.425% 0.837%, 57.166% 1.215%, 59.898% 1.654%, 62.618% 2.163%, 65.322% 2.750%, 68.006% 3.424%, 70.662% 4.197%, 73.284% 5.081%, 75.860% 6.091%, 78.376% 7.242%, 80.813% 8.551%, 83.148% 10.036%, 85.349% 11.712%);
857
858    /* Buy buttons */
859    --height-buy-buttons: calc(var(--padding-lg) * 2 + var(--icon-size-sm));
860
861    /* Card image width and height variables */
862    --card-width-small: 10rem;
863
864    --height-small: 10rem;
865    --height-medium: 11.5rem;
866    --height-large: 13rem;
867    --height-full: 100vh;
868
869    @media screen and (min-width: 750px) {
870      --height-small: 17.5rem;
871      --height-medium: 21.25rem;
872      --height-large: 25rem;
873    }
874
875    /* Modal */
876    --modal-max-height: 65dvh;
877    --quick-add-modal-height: min(38.5rem, 96vh);
878    --quick-add-modal-width: min(54rem, 96vw);
879    --quick-add-modal-gallery-width: 24rem;
880
881    /* Card styles for search */
882    --card-bg-hover: rgb(var(--color-foreground-rgb) / var(--opacity-5));
883    --card-border-hover: rgb(var(--color-foreground-rgb) / var(--opacity-30));
884    --card-border-focus: rgb(var(--color-foreground-rgb) / var(--opacity-10));
885
886    /* Cart */
887    --cart-primary-font-family: var(--font-body--family);
888    --cart-primary-font-style: var(--font-body--style);
889    --cart-primary-font-weight: var(--font-body--weight);
890    --cart-secondary-font-family: var(--font-secondary--family);
891    --cart-secondary-font-style: var(--font-secondary--style);
892    --cart-secondary-font-weight: var(--font-secondary--weight);
893  }
894</style>
895
896
897<style data-shopify>
898  
899    
900      :root,
901    
902    
903    
904    .color-scheme-1 {
905        --color-background: rgb(255 255 255 / 1.0);
906        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
907        --color-background-rgb: 255 255 255;
908        --opacity-5-15: 0.05;
909        --opacity-10-25: 0.1;
910        --opacity-35-55: 0.35;
911        --opacity-40-60: 0.4;
912        --opacity-30-60: 0.3;
913        --color-foreground: rgb(0 0 0 / 0.81);
914        --color-foreground-rgb: 0 0 0;
915        --color-foreground-heading: rgb(0 0 0 / 1.0);
916        --color-foreground-heading-rgb: 0 0 0;
917        --color-primary: rgb(0 0 0 / 0.81);
918        --color-primary-rgb: 0 0 0;
919        --color-primary-hover: rgb(0 0 0 / 1.0);
920        --color-primary-hover-rgb: 0 0 0;
921        --color-border: rgb(0 0 0 / 0.06);
922        --color-border-rgb: 0 0 0;
923        --color-shadow: rgb(0 0 0 / 1.0);
924        --color-shadow-rgb: 0 0 0;
925        --color-primary-button-text: rgb(255 255 255 / 1.0);
926        --color-primary-button-background: rgb(0 0 0 / 1.0);
927        --color-primary-button-border: rgb(0 0 0 / 1.0);
928        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
929        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
930        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
931        --color-secondary-button-text: rgb(0 0 0 / 1.0);
932        --color-secondary-button-background: rgb(0 0 0 / 0.0);
933        --color-secondary-button-border: rgb(0 0 0 / 1.0);
934        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
935        --color-secondary-button-hover-background: rgb(250 250 250 / 1.0);
936        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
937        --color-input-background: rgb(255 255 255 / 0.78);
938        --color-input-text: rgb(51 51 51 / 1.0);
939        --color-input-text-rgb: 51 51 51;
940        --color-input-border: rgb(223 223 223 / 1.0);
941        --color-input-hover-background: rgb(0 0 0 / 0.01);
942        --color-variant-background: rgb(255 255 255 / 1.0);
943        --color-variant-border: rgb(0 0 0 / 0.13);
944        --color-variant-text: rgb(0 0 0 / 1.0);
945        --color-variant-text-rgb: 0 0 0;
946        --color-variant-hover-background: rgb(245 245 245 / 1.0);
947        --color-variant-hover-text: rgb(0 0 0 / 1.0);
948        --color-variant-hover-border: rgb(230 230 230 / 1.0);
949        --color-selected-variant-background: rgb(0 0 0 / 1.0);
950        --color-selected-variant-border: rgb(0 0 0 / 1.0);
951        --color-selected-variant-text: rgb(255 255 255 / 1.0);
952        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
953        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
954        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
955
956        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
957        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
958        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
959        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
960        --font-h1--color: var(--color-foreground-heading);
961        --font-h2--color: var(--color-foreground-heading);
962        --font-h3--color: var(--color-foreground-heading);
963        --font-h4--color: var(--color-foreground-heading);
964        --font-h5--color: var(--color-foreground-heading);
965        --font-h6--color: var(--color-foreground-heading);
966
967        /* Shadows */
968        
969          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
970        
971        
972          --shadow-blur: 20px;
973          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
974        
975      }
976  
977    
978    
979    
980    .color-scheme-2 {
981        --color-background: rgb(245 245 245 / 1.0);
982        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
983        --color-background-rgb: 245 245 245;
984        --opacity-5-15: 0.05;
985        --opacity-10-25: 0.1;
986        --opacity-35-55: 0.35;
987        --opacity-40-60: 0.4;
988        --opacity-30-60: 0.3;
989        --color-foreground: rgb(0 0 0 / 0.81);
990        --color-foreground-rgb: 0 0 0;
991        --color-foreground-heading: rgb(0 0 0 / 1.0);
992        --color-foreground-heading-rgb: 0 0 0;
993        --color-primary: rgb(0 0 0 / 0.81);
994        --color-primary-rgb: 0 0 0;
995        --color-primary-hover: rgb(255 255 255 / 1.0);
996        --color-primary-hover-rgb: 255 255 255;
997        --color-border: rgb(223 223 223 / 1.0);
998        --color-border-rgb: 223 223 223;
999        --color-shadow: rgb(0 0 0 / 1.0);
1000        --color-shadow-rgb: 0 0 0;
1001        --color-primary-button-text: rgb(255 255 255 / 1.0);
1002        --color-primary-button-background: rgb(0 0 0 / 1.0);
1003        --color-primary-button-border: rgb(0 0 0 / 1.0);
1004        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1005        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1006        --color-primary-button-hover-border: rgb(51 51 51 / 1.0);
1007        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1008        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1009        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1010        --color-secondary-button-hover-text: rgb(0 0 0 / 1.0);
1011        --color-secondary-button-hover-background: rgb(255 255 255 / 0.36);
1012        --color-secondary-button-hover-border: rgb(51 51 51 / 0.73);
1013        --color-input-background: rgb(0 0 0 / 0.0);
1014        --color-input-text: rgb(0 0 0 / 0.53);
1015        --color-input-text-rgb: 0 0 0;
1016        --color-input-border: rgb(0 0 0 / 0.13);
1017        --color-input-hover-background: rgb(255 255 255 / 0.36);
1018        --color-variant-background: rgb(255 255 255 / 1.0);
1019        --color-variant-border: rgb(230 230 230 / 1.0);
1020        --color-variant-text: rgb(0 0 0 / 1.0);
1021        --color-variant-text-rgb: 0 0 0;
1022        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1023        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1024        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1025        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1026        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1027        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1028        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1029        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1030        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1031
1032        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1033        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1034        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1035        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1036        --font-h1--color: var(--color-foreground-heading);
1037        --font-h2--color: var(--color-foreground-heading);
1038        --font-h3--color: var(--color-foreground-heading);
1039        --font-h4--color: var(--color-foreground-heading);
1040        --font-h5--color: var(--color-foreground-heading);
1041        --font-h6--color: var(--color-foreground-heading);
1042
1043        /* Shadows */
1044        
1045          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1046        
1047        
1048          --shadow-blur: 20px;
1049          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1050        
1051      }
1052  
1053    
1054    
1055    
1056    .color-scheme-3 {
1057        --color-background: rgb(238 241 234 / 1.0);
1058        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1059        --color-background-rgb: 238 241 234;
1060        --opacity-5-15: 0.05;
1061        --opacity-10-25: 0.1;
1062        --opacity-35-55: 0.35;
1063        --opacity-40-60: 0.4;
1064        --opacity-30-60: 0.3;
1065        --color-foreground: rgb(0 0 0 / 0.81);
1066        --color-foreground-rgb: 0 0 0;
1067        --color-foreground-heading: rgb(0 0 0 / 1.0);
1068        --color-foreground-heading-rgb: 0 0 0;
1069        --color-primary: rgb(0 0 0 / 0.81);
1070        --color-primary-rgb: 0 0 0;
1071        --color-primary-hover: rgb(0 0 0 / 1.0);
1072        --color-primary-hover-rgb: 0 0 0;
1073        --color-border: rgb(0 0 0 / 0.81);
1074        --color-border-rgb: 0 0 0;
1075        --color-shadow: rgb(0 0 0 / 1.0);
1076        --color-shadow-rgb: 0 0 0;
1077        --color-primary-button-text: rgb(255 255 255 / 1.0);
1078        --color-primary-button-background: rgb(0 0 0 / 1.0);
1079        --color-primary-button-border: rgb(0 0 0 / 1.0);
1080        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1081        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1082        --color-primary-button-hover-border: rgb(51 51 51 / 1.0);
1083        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1084        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1085        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1086        --color-secondary-button-hover-text: rgb(0 0 0 / 0.81);
1087        --color-secondary-button-hover-background: rgb(255 255 255 / 0.36);
1088        --color-secondary-button-hover-border: rgb(0 0 0 / 0.81);
1089        --color-input-background: rgb(0 0 0 / 0.0);
1090        --color-input-text: rgb(0 0 0 / 0.81);
1091        --color-input-text-rgb: 0 0 0;
1092        --color-input-border: rgb(0 0 0 / 0.81);
1093        --color-input-hover-background: rgb(255 255 255 / 0.36);
1094        --color-variant-background: rgb(255 255 255 / 1.0);
1095        --color-variant-border: rgb(230 230 230 / 1.0);
1096        --color-variant-text: rgb(0 0 0 / 1.0);
1097        --color-variant-text-rgb: 0 0 0;
1098        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1099        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1100        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1101        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1102        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1103        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1104        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1105        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1106        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1107
1108        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1109        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1110        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1111        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1112        --font-h1--color: var(--color-foreground-heading);
1113        --font-h2--color: var(--color-foreground-heading);
1114        --font-h3--color: var(--color-foreground-heading);
1115        --font-h4--color: var(--color-foreground-heading);
1116        --font-h5--color: var(--color-foreground-heading);
1117        --font-h6--color: var(--color-foreground-heading);
1118
1119        /* Shadows */
1120        
1121          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1122        
1123        
1124          --shadow-blur: 20px;
1125          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1126        
1127      }
1128  
1129    
1130    
1131    
1132    .color-scheme-4 {
1133        --color-background: rgb(225 237 245 / 1.0);
1134        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1135        --color-background-rgb: 225 237 245;
1136        --opacity-5-15: 0.05;
1137        --opacity-10-25: 0.1;
1138        --opacity-35-55: 0.35;
1139        --opacity-40-60: 0.4;
1140        --opacity-30-60: 0.3;
1141        --color-foreground: rgb(0 0 0 / 0.81);
1142        --color-foreground-rgb: 0 0 0;
1143        --color-foreground-heading: rgb(0 0 0 / 1.0);
1144        --color-foreground-heading-rgb: 0 0 0;
1145        --color-primary: rgb(0 0 0 / 0.81);
1146        --color-primary-rgb: 0 0 0;
1147        --color-primary-hover: rgb(0 0 0 / 1.0);
1148        --color-primary-hover-rgb: 0 0 0;
1149        --color-border: rgb(29 54 134 / 0.5);
1150        --color-border-rgb: 29 54 134;
1151        --color-shadow: rgb(0 0 0 / 1.0);
1152        --color-shadow-rgb: 0 0 0;
1153        --color-primary-button-text: rgb(255 255 255 / 1.0);
1154        --color-primary-button-background: rgb(0 0 0 / 1.0);
1155        --color-primary-button-border: rgb(29 54 134 / 1.0);
1156        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1157        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1158        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1159        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1160        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1161        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1162        --color-secondary-button-hover-text: rgb(0 0 0 / 0.81);
1163        --color-secondary-button-hover-background: rgb(255 255 255 / 0.36);
1164        --color-secondary-button-hover-border: rgb(0 0 0 / 0.81);
1165        --color-input-background: rgb(0 0 0 / 0.0);
1166        --color-input-text: rgb(0 0 0 / 0.81);
1167        --color-input-text-rgb: 0 0 0;
1168        --color-input-border: rgb(0 0 0 / 0.81);
1169        --color-input-hover-background: rgb(255 255 255 / 0.36);
1170        --color-variant-background: rgb(255 255 255 / 1.0);
1171        --color-variant-border: rgb(230 230 230 / 1.0);
1172        --color-variant-text: rgb(0 0 0 / 1.0);
1173        --color-variant-text-rgb: 0 0 0;
1174        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1175        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1176        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1177        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1178        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1179        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1180        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1181        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1182        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1183
1184        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1185        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1186        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1187        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1188        --font-h1--color: var(--color-foreground-heading);
1189        --font-h2--color: var(--color-foreground-heading);
1190        --font-h3--color: var(--color-foreground-heading);
1191        --font-h4--color: var(--color-foreground-heading);
1192        --font-h5--color: var(--color-foreground-heading);
1193        --font-h6--color: var(--color-foreground-heading);
1194
1195        /* Shadows */
1196        
1197          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1198        
1199        
1200          --shadow-blur: 20px;
1201          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1202        
1203      }
1204  
1205    
1206    
1207    
1208    .color-scheme-5 {
1209        --color-background: rgb(51 51 51 / 1.0);
1210        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1211        --color-background-rgb: 51 51 51;
1212        --opacity-5-15: 0.15;
1213        --opacity-10-25: 0.25;
1214        --opacity-35-55: 0.55;
1215        --opacity-40-60: 0.6;
1216        --opacity-30-60: 0.6;
1217        --color-foreground: rgb(255 255 255 / 1.0);
1218        --color-foreground-rgb: 255 255 255;
1219        --color-foreground-heading: rgb(255 255 255 / 1.0);
1220        --color-foreground-heading-rgb: 255 255 255;
1221        --color-primary: rgb(255 255 255 / 1.0);
1222        --color-primary-rgb: 255 255 255;
1223        --color-primary-hover: rgb(255 255 255 / 0.69);
1224        --color-primary-hover-rgb: 255 255 255;
1225        --color-border: rgb(255 255 255 / 0.69);
1226        --color-border-rgb: 255 255 255;
1227        --color-shadow: rgb(0 0 0 / 1.0);
1228        --color-shadow-rgb: 0 0 0;
1229        --color-primary-button-text: rgb(0 0 0 / 1.0);
1230        --color-primary-button-background: rgb(255 255 255 / 1.0);
1231        --color-primary-button-border: rgb(255 255 255 / 1.0);
1232        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1233        --color-primary-button-hover-background: rgb(0 0 0 / 1.0);
1234        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1235        --color-secondary-button-text: rgb(255 255 255 / 1.0);
1236        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1237        --color-secondary-button-border: rgb(255 255 255 / 0.69);
1238        --color-secondary-button-hover-text: rgb(255 255 255 / 0.93);
1239        --color-secondary-button-hover-background: rgb(255 255 255 / 0.04);
1240        --color-secondary-button-hover-border: rgb(255 255 255 / 0.69);
1241        --color-input-background: rgb(51 51 51 / 1.0);
1242        --color-input-text: rgb(255 255 255 / 0.93);
1243        --color-input-text-rgb: 255 255 255;
1244        --color-input-border: rgb(255 255 255 / 0.69);
1245        --color-input-hover-background: rgb(255 255 255 / 0.04);
1246        --color-variant-background: rgb(255 255 255 / 1.0);
1247        --color-variant-border: rgb(230 230 230 / 1.0);
1248        --color-variant-text: rgb(0 0 0 / 1.0);
1249        --color-variant-text-rgb: 0 0 0;
1250        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1251        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1252        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1253        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1254        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1255        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1256        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1257        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1258        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1259
1260        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1261        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1262        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1263        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1264        --font-h1--color: var(--color-foreground-heading);
1265        --font-h2--color: var(--color-foreground-heading);
1266        --font-h3--color: var(--color-foreground-heading);
1267        --font-h4--color: var(--color-foreground-heading);
1268        --font-h5--color: var(--color-foreground-heading);
1269        --font-h6--color: var(--color-foreground-heading);
1270
1271        /* Shadows */
1272        
1273          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1274        
1275        
1276          --shadow-blur: 20px;
1277          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1278        
1279      }
1280  
1281    
1282    
1283    
1284    .color-scheme-6 {
1285        --color-background: rgb(0 0 0 / 0.0);
1286        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1287        --color-background-rgb: 0 0 0;
1288        --opacity-5-15: 0.15;
1289        --opacity-10-25: 0.25;
1290        --opacity-35-55: 0.55;
1291        --opacity-40-60: 0.6;
1292        --opacity-30-60: 0.6;
1293        --color-foreground: rgb(255 255 255 / 1.0);
1294        --color-foreground-rgb: 255 255 255;
1295        --color-foreground-heading: rgb(255 255 255 / 1.0);
1296        --color-foreground-heading-rgb: 255 255 255;
1297        --color-primary: rgb(255 255 255 / 1.0);
1298        --color-primary-rgb: 255 255 255;
1299        --color-primary-hover: rgb(255 255 255 / 0.69);
1300        --color-primary-hover-rgb: 255 255 255;
1301        --color-border: rgb(230 230 230 / 1.0);
1302        --color-border-rgb: 230 230 230;
1303        --color-shadow: rgb(0 0 0 / 1.0);
1304        --color-shadow-rgb: 0 0 0;
1305        --color-primary-button-text: rgb(0 0 0 / 1.0);
1306        --color-primary-button-background: rgb(255 255 255 / 1.0);
1307        --color-primary-button-border: rgb(255 255 255 / 1.0);
1308        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1309        --color-primary-button-hover-background: rgb(0 0 0 / 1.0);
1310        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1311        --color-secondary-button-text: rgb(255 255 255 / 1.0);
1311
1312        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1313        --color-secondary-button-border: rgb(255 255 255 / 1.0);
1314        --color-secondary-button-hover-text: rgb(255 255 255 / 1.0);
1315        --color-secondary-button-hover-background: rgb(255 255 255 / 0.08);
1316        --color-secondary-button-hover-border: rgb(255 255 255 / 1.0);
1317        --color-input-background: rgb(255 255 255 / 1.0);
1318        --color-input-text: rgb(0 0 0 / 0.53);
1319        --color-input-text-rgb: 0 0 0;
1320        --color-input-border: rgb(0 0 0 / 0.13);
1321        --color-input-hover-background: rgb(250 250 250 / 1.0);
1322        --color-variant-background: rgb(255 255 255 / 1.0);
1323        --color-variant-border: rgb(230 230 230 / 1.0);
1324        --color-variant-text: rgb(0 0 0 / 1.0);
1325        --color-variant-text-rgb: 0 0 0;
1326        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1327        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1328        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1329        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1330        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1331        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1332        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1333        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1334        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1335
1336        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1337        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1338        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1339        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1340        --font-h1--color: var(--color-foreground-heading);
1341        --font-h2--color: var(--color-foreground-heading);
1342        --font-h3--color: var(--color-foreground-heading);
1343        --font-h4--color: var(--color-foreground-heading);
1344        --font-h5--color: var(--color-foreground-heading);
1345        --font-h6--color: var(--color-foreground-heading);
1346
1347        /* Shadows */
1348        
1349          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1350        
1351        
1352          --shadow-blur: 20px;
1353          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1354        
1355      }
1356  
1357    
1358    
1359    
1360    .color-scheme-58084d4c-a86e-4d0a-855e-a0966e5043f7 {
1361        --color-background: rgb(0 0 0 / 0.0);
1362        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1363        --color-background-rgb: 0 0 0;
1364        --opacity-5-15: 0.15;
1365        --opacity-10-25: 0.25;
1366        --opacity-35-55: 0.55;
1367        --opacity-40-60: 0.6;
1368        --opacity-30-60: 0.6;
1369        --color-foreground: rgb(0 0 0 / 1.0);
1370        --color-foreground-rgb: 0 0 0;
1371        --color-foreground-heading: rgb(0 0 0 / 1.0);
1372        --color-foreground-heading-rgb: 0 0 0;
1373        --color-primary: rgb(0 0 0 / 1.0);
1374        --color-primary-rgb: 0 0 0;
1375        --color-primary-hover: rgb(0 0 0 / 0.53);
1376        --color-primary-hover-rgb: 0 0 0;
1377        --color-border: rgb(230 230 230 / 1.0);
1378        --color-border-rgb: 230 230 230;
1379        --color-shadow: rgb(0 0 0 / 1.0);
1380        --color-shadow-rgb: 0 0 0;
1381        --color-primary-button-text: rgb(255 255 255 / 1.0);
1382        --color-primary-button-background: rgb(0 0 0 / 1.0);
1383        --color-primary-button-border: rgb(0 0 0 / 1.0);
1384        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1385        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1386        --color-primary-button-hover-border: rgb(51 51 51 / 1.0);
1387        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1388        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1389        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1390        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
1391        --color-secondary-button-hover-background: rgb(250 250 250 / 1.0);
1392        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
1393        --color-input-background: rgb(255 255 255 / 1.0);
1394        --color-input-text: rgb(0 0 0 / 0.53);
1395        --color-input-text-rgb: 0 0 0;
1396        --color-input-border: rgb(0 0 0 / 0.13);
1397        --color-input-hover-background: rgb(250 250 250 / 1.0);
1398        --color-variant-background: rgb(255 255 255 / 1.0);
1399        --color-variant-border: rgb(230 230 230 / 1.0);
1400        --color-variant-text: rgb(0 0 0 / 1.0);
1401        --color-variant-text-rgb: 0 0 0;
1402        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1403        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1404        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1405        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1406        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1407        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1408        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1409        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1410        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1411
1412        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1413        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1414        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1415        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1416        --font-h1--color: var(--color-foreground-heading);
1417        --font-h2--color: var(--color-foreground-heading);
1418        --font-h3--color: var(--color-foreground-heading);
1419        --font-h4--color: var(--color-foreground-heading);
1420        --font-h5--color: var(--color-foreground-heading);
1421        --font-h6--color: var(--color-foreground-heading);
1422
1423        /* Shadows */
1424        
1425          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1426        
1427        
1428          --shadow-blur: 20px;
1429          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1430        
1431      }
1432  
1433    
1434    
1435    
1436    .color-scheme-c014d933-41a8-4367-8672-604285ff2bbd {
1437        --color-background: rgb(209 229 213 / 1.0);
1438        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1439        --color-background-rgb: 209 229 213;
1440        --opacity-5-15: 0.05;
1441        --opacity-10-25: 0.1;
1442        --opacity-35-55: 0.35;
1443        --opacity-40-60: 0.4;
1444        --opacity-30-60: 0.3;
1445        --color-foreground: rgb(0 0 0 / 0.81);
1446        --color-foreground-rgb: 0 0 0;
1447        --color-foreground-heading: rgb(0 0 0 / 1.0);
1448        --color-foreground-heading-rgb: 0 0 0;
1449        --color-primary: rgb(0 0 0 / 0.81);
1450        --color-primary-rgb: 0 0 0;
1451        --color-primary-hover: rgb(0 0 0 / 1.0);
1452        --color-primary-hover-rgb: 0 0 0;
1453        --color-border: rgb(0 0 0 / 0.06);
1454        --color-border-rgb: 0 0 0;
1455        --color-shadow: rgb(0 0 0 / 1.0);
1456        --color-shadow-rgb: 0 0 0;
1457        --color-primary-button-text: rgb(255 255 255 / 1.0);
1458        --color-primary-button-background: rgb(0 0 0 / 1.0);
1459        --color-primary-button-border: rgb(0 0 0 / 1.0);
1460        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1461        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1462        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1463        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1464        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1465        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1466        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
1467        --color-secondary-button-hover-background: rgb(250 250 250 / 1.0);
1468        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
1469        --color-input-background: rgb(255 255 255 / 0.78);
1470        --color-input-text: rgb(51 51 51 / 1.0);
1471        --color-input-text-rgb: 51 51 51;
1472        --color-input-border: rgb(223 223 223 / 1.0);
1473        --color-input-hover-background: rgb(0 0 0 / 0.01);
1474        --color-variant-background: rgb(255 255 255 / 1.0);
1475        --color-variant-border: rgb(0 0 0 / 0.13);
1476        --color-variant-text: rgb(0 0 0 / 1.0);
1477        --color-variant-text-rgb: 0 0 0;
1478        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1479        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1480        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1481        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1482        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1483        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1484        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1485        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1486        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1487
1488        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1489        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1490        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1491        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1492        --font-h1--color: var(--color-foreground-heading);
1493        --font-h2--color: var(--color-foreground-heading);
1494        --font-h3--color: var(--color-foreground-heading);
1495        --font-h4--color: var(--color-foreground-heading);
1496        --font-h5--color: var(--color-foreground-heading);
1497        --font-h6--color: var(--color-foreground-heading);
1498
1499        /* Shadows */
1500        
1501          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1502        
1503        
1504          --shadow-blur: 20px;
1505          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1506        
1507      }
1508  
1509    
1510    
1511    
1512    .color-scheme-f8ca35a6-e5e1-4424-97e1-12faa822d27c {
1513        --color-background: rgb(252 245 235 / 1.0);
1514        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1515        --color-background-rgb: 252 245 235;
1516        --opacity-5-15: 0.05;
1517        --opacity-10-25: 0.1;
1518        --opacity-35-55: 0.35;
1519        --opacity-40-60: 0.4;
1520        --opacity-30-60: 0.3;
1521        --color-foreground: rgb(0 0 0 / 0.81);
1522        --color-foreground-rgb: 0 0 0;
1523        --color-foreground-heading: rgb(0 0 0 / 1.0);
1524        --color-foreground-heading-rgb: 0 0 0;
1525        --color-primary: rgb(0 0 0 / 0.81);
1526        --color-primary-rgb: 0 0 0;
1527        --color-primary-hover: rgb(0 0 0 / 1.0);
1528        --color-primary-hover-rgb: 0 0 0;
1529        --color-border: rgb(0 0 0 / 0.06);
1530        --color-border-rgb: 0 0 0;
1531        --color-shadow: rgb(0 0 0 / 1.0);
1532        --color-shadow-rgb: 0 0 0;
1533        --color-primary-button-text: rgb(255 255 255 / 1.0);
1534        --color-primary-button-background: rgb(0 0 0 / 1.0);
1535        --color-primary-button-border: rgb(0 0 0 / 1.0);
1536        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1537        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1538        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1539        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1540        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1541        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1542        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
1543        --color-secondary-button-hover-background: rgb(250 250 250 / 1.0);
1544        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
1545        --color-input-background: rgb(255 255 255 / 0.78);
1546        --color-input-text: rgb(51 51 51 / 1.0);
1547        --color-input-text-rgb: 51 51 51;
1548        --color-input-border: rgb(223 223 223 / 1.0);
1549        --color-input-hover-background: rgb(0 0 0 / 0.01);
1550        --color-variant-background: rgb(255 255 255 / 1.0);
1551        --color-variant-border: rgb(0 0 0 / 0.13);
1552        --color-variant-text: rgb(0 0 0 / 1.0);
1553        --color-variant-text-rgb: 0 0 0;
1554        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1555        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1556        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1557        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1558        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1559        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1560        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1561        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1562        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1563
1564        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1565        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1566        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1567        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1568        --font-h1--color: var(--color-foreground-heading);
1569        --font-h2--color: var(--color-foreground-heading);
1570        --font-h3--color: var(--color-foreground-heading);
1571        --font-h4--color: var(--color-foreground-heading);
1572        --font-h5--color: var(--color-foreground-heading);
1573        --font-h6--color: var(--color-foreground-heading);
1574
1575        /* Shadows */
1576        
1577          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1578        
1579        
1580          --shadow-blur: 20px;
1581          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1582        
1583      }
1584  
1585    
1586    
1587    
1588    .color-scheme-31e8c502-e6f1-4269-a9db-1d6b61739a40 {
1589        --color-background: rgb(244 145 161 / 1.0);
1590        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1591        --color-background-rgb: 244 145 161;
1592        --opacity-5-15: 0.05;
1593        --opacity-10-25: 0.1;
1594        --opacity-35-55: 0.35;
1595        --opacity-40-60: 0.4;
1596        --opacity-30-60: 0.3;
1597        --color-foreground: rgb(255 255 255 / 0.81);
1598        --color-foreground-rgb: 255 255 255;
1599        --color-foreground-heading: rgb(255 255 255 / 1.0);
1600        --color-foreground-heading-rgb: 255 255 255;
1601        --color-primary: rgb(255 255 255 / 0.81);
1602        --color-primary-rgb: 255 255 255;
1603        --color-primary-hover: rgb(228 61 88 / 1.0);
1604        --color-primary-hover-rgb: 228 61 88;
1605        --color-border: rgb(0 0 0 / 0.06);
1606        --color-border-rgb: 0 0 0;
1607        --color-shadow: rgb(0 0 0 / 1.0);
1608        --color-shadow-rgb: 0 0 0;
1609        --color-primary-button-text: rgb(0 0 0 / 1.0);
1610        --color-primary-button-background: rgb(255 255 255 / 1.0);
1611        --color-primary-button-border: rgb(0 0 0 / 1.0);
1612        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1613        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1614        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1615        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1616        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1617        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1618        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
1619        --color-secondary-button-hover-background: rgb(250 250 250 / 1.0);
1620        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
1621        --color-input-background: rgb(255 255 255 / 0.78);
1622        --color-input-text: rgb(51 51 51 / 1.0);
1623        --color-input-text-rgb: 51 51 51;
1624        --color-input-border: rgb(223 223 223 / 1.0);
1625        --color-input-hover-background: rgb(0 0 0 / 0.01);
1626        --color-variant-background: rgb(255 255 255 / 1.0);
1627        --color-variant-border: rgb(0 0 0 / 0.13);
1628        --color-variant-text: rgb(0 0 0 / 1.0);
1629        --color-variant-text-rgb: 0 0 0;
1630        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1631        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1632        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1633        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1634        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1635        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1636        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1637        --color-selected-variant-hover-text: 
1637rgb(255 255 255 / 1.0);
1638        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1639
1640        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1641        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1642        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1643        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1644        --font-h1--color: var(--color-foreground-heading);
1645        --font-h2--color: var(--color-foreground-heading);
1646        --font-h3--color: var(--color-foreground-heading);
1647        --font-h4--color: var(--color-foreground-heading);
1648        --font-h5--color: var(--color-foreground-heading);
1649        --font-h6--color: var(--color-foreground-heading);
1650
1651        /* Shadows */
1652        
1653          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1654        
1655        
1656          --shadow-blur: 20px;
1657          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1658        
1659      }
1660  
1661    
1662    
1663    
1664    .color-scheme-75163c7b-dd83-42dc-af2f-12c2bf80ab59 {
1665        --color-background: rgb(240 243 237 / 1.0);
1666        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1667        --color-background-rgb: 240 243 237;
1668        --opacity-5-15: 0.05;
1669        --opacity-10-25: 0.1;
1670        --opacity-35-55: 0.35;
1671        --opacity-40-60: 0.4;
1672        --opacity-30-60: 0.3;
1673        --color-foreground: rgb(0 0 0 / 0.81);
1674        --color-foreground-rgb: 0 0 0;
1675        --color-foreground-heading: rgb(0 0 0 / 1.0);
1676        --color-foreground-heading-rgb: 0 0 0;
1677        --color-primary: rgb(0 0 0 / 0.81);
1678        --color-primary-rgb: 0 0 0;
1679        --color-primary-hover: rgb(0 0 0 / 1.0);
1680        --color-primary-hover-rgb: 0 0 0;
1681        --color-border: rgb(0 0 0 / 0.06);
1682        --color-border-rgb: 0 0 0;
1683        --color-shadow: rgb(0 0 0 / 1.0);
1684        --color-shadow-rgb: 0 0 0;
1685        --color-primary-button-text: rgb(255 255 255 / 1.0);
1686        --color-primary-button-background: rgb(0 0 0 / 1.0);
1687        --color-primary-button-border: rgb(0 0 0 / 1.0);
1688        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1689        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1690        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1691        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1692        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1693        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1694        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
1695        --color-secondary-button-hover-background: rgb(250 250 250 / 1.0);
1696        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
1697        --color-input-background: rgb(255 255 255 / 0.78);
1698        --color-input-text: rgb(51 51 51 / 1.0);
1699        --color-input-text-rgb: 51 51 51;
1700        --color-input-border: rgb(223 223 223 / 1.0);
1701        --color-input-hover-background: rgb(0 0 0 / 0.01);
1702        --color-variant-background: rgb(255 255 255 / 1.0);
1703        --color-variant-border: rgb(0 0 0 / 0.13);
1704        --color-variant-text: rgb(0 0 0 / 1.0);
1705        --color-variant-text-rgb: 0 0 0;
1706        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1707        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1708        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1709        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1710        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1711        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1712        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1713        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1714        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1715
1716        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1717        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1718        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1719        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1720        --font-h1--color: var(--color-foreground-heading);
1721        --font-h2--color: var(--color-foreground-heading);
1722        --font-h3--color: var(--color-foreground-heading);
1723        --font-h4--color: var(--color-foreground-heading);
1724        --font-h5--color: var(--color-foreground-heading);
1725        --font-h6--color: var(--color-foreground-heading);
1726
1727        /* Shadows */
1728        
1729          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1730        
1731        
1732          --shadow-blur: 20px;
1733          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1734        
1735      }
1736  
1737    
1738    
1739    
1740    .color-scheme-7428e935-b223-4598-9dc4-78c24b04e5d6 {
1741        --color-background: rgb(211 18 102 / 1.0);
1742        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1743        --color-background-rgb: 211 18 102;
1744        --opacity-5-15: 0.05;
1745        --opacity-10-25: 0.1;
1746        --opacity-35-55: 0.35;
1747        --opacity-40-60: 0.4;
1748        --opacity-30-60: 0.3;
1749        --color-foreground: rgb(255 255 255 / 0.81);
1750        --color-foreground-rgb: 255 255 255;
1751        --color-foreground-heading: rgb(255 255 255 / 1.0);
1752        --color-foreground-heading-rgb: 255 255 255;
1753        --color-primary: rgb(255 255 255 / 0.81);
1754        --color-primary-rgb: 255 255 255;
1755        --color-primary-hover: rgb(255 179 212 / 1.0);
1756        --color-primary-hover-rgb: 255 179 212;
1757        --color-border: rgb(0 0 0 / 0.06);
1758        --color-border-rgb: 0 0 0;
1759        --color-shadow: rgb(0 0 0 / 1.0);
1760        --color-shadow-rgb: 0 0 0;
1761        --color-primary-button-text: rgb(255 255 255 / 1.0);
1762        --color-primary-button-background: rgb(255 255 255 / 1.0);
1763        --color-primary-button-border: rgb(0 0 0 / 1.0);
1764        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1765        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1766        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1767        --color-secondary-button-text: rgb(255 255 255 / 1.0);
1768        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1769        --color-secondary-button-border: rgb(255 255 255 / 1.0);
1770        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
1771        --color-secondary-button-hover-background: rgb(250 250 250 / 1.0);
1772        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
1773        --color-input-background: rgb(255 255 255 / 0.78);
1774        --color-input-text: rgb(51 51 51 / 1.0);
1775        --color-input-text-rgb: 51 51 51;
1776        --color-input-border: rgb(223 223 223 / 1.0);
1777        --color-input-hover-background: rgb(0 0 0 / 0.01);
1778        --color-variant-background: rgb(255 255 255 / 1.0);
1779        --color-variant-border: rgb(0 0 0 / 0.13);
1780        --color-variant-text: rgb(0 0 0 / 1.0);
1781        --color-variant-text-rgb: 0 0 0;
1782        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1783        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1784        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1785        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1786        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1787        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1788        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1789        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1790        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1791
1792        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1793        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1794        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1795        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1796        --font-h1--color: var(--color-foreground-heading);
1797        --font-h2--color: var(--color-foreground-heading);
1798        --font-h3--color: var(--color-foreground-heading);
1799        --font-h4--color: var(--color-foreground-heading);
1800        --font-h5--color: var(--color-foreground-heading);
1801        --font-h6--color: var(--color-foreground-heading);
1802
1803        /* Shadows */
1804        
1805          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1806        
1807        
1808          --shadow-blur: 20px;
1809          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1810        
1811      }
1812  
1813    
1814    
1815    
1816    .color-scheme-33425aff-5b18-4143-8aae-041d65a8b7ec {
1817        --color-background: rgb(255 255 255 / 1.0);
1818        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1819        --color-background-rgb: 255 255 255;
1820        --opacity-5-15: 0.05;
1821        --opacity-10-25: 0.1;
1822        --opacity-35-55: 0.35;
1823        --opacity-40-60: 0.4;
1824        --opacity-30-60: 0.3;
1825        --color-foreground: rgb(211 18 102 / 1.0);
1826        --color-foreground-rgb: 211 18 102;
1827        --color-foreground-heading: rgb(211 18 102 / 1.0);
1828        --color-foreground-heading-rgb: 211 18 102;
1829        --color-primary: rgb(211 18 102 / 1.0);
1830        --color-primary-rgb: 211 18 102;
1831        --color-primary-hover: rgb(255 179 212 / 1.0);
1832        --color-primary-hover-rgb: 255 179 212;
1833        --color-border: rgb(0 0 0 / 0.06);
1834        --color-border-rgb: 0 0 0;
1835        --color-shadow: rgb(0 0 0 / 1.0);
1836        --color-shadow-rgb: 0 0 0;
1837        --color-primary-button-text: rgb(255 255 255 / 1.0);
1838        --color-primary-button-background: rgb(211 18 102 / 1.0);
1839        --color-primary-button-border: rgb(0 0 0 / 1.0);
1840        --color-primary-button-hover-text: rgb(211 18 102 / 1.0);
1841        --color-primary-button-hover-background: rgb(255 255 255 / 1.0);
1842        --color-primary-button-hover-border: rgb(211 18 102 / 1.0);
1843        --color-secondary-button-text: rgb(211 18 102 / 1.0);
1844        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1845        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1846        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
1847        --color-secondary-button-hover-background: rgb(255 179 212 / 1.0);
1848        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
1849        --color-input-background: rgb(255 255 255 / 0.78);
1850        --color-input-text: rgb(51 51 51 / 1.0);
1851        --color-input-text-rgb: 51 51 51;
1852        --color-input-border: rgb(223 223 223 / 1.0);
1853        --color-input-hover-background: rgb(0 0 0 / 0.01);
1854        --color-variant-background: rgb(255 255 255 / 1.0);
1855        --color-variant-border: rgb(0 0 0 / 0.13);
1856        --color-variant-text: rgb(0 0 0 / 1.0);
1857        --color-variant-text-rgb: 0 0 0;
1858        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1859        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1860        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1861        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1862        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1863        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1864        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1865        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1866        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1867
1868        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1869        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1870        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1871        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1872        --font-h1--color: var(--color-foreground-heading);
1873        --font-h2--color: var(--color-foreground-heading);
1874        --font-h3--color: var(--color-foreground-heading);
1875        --font-h4--color: var(--color-foreground-heading);
1876        --font-h5--color: var(--color-foreground-heading);
1877        --font-h6--color: var(--color-foreground-heading);
1878
1879        /* Shadows */
1880        
1881          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1882        
1883        
1884          --shadow-blur: 20px;
1885          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1886        
1887      }
1888  
1889    
1890    
1891    
1892    .color-scheme-9849422c-7564-4742-9a4a-e1175289f620 {
1893        --color-background: rgb(253 248 245 / 1.0);
1894        /* RGB values only to apply different opacities - Relative color values are not supported in iOS < 16.4 */
1895        --color-background-rgb: 253 248 245;
1896        --opacity-5-15: 0.05;
1897        --opacity-10-25: 0.1;
1898        --opacity-35-55: 0.35;
1899        --opacity-40-60: 0.4;
1900        --opacity-30-60: 0.3;
1901        --color-foreground: rgb(0 0 0 / 0.81);
1902        --color-foreground-rgb: 0 0 0;
1903        --color-foreground-heading: rgb(0 0 0 / 1.0);
1904        --color-foreground-heading-rgb: 0 0 0;
1905        --color-primary: rgb(0 0 0 / 0.81);
1906        --color-primary-rgb: 0 0 0;
1907        --color-primary-hover: rgb(0 0 0 / 1.0);
1908        --color-primary-hover-rgb: 0 0 0;
1909        --color-border: rgb(0 0 0 / 0.06);
1910        --color-border-rgb: 0 0 0;
1911        --color-shadow: rgb(0 0 0 / 1.0);
1912        --color-shadow-rgb: 0 0 0;
1913        --color-primary-button-text: rgb(255 255 255 / 1.0);
1914        --color-primary-button-background: rgb(0 0 0 / 1.0);
1915        --color-primary-button-border: rgb(0 0 0 / 1.0);
1916        --color-primary-button-hover-text: rgb(255 255 255 / 1.0);
1917        --color-primary-button-hover-background: rgb(51 51 51 / 1.0);
1918        --color-primary-button-hover-border: rgb(0 0 0 / 1.0);
1919        --color-secondary-button-text: rgb(0 0 0 / 1.0);
1920        --color-secondary-button-background: rgb(0 0 0 / 0.0);
1921        --color-secondary-button-border: rgb(0 0 0 / 1.0);
1922        --color-secondary-button-hover-text: rgb(51 51 51 / 1.0);
1923        --color-secondary-button-hover-background: rgb(250 250 250 / 1.0);
1924        --color-secondary-button-hover-border: rgb(51 51 51 / 1.0);
1925        --color-input-background: rgb(255 255 255 / 0.78);
1926        --color-input-text: rgb(51 51 51 / 1.0);
1927        --color-input-text-rgb: 51 51 51;
1928        --color-input-border: rgb(223 223 223 / 1.0);
1929        --color-input-hover-background: rgb(0 0 0 / 0.01);
1930        --color-variant-background: rgb(255 255 255 / 1.0);
1931        --color-variant-border: rgb(0 0 0 / 0.13);
1932        --color-variant-text: rgb(0 0 0 / 1.0);
1933        --color-variant-text-rgb: 0 0 0;
1934        --color-variant-hover-background: rgb(245 245 245 / 1.0);
1935        --color-variant-hover-text: rgb(0 0 0 / 1.0);
1936        --color-variant-hover-border: rgb(230 230 230 / 1.0);
1937        --color-selected-variant-background: rgb(0 0 0 / 1.0);
1938        --color-selected-variant-border: rgb(0 0 0 / 1.0);
1939        --color-selected-variant-text: rgb(255 255 255 / 1.0);
1940        --color-selected-variant-hover-background: rgb(26 26 26 / 1.0);
1941        --color-selected-variant-hover-text: rgb(255 255 255 / 1.0);
1942        --color-selected-variant-hover-border: rgb(26 26 26 / 1.0);
1943
1944        --input-disabled-background-color: rgb(var(--color-foreground-rgb) / var(--opacity-10));
1945        --input-disabled-border-color: rgb(var(--color-foreground-rgb) / var(--opacity-5-15));
1946        --input-disabled-text-color: rgb(var(--color-foreground-rgb) / var(--opacity-50));
1947        --color-foreground-muted: rgb(var(--color-foreground-rgb) / var(--opacity-60));
1948        --font-h1--color: var(--color-foreground-heading);
1949        --font-h2--color: var(--color-foreground-heading);
1950        --font-h3--color: var(--color-foreground-heading);
1951        --font-h4--color: var(--color-foreground-heading);
1952        --font-h5--color: var(--color-foreground-heading);
1953        --font-h6--color: var(--color-foreground-heading);
1954
1955        /* Shadows */
1956        
1957          --shadow-drawer: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1958        
1959        
1960          --shadow-blur: 20px;
1961          --shadow-popover: 0px 4px 20px rgb(var(--color-shadow-rgb) / var(--opacity-15));
1962        
1963      }
1964  
1965
1966  body, .color-scheme-1, .color-scheme-2, .color-scheme-3, .color-scheme-4, .color-scheme-5, .color-scheme-6, .col
1966or-scheme-58084d4c-a86e-4d0a-855e-a0966e5043f7, .color-scheme-c014d933-41a8-4367-8672-604285ff2bbd, .color-scheme-f8ca35a6-e5e1-4424-97e1-12faa822d27c, .color-scheme-31e8c502-e6f1-4269-a9db-1d6b61739a40, .color-scheme-75163c7b-dd83-42dc-af2f-12c2bf80ab59, .color-scheme-7428e935-b223-4598-9dc4-78c24b04e5d6, .color-scheme-33425aff-5b18-4143-8aae-041d65a8b7ec, .color-scheme-9849422c-7564-4742-9a4a-e1175289f620 {
1967    color: var(--color-foreground);
1968    background-color: var(--color-background);
1969  }
1970</style>
1971
1972
1973    
1973<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
1973<meta name="google-site-verification" content="5rZMEHWA8F7oUpA7iFeTzz0BduiClzQCrxjsZ4ZGo78">
1974<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/82549899508/digital_wallets/dialog">
1975<meta id="in-context-paypal-metadata" data-shop-id="82549899508" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
1976<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
1976<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
1976
1977<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
1978<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=82549899508" crossorigin="anonymous"></script>
vendor: 1 bytes, line 1978
1978
1979<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":82549899508,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/82549899508","merchantName":"Perfectly Posh","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Perfectly Posh","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 1979
1979
1980<script id="shopify-features" type="application/json">{"accessToken":"3b5547f53dc21e5765acab946d308715","betas":["rich-media-storefront-analytics"],"domain":"perfectlyposh.com","predictiveSearch":true,"shopId":82549899508,"locale":"en"}</script>
vendor: 1 bytes, line 1980
1980
1981<script>var Shopify = Shopify || {};
1982Shopify.shop = "perfectlyposh-2.myshopify.com";
1983Shopify.locale = "en";
1984Shopify.currency = {"active":"USD","rate":"1.0"};
1985Shopify.country = "US";
1986Shopify.theme = {"name":"Horizon","id":161340162292,"schema_name":"Horizon","schema_version":"3.5.1","theme_store_id":2481,"role":"main"};
1987Shopify.theme.handle = "null";
1988Shopify.theme.style = {"id":null,"handle":null};
1989Shopify.cdnHost = "perfectlyposh.com/cdn";
1990Shopify.routes = Shopify.routes || {};
1991Shopify.routes.root = "/";
1992Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
1993Shopify.SignInWithShop = Shopify.SignInWithShop || {};
1994Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
1995Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 1995
1995
1996<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 1996
1996
1997<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 1997
1997
1998<script>
1999  window.ShopifyPay = window.ShopifyPay || {};
2000  window.ShopifyPay.apiHost = "shop.app\/pay";
2001  window.ShopifyPay.redirectState = null;
2002</script>
vendor: 1 bytes, line 2002
2002
2003<script>
2004  window.Shopify = window.Shopify || {};
2005  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
2006  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
2007  window.Shopify.SignInWithShop.eligible = true;
2008</script>
vendor: 1 bytes, line 2008
2008
2009<script id="shop-js-analytics" type="application/json">{"pageType":"page"}</script>
vendor: 1 bytes, line 2009
2009
2010<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 2010
2010
2011<script type="module">
2012  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
2013
2014  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
2015
2016</script>
vendor: 1 bytes, line 2016
2016
2017<script>
2018  window.Shopify = window.Shopify || {};
2019  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
2020  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"]};
2021</script>
vendor: 1 bytes, line 2021
2021
2022<script id="__st">var __st={"a":82549899508,"offset":-18000,"reqid":"2f0ae8e9-b97b-40b7-8bd9-cf10a98ccde0-1790857714","pageurl":"perfectlyposh.com\/pages\/about","s":"pages-133996577012","u":"e40d374b7390","p":"page","rtyp":"page","rid":133996577012};</script>
vendor: 1 bytes, line 2022
2022
2023<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 2023
2023
2024<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,!0)}();</script>
vendor: 1 bytes, line 2024
2024
2025<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//perfectlyposh.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 2025
2025
2026<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 = "//perfectlyposh.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>
2026<script crossorigin="anonymous" defer="defer" src="//perfectlyposh.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 2026
2026
2027<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 2027
2027
2028<script>
2029  window.Shopify = window.Shopify || {};
2030  window.Shopify.MCP = window.Shopify.MCP || {};
2031  window.Shopify.MCP.enabled = true;
2032  window.Shopify.MCP.shop = "perfectlyposh-2.myshopify.com";
2033  window.Shopify.MCP.mcpEndpoint = "https:\/\/perfectlyposh.com\/api\/mcp";
2034  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"]}}];
2035</script>
vendor: 1 bytes, line 2035
2035
2036<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("\/\/perfectlyposh.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
2037</script>
vendor: 1 bytes, line 2037
2037
2038<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://perfectlyposh.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
2039</script>
vendor: 1 bytes, line 2039
2039
2040<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
2041  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);
2042</script>
vendor: 1 bytes, line 2042
2042
2043<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})}}));
2044</script>
2044
2045<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://perfectlyposh.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
2046<style id="shopify-accelerated-checkout-cart">
2047        #shopify-buyer-consent {
2048  margin-top: 1em;
2049  display: inline-block;
2050  width: 100%;
2051}
2052
2053#shopify-buyer-consent.hidden {
2054  display: none;
2055}
2056
2057#shopify-subscription-policy-button {
2058  background: none;
2059  border: none;
2060  padding: 0;
2061  text-decoration: underline;
2062  font-size: inherit;
2063  cursor: pointer;
2064}
2065
2066#shopify-subscription-policy-button::before {
2067  box-shadow: none;
2068}
2069
2070      </style>
2071<link rel="compression-dictionary" href="//perfectlyposh.com/cdn/shop/t/1/compiled_assets/styles.css?v=120740528661463257291779828089" crossorigin="anonymous">
2072<link rel="stylesheet" media="screen" href="//perfectlyposh.com/cdn/shop/t/1/compiled_assets/styles.css?v=120740528661463257291779828089&subset=ABYAAAAAAAAAGAAAAAhhAAAIgQAADgAAAAhEhAsCCA" crossorigin="anonymous">
2073<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
2073
2074    
2075  
2076  <!-- PageFly meta image -->
2077
2078
2079<!-- PageFly Header Render begins -->
2080  
2081  
2081<script>
2082    window.addEventListener('load', () => {
2083      // fallback for gtag when not initialized
2084      if(typeof window.gtag !== 'function') {
2085        window.gtag = (str1, str2, obj) => {
2086        }
2087      }
2088    }) 
2089  </script>
2089
2090  <style>.__pf .pf-c-ct,.__pf .pf-c-lt,.__pf .pf-c-rt{align-content:flex-start}.__pf .oh,.pf-sr-only{overflow:hidden}.__pf img,.__pf video{max-width:100%;border:0;vertical-align:middle}.__pf [tabIndex],.__pf button,.__pf input,.__pf select,.__pf textarea{touch-action:manipulation}.__pf:not([data-pf-editor-version=gen-2]) :focus-visible{outline:0!important;box-shadow:none!important}.__pf:not([data-pf-editor-version=gen-2]) :not(input):not(select):not(textarea):not([data-active=true]):focus-visible{border:none!important}.__pf *,.__pf :after,.__pf :before{box-sizing:border-box}.__pf [disabled],.__pf [readonly]{cursor:default}.__pf [data-href],.__pf button:not([data-pf-id]):hover{cursor:pointer}.__pf [disabled]:not([disabled=false]),.pf-dialog svg{pointer-events:none}.__pf [hidden]{display:none!important}.__pf [data-link=inherit]{color:inherit;text-decoration:none}.__pf [data-pf-placeholder]{outline:0;height:auto;display:none;pointer-events:none!important}.__pf .pf-ifr,.__pf [style*="--ratio"] img{height:100%;left:0;top:0;width:100%;position:absolute}.__pf .pf-r,.__pf .pf-r-eh>.pf-c{display:flex}.__pf [style*="--cw"]{padding:0 15px;width:100%;margin:auto;max-width:var(--cw)}.__pf .pf-ifr{border:0}.__pf .pf-bg-lazy{background-image:none!important}.__pf .pf-r{flex-wrap:wrap}.__pf .pf-r-dg{display:grid}.__pf [style*="--c-xs"]{max-width:calc(100%/12*var(--c-xs));flex-basis:calc(100%/12*var(--c-xs))}.__pf [style*="--s-xs"]{margin:0 calc(-1 * var(--s-xs))}.__pf [style*="--s-xs"]>.pf-c{padding:var(--s-xs)}.__pf .pf-r-ew>.pf-c{flex-grow:1;flex-basis:0}.__pf [style*="--ew-xs"]>.pf-c{flex-basis:calc(100% / var(--ew-xs));max-width:calc(100% / var(--ew-xs))}.__pf [style*="--ratio"]{position:relative;padding-bottom:var(--ratio)}.main-content{padding:0}.footer-section,.site-footer,.site-footer-wrapper,main .accent-background+.shopify-section{margin:0}@media (max-width:767.4999px){.__pf .pf-hide{display:none!important}}@media (max-width:1024.4999px) and (min-width:767.5px){.__pf .pf-sm-hide{display:none!important}}@media (max-width:1199.4999px) and (min-width:1024.5px){.__pf .pf-md-hide{display:none!important}}@media (min-width:767.5px){.__pf [style*="--s-sm"]{margin:0 calc(-1 * var(--s-sm))}.__pf [style*="--c-sm"]{max-width:calc(100%/12*var(--c-sm));flex-basis:calc(100%/12*var(--c-sm))}.__pf [style*="--s-sm"]>.pf-c{padding:var(--s-sm)}.__pf [style*="--ew-sm"]>.pf-c{flex-basis:calc(100% / var(--ew-sm));max-width:calc(100% / var(--ew-sm))}}@media (min-width:1024.5px){.__pf [style*="--s-md"]{margin:0 calc(-1 * var(--s-md))}.__pf [style*="--c-md"]{max-width:calc(100%/12*var(--c-md));flex-basis:calc(100%/12*var(--c-md))}.__pf [style*="--s-md"]>.pf-c{padding:var(--s-md)}.__pf [style*="--ew-md"]>.pf-c{flex-basis:calc(100% / var(--ew-md));max-width:calc(100% / var(--ew-md))}}@media (min-width:1199.5px){.__pf [style*="--s-lg"]{margin:0 calc(-1 * var(--s-lg))}.__pf [style*="--c-lg"]{max-width:calc(100%/12*var(--c-lg));flex-basis:calc(100%/12*var(--c-lg))}.__pf [style*="--s-lg"]>.pf-c{padding:var(--s-lg)}.__pf [style*="--ew-lg"]>.pf-c{flex-basis:calc(100% / var(--ew-lg));max-width:calc(100% / var(--ew-lg))}.__pf .pf-lg-hide{display:none!important}}.__pf .pf-r-eh>.pf-c>div{width:100%}.__pf .pf-c-lt{justify-content:flex-start;align-items:flex-start}.__pf .pf-c-ct{justify-content:center;align-items:flex-start}.__pf .pf-c-rt{justify-content:flex-end;align-items:flex-start}.__pf .pf-c-lm{justify-content:flex-start;align-items:center;align-content:center}.__pf .pf-c-cm{justify-content:center;align-items:center;align-content:center}.__pf .pf-c-rm{justify-content:flex-end;align-items:center;align-content:center}.__pf .pf-c-cb,.__pf .pf-c-lb,.__pf .pf-c-rb{align-content:flex-end}.__pf .pf-c-lb{justify-content:flex-start;align-items:flex-end}.__pf .pf-c-cb{justify-content:center;align-items:flex-end}.__pf .pf-c-rb{justify-content:flex-end;align-items:flex-end}.pf-no-border:not(:focus-visible){border:none;outline:0}.pf-sr-only{position:absolute;width:1px;height:1px;padding:0;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%);border:0}.pf-close-dialog-btn,.pf-dialog{background:0 0;border:none;padding:0}.pf-visibility-hidden{visibility:hidden}.pf-dialog{top:50%;left:50%;transform:translate(-50%,-50%);max-height:min(calc(9/16*100vw),calc(100% - 6px - 2em));-webkit-overflow-scrolling:touch;overflow:hidden;margin:0}.pf-dialog::backdrop{background:rgba(0,0,0,.9);opacity:1}.pf-close-dialog-btn{position:absolute;top:0;right:0;height:16px;margin-bottom:8px;
2090cursor:pointer}.pf-close-dialog-btn:not(:focus-visible){box-shadow:none}.pf-dialog-content{display:block;margin:24px auto auto;width:100%;height:calc(100% - 24px)}.pf-dialog-content>*{width:100%;height:100%;border:0}</style>
2091<style></style>
2092<style>.pf-color-scheme-1,.pf-color-scheme-2{--pf-scheme-btn-text-color:rgb(255, 255, 255);background-color:var(--pf-scheme-bg-color);background-image:var(--pf-scheme-bg-gradient-color);border-color:var(--pf-scheme-border-color);color:var(--pf-scheme-text-color)}.pf-color-scheme-1{--pf-scheme-bg-color:rgba(255, 255, 255, 0);--pf-scheme-text-color:rgb(0, 0, 0);--pf-scheme-btn-bg-color:rgb(145, 157, 169);--pf-scheme-border-color:rgba(0, 0, 0);--pf-scheme-shadow-color:rgb(0, 0, 0, 0.25)}.pf-color-scheme-2,.pf-color-scheme-3{--pf-scheme-text-color:rgb(18, 18, 18);--pf-scheme-btn-bg-color:rgb(18, 18, 18);--pf-scheme-border-color:rgb(18, 18, 18)}.pf-color-scheme-2{--pf-scheme-bg-color:rgb(255, 255, 255);--pf-scheme-shadow-color:rgb(18, 18, 18)}.pf-color-scheme-3{--pf-scheme-bg-color:rgb(243, 243, 243);--pf-scheme-btn-text-color:rgb(243, 243, 243);--pf-scheme-shadow-color:rgb(18, 18, 18);background-color:var(--pf-scheme-bg-color);background-image:var(--pf-scheme-bg-gradient-color);border-color:var(--pf-scheme-border-color);color:var(--pf-scheme-text-color)}.pf-color-scheme-4,.pf-color-scheme-5,.pf-color-scheme-6{--pf-scheme-text-color:rgb(255, 255, 255);--pf-scheme-btn-bg-color:rgb(255, 255, 255);--pf-scheme-border-color:rgb(255, 255, 255);--pf-scheme-shadow-color:rgb(18, 18, 18);background-color:var(--pf-scheme-bg-color);background-image:var(--pf-scheme-bg-gradient-color);border-color:var(--pf-scheme-border-color);color:var(--pf-scheme-text-color)}.pf-color-scheme-4{--pf-scheme-bg-color:rgb(36, 40, 51);--pf-scheme-btn-text-color:rgb(0, 0, 0)}.pf-color-scheme-5{--pf-scheme-bg-color:rgb(18, 18, 18);--pf-scheme-btn-text-color:rgb(18, 18, 18)}.pf-color-scheme-6{--pf-scheme-bg-color:rgb(51, 79, 180);--pf-scheme-btn-text-color:rgb(51, 79, 180)}[data-pf-type^=Button]{background-color:var(--pf-scheme-btn-bg-color);background-image:var(--pf-scheme-btn-bg-gradient-color);color:var(--pf-scheme-btn-text-color)}@media all{.__pf .pf-field-1,.__pf .pf-field-2,.__pf .pf-field-3,.__pf .pf-field-4,.__pf .pf-field-5,.__pf .pf-field-6{background-color:#fdfdfd;border:.66px solid #8a8a8a;border-radius:8px;padding:6px 12px}}</style>
2093<style id="pf-shopify-font">div.__pf {--pf-shopify-font-family-type-body-font: Inter, sans-serif;
2094        --pf-shopify-font-style-type-body-font: normal;
2095        --pf-shopify-font-weight-type-body-font: 400;
2096--pf-shopify-font-family-type-subheading-font: Inter, sans-serif;
2097        --pf-shopify-font-style-type-subheading-font: normal;
2098        --pf-shopify-font-weight-type-subheading-font: 500;
2099--pf-shopify-font-family-type-heading-font: Inter, sans-serif;
2100        --pf-shopify-font-style-type-heading-font: normal;
2101        --pf-shopify-font-weight-type-heading-font: 700;
2102--pf-shopify-font-family-type-accent-font: Inter, sans-serif;
2103        --pf-shopify-font-style-type-accent-font: normal;
2104        --pf-shopify-font-weight-type-accent-font: 700;}</style>
2105<link rel="stylesheet" href="//perfectlyposh.com/cdn/shop/t/1/assets/pagefly-animation.css?v=35569424405882025761777517341" media="print" onload="this.media='all'">
2106
2107
2108
2109<style>.ffFBJG,.gdMpOS{position:relative}.ckdstx{--pf-sample-color:#5d6b82;--pf-border-color:#d1d5db}.clbmpw{max-width:100%;display:inline-block;overflow:auto;height:auto;aspect-ratio:var(--pf-aspect-ratio-value)}.clbmpw [data-href]{cursor:pointer}.ffFBJG{display:flex}.ffFBJG.pf-flex-section{margin:auto}.gdMpOS{padding:20px 15px}@media (min-width:1024.5px){.gdMpOS{padding:20px 24px}}@media all{.__pf.__pf_OeQOEcv0 .pf-46_,.__pf.__pf_OeQOEcv0 .pf-9_{padding:0}.__pf.__pf_OeQOEcv0 .pf-10_{align-self:stretch;height:fit-content;flex-basis:unset;--pf-aspect-ratio-value:unset;object-fit:cover;object-position:center center;aspect-ratio:var(--pf-image-ratio)}.__pf.__pf_OeQOEcv0 .pf-47_{align-self:stretch;height:fit-content;flex-basis:unset;--pf-aspect-ratio-value:16/8;object-fit:cover;object-position:center bottom;aspect-ratio:16/8}.__pf.__pf_OeQOEcv0 .pf-46_>.pf-flex-section,.__pf.__pf_OeQOEcv0 .pf-9_>
2109.pf-flex-section{display:flex;max-width:unset;flex-flow:column;justify-content:flex-start;align-items:flex-start;gap:0;height:fit-content}}@media (max-width:767.4999px){.__pf.__pf_OeQOEcv0 .pf-10_{flex-basis:unset;min-height:unset;max-height:none;--pf-aspect-ratio-value:11/9;aspect-ratio:11/9;object-position:left center}.__pf.__pf_OeQOEcv0 .pf-46_>.pf-flex-section,.__pf.__pf_OeQOEcv0 .pf-9_>.pf-flex-section{flex-flow:column}.__pf.__pf_OeQOEcv0 .pf-47_{flex-basis:unset;object-position:left bottom;object-fit:cover;--pf-aspect-ratio-value:15/15;aspect-ratio:15/15}}</style><!-- PageFly Header Render ends -->
2110<meta name="facebook-domain-verification" content="weoibcsugnio79d5q6iko2cpvvu6ov" />
2111<!-- BEGIN app block: shopify://apps/nabu-sitemap/blocks/script-block/019a48d3-2232-78e2-beee-2e82022152d4 -->
2112<script>
2113(function() {
2114  'use strict';
2115  const container = document.getElementById('adnabu-sitemap-container');
2116  if (window.location.pathname.includes('/apps/sitemap') && container) {
2117    container.remove();
2118  }
2119})();
2120</script>
2120
2121
2122
2123<!-- END app block --><!-- BEGIN app block: shopify://apps/seolab-seo-optimizer/blocks/app_embed/faf700f6-3b71-45c3-86d4-83ea9f7d9216 -->
2124
2125
2126
2127<script type="text/javascript">
2128    document.addEventListener("DOMContentLoaded",function(e){var n=window.location.href;if(n.indexOf("#seotid")>-1){var t=n.split("#seotid");let p=new Headers;p.append("Content-Type","application/json");let o=new FormData;o.append("shop","perfectlyposh-2.myshopify.com"),o.append("tid",t[1]),o.append("type","add_traffic"),fetch("/apps/seo-lab",{method:"POST",headers:{Accept:"application/json"},body:o}).then(e=>e.json()).then(e=>{window.history.replaceState({}, '', t[0])})}else fetch(n,{method:"HEAD"}).then(e=>{if(404===e.status){var t=n.split(window.location.origin);let p=new FormData;p.append("shop","perfectlyposh-2.myshopify.com"),p.append("url",t[1]),p.append("type","unresolve_url_recieve"),fetch("/apps/seo-lab",{method:"POST",headers:{Accept:"application/json"},body:p}).then(e=>e.json()).then(e=>{e.success&&console.log("Added")})}})});
2129</script>
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138<!-- END app block --><!-- BEGIN app block: shopify://apps/webrex-ai-seo-schema/blocks/webrexSeoEmbed/283875bf-bf86-4e78-831b-502ad0c4a5c2 -->
2139
2140<!-- BEGIN app snippet: removeScript -->
2141<script id="ws_json_ld_script">if(window.ws_script){document.getElementById('ws_json_ld_script')?.remove()}else{window.ws_script=true;const wsRemoveAllNonWebrex=()=>{document.querySelectorAll('script[type="application/ld+json"]').forEach((el)=>{if(el.classList.contains('webrex_seo_schema'))return;el.remove()});document.querySelectorAll('[itemscope]').forEach((el)=>{el.removeAttribute('itemscope')})};wsRemoveAllNonWebrex();if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',wsRemoveAllNonWebrex,{once:true})}else{const startTime=Date.now();const interval=setInterval(()=>{wsRemoveAllNonWebrex();if(Date.now()-startTime>=5000){clearInterval(interval)}},300)}}</script>
2141
2142<!-- END app snippet -->
2143
2144
2145
2146
2147
2148
2149
2150<!-- BEGIN app snippet: breadcrumb -->
2151
2152
2153
2154
2155
2156<!-- END app snippet -->
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170<!-- END app block --><!-- BEGIN app block: shopify://apps/ab-google-analytics/blocks/analytics/2fc433fa-79f5-4d1d-bab2-983d42099561 -->
2170<script>
2171  (function() {
2172    var analyticsAppUrl = 'https://analytics-integration.onrender.com';
2173    var analyticsShopDomain = 'perfectlyposh-2.myshopify.com';
2174    var measurementId = null;
2175
2176    async function loadMeasurementId() {
2177      try {
2178        const response = await fetch(`${analyticsAppUrl}/analytics?shopDomain=${encodeURIComponent(analyticsShopDomain)}`, {
2179          method: "GET",
2180          headers: {
2181            "Content-Type": "application/json"
2182          }
2183        });
2184
2185        const data = await response.json();
2186        if (data.success && data.data && data.data.measurementId) {
2187          measurementId = data.data.measurementId;
2188          initializeAnalytics();
2189        }
2190      } catch (error) {
2191        console.error('Error loading Analytics Measurement ID:', error);
2192      }
2193    }
2194
2195    function initializeAnalytics() {
2196      if (!measurementId) {
2197        return;
2198      }
2199
2200      window.dataLayer = window.dataLayer || [];
2201      function gtag(){dataLayer.push(arguments);}
2202      gtag('js', new Date());
2203      gtag('config', measurementId);
2204      
2205      var script = document.createElement('script');
2206      script.async = true;
2207      script.src = 'https://www.googletagmanager.com/gtag/js?id=' + measurementId;
2208      document.head.appendChild(script);
2209    }
2210
2211    loadMeasurementId();
2212  })();
2213</script>
2213
2214
2215
2216
2217<!-- END app block --><!-- BEGIN app block: shopify://apps/hoppy-free-shipping/blocks/shipping_bar/66159626-1fb8-4d18-901f-af7b6a63adaa -->
2218<link href="//cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/swiper-scoped.css" rel="stylesheet" type="text/css" media="all" />
2219<link href="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/swiper.js" as="script" rel="preload">
2220<link href="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/script.js" as="script" rel="preload">
2221
2222
2223
2224<script async>window.hoppy_free_shipping = { 
2225      shipping: [{
2226            "id": "ffac516b-d32a-4c50-926e-0e70fa7ec0dc",
2227            "design": {"initial_color":"","final_color":"","goal_message_color":"#202223","shipping_bar_width":100,"button_font_weight":[],"goal_icons":[],"_id":"6a15084718972dfed3a89896"},
2228            "placement": {"pages_type":"every_page","visibility_by_login":"all","customer_display":"all","specific_tag_for_display":"","specific_amt_for_display":"","customer_hide":"none","specific_tag_for_hide":"","specific_amt_for_hide":"","exclude_products":"none","enable_bar":true,"enable_condition":["always"],"total_orders":0,"max_cart_value":0,"last_order_before_value":30,"last_order_before_unit":"days","last_order_after_value":30,"last_order_after_unit":"days","excluded_products":[],"pages":[],"allowed_all_location":false,"delay":0,"locations":[{"code":"US","name":"United States","_id":"6a1ef699853d839daaeba796"}],"_id":"6a1507e10c63f97087d16a76"},
2229            "published": true,
2230            "name": "Goal Based Free Shipping Upsell",
2231            "type": "goal_based",
2232            "visibility": "desktop_mobile",
2233            "allow_utm_source": null,
2234            "visitors": [],
2235            "utmCode": "",
2236            "exclude": null,
2237            "created_by_sidekick": null,
2238            "orientation": null,
2239            "translations": [],
2240            "scheduled": {"start":null,"end":null},
2241            "upsell": {"upsell_title":"","recommendation_type":"complementary","auto_slide":true,"slide_interval":5,"max_products":3,"upsell_type":"freq_bought","cta_type":"add_to_cart","cta_text_before":"Add to Cart","cta_text_after":"Add Another","upsell_prod":[]},
2242            "content": {"discount_combination":true,"exclude_type":"none","excluded_from_goals":[],"unique_products":false,"show_goal_reached_message":true,"reward_application":"all","specific_market_goals":[],"goals":[{"goal":50,"progress_message":"You're {order-value-progress} away from free shipping!","reward_type":"free_shipping","reward_value":"","discount_label":"Free Shipping","excluded_shipping_methods":["Express"],"exclude_methods":true,"_id":"6a1507e10c63f97087d16a78"}],"currency":"USD","money_format":"store_default","currencySymbol":"$","cta_open_new_tab":true,"show_currency_symbol":true,"currency_symbol_position":"before","message":"Free shipping for orders over {order-value}","close_icon":false,"goal_reached_message":"Congratulations! You've got free shipping!","button_text":{"initial_message":"Shop Now","progress_messages":["Shop Now"],"goal_reached":"Shop Now"},"cta":"none","cta_link":"https:\/\/www.shopify.com","goal_type":"cart_total_amount","progress_calculation":"before_discount_cart","multiple_market":false,"_id":"6a1507e10c63f97087d16a77"},
2243            "product_page": {"enabled":true,"type":"product_page","upsell_enabled":false,"placement_type":"custom","design":{"template":"minimal","position":"top","sticky":false,"close_icon_color":"#202223","color":"#FFFFFF","angle":47,"initial_color":"#DDDDDD","final_color":"#FFFFFF","border_radius":8,"background_pattern":"none","background":"single","border_size":0,"border_color":"#c5c8d1","spacing_inside_top":0,"spacing_inside_bottom":16,"spacing_outside_top":20,"spacing_outside_bottom":20,"progress_bar_bg_color":"#c5d2de","progress_bar_color":"#202223","progress_bar_corner_radius":4,"message_size":16,"price_text_size":16,"price_text_color":"#202223","show_progress_bar":true,"checkout_message_size":"base","checkout_message_color":"info","checkout_price_text_size":"base","checkout_price_text_color":"info","price_text_animation":"none","message_color":"#202223","goal_message_color":"#202223","bar_type":"basic_bar","multiple_goals_marker":"one","bar_width":90,"shipping_bar_width":100,"bar_height":8,"bar_space_above":10,"bar_space_below":20,"button_color":"#202223","button_text_size":16,"button_text_color":"#FFFFFF","button_corner_radius":10,"neon_animation_color":"#9d4edd","count_up_speed":1,"button_style":"round","button_font_weight":["bold"],"button_font_style":"normal","button_animation":"none","button_hover":"none","font":"custom","font_weight":"inherit","
2243icon":"","iconSource":"","iconId":"","icon_position":"before","goal_icons":[],"fireworks":"none","custom_css":"\n.futureblink-free-shipping { \n\n}\n\n.futureblink-free-shipping .futureblink-message {\n\n}\n\n.futureblink-free-shipping .futureblink-icon {\n\n}\n\n.futureblink-free-shipping .futureblink-cta-button {\n\n}\n\n.futureblink-free-shipping .futureblink-price-text {\n\n}\n","custom_css_applied":false,"icon_size":32,"icon_color":"#000000","upsell_section_title_size":14,"upsell_section_title_color":"#000000","upsell_title_size":14,"upsell_title_color":"#202223","upsell_arrow_size":20,"upsell_price_color":"#202223","upsell_price_size":14,"upsell_arrow_color":"#202223","upsell_button_color":"#202223","upsell_button_text_size":14,"upsell_button_text_color":"#FFFFFF","upsell_button_corner_radius":10,"upsell_button_style":"round","upsell_button_font_weight":"bold","upsell_button_font_style":"normal","_id":"6a1507e10c63f97087d16a79"}},
2244            "cart_page": null,
2245            "cart_page_only": {"enabled":true,"type":"cart_page_only","upsell_enabled":false,"placement_type":"custom","design":{"template":"minimal","position":"top","sticky":false,"close_icon_color":"#202223","color":"#FFFFFF","angle":47,"initial_color":"#DDDDDD","final_color":"#FFFFFF","border_radius":8,"background_pattern":"none","background":"single","border_size":0,"border_color":"#c5c8d1","spacing_inside_top":16,"spacing_inside_bottom":16,"spacing_outside_top":20,"spacing_outside_bottom":20,"progress_bar_bg_color":"#c5d2de","progress_bar_color":"#202223","progress_bar_corner_radius":4,"message_size":16,"price_text_size":16,"price_text_color":"#202223","show_progress_bar":true,"checkout_message_size":"base","checkout_message_color":"info","checkout_price_text_size":"base","checkout_price_text_color":"info","price_text_animation":"none","message_color":"#202223","goal_message_color":"#202223","bar_type":"basic_bar","multiple_goals_marker":"one","bar_width":90,"shipping_bar_width":100,"bar_height":8,"bar_space_above":10,"bar_space_below":20,"button_color":"#202223","button_text_size":16,"button_text_color":"#FFFFFF","button_corner_radius":10,"neon_animation_color":"#9d4edd","count_up_speed":1,"button_style":"round","button_font_weight":["bold"],"button_font_style":"normal","button_animation":"none","button_hover":"none","font":"custom","font_weight":"inherit","icon":"","iconSource":"","iconId":"","icon_position":"before","goal_icons":[],"fireworks":"none","custom_css":"\n.futureblink-free-shipping { \n\n}\n\n.futureblink-free-shipping .futureblink-message {\n\n}\n\n.futureblink-free-shipping .futureblink-icon {\n\n}\n\n.futureblink-free-shipping .futureblink-cta-button {\n\n}\n\n.futureblink-free-shipping .futureblink-price-text {\n\n}\n","custom_css_applied":false,"icon_size":32,"icon_color":"#000000","upsell_section_title_size":14,"upsell_section_title_color":"#000000","upsell_title_size":14,"upsell_title_color":"#202223","upsell_arrow_size":20,"upsell_price_color":"#202223","upsell_price_size":14,"upsell_arrow_color":"#202223","upsell_button_color":"#202223","upsell_button_text_size":14,"upsell_button_text_color":"#FFFFFF","upsell_button_corner_radius":10,"upsell_button_style":"round","upsell_button_font_weight":"bold","upsell_button_font_style":"normal","_id":"6a1507e10c63f97087d16a7a"}},
2246            "cart_drawer": {"enabled":false,"type":"cart_drawer","upsell_enabled":true,"placement_type":"default","design":{"template":"vibrant","position":"top","sticky":false,"close_icon_color":"#202223","color":"#FFFFFF","angle":47,"initial_color":"#DDDDDD","final_color":"#FFFFFF","border_radius":8,"background_pattern":"none","background":"single","border_size":2,"border_color":"#f15bb5","spacing_inside_top":16,"spacing_inside_bottom":16,"spacing_outside_top":20,"spacing_outside_bottom":20,"progress_bar_bg_color":"#e9d6ff","progress_bar_color":"#f15bb5","progress_bar_corner_radius":4,"message_size":16,"price_text_size":16,"price_text_color":"#9b5de5","
2246show_progress_bar":true,"checkout_message_size":"base","checkout_message_color":"info","checkout_price_text_size":"base","checkout_price_text_color":"info","price_text_animation":"none","message_color":"#9b5de5","goal_message_color":"#9b5de5","bar_type":"basic_bar","multiple_goals_marker":"one","bar_width":90,"shipping_bar_width":100,"bar_height":8,"bar_space_above":10,"bar_space_below":20,"button_color":"#9b5de5","button_text_size":16,"button_text_color":"#FFFFFF","button_corner_radius":10,"neon_animation_color":"#9d4edd","count_up_speed":1,"button_style":"round","button_font_weight":["bold"],"button_font_style":"normal","button_animation":"none","button_hover":"none","font":"custom","font_weight":"inherit","icon":"","iconSource":"","iconId":"","icon_position":"before","goal_icons":[],"fireworks":"none","custom_css":"\n.futureblink-free-shipping { \n\n}\n\n.futureblink-free-shipping .futureblink-message {\n\n}\n\n.futureblink-free-shipping .futureblink-icon {\n\n}\n\n.futureblink-free-shipping .futureblink-cta-button {\n\n}\n\n.futureblink-free-shipping .futureblink-price-text {\n\n}\n","custom_css_applied":false,"icon_size":32,"icon_color":"#000000","upsell_section_title_size":14,"upsell_section_title_color":"#000000","upsell_title_size":14,"upsell_title_color":"#9b5de5","upsell_arrow_size":20,"upsell_price_color":"#9b5de5","upsell_price_size":14,"upsell_arrow_color":"#000000","upsell_button_color":"#9b5de5","upsell_button_text_size":14,"upsell_button_text_color":"#FFFFFF","upsell_button_corner_radius":10,"upsell_button_style":"round","upsell_button_font_weight":"bold","upsell_button_font_style":"normal","_id":"6a1507e10c63f97087d16a7b"}},
2247            "top_bottom_page": {"enabled":true,"type":"top_bottom_page","upsell_enabled":true,"placement_type":"custom","design":{"template":"custom","position":"top_push","sticky":false,"close_icon_color":"#202223","color":"#cd2351","angle":10,"initial_color":"#FFFFFF","final_color":"#FFFFFF","border_radius":0,"background_pattern":"none","background":"single","border_size":0,"border_color":"#c5c8d1","spacing_inside_top":5,"spacing_inside_bottom":0,"spacing_outside_top":0,"spacing_outside_bottom":0,"progress_bar_bg_color":"#E4E5E7","progress_bar_color":"#ff96dd","progress_bar_corner_radius":4,"message_size":16,"price_text_size":16,"price_text_color":"#ffffff","show_progress_bar":true,"checkout_message_size":"base","checkout_message_color":"info","checkout_price_text_size":"base","checkout_price_text_color":"info","price_text_animation":"breathe","message_color":"#ffffff","goal_message_color":"#ffffff","bar_type":"basic_bar","multiple_goals_marker":"one","bar_width":25,"shipping_bar_width":100,"bar_height":8,"bar_space_above":3,"bar_space_below":5,"button_color":"#000000","button_text_size":16,"button_text_color":"#FFFFFF","button_corner_radius":10,"neon_animation_color":"#ff7c9d","count_up_speed":1,"button_style":"round","button_font_weight":["bold"],"button_font_style":"normal","button_animation":"none","button_hover":"none","font":"custom","font_weight":"500","icon":"","iconSource":"","iconId":"","icon_position":"before","goal_icons":[],"fireworks":"every","custom_css":"\n.futureblink-free-shipping { \n\n}\n\n.futureblink-free-shipping .futureblink-message {\n\n}\n\n.futureblink-free-shipping .futureblink-icon {\n\n}\n\n.futureblink-free-shipping .futureblink-cta-button {\n\n}\n\n.futureblink-free-shipping .futureblink-price-text {\n\n}\n","custom_css_applied":false,"icon_size":32,"icon_color":"#000000","upsell_section_title_size":14,"upsell_section_title_color":"#000000","upsell_title_size":14,"upsell_title_color":"#202223","upsell_arrow_size":20,"upsell_price_color":"#202223","upsell_price_size":14,"upsell_arrow_color":"#000000","upsell_button_color":"#000000","upsell_button_text_size":14,"upsell_button_text_color":"#FFFFFF","upsell_button_corner_radius":10,"upsell_button_style":"round","upsell_button_font_weight":"bold","upsell_button_font_style":"normal","_id":"6a1507e10c63f97087d16a7c"}}
2248          }] 
2249    };</script>
2249
2250
2251
2252
2253<script defer>
2254  // ===============================
2255  //  Currency Handling
2256  // ===============================
2257  function getStoredRates() {
2258    const storedRates = sessionStorage.getItem("currencyRates");
2259    return storedRates ? JSON.parse(storedRates) : null;
2260  }
2261
2262  function storeRates(rates) {
2263    sessionStorage.setItem("currencyRates", JSON.stringify(rates));
2264  }
2265
2266  const cachedRates = getStoredRates();
2267
2268  if (cachedRates) {
2269    window.futureBlink_currencyRates = cachedRates;
2270  } else {
2271    fetch(window.Shopify.routes.root + "services/javascripts/currencies.js")
2272      .then(response => {
2273        if (!response.ok) throw new Error("Failed to load currency data");
2274        return response.text();
2275      })
2276      .then(scriptContent => {
2277        const scriptFunction = new Function(scriptContent + "; return Currency.rates;");
2278        window.futureBlink_currencyRates = scriptFunction();
2279        storeRates(window.futureBlink_currencyRates);
2280      })
2281      .catch(error => console.error("Error loading currency rates:", error));
2282  }
2283
2284  window.futureBlink_storeCurrency = "USD";
2285  window.futureBlink_country = "US";
2286  window.futureBlink_primaryCurrency = "USD";
2287  window.futureBlink_money_format = "${{amount}}";
2288</script>
2288
2289
2290<script defer>
2291  // ===============================
2292  //  Cart info
2293  // ===============================
2294  window.futureBlink_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};
2295
2296  //  Collections attached to this product
2297  window.futureblink_free_shipping_products = {
2298    collections: [],
2299  };
2300
2301  //  Shop language
2302  window.futureblink_free_shipping_shopLanguage = "en";
2303
2304  window.futureblink_free_shipping_collection = {
2305   id: ""
2306  };
2307
2308  //  Current store page details (for specific store pages targeting)
2309  window.futureblink_free_shipping_pageDetails = {
2310    id: "133996577012",
2311    handle: "about"
2312  };
2313
2314  window.futureblink_free_shipping_upsellProd = null;
2315  //  Product details
2316  window.futureblink_free_shipping_productDetails = {
2317    id:"",
2318    price: null,
2319    currency: "USD",
2320    handle:"",
2321    id:"",
2322    tags:null,
2323    variants: [
2324      
2325    ]
2326  };
2327
2328  //  Customer info (if logged in)
2329  
2330    window.futureblink_free_shipping_customerInfo = null;
2331  
2332
2333  // ===============================
2334  // Product Recommendations (via JSON API)
2335  // ===============================
2336  window.hoppy_free_shipping_productRecommendations = {
2337    product_page:[],
2338    cart_page:[]
2339  }
2340</script>
2340
2341
2342<script src="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/currencies.js" defer></script>
vendor: 1 bytes, line 2342
2342
2343<script src="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/countriesWithCurrencycodes.js" defer></script>
vendor: 1 bytes, line 2343
2343
2344<script src="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/tracker.js" defer></script>
2344
2345
2346<script src="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/swiper.js" defer></script>
vendor: 1 bytes, line 2346
2346
2347<script src="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/purify.min.js" defer></script>
vendor: 1 bytes, line 2347
2347
2348<script src="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/script.js" defer></script>
vendor: 1 bytes, line 2348
2348
2349<script src="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/interceptor.js" defer></script>
2349
2350
2351
2352<!-- END app block --><!-- BEGIN app block: shopify://apps/google-search-console-by-mp/blocks/head-meta/019c4b41-f7c5-7366-86bc-ac95bf831b40 -->
2353  <meta name="google-site-verification"
2354        content="5rZMEHWA8F7oUpA7iFeTzz0BduiClzQCrxjsZ4ZGo78">
2355
2356
2357
2358<!-- END app block --><!-- BEGIN app block: shopify://apps/judge-me-reviews/blocks/judgeme_core/61ccd3b1-a9f2-4160-9fe9-4fec8413e5d8 --><!-- Start of Judge.me Core -->
2359
2360
2361
2362
2363
2364
2365
2366<link rel="dns-prefetch" href="https://cdn.judge.me">
2367<link rel="dns-prefetch" href="https://cdn1.judge.me">
2368<link rel="dns-prefetch" href="https://api.judge.me">
2369
2370<script data-cfasync='false' class='jdgm-settings-script'>window.jdgmSettings={"pagination":5,"disable_web_reviews":false,"coupon_receiving_condition":"any_review","coupon_value_type":"percentage","coupon_value_percentage":10,"coupon_value_fixed_amount":0,"coupon_discount_type":"single","coupon_tier_text_enabled":false,"coupon_tier_text_percentage":10,"coupon_tier_text_fixed_amount":0,"coupon_tier_photo_enabled":false,"coupon_tier_photo_percentage":10,"coupon_tier_photo_fixed_amount":0,"coupon_tier_video_enabled":false,"coupon_tier_video_percentage":10,"coupon_tier_video_fixed_amount":0,"enable_coupons":false,"badge_no_review_text":"No reviews","badge_n_reviews_text":"{{ n }} review/reviews","hide_badge_preview_if_no_reviews":false,"badge_hide_text":false,"enforce_center_preview_badge":false,"widget_title":"Customer Reviews","widget_open_form_text":"Write a review","widget_close_form_text":"Cancel review","widget_refresh_page_text":"Refresh page","widget_summary_text":"Based on {{ number_of_reviews }} review/reviews","widget_no_review_text":"Be the first to write a review","widget_name_field_text":"Display name","widget_verified_name_field_text":"Verified Name (public)","widget_name_placeholder_text":"Display name","widget_required_field_error_text":"This field is required.","widget_email_field_text":"Email address","widget_verified_email_field_text":"Verified Email (private, can not be edited)","widget_email_placeholder_text":"Your email address","widget_email_field_error_text":"Please enter a valid email address.","widget_rating_field_text":"Rating","widget_review_title_field_text":"Review Title","widget_review_title_placeholder_text":"Give your review a title","widget_review_body_field_text":"Review content","widget_review_body_placeholder_text":"Start writing here...","widget_pictures_field_text":"Picture/Video (optional)","widget_submit_review_text":"Submit Review","widget_submit_verified_review_text":"Submit Verified Review","widget_submit_success_msg_with_auto_publish":"Thank y
2370ou! Please refresh the page in a few moments to see your review. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_submit_success_msg_no_auto_publish":"Thank you! Your review will be published as soon as it is approved by the shop admin. You can remove or edit your review by logging into \u003ca href='https://judge.me/login' target='_blank' rel='nofollow noopener'\u003eJudge.me\u003c/a\u003e","widget_show_default_reviews_out_of_total_text":"Showing {{ n_reviews_shown }} out of {{ n_reviews }} reviews.","widget_show_all_link_text":"Show all","widget_show_less_link_text":"Show less","widget_author_said_text":"{{ reviewer_name }} said:","widget_days_text":"{{ n }} days ago","widget_weeks_text":"{{ n }} week/weeks ago","widget_months_text":"{{ n }} month/months ago","widget_years_text":"{{ n }} year/years ago","widget_yesterday_text":"Yesterday","widget_today_text":"Today","widget_replied_text":"\u003e\u003e {{ shop_name }} replied:","widget_read_more_text":"Read more","widget_reviewer_name_as_initial":"last_initial","widget_rating_filter_color":"#fbcd0a","widget_rating_filter_see_all_text":"See all reviews","widget_sorting_most_recent_text":"Most Recent","widget_sorting_highest_rating_text":"Highest Rating","widget_sorting_lowest_rating_text":"Lowest Rating","widget_sorting_with_pictures_text":"Only Pictures","widget_sorting_most_helpful_text":"Most Helpful","widget_open_question_form_text":"Ask a question","widget_reviews_subtab_text":"Reviews","widget_questions_subtab_text":"Questions","widget_question_label_text":"Question","widget_answer_label_text":"Answer","widget_question_placeholder_text":"Write your question here","widget_submit_question_text":"Submit Question","widget_question_submit_success_text":"Thank you for your question! We will notify you once it gets answered.","verified_badge_text":"Verified","verified_badge_bg_color":"","verified_badge_text_color":"","verified_badge_placement":"left-of-reviewer-name","widget_review_max_height":"","widget_hide_border":false,"widget_social_share":false,"widget_thumb":false,"widget_review_location_show":false,"widget_location_format":"","all_reviews_include_out_of_store_products":true,"all_reviews_out_of_store_text":"(out of store)","all_reviews_pagination":100,"all_reviews_product_name_prefix_text":"about","enable_review_pictures":true,"enable_question_anwser":false,"widget_theme":"default","review_date_format":"mm/dd/yyyy","default_sort_method":"highest-rating","enable_ai_review_visibility":true,"widget_product_reviews_subtab_text":"Product Reviews","widget_shop_reviews_subtab_text":"Shop Reviews","widget_other_products_reviews_text":"Reviews for other products","widget_store_reviews_subtab_text":"Store reviews","widget_product_variant_reference_text":"Review for","widget_no_store_reviews_text":"This store hasn't received any reviews yet","widget_web_restriction_product_reviews_text":"This product hasn't received any reviews yet","widget_no_items_text":"No items found","widget_show_more_text":"Show more","widget_write_a_store_review_text":"Write a Store Review","widget_product_and_store_reviews_text":"Product and store reviews","widget_reviews_in_collection_text":"Reviews in this collection","widget_other_languages_heading":"Reviews in Other Languages","widget_translate_review_text":"Translate review to {{ language }}","widget_translating_review_text":"Translating...","widget_show_original_translation_text":"Show original ({{ language }})","widget_translate_review_failed_text":"Review couldn't be translated.","widget_translate_review_retry_text":"Retry","widget_translate_review_try_again_later_text":"Try again later","show_product_url_for_grouped_product":false,"widget_sorting_pictures_first_text":"Pictures First","show_pictures_on_all_rev_page_mobile":false,"show_pictures_on_all_rev_page_desktop":false,"floating_tab_hide_mobile_install_preference":false,"floating_tab_button_name":"★ Reviews","floating_tab_title":"Let customers speak for us","floating_tab_button_color":"","floating_tab_button_background_color":"","floating_tab_url":"","floating_tab_url_enabled":false,"floating_tab_tab_style":"text","all_reviews_text_badge_text":"Customers rate us {{ shop.metafields.judgeme.all_reviews_rating | round: 1 }}/5 based on {{ shop.metafields.judgeme.all_reviews_count }} reviews.","all_reviews_text_badge_text_branded_style":"{{ shop.metafields.judgeme.all_reviews_rating | round: 1 }} out of 5 stars based on {{ shop.metafields.judgeme.all_reviews_count }} reviews","is_all_reviews_text_badge_a_link":false,"show_stars_for_all_reviews_text_badge":false,"all_reviews_text_badge_url":"","all_reviews_text_style":"branded","all_reviews_text_color_style":"judgeme_brand_color","all_reviews_text_color":"#108474","all_reviews_text_show_jm_brand":false,"featured_carousel_show_header":true,"featured_carousel_title":"Let customers speak for us","testimonials_carousel_title":"Customers are saying","videos_carousel_title":"Real customer stories","cards_carousel_title":"Customers are saying","featured_carousel_count_text":"from {{ n }} reviews","featured_carousel_add_link_to_all_reviews_page":false,"featured_carousel_url":"","featured_carousel_show_images":true,"featured_carousel_autoslide_interval":5,"featured_carousel_arrows_on_the_sides":false,"featured_carousel_height":250,"featured_carousel_width":80,"featured_carousel_image_size":0,"featured_carousel_image_height":250,"featured_carousel_arrow_color":"#eeeeee","verified_count_badge_style":"branded","verified_count_badge_orientation":"horizontal","verified_count_badge_color_style":"judgeme_brand_color","verified_count_badge_color":"#108474","is_verified_count_badge_a_link":false,"verified_count_badge_url":"","verified_count_badge_show_jm_brand":true,"widget_rating_preset_default":5,"widget_first_sub_tab":"product-reviews","widget_show_histogram":true,"widget_histogram_use_custom_color":false,"widget_pagination_use_custom_color":false,"widget_star_use_custom_color":false,"widget_verified_badge_use_custom_color":false,"widget_write_review_use_custom_color":false,"picture_reminder_submit_button":"Upload Pictures","enable_review_videos":true,"mute_video_by_default":true,"widget_sorting_videos_first_text":"Videos First","widget_review_pending_text":"Pending","featured_carousel_items_for_large_screen":3,"social_share_options_order":"Facebook,Twitter","remove_microdata_snippet":true,"disable_json_ld":false,"enable_json_ld_products":false,"preview_badge_show_question_text":false,"preview_badge_no_question_text":"No questions","preview_badge_n_question_text":"{{ number_of_questions }} question/questions","qa_badge_show_icon":false,"qa_badge_position":"same-row","remove_judgeme_branding":false,"widget_add_search_bar":false,"widget_search_bar_placeholder":"Search","widget_sorting_verified_only_text":"Verified only","widget_sorting_most_relevant_text":"Most Relevant","featured_carousel_theme":"default","featured_carousel_show_rating":true,"featured_carousel_show_title":true,"featured_carousel_show_body":true,"featured_carousel_show_date":false,"featured_carousel_show_reviewer":true,"featured_carousel_show_product":false,"featured_carousel_header_background_color":"#108474","featured_carousel_header_text_color":"#ffffff","featured_carousel_name_product_separator":"reviewed","featured_carousel_full_star_background":"#108474","featured_carousel_empty_star_background":"#dadada","featured_carousel_vertical_theme_background":"#f9fafb","featured_carousel_verified_badge_enable":true,"featured_carousel_verified_badge_color":"#108474","featured_carousel_border_style":"round","featured_carousel_review_line_length_limit":3,"featured_carousel_more_reviews_button_text":"Read more reviews","featured_carousel_view_product_button_text":"View product","all_reviews_page_load_reviews_on":"scroll","all_reviews_page_load_more_text":"Load More Reviews","disable_fb_tab_reviews":false,"enable_ajax_cdn_cache":false,"widget_advanced_speed_features":5,"widget_public_name_text":"displayed publicly like","default_reviewer_name":"John Smith","default_reviewer_name_has_non_latin":true,"widget_reviewer_anonymous":"Anonymous","medals_widget_title":"Judge.me Review Medals","medals_widget_background_color":"#f9fafb","medals_widget_position":"footer_all_pages","medals_widget_border_color":"#f9fafb","medals_widget_verified_text_position":"left","medals_widget_use_monochromatic_version":false,"medals_widget_elements_color":"#108474","show_reviewer_avatar":true,"widget_invalid_yt_video_url_error_text":"Not a YouTube video URL","widget_max_length_field_error_text":"Please enter no more than {0} characters.","widget_show_country_flag":false,"widget_show_collected_via_shop_app":true,"widget_verified_by_shop_badge_style":"light","widget_verified_by_shop_text":"Verified by Shop","widget_show_photo_gallery":true,"widget_load_with_code_splitting":true,"widget_ugc_install_preference":false,"widget_ugc_title":"Made by us, Shared by you","widget_ugc_subt
2370itle":"Tag us to see your picture featured in our page","widget_ugc_arrows_color":"#ffffff","widget_ugc_primary_button_text":"Buy Now","widget_ugc_primary_button_background_color":"#108474","widget_ugc_primary_button_text_color":"#ffffff","widget_ugc_primary_button_border_width":"0","widget_ugc_primary_button_border_style":"none","widget_ugc_primary_button_border_color":"#108474","widget_ugc_primary_button_border_radius":"25","widget_ugc_secondary_button_text":"Load More","widget_ugc_secondary_button_background_color":"#ffffff","widget_ugc_secondary_button_text_color":"#108474","widget_ugc_secondary_button_border_width":"2","widget_ugc_secondary_button_border_style":"solid","widget_ugc_secondary_button_border_color":"#108474","widget_ugc_secondary_button_border_radius":"25","widget_ugc_reviews_button_text":"View Reviews","widget_ugc_reviews_button_background_color":"#ffffff","widget_ugc_reviews_button_text_color":"#108474","widget_ugc_reviews_button_border_width":"2","widget_ugc_reviews_button_border_style":"solid","widget_ugc_reviews_button_border_color":"#108474","widget_ugc_reviews_button_border_radius":"25","widget_ugc_reviews_button_link_to":"judgeme-reviews-page","widget_ugc_show_post_date":true,"widget_ugc_max_width":"800","widget_rating_metafield_value_type":true,"widget_primary_color":"#D31266","widget_enable_secondary_color":false,"widget_secondary_color":"#edf5f5","widget_summary_average_rating_text":"{{ average_rating }} out of 5","widget_media_grid_title":"Customer photos \u0026 videos","widget_media_grid_see_more_text":"See more","widget_round_style":false,"widget_show_product_medals":true,"widget_verified_by_judgeme_text":"Verified by Judge.me","widget_show_store_medals":true,"widget_verified_by_judgeme_text_in_store_medals":"Verified by Judge.me","widget_media_field_exceed_quantity_message":"Sorry, we can only accept {{ max_media }} for one review.","widget_media_field_exceed_limit_message":"{{ file_name }} is too large, please select a {{ media_type }} less than {{ size_limit }}MB.","widget_review_submitted_text":"Review Submitted!","widget_question_submitted_text":"Question Submitted!","widget_close_form_text_question":"Cancel","widget_write_your_answer_here_text":"Write your answer here","widget_enabled_branded_link":true,"widget_show_collected_by_judgeme":false,"widget_reviewer_name_color":"","widget_write_review_text_color":"","widget_write_review_bg_color":"","widget_collected_by_judgeme_text":"collected by Judge.me","widget_pagination_type":"standard","widget_load_more_text":"Load More","widget_load_more_color":"#108474","widget_full_review_text":"Full Review","widget_read_more_reviews_text":"Read More Reviews","widget_read_questions_text":"Read Questions","widget_questions_and_answers_text":"Questions \u0026 Answers","widget_verified_by_text":"Verified by","widget_verified_text":"Verified","widget_number_of_reviews_text":"{{ number_of_reviews }} reviews","widget_back_button_text":"Back","widget_next_button_text":"Next","widget_custom_forms_filter_button":"Filters","custom_forms_style":"horizontal","widget_show_review_information":false,"how_reviews_are_collected":"How reviews are collected?","widget_show_review_keywords":false,"widget_gdpr_statement":"How we use your data: We'll only contact you about the review you left, and only if necessary. By submitting your review, you agree to Judge.me's \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms\u003c/a\u003e, \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy\u003c/a\u003e and \u003ca href='https://judge.me/content-policy' target='_blank' rel='nofollow noopener'\u003econtent\u003c/a\u003e policies.","widget_multilingual_sorting_enabled":false,"widget_translate_review_content_enabled":false,"widget_translate_review_content_method":"manual","popup_widget_review_selection":"automatically_with_pictures","popup_widget_round_border_style":true,"popup_widget_show_title":true,"popup_widget_show_body":true,"popup_widget_show_reviewer":false,"popup_widget_show_product":true,"popup_widget_show_pictures":true,"popup_widget_use_review_picture":true,"popup_widget_show_on_home_page":true,"popup_widget_show_on_product_page":true,"popup_widget_show_on_collection_page":true,"popup_widget_show_on_cart_page":true,"popup_widget_position":"bottom_left","popup_widget_first_review_delay":5,"popup_widget_duration":5,"popup_widget_interval":5,"popup_widget_review_count":5,"popup_widget_hide_on_mobile":true,"review_snippet_widget_round_border_style":true,"review_snippet_widget_card_color":"#FFFFFF","review_snippet_widget_text_color":"#000000","review_snippet_widget_lighter_text_color":"#7B7B7B","review_snippet_widget_slider_arrows_background_color":"#FFFFFF","review_snippet_widget_slider_arrows_color":"#000000","review_snippet_widget_star_color":"#D31266","show_product_variant":false,"all_reviews_product_variant_label_text":"Variant: ","widget_show_verified_branding":true,"widget_ai_summary_title":"Customers say","widget_ai_summary_disclaimer":"AI-powered review summary based on recent customer reviews","widget_show_ai_summary":false,"widget_show_ai_summary_bg":false,"write_review_button_visibility":"everyone","store_summary_widget_heading":"Customers rate this store","store_summary_widget_button_text":"View customer reviews","store_summary_widget_button_theme_text":"See AI reviews summary","widget_show_review_title_input":false,"widget_autofill_review_title":true,"redirect_reviewers_invited_via_email":"external_form","request_store_review_after_product_review":true,"request_review_other_products_in_order":true,"review_form_color_scheme":"default","review_form_corner_style":"square","review_form_star_color":"#D31266","review_form_text_color":"#333333","review_form_background_color":"#ffffff","review_form_field_background_color":"#fafafa","review_form_button_color":"#D31266","review_form_button_text_color":"#ffffff","review_form_modal_overlay_color":"#000000","review_form_theme":"multi_step","review_form_location":"in_store_popup","review_form_external_page_background_color":"#C5F7F0","review_content_screen_title_text":"How would you rate this product?","review_content_introduction_text":"We would love it if you would share a bit about your experience.","store_review_form_title_text":"How would you rate this store?","store_review_form_introduction_text":"We would love it if you would share a bit about your experience.","show_review_guidance_text":true,"one_star_review_guidance_text":"Poor","five_star_review_guidance_text":"Great","customer_information_screen_title_text":"About you","customer_information_introduction_text":"Please tell us more about you.","custom_questions_screen_title_text":"Your experience in more detail","custom_questions_introduction_text":"Here are a few questions to help us understand more about your experience.","review_submitted_screen_title_text":"Thanks for your review!","review_submitted_screen_thank_you_text":"We are processing it and it will appear on the store soon.","review_submitted_screen_email_verification_text":"Please confirm your email by clicking the link we just sent you. This helps us keep reviews authentic.","confirm_email_screen_title_text":"Confirm your email","confirm_email_screen_message_text":"To help keep reviews authentic, we'll send you a secure link to continue writing your review. It only takes a moment.","check_email_screen_title_text":"Check your email","check_email_screen_message_text":"We sent you an email to {{ email }}. Click the button on the email to continue.","check_email_screen_resend_message_text":"Email resent!","check_email_resend_hint_text":"Didn't get the email? Check your spam folder or [resend the email].","verification_email_rate_limit_error_text":"You've reached the limit for review attempts on this product. Please check your inbox or try again later.","review_submitted_request_store_review_text":"Would you like to share your experience of shopping with us?","review_submitted_review_other_products_text":"Would you like to review these products?","store_review_screen_title_text":"Would you like to share your experience of shopping with us?","store_review_introduction_text":"We value your feedback and use it to improve. Please share any thoughts or suggestions you have.","reviewer_media_screen_title_picture_text":"Share a picture","reviewer_media_introduction_picture_text":"Upload a photo to support your review.","reviewer_media_screen_title_video_text":"Share a video","reviewer_media_introduction_video_text":"Upload a video to support your review.","reviewer_media_screen_title_picture_or_video_text":"Share a picture or video","reviewer_media_introduction_picture_or_video_text":"Upload a photo or video to support your review.","reviewer_media_
2370youtube_url_text":"Paste your Youtube URL here","advanced_settings_next_step_button_text":"Next","advanced_settings_close_review_button_text":"Close","modal_write_review_flow":true,"write_review_flow_required_text":"Required","write_review_flow_privacy_message_text":"We respect your privacy.","write_review_flow_anonymous_text":"Post review as anonymous","write_review_flow_visibility_text":"This won't be visible to other customers.","write_review_flow_multiple_selection_help_text":"Select as many as you like","write_review_flow_single_selection_help_text":"Select one option","write_review_flow_required_field_error_text":"This field is required","write_review_flow_invalid_email_error_text":"Please enter a valid email address","write_review_flow_max_length_error_text":"Max. {{ max_length }} characters.","write_review_flow_media_upload_text":"\u003cb\u003eClick to upload\u003c/b\u003e or drag and drop","write_review_flow_gdpr_statement":"We'll only contact you about your review if necessary. By submitting your review, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","rating_only_reviews_enabled":false,"show_negative_reviews_help_screen":true,"new_review_flow_help_screen_rating_threshold":3,"negative_review_resolution_screen_title_text":"Tell us more","negative_review_resolution_text":"Your experience matters to us. If there were issues with your purchase, we're here to help. Feel free to reach out to us, we'd love the opportunity to make things right.","negative_review_resolution_button_text":"Contact us","negative_review_resolution_proceed_with_review_text":"Leave a review","negative_review_resolution_subject":"Issue with purchase from {{ shop_name }}.{{ order_name }}","coupon_promo_intro_any_review_text":"Write a review and get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_photo_text":"Write a review and add a photo or video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_with_video_text":"Write a review and add a video to get a coupon for {{ amount }} off your next purchase","coupon_promo_intro_up_to_any_review_text":"Write a review and get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_up_to_with_photo_text":"Write a review and add a photo or video to get a coupon for up to {{ amount }} off your next purchase","coupon_promo_intro_external_text":"Write a review and get a reward for your next purchase","coupon_promo_intro_external_with_photo_text":"Write a review and add a photo or video to get a reward for your next purchase","coupon_promo_intro_external_with_video_text":"Write a review and add a video to get a reward for your next purchase","coupon_promo_media_photo_text":"Add a photo or video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_photo_only_text":"Add a photo and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_video_text":"Add a video and get a coupon for {{ amount }} off your next purchase","coupon_promo_media_external_photo_text":"Add a photo or video and get a reward for your next purchase","coupon_promo_media_external_photo_only_text":"Add a photo and get a reward for your next purchase","coupon_promo_media_external_video_text":"Add a video and get a reward for your next purchase","coupon_promo_success_text":"You've got a coupon for your next purchase at {{ shop_name }}!","coupon_promo_success_subtext":"You'll receive your coupon email within the hour.","preview_badge_collection_page_install_status":false,"widget_review_custom_css":"","preview_badge_custom_css":"","preview_badge_stars_count":"5-stars","featured_carousel_custom_css":"","floating_tab_custom_css":"","all_reviews_widget_custom_css":"","medals_widget_custom_css":"","verified_badge_custom_css":"","all_reviews_text_custom_css":"","transparency_badges_collected_via_store_invite":false,"transparency_badges_from_another_provider":false,"transparency_badges_collected_from_store_visitor":false,"transparency_badges_collected_by_verified_review_provider":true,"transparency_badges_earned_reward":false,"transparency_badges_collected_via_store_invite_text":"Review collected via store invitation","transparency_badges_from_another_provider_text":"Review collected from another provider","transparency_badges_collected_from_store_visitor_text":"Review collected from a store visitor","transparency_badges_written_in_google_text":"Review written in Google","transparency_badges_written_in_etsy_text":"Review written in Etsy","transparency_badges_written_in_shop_app_text":"Review written in Shop App","transparency_badges_earned_reward_text":"Review earned a reward for future purchase","product_review_widget_per_page":4,"widget_other_languages_reviews_per_page":3,"widget_store_review_label_text":"Review about the store","widget_cart_mode_aggregate_heading_text":"Customers rate this store","checkout_comment_extension_title_on_product_page":"Customer Comments","checkout_comment_extension_num_latest_comment_show":5,"checkout_comment_extension_format":"name_and_timestamp","checkout_comment_customer_name":"last_initial","checkout_comment_comment_notification":true,"preview_badge_collection_page_install_preference":false,"preview_badge_home_page_install_preference":false,"preview_badge_product_page_install_preference":false,"review_widget_install_preference":"","review_carousel_install_preference":false,"floating_reviews_tab_install_preference":"none","verified_reviews_count_badge_install_preference":false,"all_reviews_text_install_preference":false,"review_widget_best_location":false,"judgeme_medals_install_preference":false,"review_widget_revamp_enabled":true,"review_widget_qna_enabled":false,"review_widget_revamp_dual_publish_end_date":"2026-06-09T20:03:17.000+00:00","review_widget_header_theme":"standard","review_widget_widget_title_enabled":true,"review_widget_header_text_size":"medium","review_widget_header_text_weight":"regular","review_widget_average_rating_style":"compact","review_widget_bar_chart_enabled":true,"review_widget_bar_chart_type":"numbers","review_widget_bar_chart_style":"standard","review_widget_expanded_media_gallery_enabled":false,"review_widget_show_review_highlights":false,"review_widget_show_review_keywords_in_gray":false,"review_widget_reviews_section_theme":"cards","review_widget_image_style":"thumbnails","review_widget_review_image_ratio":"square","review_widget_stars_size":"medium","review_widget_verified_badge":"standard_text","review_widget_review_title_text_size":"medium","review_widget_review_text_size":"medium","review_widget_review_text_length":"medium","review_widget_number_of_columns_desktop":3,"review_widget_carousel_transition_speed":5,"review_widget_custom_questions_answers_display":"hidden","review_widget_card_section_size":"small","review_widget_button_text_color":"#FFFFFF","review_widget_text_color":"#000000","review_widget_lighter_text_color":"#7B7B7B","review_widget_corner_styling":"soft","review_widget_review_word_singular":"review","review_widget_review_word_plural"
2370:"reviews","review_widget_voting_label":"Helpful?","review_widget_shop_reply_label":"Reply from {{ shop_name }}:","review_widget_filters_title":"Filters","review_widget_filter_rating_title":"Rating","review_widget_filter_keyword_title":"Keyword","review_widget_clear_filters_text":"Clear filters","review_widget_expand_more_text":"More","review_widget_review_highlights_title":"Review highlights","qna_widget_question_word_singular":"Question","qna_widget_question_word_plural":"Questions","qna_widget_answer_reply_label":"Answer from {{ answerer_name }}:","qna_content_screen_title_text":"Ask a question about this product","qna_widget_question_required_field_error_text":"Please enter your question.","qna_widget_flow_gdpr_statement":"We'll only contact you about your question if necessary. By submitting your question, you agree to our \u003ca href='https://judge.me/terms' target='_blank' rel='nofollow noopener'\u003eterms and conditions\u003c/a\u003e and \u003ca href='https://judge.me/privacy' target='_blank' rel='nofollow noopener'\u003eprivacy policy\u003c/a\u003e.","qna_widget_question_submitted_text":"Thanks for your question!","qna_widget_close_form_text_question":"Close","qna_widget_question_submit_success_text":"We’ll notify you by email when your question is answered.","all_reviews_widget_v2025_enabled":true,"all_reviews_widget_v2025_header_theme":"default","all_reviews_widget_v2025_widget_title_enabled":true,"all_reviews_widget_v2025_header_text_size":"medium","all_reviews_widget_v2025_header_text_weight":"regular","all_reviews_widget_v2025_average_rating_style":"compact","all_reviews_widget_v2025_bar_chart_enabled":true,"all_reviews_widget_v2025_bar_chart_type":"numbers","all_reviews_widget_v2025_bar_chart_style":"standard","all_reviews_widget_v2025_expanded_media_gallery_enabled":false,"all_reviews_widget_v2025_show_store_medals":true,"all_reviews_widget_v2025_show_photo_gallery":true,"all_reviews_widget_v2025_show_review_keywords":false,"all_reviews_widget_v2025_show_ai_summary":false,"all_reviews_widget_v2025_show_ai_summary_bg":false,"all_reviews_widget_v2025_show_review_highlights":false,"all_reviews_widget_v2025_show_review_keywords_in_gray":false,"all_reviews_widget_v2025_add_search_bar":false,"all_reviews_widget_v2025_default_sort_method":"most-recent","all_reviews_widget_v2025_reviews_per_page":10,"all_reviews_widget_v2025_reviews_section_theme":"default","all_reviews_widget_v2025_image_style":"thumbnails","all_reviews_widget_v2025_review_image_ratio":"square","all_reviews_widget_v2025_stars_size":"medium","all_reviews_widget_v2025_verified_badge":"standard_text","all_reviews_widget_v2025_review_title_text_size":"medium","all_reviews_widget_v2025_review_text_size":"medium","all_reviews_widget_v2025_review_text_length":"medium","all_reviews_widget_v2025_number_of_columns_desktop":3,"all_reviews_widget_v2025_carousel_transition_speed":5,"all_reviews_widget_v2025_custom_questions_answers_display":"always","all_reviews_widget_v2025_review_dates":false,"all_reviews_widget_v2025_card_section_size":"small","all_reviews_widget_v2025_show_product_variant":false,"all_reviews_widget_v2025_show_reviewer_avatar":true,"all_reviews_widget_v2025_reviewer_name_as_initial":"","all_reviews_widget_v2025_review_location_show":false,"all_reviews_widget_v2025_location_format":"","all_reviews_widget_v2025_show_country_flag":false,"all_reviews_widget_v2025_widget_thumb":false,"all_reviews_widget_v2025_verified_by_shop_badge_style":"light","all_reviews_widget_v2025_social_share":false,"all_reviews_widget_v2025_social_share_options_order":"Facebook,Twitter,LinkedIn,Pinterest","all_reviews_widget_v2025_pagination_type":"standard","all_reviews_widget_v2025_button_text_color":"#FFFFFF","all_reviews_widget_v2025_text_color":"#000000","all_reviews_widget_v2025_lighter_text_color":"#7B7B7B","all_reviews_widget_v2025_corner_styling":"soft","all_reviews_widget_v2025_title":"Customer reviews","all_reviews_widget_v2025_ai_summary_title":"Customers say about this store","all_reviews_widget_v2025_no_review_text":"Be the first to write a review","all_reviews_widget_v2025_review_highlights_title":"Review highlights","reviews_grid_widget_show_sample_reviews":false,"reviews_grid_widget_review_selection":"all","reviews_grid_widget_select_products":[],"reviews_grid_widget_show_media_only":false,"reviews_grid_widget_display_order":"media_first","reviews_grid_widget_card_grouping":"per_media","reviews_grid_widget_columns_desktop":3,"reviews_grid_widget_rows_desktop":3,"reviews_grid_widget_columns_mobile":2,"reviews_grid_widget_rows_mobile":6,"reviews_grid_widget_show_stars":true,"reviews_grid_widget_show_reviewer_name":true,"reviews_grid_widget_show_review_title_on_hover_desktop":true,"reviews_grid_widget_corner_styling":"soft","reviews_grid_widget_card_spacing":"medium","reviews_grid_widget_header_text_color":"#000000","reviews_grid_widget_star_and_reviewer_name_color":"#F9F9F9","reviews_grid_widget_overlay_and_background_color":"#000000","reviews_grid_widget_content_color":"#F9F9F9","reviews_grid_widget_header_text":"From our customers","reviews_grid_widget_show_average_rating":true,"trust_badge_enabled":false,"trust_badge_structure":"outline","trust_badge_color":"black","trust_badge_star":"black","trust_badge_rating_display_default":"show_avg_text","platform":"shopify","branding_url":"https://app.judge.me/reviews","branding_text":"Powered by Judge.me","locale":"en","reply_name":"Perfectly Pos
2370h","shop_currency":"USD","widget_version":"3.0","footer":true,"autopublish":true,"review_dates":true,"enable_custom_form":false,"shop_locale":"en","enable_multi_locales_translations":true,"show_review_title_input":false,"autofill_review_title":true,"review_verification_email_status":"never","require_verification_before_submit":false,"sign_in_with_shop_enabled":false,"customer_account_validation_enabled":true,"most_relevant_sort_enabled":false,"coupon_promo_invited_eligible":true,"coupon_promo_web_eligible":false,"uses_coupon_integration":false,"uses_external_coupon":false,"negative_review_notification_email":"[email protected]","can_be_branded":true,"rtl_stars_enabled_ar":true,"rtl_stars_enabled_he":true,"reply_name_text":"Perfectly Posh"};</script>
2370 <style class='jdgm-settings-style'>.jdgm-xx{left:0}:root{--jdgm-primary-color: #D31266;--jdgm-secondary-color: rgba(211,18,102,0.1);--jdgm-star-color: #D31266;--jdgm-write-review-text-color: white;--jdgm-write-review-bg-color: #D31266;--jdgm-paginate-color: #D31266;--jdgm-border-radius: 0;--jdgm-reviewer-name-color: #D31266}.jdgm-histogram__bar-content{background-color:#D31266}.jdgm-rev[data-verified-buyer=true] .jdgm-rev__icon.jdgm-rev__icon:after,.jdgm-rev__buyer-badge.jdgm-rev__buyer-badge{color:white;background-color:#D31266}.jdgm-review-widget--small .jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}@media only screen and (min-width: 768px){.jdgm-gallery.jdgm-gallery .jdgm-gallery__thumbnail-link:nth-child(8) .jdgm-gallery__thumbnail-wrapper.jdgm-gallery__thumbnail-wrapper:before{content:"See more"}}.jdgm-author-fullname{display:none !important}.jdgm-author-all-initials{display:none !important}.jdgm-rev-widg__title{visibility:hidden}.jdgm-rev-widg__summary-text{visibility:hidden}.jdgm-prev-badge__text{visibility:hidden}.jdgm-rev__prod-link-prefix:before{content:'about'}.jdgm-rev__variant-label:before{content:'Variant: '}.jdgm-rev__out-of-store-text:before{content:'(out of store)'}@media only screen and (min-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}@media only screen and (max-width: 768px){.jdgm-rev__pics .jdgm-rev_all-rev-page-picture-separator,.jdgm-rev__pics .jdgm-rev__product-picture{display:none}}.jdgm-preview-badge[data-template="product"]{display:none !important}.jdgm-preview-badge[data-template="collection"]{display:none !important}.jdgm-preview-badge[data-template="index"]{display:none !important}.jdgm-review-widget[data-from-snippet="true"]{display:none !important}.jdgm-verified-count-badget[data-from-snippet="true"]{display:none !important}.jdgm-carousel-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-all-reviews-text[data-from-snippet="true"]{display:none !important}.jdgm-medals-section[data-from-snippet="true"]{display:none !important}.jdgm-ugc-media-wrapper[data-from-snippet="true"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_via_store_invitation"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_another_provider"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_collected_from_store_visitor"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_earned_for_future_purchase"]{display:none !important}.jdgm-review-snippet-widget{--jdgm-snippet-card-color: #fff;--jdgm-snippet-text-color: #000;--jdgm-snippet-lighter-text-color: #7B7B7B;--jdgm-snippet-star-color: #D31266;--jdgm-snippet-border-radius: 8px;--jdgm-snippet-arrows-bg-color: #fff;--jdgm-snippet-arrows-color: #000}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card{border-radius:8px;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__cards-container .jdgm-rev-snippet-card__rev-rating .jdgm-star{color:#D31266}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn{border-radius:50%;background:#fff}.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__prev-btn>svg,.jdgm-review-snippet-widget .jdgm-rev-snippet-widget__next-btn>svg{fill:#000}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jm-mfp-content,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__icon,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__pic-img,.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev__reply{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev[data-verified-buyer="true"] .jdgm-full-rev__icon::after{border-radius:8px}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-rev__buyer-badge{border-radius:calc( 8px / 2 )}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__replier::before{content:'Perfectly Pos
2370h'}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__product-button{border-radius:calc( 8px * 6 )}
2371</style> <style class='jdgm-settings-style'></style>
2372
2373  
2374  
2375  
2376  <style class='jdgm-miracle-styles'>
2377  @-webkit-keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes jdgm-spin{0%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg);-ms-transform:rotate(359deg);transform:rotate(359deg)}}@font-face{font-family:'JudgemeStar';src:url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAAScAA0AAAAABrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAEgAAAABoAAAAcbyQ+3kdERUYAAARgAAAAHgAAACAAMwAGT1MvMgAAAZgAAABGAAAAVi+vS9xjbWFwAAAB8AAAAEAAAAFKwBMjvmdhc3AAAARYAAAACAAAAAj//wADZ2x5ZgAAAkAAAAEJAAABdH33LXtoZWFkAAABMAAAAC0AAAA2BroQKWhoZWEAAAFgAAAAHAAAACQD5QHQaG10eAAAAeAAAAAPAAAAFAYAAABsb2NhAAACMAAAAA4AAAAOAO4AeG1heHAAAAF8AAAAHAAAACAASgAvbmFtZQAAA0wAAADeAAABkorWfVZwb3N0AAAELAAAACkAAABEp3ubLXgBY2BkYADhPPP4OfH8Nl8ZuJkYQODS2fRrCPr/aSYGxq1ALgcDWBoAO60LkwAAAHgBY2BkYGDc+v80gx4TAwgASaAICmABAFB+Arl4AWNgZGBgYGPQYWBiAAIwyQgWc2AAAwAHVQB6eAFjYGRiYJzAwMrAwejDmMbAwOAOpb8ySDK0MDAwMbByMsCBAAMCBKS5pjA4PGB4wMR44P8BBj3GrQymQGFGkBwAjtgK/gAAeAFjYoAAEA1jAwAAZAAHAHgB3crBCcAwDEPRZydkih567CDdf4ZskmLwFBV8xBfCaC4BXkOUmx4sU0h2ngNb9V0vQCxaRKIAevT7fGWuBrEAAAAAAAAAAAA0AHgAugAAeAF9z79Kw1AUx/FzTm7un6QmJtwmQ5Bg1abgEGr/BAqlU6Gju+Cgg1MkQ/sA7Vj7BOnmO/gUvo2Lo14NqIO6/I
2377azfD8HEODtmQCfoANwNsyp2/GJt3WKQrd1NLiYYWx2PBqOsmJMEOznPOTzfSCrhAtbbLdmeFLJV9eKd63WLrZcIcuaEVdssWCKM6pLCfTVOYbz/0pNSMSZKLIZpvh78sAUH6PlMrreTCabP9r+Z/puPZ2ur/RqpQHgh+MIegCnXeM4MRAPjYN//5tj4ZtTjkFqEdmeMShlEJ7tVAly2TAkx6R68Fl4E/aVvn8JqHFQ4JS1434gXKcuL31dDhzs3YbsEOAd/IU88gAAAHgBfY4xTgMxEEVfkk0AgRCioKFxQYd2ZRtpixxgRU2RfhU5q5VWseQ4JdfgAJyBlmNwAM7ABRhZQ0ORwp7nr+eZAa54YwYg9zm3ynPOeFRe8MCrciXOh/KSS76UV5L/iDmrLiS5AeU519wrL3jmSbkS5115yR2fyivJv9kx0ZMZ2RLZw27q87iNQi8EBo5FSPIMw3HqBboi5lKTGAGDp8FKXWP+t9TU01Lj5His1Ba6uM9dTEMwvrFmbf5GC/q2drW3ruXUhhsCiQOjznFlCzYhHUZp4xp76vsvQh89CQAAeAFjYGJABowM6IANLMrEyMTIzMjCXpyRWJBqZshWXJJYBKOMAFHFBucAAAAAAAAB//8AAngBY2BkYGDgA2IJBhBgAvKZGViBJAuYxwAABJsAOgAAeAFjYGBgZACCk535hiD60tn0azAaAEqpB6wAAA==") format("woff");font-weight:normal;font-style:normal}.jdgm-star{font-family:'JudgemeStar';display:inline !important;text-decoration:none !important;padding:0 4px 0 0 !important;margin:0 !important;font-weight:bold;opacity:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.jdgm-star:hover{opacity:1}.jdgm-star:last-of-type{padding:0 !important}.jdgm-star.jdgm--on:before{content:"\e000"}.jdgm-star.jdgm--off:before{content:"\e001"}.jdgm-star.jdgm--half:before{content:"\e002"}.jdgm-widget *{margin:0;line-height:1.4;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-overflow-scrolling:touch}.jdgm-hidden{display:none !important;visibility:hidden !important}.jdgm-temp-hidden{display:none}.jdgm-spinner{width:40px;height:40px;margin:auto;border-radius:50%;border-top:2px solid #eee;border-right:2px solid #eee;border-bottom:2px solid #eee;border-left:2px solid #ccc;-webkit-animation:jdgm-spin 0.8s infinite linear;animation:jdgm-spin 0.8s infinite linear}.jdgm-spinner:empty{display:block}.jdgm-prev-badge{display:block !important}
2378
2379</style>
2380
2381
2382  
2383  
2384   
2385
2386
2387
2388
2389<script data-cfasync='false' class='jdgm-script'>
2390!function(e){window.jdgm=window.jdgm||{};
2391/* INF-1976 */
2392var _jdgmBlocked=function(){var raw=(window.jdgmSettings||{}).hostname_allowlist;var list=(raw==null?"":""+raw).split(/[\s,]+/).map(function(h){return h.trim().toLowerCase().replace(/\.$/,"");}).filter(function(h){return h;});if(!list.length)return false;var host=(e.location.hostname||"").toLowerCase().replace(/\.$/,"");if(/(^|\.)shopifypreview\.com$/.test(host))return false;var bare=host.replace(/^www\./,"");for(var i=0;i<list.length;i++){var en=list[i];if(en.indexOf("*.")===0){var b=en.slice(2);if(host===b||host.slice(-(b.length+1))==="."+b)return false;}else if(bare===en.replace(/^www\./,""))return false;}return true;}();
2393if(_jdgmBlocked){jdgm._loaderExecuted=true;jdgm._blocked=true;var _jdgmS=e.createElement("style");_jdgmS.textContent='[class^="jdgm-"],[class*=" jdgm-"]{display:none !important}';(e.head||e.documentElement).appendChild(_jdgmS);return;}
2394jdgm.CDN_HOST="https://cdnwidget.judge.me/",jdgm.CDN_HOST_ALT="https://cdn2.judge.me/cdn/widget_frontend/",jdgm.API_HOST="https://api.judge.me/",jdgm.CDN_BASE_URL="https://cdn.shopify.com/extensions/01a0f14c-14c3-7c54-8630-ec498be121ab/judgeme-770/assets/",jdgm.CDN_API_HOST="https://cdn.judge.me/",
2395jdgm.docReady=function(d){(e.attachEvent?"complete"===e.readyState:"loading"!==e.readyState)?
2396setTimeout(d,0):e.addEventListener("DOMContentLoaded",d)},jdgm.loadCSS=function(d,t,o,a){
2397!o&&jdgm.loadCSS.requestedUrls.indexOf(d)>=0||(jdgm.loadCSS.requestedUrls.push(d),
2398(a=e.createElement("link")).rel="stylesheet",a.class="jdgm-stylesheet",a.media="nope!",
2399a.href=d,a.onload=function(){this.media="all",t&&setTimeout(t)},e.body.appendChild(a))},
2400jdgm.loadCSS.requestedUrls=[],jdgm.loadJS=function(e,d){var t=new XMLHttpRequest;
2401t.onreadystatechange=function(){4===t.readyState&&t.status>=200&&t.status<300&&(Function(t.response)(),d&&d(t.response))},
2402t.open("GET",e),t.onerror=function(){if(e.indexOf(jdgm.CDN_HOST)===0&&jdgm.CDN_HOST_ALT!==jdgm.CDN_HOST){var f=e.replace(jdgm.CDN_HOST,jdgm.CDN_HOST_ALT);jdgm.loadJS(f,d)}},t.send()},jdgm.docReady((function(){(window.jdgmLoadCSS||e.querySelectorAll(
2403".jdgm-widget, .jdgm-all-reviews-page").length>0)&&(jdgmSettings.widget_load_with_code_splitting?
2404parseFloat(jdgmSettings.widget_version)>=3?jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_v3_base.css"):
2405jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_base.css"):jdgm.loadCSS(jdgm.CDN_BASE_URL+"shopify_v2.css")
2406)}))}(document);
2407</script>
2407
2408<noscript><link rel="stylesheet" type="text/css" media="all" href="https://cdn.shopify.com/extensions/01a0f14c-14c3-7c54-8630-ec498be121ab/judgeme-770/assets/shopify_v2.css"></noscript>
2409
2410<!-- BEGIN app snippet: theme_fix_tags -->
2410<script>
2411  (function() {
2412    var jdgmThemeFixes = null;
2413    if (!jdgmThemeFixes) return;
2414
2415    // "All themes" fix: CSS and JS applied on every theme. CSS is injected
2416    // before the per-theme fix so the theme-specific CSS wins the cascade.
2417    // HTML is never applied globally (too risky).
2418    var allThemesFix = jdgmThemeFixes['all'];
2419    if (allThemesFix && allThemesFix.css) {
2420      var allStyleTag = document.createElement('style');
2421      allStyleTag.classList.add('jdgm-theme-fix-style-all');
2422      allStyleTag.innerHTML = allThemesFix.css;
2423      document.head.append(allStyleTag);
2424    };
2425
2426    if (allThemesFix && allThemesFix.js) {
2427      var allScriptTag = document.createElement('script');
2428      allScriptTag.classList.add('jdgm-theme-fix-script-all');
2429      allScriptTag.innerHTML = allThemesFix.js;
2430      document.head.append(allScriptTag);
2431    };
2432
2433    var thisThemeFix = jdgmThemeFixes[Shopify.theme.id];
2434    if (!thisThemeFix) return;
2435
2436    if (thisThemeFix.html) {
2437      document.addEventListener("DOMContentLoaded", function() {
2438        var htmlDiv = document.createElement('div');
2439        htmlDiv.classList.add('jdgm-theme-fix-html');
2440        htmlDiv.innerHTML = thisThemeFix.html;
2441        document.body.append(htmlDiv);
2442      });
2443    };
2444
2445    if (thisThemeFix.css) {
2446      var styleTag = document.createElement('style');
2447      styleTag.classList.add('jdgm-theme-fix-style');
2448      styleTag.innerHTML = thisThemeFix.css;
2449      document.head.append(styleTag);
2450    };
2451
2452    if (thisThemeFix.js) {
2453      var scriptTag = document.createElement('script');
2454      scriptTag.classList.add('jdgm-theme-fix-script');
2455      scriptTag.innerHTML = thisThemeFix.js;
2456      document.head.append(scriptTag);
2457    };
2458  })();
2459</script>
2459
2460<!-- END app snippet -->
2461<!-- End of Judge.me Core -->
2462
2463
2464
2465<!-- END app block --><!-- BEGIN app block: shopify://apps/pagefly-ai-page-builder/blocks/app-embed/83e179f7-59a0-4589-8c66-c0dddf959200 -->
2466
2467<!-- BEGIN app snippet: pagefly-cro-ab-testing-main -->
2468
2469
2470
2471
2472
2473
2474
2475<script>
2476  ;(function () {
2477    const url = new URL(window.location)
2478    const viewParam = url.searchParams.get('view')
2479    if (viewParam && viewParam.includes('variant-pf-')) {
2480      url.searchParams.set('pf_v', viewParam)
2481      url.searchParams.delete('view')
2482      window.history.replaceState({}, '', url)
2483    }
2484  })()
2485</script>
2485
2486
2487
2488
2489<script type='module'>
2490  
2491  window.PAGEFLY_CRO = window.PAGEFLY_CRO || {}
2492
2493  window.PAGEFLY_CRO['data_debug'] = {
2494    original_template_suffix: "pf-258e770a",
2495    allow_ab_test: false,
2496    ab_test_start_time: 0,
2497    ab_test_end_time: 0,
2498    today_date_time: 1790857714000,
2499  }
2500  window.PAGEFLY_CRO['GA4'] = { enabled: false}
2501</script>
2501
2502
2503<!-- END app snippet -->
2504
2505
2506
2507
2508
2509
2510
2511
2512  
2512<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-helper.js' defer='defer'></script>
2512
2513
2514  
2514<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-general-helper.js' defer='defer'></script>
2514
2515
2516  
2516<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-snap-slider.js' defer='defer'></script>
2516
2517
2518  
2518<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-slideshow-v3.js' defer='defer'></script>
2518
2519
2520  
2520<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-slideshow-v4.js' defer='defer'></script>
2520
2521
2522  
2522<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-glider.js' defer='defer'></script>
2522
2523
2524  
2524<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-slideshow-v1-v2.js' defer='defer'></script>
2524
2525
2526  
2526<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-product-media.js' defer='defer'></script>
2526
2527
2528  
2528<script src='https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-product.js' defer='defer'></script>
2528
2529
2530
2531<script id='pagefly-helper-data' type='application/json'>
2532  {
2533    "page_optimization": {
2534      "assets_prefetching": false
2535    },
2536    "elements_asset_mapper": {
2537      "Accordion": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-accordion.js",
2538      "Accordion3": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-accordion3.js",
2539      "CountDown": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-countdown.js",
2540      "GMap1": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-gmap.js",
2541      "GMap2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-gmap.js",
2542      "GMapBasicV2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-gmap.js",
2543      "GMapAdvancedV2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-gmap.js",
2544      "HTML.Video": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-htmlvideo.js",
2545      "HTML.Video2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-htmlvideo2.js",
2546      "HTML.Video3": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-htmlvideo2.js",
2547      "BackgroundVideo": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-htmlvideo2.js",
2548      "Instagram": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-instagram.js",
2549      "Instagram2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-instagram.js",
2550      "Insta3": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-instagram3.js",
2551      "Tabs": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-tab.js",
2552      "Tabs3": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-tab3.js",
2553      "ProductBox": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-cart.js",
2554      "FBPageBox2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-facebook.js",
2555      "FBLikeButton2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-facebook.js",
2556      "TwitterFeed2": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-twitter.js",
2557      "Paragraph4": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-paragraph4.js",
2558
2559      "AliReviews": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2560      "BackInStock": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2561      "GloboBackInStock": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2562      "GrowaveWishlist": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2563      "InfiniteOptionsShopPad": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2564      "InkybayProductPersonalizer": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder
2564-362/assets/pagefly-3rd-elements.js",
2565      "LimeSpot": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2566      "Loox": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2567      "Opinew": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2568      "Powr": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2569      "ProductReviews": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2570      "PushOwl": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2571      "ReCharge": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2572      "Rivyo": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2573      "TrackingMore": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2574      "Vitals": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js",
2575      "Wiser": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-3rd-elements.js"
2576    },
2577    "custom_elements_mapper": {
2578      "pf-click-action-element": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-click-action-element.js",
2579      "pf-dialog-element": "https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-dialog-element.js"
2580    }
2581  }
2582</script>
2582
2583
2584<script id='pagefly-heatmap-config' type='application/json'>
2585  {}
2586</script>
vendor: 1 bytes, line 2586
2586
2587<script>
2588  (function () {
2589    var el = document.getElementById('pagefly-heatmap-config')
2590    if (!el) { window.__pagefly_heatmap_config__ = {}; return }
2591    try {
2592      window.__pagefly_heatmap_config__ = JSON.parse(el.textContent || '{}') || {}
2593    } catch (e) {
2594      window.__pagefly_heatmap_config__ = {}
2595    }
2596  })()
2597</script>
vendor: 1 bytes, line 2597
2597
2598<script>
2599  // Heatmap overlay loader. Three gates, all of them cheap, none of them trusting the URL:
2600  // the visitor must have arrived on a pf_heatmap link, the SERVER must have published an
2601  // overlay path in the metafield, and this page must already be one the merchant enabled
2602  // tracking for. The last gate is what stops a crafted link pulling the asset onto an
2603  // arbitrary storefront page. Everything else is decided inside the asset, and by the server.
2604  (function () {
2605    var cfg = window.__pagefly_heatmap_config__ || {}
2606    var id = (window.__pagefly_page_setting__ || {}).pageId
2607    if (!/[#&]pf_heatmap=/.test(window.location.hash || '')) return
2608    if (!cfg.overlay_data_path || !Array.isArray(cfg.enabled_page_ids)) return
2609    if (!id || cfg.enabled_page_ids.indexOf(id) === -1) return
2610    var s = document.createElement('script')
2611    s.src = 'https://cdn.shopify.com/extensions/01a0f63e-fe44-7dd6-9af5-35cad58052d3/pagefly-ai-page-builder-362/assets/pagefly-heatmap-overlay.js'
2612    s.defer = true
2613    document.head.appendChild(s)
2614  })()
2615</script>
2615
2616
2617<!-- BEGIN app snippet: pf-ai-schema -->
2618<!-- END app snippet -->
2619
2620
2621<!-- END app block --><link href="https://cdn.shopify.com/extensions/01a0f316-2faf-7f6d-89a1-a82adb7ab91b/hoppy-free-shipping-355/assets/styles.css" rel="stylesheet" type="text/css" media="all">
2622<script src="https://cdn.shopify.com/extensions/01a0f14c-14c3-7c54-8630-ec498be121ab/judgeme-770/assets/loader.js" type="text/javascript" defer="defer"></script>
2622
2623<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
2624<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: 82549899508,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "page"};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 2624
2624
2625<script>
2626  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
2627</script>
vendor: 1 bytes, line 2627
2627
2628<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}
2628).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: 82549899508,storefrontBaseUrl: "https://perfectlyposh.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://perfectlyposh.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"2521137396","configuration":"{\"shop\":\"perfectlyposh-2.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"933d4caa1e2cc643aeb46e3c5f7a4c7d","type":"APP","apiClientId":18394152961,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]}
2628,"dataSharingState":"unrestricted"},{"id":"2366013684","configuration":"{\"tagID\":\"2614149766714\"}","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":"2355527924","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-71G3SPYMZB\\\",\\\"GT-PZXWFZ6Q\\\"],\\\"target_country\\\":\\\"ZZ\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-71G3SPYMZB\\\"},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-71G3SPYMZB\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-71G3SPYMZB\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-71G3SPYMZB\\\",\\\"MC-KL94CHFN7F\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-71G3SPYMZB\\\",\\\"MC-KL94CHFN7F\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-71G3SPYMZB\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-71G3SPYMZB\\\",\\\"MC-KL94CHFN7F\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-71G3SPYMZB\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-71G3SPYMZB\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-71G3SPYMZB\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-71G3SPYMZB\\\"}],\\\"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":"2351628532","configuration":"{\"webPixelName\":\"Judge.me\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8acc938b1a30dc7624e304493ca567d7","type":"APP","apiClientId":683015,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"2313879796","configuration":"{\"pixel_id\":\"997635779456128\",\"pixel_type\":\"facebook_pixel\"}","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":"2313814260","configuration":"{\"event_token\":\"4dc9f23f-8f60-4a38-86c7-8bfac81ec5ca\",\"enable_custom_events\":\"true\",\"track_collection_viewed\":\"on\",\"track_product_viewed\":\"on\",\"track_search_submitted\":\"on\",\"track_product_added_to_cart\":\"on\",\"track_checkout_started\":\"on\",\"track_checkout_completed\":\"on\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"f94152a1342128c38737f23b09d99c86","type":"APP","apiClientId":100569088001,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":[],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"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":"Perfectly Pos
2628h","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"perfectlyposh-2.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/perfectlyposh.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"9464479416564","handle":"call-me-rosie-rose-clay-cleansing-chunk-big-bath-bar","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"48231466467572","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"9464482169076","handle":"daily-greens-cleansing-face-wash","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"48231469285620","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"9464481939700","handle":"iykyk-cleansing-conditioner","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"48231469056244","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"9464479580404","handle":"mfeo-mint-for-each-other-chunk-big-bath-bar","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"48231466631412","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://perfectlyposh.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"161340162292","themeStoreId":"2481","themePublished":"true","eventMetadataId":"bf9862ef-c917-4fbc-9f27-b2ba0c9ac53a","pageType":"page","resourceId":"133996577012","shopId":"82549899508","storefrontBaseUrl":"https:\/\/perfectlyposh.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
2628<script>
2629  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
2630  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
2631  window.ShopifyAnalytics.meta.currency = 'USD';
2632  var meta = {"page":{"pageType":"page","resourceType":"page","resourceId":133996577012,"requestId":"2f0ae8e9-b97b-40b7-8bd9-cf10a98ccde0-1790857714"}};
2633  for (var attr in meta) {
2634    window.ShopifyAnalytics.meta[attr] = meta[attr];
2635  }
2636</script>
vendor: 1 bytes, line 2636
2636
2637<script class="analytics">
2638  (function () {
2639    var customDocumentWrite = function(content) {
2640      var jquery = null;
2641
2642      if (window.jQuery) {
2643        jquery = window.jQuery;
2644      } else if (window.Checkout && window.Checkout.$) {
2645        jquery = window.Checkout.$;
2646      }
2647
2648      if (jquery) {
2649        jquery('body').append(content);
2650      }
2651    };
2652
2653    var hasLoggedConversion = function(token) {
2654      if (token) {
2655        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
2656      }
2657      return false;
2658    }
2659
2660    var setCookieIfConversion = function(token) {
2661      if (token) {
2662        var twoMonthsFromNow = new Date(Date.now());
2663        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
2664
2665        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
2666      }
2667    }
2668
2669    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
2670    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
2671    if (trekkie.integrations) {
2672      return;
2673    }
2674    trekkie.methods = [
2675      'identify',
2676      'page',
2677      'ready',
2678      'track',
2679      'trackForm',
2680      'trackLink'
2681    ];
2682    trekkie.factory = function(method) {
2683      return function() {
2684        var args = Array.prototype.slice.call(arguments);
2685        args.unshift(method);
2686        trekkie.push(args);
2687        if (method == 'track' || method == 'page') {
2688          var pageUrl;
2689          try {
2690            pageUrl = window.location.href;
2691          } catch (e) {}
2692          var pageReferrer;
2693          try {
2694            pageReferrer = document.referrer;
2695          } catch (e) {}
2696          try {
2697            if (window.__TREKKIE_SHIM_QUEUE == null) {
2698              window.__TREKKIE_SHIM_QUEUE = [];
2699            }
2700            window.__TREKKIE_SHIM_QUEUE.push({
2701              from: 'trekkie-stub',
2702              method: method,
2703              args: args.slice(1),
2704              pageContext: {
2705                url: pageUrl,
2706                referrer: pageReferrer
2707              }
2708            });
2709          } catch (e) {
2710            // no-op
2711          }
2712        }
2713        return trekkie;
2714      };
2715    };
2716    for (var i = 0; i < trekkie.methods.length; i++) {
2717      var key = trekkie.methods[i];
2718      trekkie[key] = trekkie.factory(key);
2719    }
2720    trekkie.load = function(config) {
2721      trekkie.config = config || {};
2722      trekkie.config.initialDocumentCookie = document.cookie;
2723      var first = document.getElementsByTagName('script')[0];
2724var script = document.createElement('script');
2725script.type = 'text/javascript';
2726script.onerror = function(e) {
2727  var scriptFallback = document.createElement('script');
2728  scriptFallback.type = 'text/javascript';
2729  scriptFallback.onerror = function(error) {
2730          var Monorail = {
2731      produce: function produce(monorailDomain, schemaId, payload) {
2732        var currentMs = new Date().getTime();
2733        var event = {
2734          schema_id: schemaId,
2735          payload: payload,
2736          metadata: {
2737            event_created_at_ms: currentMs,
2738            event_sent_at_ms: currentMs
2739          }
2740        };
2741        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
2742      },
2743      sendRequest: function sendRequest(endpointUrl, payload) {
2744        // Try the sendBeacon API
2745        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
2746          var blobData = new window.Blob([payload], {
2747            type: 'text/plain'
2748          });
2749
2750          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
2751            return true;
2752          } // sendBeacon was not successful
2753
2754        } // XHR beacon
2755
2756        var xhr = new XMLHttpRequest();
2757
2758        try {
2759          xhr.open('POST', endpointUrl);
2760          xhr.setRequestHeader('Content-Type', 'text/plain');
2761          xhr.send(payload);
2762        } catch (e) {
2763          console.log(e);
2764        }
2765
2766        return false;
2767      },
2768      isIos12: function isIos12() {
2769        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
2770      }
2771    };
2772    Monorail.produce('monorail-edge.shopifysvc.com',
2773      'trekkie_storefront_load_errors/1.1',
2774      {shop_id: 82549899508,
2775      theme_id: 161340162292,
2776      app_name: "storefront",
2777      context_url: window.location.href,
2778      source_url: "//perfectlyposh.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
2779
2780  };
2781  scriptFallback.async = true;
2782  scriptFallback.src = '//perfectlyposh.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
2783  first.parentNode.insertBefore(scriptFallback, first);
2784};
2785script.async = true;
2786script.src = '//perfectlyposh.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
2787first.parentNode.insertBefore(script, first);
2788
2789    };
2790    trekkie.load(
2791      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":82549899508,"isMerchantRequest":null,"themeId":161340162292,"themeCityHash":"1986269163160318789","contentLanguage":"en","currency":"USD","eventMetadataId":"bf9862ef-c917-4fbc-9f27-b2ba0c9ac53a"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
2792    );
2793
2794    var loaded = false;
2795    trekkie.ready(function() {
2796      if (loaded) return;
2797      loaded = true;
2798
2799      window.ShopifyAnalytics.lib = window.trekkie;
2800
2801      var originalDocumentWrite = document.write;
2802      document.write = customDocumentWrite;
2803      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
2804      document.write = originalDocumentWrite;
2805
2806      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
2807      var token = match? match[1]: undefined;
2808      if (!hasLoggedConversion(token)) {
2809        setCookieIfConversion(token);
2810        
2811      }
2812    });
2813
2814    window.ShopifyAnalytics.lib.page(null,{"pageType":"page","resourceType":"page","resourceId":133996577012,"requestId":"2f0ae8e9-b97b-40b7-8bd9-cf10a98ccde0-1790857714","shopifyEmitted":true});
2815
2816    var eventsListenerScript = document.createElement('script');
2817    eventsListenerScript.async = true;
2818    eventsListenerScript.src = "//perfectlyposh.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
2819    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
2820})();</script>
vendor: 1 bytes, line 2820
2820
2821<script
2822  defer
2823  src="https://perfectlyposh.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
2824  data-application="storefront-renderer"
2825  data-shop-id="82549899508"
2826  data-render-region="gcp-us-central1"
2827  data-page-type="page"
2828  data-theme-instance-id="161340162292"
2829  data-theme-name="Horizon"
2830  data-theme-version="3.5.1"
2831  data-monorail-region="shop_domain"
2832  data-resource-timing-sampling-rate="10"
2833  data-shs="true"
2834  data-shs-beacon="true"
2835  data-shs-export-with-fetch="true"
2836  data-shs-logs-sample-rate="1"
2837  data-shs-beacon-endpoint="https://perfectlyposh.com/api/collect"
2838></script>
vendor: 1 bytes, line 2838
2838
2839<script src="https://cdn.shopify.com/storefront/web-components/account.js" type="module" crossorigin fetchpriority="low" async></script>
2839<script id="shopify-customer-account-data" type="application/json">{"customer":null,"shop":{"id":"82549899508","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":true},"visitor":{"country":"US","language":"en"}}</script>
2839
2840<meta name="shopify-y" content="b36c8550-b19d-4b40-a185-a9376b087b6d" data-expiration="1822415314000"><meta name="shopify-s" content="132b6314-07de-46de-97d0-a39df2004f0b" data-expiration="1790859514000"><meta name="new-cookie-storage-activated" content="t">
2841</head>
2842
2843  <body class="page-width-normal card-hover-effect-none">
2844    <a
2845  class="skip-to-content-link button-secondary"
2846  href="#MainContent"
2847>
2848  Skip to content
2849</a>
2850
2851
2852
2853    <div id="header-group">
2854      <!-- BEGIN sections: header-group -->
2855<div id="shopify-section-sections--22214414565620__1779765280ebe3ffb2" class="shopify-section shopify-section-group-header-group section-wrapper">
2856
2857
2858
2859<div class="section-background color-scheme-7428e935-b223-4598-9dc4-78c24b04e5d6"></div>
2860<div
2861  class="section section--full-width color-scheme-7428e935-b223-4598-9dc4-78c24b04e5d6"
2862  data-testid="ui-test-section"
2863
2864  
2865
2866  style="
2867    
2868
2869    
2870  "
2871>
2872  <div class="custom-section-background">
2873    
2874
2875
2876
2877  </div>
2878
2879  <div
2880    class="border-style custom-section-content"
2881    style="--border-width: 1px; --border-style: none; --border-color:
2882rgb(var(--color-border-rgb) / 1.0); --border-radius:
28830px; 
2884"
2885  >
2886    
2887
2888    <div
2889      class="
2890        spacing-style
2891        layout-panel-flex
2892        layout-panel-flex--column
2893        section-content-wrapper
2894         mobile-column
2895      "
2896      style="
2897        --flex-direction: column; --flex-wrap: nowrap; --flex-wrap-mobile: wrap;
2898
2899--gap: 12px;
2900
2901--horizontal-alignment: center; --vertical-alignment: center;
2902--vertical-alignment-mobile: center;
2903
2904        --padding-block-start: 0px;--padding-block-end: 0px;
2905      "
2906      data-testid="section-content"
2907    >
2908      
2909  
2910
2911<div>
2912  <div futureblink-shipping-type=top_bottom_page class="futureblink-shipping-bar-block" id=ffac516b-d32a-4c50-926e-0e70fa7ec0dc></div>
2913</div>
2914
2915
2916
2917
2918    </div>
2919  </div>
2920</div>
2921
2922
2923
2924
2925
2926</div><header id="shopify-section-sections--22214414565620__header_section" class="shopify-section shopify-section-group-header-group header-section">
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936<script type="application/ld+json">
2937  {
2938    "@context": "http://schema.org",
2939    "@type": "Organization",
2940    "name": "Perfectly Posh",
2941    
2942      "logo": "https:\/\/perfectlyposh.com\/cdn\/shop\/files\/logo-pink.png?v=1778884144\u0026width=500",
2943    
2944    "url": "https:\/\/perfectlyposh.com\/pages\/about"
2945  }
2946</script>
2946
2947
2948<header-component
2949  id="header-component"
2950  class="header"
2951  data-theme-color="rgb(255 255 255)"
2952  
2953  
2954    sticky="scroll-up"
2955  
2956  data-skip-node-update
2957  data-scroll-direction="none"
2958  
2959  
2960  style="
2961    --color-scheme-top-row: rgba(255 255 255 / 1.0);
2962    --color-scheme-bottom-row: rgba(255 255 255 / 1.0);
2963    
2964  "
2965>
2966  <div class="header__underlay header__underlay-closed"></div>
2967  <div
2968    class="header__underlay header__underlay-open"
2969  ></div>
2970    
2971
2972    
2973
2974    
2975    
2976      <div
2977        class="header__row header__row--top color-scheme-1 section section--full-width-margin section--page-width"
2978        ref="headerRowTop"style="--border-bottom-width: 1px; --border-bottom-width-mobile: 1px;">
2979        <div class="header__columns spacing-style">
2980          <div
2981      class="header__column header__column--left"
2982      data-testid="header-top-left"
2983    >
2984      
2985        
2986          
2987              
2988
2989
2990
2991    <div
2992      class="header__drawer"
2993      ref="headerDrawerContainer"
2994      data-hydration-key="header-drawer-mobile"
2995      
2996    >
2997      
2998
2999<script
3000  src="//perfectlyposh.com/cdn/shop/t/1/assets/header-drawer.js?v=121243031541024704371777514867"
3001  type="module"
3002  fetchpriority="low"
3003></script>
3003
3004
3005<header-drawer
3006  class="header-drawer "
3007  style="--menu-image-border-radius: 0px; --resource-card-corner-radius: 0px;"
3008>
3009  <details
3010    id="Details-menu-drawer-container"
3011    data-skip-node-update="true"
3012    class="menu-drawer-container"
3013    ref="details"
3014    scroll-lock
3015  >
3016    <summary
3017      class="header__icon header__icon--menu header__icon--summary"
3018      aria-label="Menu"
3019      on:click="/toggle"
3020    >
3021      <span class="svg-wrapper header-drawer-icon header-drawer-icon--open"><svg aria-hidden="true" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
3022  <path d="M1 3.5H13" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round"/>
3023  <path d="M1 10.5H13" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round"/>
3024</svg>
3025</span>
3026      <span class="svg-wrapper header-drawer-icon header-drawer-icon--close"><svg aria-hidden="true" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
3027  <path d="M12 2L2 12" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
3028  <path d="M12 12L2 2" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
3029</svg>
3030</span>
3031    </summary>
3032    <div
3033      ref="menuDrawer"
3034      class="
3035        menu-drawer
3036        color-scheme-33425aff-5b18-4143-8aae-041d65a8b7ec
3037      "
3038    >
3039      <button
3040        class="button close-button menu-drawer__close-button"
3041        type="button"
3042        aria-label="Close"
3043        on:click="/close"
3044      >
3045        <span class="svg-wrapper header-drawer-icon header-drawer-icon--close"><svg aria-hidden="true" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
3046  <path d="M12 2L2 12" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
3047  <path d="M12 12L2 2" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
3048</svg>
3049</span>
3050      </button>
3051      <nav
3052        class="menu-drawer__navigation"
3053        style="--menu-top-level-font-family: var(--font-subheading--family);
3054--menu-top-level-font-size-desktop: 0.875rem; --menu-top-level-font-style: var(--font-subheading--style); --menu-top-level-font-weight: var(--font-subheading--weight); --menu-top-level-font-case:uppercase;
3055
3056  --menu-top-level-font-size: var(--menu-font-2xl--size); --menu-top-level-font-line-height:
3057  var(--menu-font-2xl--line-height);
3058
3059--menu-top-level-font-color: var(--color-foreground); --menu-top-level-font-color-rgb: var(--color-foreground-rgb);
3060
3061--menu-parent-font-family: var(--font-subheading--family); --menu-parent-font-style:
3062var(--font-subheading--style); --menu-parent-font-weight: var(--font-subheading--weight); --menu-parent-font-case:
3063uppercase;
3064
3065    --menu-parent-font-size: var(--menu-font-sm--size); --menu-parent-font-line-height:
3066    var(--menu-font-sm--line-height); --menu-parent-font-color: rgb(var(--color-foreground-rgb) /
3067    var(--opacity-subdued-text)); --menu-parent-active-font-color: var(--color-foreground);
3068  
3069--menu-child-font-family: var(--font-subheading--family); --menu-child-font-style:
3070var(--font-subheading--style); --menu-child-font-weight: var(--font-subheading--weight); --menu-child-font-case:
3071uppercase;
3072
3073    --menu-child-font-size: var(--menu-font-md--size); --menu-child-font-line-height: var(--menu-font-md--line-height);
3074    --menu-child-font-color: var(--color-foreground); --menu-child-active-font-color: rgb(var(--color-foreground-rgb) /
3075    var(--opacity-subdued-text));
3076  
3077
3078        "
3079        aria-label="Primary"
3080      >
3081        <ul
3082          class="menu-drawer__menu has-submenu"
3083          role="list"
3084        >
3085            
3086            
3087
3088              <li
3089                style="--menu-drawer-animation-index: 1;"
3090                class="menu-drawer__list-item--flat"
3091              >
3092                
3093<a
3094                    id="HeaderDrawer-home"
3095                    href="/"
3096                    class="menu-drawer__menu-item menu-drawer__menu-item--mainlist menu-drawer__animated-element focus-inset"
3097                    
3098                  >
3099                    <span class="menu-drawer__menu-item-text wrap-text">HOME</span>
3100                  </a>
3101                
3102              </li>
3103              <li
3104                style="--menu-drawer-animation-index: 2;"
3105                class="menu-drawer__list-item--flat"
3106              >
3107                
3108<a
3109                    id="HeaderDrawer-shop-products"
3110                    href="https://perfectlyposh.com/collections/all?sort_by=best-selling"
3111                    class="menu-drawer__menu-item menu-drawer__menu-item--mainlist menu-drawer__animated-element focus-inset"
3112                    
3113                  >
3114                    <span class="menu-drawer__menu-item-text wrap-text">SHOP PRODUCTS</span>
3115                  </a>
3116                
3117              </li>
3118              <li
3119                style="--menu-drawer-animation-index: 3;"
3120                class="menu-drawer__list-item--flat"
3121              >
3122                
3123<a
3124                    id="HeaderDrawer-ingredients"
3125                    href="/pages/ingredients"
3126                    class="menu-drawer__menu-item menu-drawer__menu-item--mainlist menu-drawer__animated-element focus-inset"
3127                    
3128                  >
3129                    <span class="menu-drawer__menu-item-text wrap-text">INGREDIENTS</span>
3130                  </a>
3131                
3132              </li>
3133              <li
3134                style="--menu-drawer-animation-index: 4;"
3135                class="menu-drawer__list-item--flat"
3136              >
3137                
3138<a
3139                    id="HeaderDrawer-happy-customers"
3140                    href="/pages/happy-customers"
3141                    class="menu-drawer__menu-item menu-drawer__menu-item--mainlist menu-drawer__animated-element focus-inset"
3142                    
3143                  >
3144                    <span class="menu-drawer__menu-item-text wrap-text">HAPPY CUSTOMERS</span>
3145                  </a>
3146                
3147              </li>
3148              <li
3149                style="--menu-drawer-animation-index: 5;"
3150                class="menu-drawer__list-item--flat"
3151              >
3152                
3153<a
3154                    id="HeaderDrawer-track-order"
3155                    href="https://perfectlyposh.com/apps/track"
3156                    class="menu-drawer__menu-item menu-drawer__menu-item--mainlist menu-drawer__animated-element focus-inset"
3157                    
3158                  >
3159                    <span class="menu-drawer__menu-item-text wrap-text">TRACK ORDER</span>
3160                  </a>
3161                
3162              </li>
3163              <li
3164                style="--menu-drawer-animation-index: 6;"
3165                class="menu-drawer__list-item--flat"
3166              >
3167                
3168<a
3169                    id="HeaderDrawer-about"
3170                    href="/pages/about"
3171                    class="menu-drawer__menu-item menu-drawer__menu-item--mainlist menu-drawer__animated-element focus-inset"
3172                    
3173                      aria-current="page"
3174                    
3175                  >
3176                    <span class="menu-drawer__menu-item-text wrap-text">ABOUT</span>
3177                  </a>
3178                
3179              </li>
3180              <li
3181                style="--menu-drawer-animation-index: 7;"
3182                class="menu-drawer__list-item--flat"
3183              >
3184                
3185<a
3186                    id="HeaderDrawer-contact"
3187                    href="/pages/contact"
3188                    class="menu-drawer__menu-item menu-drawer__menu-item--mainlist menu-drawer__animated-element focus-inset"
3189                    
3190                  >
3191                    <span class="menu-drawer__menu-item-text wrap-text">CONTACT</span>
3192                  </a>
3193                
3194              </li>
3195        </ul>
3196      </nav>
3197      <div
3198        class="menu-drawer__utility-links menu-drawer__animated-element"
3199        style="--menu-drawer-animation-index: 7;"
3200      >
3201        
3202        </div>
3203
3204      
3205    </div>
3206    <div
3207      class="menu-drawer__backdrop"
3208      on:click="header-drawer/close"
3209    ></div>
3210  </details>
3211</header-drawer>
3212
3213
3214
3215    </div>
3216
3217  
3218
3219<style data-shopify>
3220  .header__underlay {
3221    --color-submenu: rgb(255 255 255 / 1.0);
3222  }
3223</style>
3224
3225
3226
3227
3228            
3229        
3230      
3231        
3232          
3233              
3234  <search-button
3235    class="search-action search-action--hidden-on-menu"
3236  >
3237    <button
3238      on:click="#search-modal/showDialog"
3239      class="button-unstyled header-actions__action"
3240      aria-label="Search"
3241      aria-haspopup="dialog"
3242    >
3243      <span class="hidden">
3244        Search
3245      </span>
3246
3247      <span class="svg-wrapper ">
3248        <svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><circle cx="9" cy="9" r="4.75" stroke="currentColor" stroke-width="var(--icon-stroke-width)"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="var(--icon-stroke-width)" d="m12.5 12.5 3.25 3.25"/></svg>
3249
3250      </span>
3251    </button>
3252  </search-button>
3253
3254
3255
3256
3257            
3258        
3259      
3260        
3261          
3262              
3263
3264
3265
3266
3267<a
3268  
3269  href="/"
3270  class="size-style spacing-style header-logo"
3271  style="
3272    --size-style-width: ;--size-style-height: ;
3273    --padding-block-start: 0px;--padding-block-end: 0px;
3274    --font-family: var(--font-body--family);
3275    --font-style: var(--font-body--style);
3276    --font-weight: 600;
3277  "
3278  
3279>
3280  
3281
3282  <span
3283    class="header-logo__image-container header-logo__image-container--original"
3284    data-testid="header-logo"
3285  >
3286    
3287  
3288  
3289  
3290  
3291
3292  
3293
3294  
3295
3296  
3297
3298  <img src="//perfectlyposh.com/cdn/shop/files/logo-pink.png?height=100&amp;v=1778884144" alt="The image features the words Perfectly posh in pink cursive and uppercase letters on a white background, with perfectly above posh in a bold, stylish script." width="140" height="100" class="header-logo__image" srcset="//perfectlyposh.com/cdn/shop/files/logo-pink.png?height=100&amp;v=1778884144 1x, //perfectlyposh.com/cdn/shop/files/logo-pink.png?height=200&amp;v=1778884144 2x, //perfectlyposh.com/cdn/shop/files/logo-pink.png?height=300&amp;v=1778884144 3x" style="--header-logo-image-width: 140px;--header-logo-image-width-mobile: 84px; --header-logo-image-height: 100px; --header-logo-image-height-mobile: 60px;">
3299
3300
3301  </span>
3302
3303  
3304</a>
3305
3306
3307
3308
3309
3310            
3311        
3312      
3313        
3314          
3315              
3316
3317
3318
3319    
3320
3321    
3322
3323    <header-menu
3324      ref="headerMenu"
3325      class="header-menu"
3326      
3327      data-hydration-key="header-menu"
3328    >
3329      <div class="header-menu__inner">
3330        <nav
3331          class="menu-list"
3332          aria-label="Primary"
3333          style="--menu-top-level-font-family: var(--font-subheading--family);
3334--menu-top-level-font-size-desktop: 0.875rem; --menu-top-level-font-style: var(--font-subheading--style); --menu-top-level-font-weight: var(--font-subheading--weight); --menu-top-level-font-case:uppercase;
3335
3336  --menu-top-level-font-size: var(--menu-font-sm--size); --menu-top-level-font-line-height:
3337  var(--menu-font-sm--line-height);
3338
3339--menu-top-level-font-color: var(--color-foreground); --menu-top-level-font-color-rgb: var(--color-foreground-rgb);
3340"
3341        >
3342          
3343          <overflow-list
3344  
3345    ref="overflowMenu"
3346  
3347  
3348    class="overflow-menu color-scheme-33425aff-5b18-4143-8aae-041d65a8b7ec color-scheme-matches-parent"
3349  
3350  
3351    minimum-items="2"
3352  
3353  
3354    data-testid="header-menu-overflow-list"
3355  
3356  
3357    data-skip-node-update
3358  
3359>
3360  <template shadowrootmode="open">
3361    <link href="//perfectlyposh.com/cdn/shop/t/1/assets/overflow-list.css?v=16727044177065489451777514867" rel="stylesheet" type="text/css" media="all" />
3362
3363    <ul part="list">
3364      <slot></slot>
3365      <slot
3366        name="more"
3367        part="more"
3368        hidden
3369        
3370      >
3371        <li
3372          part="more"
3373        >
3374          <button
3375            class="button"
3376            type="button"
3377            tabindex="0"
3378            
3379          >
3380            More
3381          </button>
3382        </li>
3383      </slot>
3384      <li
3385        part="placeholder"
3386        hidden
3387      ></li>
3388    </ul>
3389
3390    <div part="overflow">
3391      <ul part="overflow-list">
3392        <slot name="overflow"></slot>
3393      </ul>
3394    </div>
3395  </template>
3396
3397  
3398      
3399        <li
3400          role="presentation"
3401          class="menu-list__list-item"
3402          on:focus="/activate"
3403          on:blur="/deactivate"
3404          on:pointerenter="/activate"
3405          on:pointerleave="/deactivate"
3406        >
3407          <a
3408            href="/"
3409            data-skip-node-update="true"
3410            class="menu-list__link"
3411            ref="menuitem"
3412          >
3413            <span class="menu-list__link-title">HOME</span>
3414          </a></li>
3415      
3416        <li
3417          role="presentation"
3418          class="menu-list__list-item"
3419          on:focus="/activate"
3420          on:blur="/deactivate"
3421          on:pointerenter="/activate"
3422          on:pointerleave="/deactivate"
3423        >
3424          <a
3425            href="https://perfectlyposh.com/collections/all?sort_by=best-selling"
3426            data-skip-node-update="true"
3427            class="menu-list__link"
3428            ref="menuitem"
3429          >
3430            <span class="menu-list__link-title">SHOP PRODUCTS</span>
3431          </a></li>
3432      
3433        <li
3434          role="presentation"
3435          class="menu-list__list-item"
3436          on:focus="/activate"
3437          on:blur="/deactivate"
3438          on:pointerenter="/activate"
3439          on:pointerleave="/deactivate"
3440        >
3441          <a
3442            href="/pages/ingredients"
3443            data-skip-node-update="true"
3444            class="menu-list__link"
3445            ref="menuitem"
3446          >
3447            <span class="menu-list__link-title">INGREDIENTS</span>
3448          </a></li>
3449      
3450        <li
3451          role="presentation"
3452          class="menu-list__list-item"
3453          on:focus="/activate"
3454          on:blur="/deactivate"
3455          on:pointerenter="/activate"
3456          on:pointerleave="/deactivate"
3457        >
3458          <a
3459            href="/pages/happy-customers"
3460            data-skip-node-update="true"
3461            class="menu-list__link"
3462            ref="menuitem"
3463          >
3464            <span class="menu-list__link-title">HAPPY CUSTOMERS</span>
3465          </a></li>
3466      
3467        <li
3468          role="presentation"
3469          class="menu-list__list-item"
3470          on:focus="/activate"
3471          on:blur="/deactivate"
3472          on:pointerenter="/activate"
3473          on:pointerleave="/deactivate"
3474        >
3475          <a
3476            href="https://perfectlyposh.com/apps/track"
3477            data-skip-node-update="true"
3478            class="menu-list__link"
3479            ref="menuitem"
3480          >
3481            <span class="menu-list__link-title">TRACK ORDER</span>
3482          </a></li>
3483      
3484        <li
3485          role="presentation"
3486          class="menu-list__list-item"
3487          on:focus="/activate"
3488          on:blur="/deactivate"
3489          on:pointerenter="/activate"
3490          on:pointerleave="/deactivate"
3491        >
3492          <a
3493            href="/pages/about"
3494            data-skip-node-update="true"
3495            class="menu-list__link menu-list__link--active"
3496              aria-current="page"
3497            
3498            ref="menuitem"
3499          >
3500            <span class="menu-list__link-title">ABOUT</span>
3501          </a></li>
3502      
3503        <li
3504          role="presentation"
3505          class="menu-list__list-item"
3506          on:focus="/activate"
3507          on:blur="/deactivate"
3508          on:pointerenter="/activate"
3509          on:pointerleave="/deactivate"
3510        >
3511          <a
3512            href="/pages/contact"
3513            data-skip-node-update="true"
3514            class="menu-list__link"
3515            ref="menuitem"
3516          >
3517            <span class="menu-list__link-title">CONTACT</span>
3518          </a></li>
3519      
3520      <li
3521        class="menu-list__list-item"
3522        role="presentation"
3523        slot="more"
3524        on:focus="/activate"
3525        on:blur="/deactivate"
3526        on:pointerenter="/activate"
3527        on:pointerleave="/deactivate"
3528      >
3529        <button role="listitem" class="menu-list__link button-unstyled">
3530          <span class="menu-list__link-title">More</span>
3531        </button>
3532      </li>
3533    
3534</overflow-list>
3535
3536        </nav>
3537      </div>
3538
3539      
3539<script
3540        src="//perfectlyposh.com/cdn/shop/t/1/assets/header-menu.js?v=97820922056036071501777514867"
3541        type="module"
3542        fetchpriority="low"
3543      ></script>
3543
3544    </header-menu>
3545
3546
3547<style data-shopify>
3548  .header__underlay {
3549    --color-submenu: rgb(255 255 255 / 1.0);
3550  }
3551</style>
3552
3553
3554
3555
3556            
3557        
3558      
3559    </div><div
3560      class="header__column header__column--right"
3561      data-testid="header-top-right"
3562    >
3563      
3564        
3565          
3566              
3567  
3568  
3569
3570            
3571        
3572      
3573        
3574          
3575              
3576  <search-button
3577    class="search-action search-action--hidden-on-drawer"
3578  >
3579    <button
3580      on:click="#search-modal/showDialog"
3581      class="button-unstyled header-actions__action"
3582      aria-label="Search"
3583      aria-haspopup="dialog"
3584    >
3585      <span class="hidden">
3586        Search
3587      </span>
3588
3589      <span class="svg-wrapper ">
3590        <svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><circle cx="9" cy="9" r="4.75" stroke="currentColor" stroke-width="var(--icon-stroke-width)"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="var(--icon-stroke-width)" d="m12.5 12.5 3.25 3.25"/></svg>
3591
3592      </span>
3593    </button>
3594  </search-button>
3595
3596
3597
3598
3599            
3600        
3601      
3602        
3603          
3604              
3605
3606<script
3607  type="module"
3608  src="//perfectlyposh.com/cdn/shop/t/1/assets/cart-icon.js?v=157241182139685326961777514867"
3609  fetchpriority="low"
3610></script>
3610
3611
3612
3613
3614
3615
3616<header-actions
3617  
3618>
3619  
3620    
3621    <div
3622      class="account-button header-actions__action color-scheme-1"
3623    >
3624      <shopify-store store-domain="https://perfectlyposh.com" country="US" language="en"></shopify-store>
3625<shopify-account
3626        menu="customer-account-main-menu"
3627        
3628      >
3629        
3630          <span
3631            slot="signed-out-avatar"
3632            class="account-button__text header-actions__text-style hidden"
3633          >
3634            Account
3635          </span>
3636
3637          <span
3638            slot="signed-out-avatar"
3639            class=""
3640            aria-hidden="true"
3641          >
3642            
3643  <svg
3644    xmlns="http://www.w3.org/2000/svg"
3645    width="15"
3646    height="17"
3647    viewBox="0 0 15 17"
3648    fill="none"
3649    slot="signed-out-avatar"
3650    class="account-button__icon"
3651  >
3652    <path
3653      stroke="currentColor"
3654      stroke-linejoin="round"
3655      stroke-width="var(--icon-stroke-width)"
3656      d="M10.375 3.813a3.063 3.063 0 1 1-6.125 0 3.063 3.063 0 0 1 6.125 0ZM7.313 9.5c-3.667 0-6.24 2.691-6.563 6.125h13.125C13.552 12.191 10.979 9.5 7.312 9.5Z"
3657    />
3658  </svg>
3659
3660          </span>
3661        
3662      </shopify-account>
3663    </div>
3664  
3665
3666  
3667    <a
3668      href="/cart"
3669      class="header-actions__action action__cart"
3670      aria-label="Cart"
3671      aria-describedby="cart-bubble-text"
3672    >
3673      
3674  <cart-icon
3675    class="header-actions__cart-icon"
3676    data-testid="cart-icon"
3677  >
3678    <span class="hidden">
3679      Cart
3680    </span>
3681
3682    <span
3683      class="svg-wrapper "
3684      aria-hidden="true"
3685    >
3686      <svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="var(--icon-stroke-width)" d="M3.392 6.875h13.216v8.016c0 .567-.224 1.112-.624 1.513-.4.402-.941.627-1.506.627H5.522a2.13 2.13 0 0 1-1.506-.627 2.15 2.15 0 0 1-.624-1.513zM8.818 2.969h2.333c.618 0 1.211.247 1.649.686a2.35 2.35 0 0 1 .683 1.658v1.562H6.486V5.313c0-.622.246-1.218.683-1.658a2.33 2.33 0 0 1 1.65-.686"/></svg>
3687
3688    </span>
3689
3690    <div
3691  ref="cartBubble"
3692  class="cart-bubble visually-hidden"
3693  
3694  
3695    data-maintain-ratio
3696  
3697>
3698  <span class="cart-bubble__background"></span>
3699  <span
3700    ref="cartBubbleText"
3701    id="cart-bubble-text"
3702    class="cart-bubble__text"
3703  >
3704    <span
3705      class="cart-bubble__text-count hidden"
3706      ref="cartBubbleCount"
3707      aria-hidden="true"
3708      data-testid="cart-bubble"
3709    >
37100</span>
3711  </span>
3712</div>
3713
3714
3715
3716  </cart-icon>
3717
3718    </a>
3719  
3720
3721  <span
3722    ref="liveRegion"
3723    class="visually-hidden"
3724    role="status"
3725    data-testid="cart-count-live-region"
3726  ></span>
3727</header-actions>
3728
3729<script
3730  type="module"
3731  src="//perfectlyposh.com/cdn/shop/t/1/assets/header-actions.js?v=121308165565653895611777514867"
3732  fetchpriority="low"
3733></script>
3733
3734
3735
3736
3737          
3738        
3739      
3740    </div>
3741        </div>
3742      </div>
3743    
3744  
3745    
3746
3747    
3748
3749    
3750    
3751  
3752
3753  
3754    <div class="header__row header__navigation-bar-row color-scheme-1">
3755      
3756
3757
3758
3759    
3760  
3761
3762<style data-shopify>
3763  .header__underlay {
3764    --color-submenu: rgb(255 255 255 / 1.0);
3765  }
3766</style>
3767
3768
3769
3770
3771    </div>
3772  
3773</header-component>
3774
3775<script
3776  src="//perfectlyposh.com/cdn/shop/t/1/assets/header.js?v=36718054510661947891777514867"
3777  type="module"
3778></script>
3778
3779
3780
3781
3782
3783  
3783<script type="module">
3784    import { hydrate } from '@theme/section-hydration';
3785    const url = new URL(window.location.href);
3786    url.searchParams.delete('page');
3787    hydrate('sections--22214414565620__header_section', url);
3788  </script>
3788
3789
3790
3791
3792</header><div id="shopify-section-sections--22214414565620__custom_liquid_zHELRd" class="shopify-section shopify-section-group-header-group">
3793
3794<div class="section-background color-scheme-1"></div>
3795<div
3796  class="section section--page-width spacing-style color-scheme-1"
3797  style="--padding-block-start: 0px; --padding-block-end:0px; 
3798--padding-inline-start:0px; --padding-inline-end:0px; 
3799"
3800>
3801  <div class="appstleLoyaltyPage" data-appstle-loyalty="APPSTLE_LOYALTY_PAGE" id="appstleLoyaltyPage"></div>
3802</div>
3803
3804
3805</div>
3806<!-- END sections: header-group -->
3807    </div>
3808
3809    
3809<script>
3810      // Inline header height and menu style calculations to prevent layout shift
3811      // Note: Updates in calculateHeaderGroupHeight(), updateTransparentHeaderOffset() and setHeaderMenuStyle() utilities.js should be kept in sync with this function
3812      (function setHeaderHeighCustomProperties() {
3813        /*
3814         * Header calculation functions for maintaining CSS variables
3815         * Mimic calculateHeaderGroupHeight() in utilities.js
3816         */
3817        const header = document.querySelector('header-component');
3818        const headerGroup = document.querySelector('#header-group');
3819        const hasHeaderSection = headerGroup?.querySelector('.header-section');
3820
3821        if (!header || !headerGroup) return;
3822
3823        const headerTopRow = header.querySelector('.header__row--top');
3824        const headerHeight = header.offsetHeight;
3825
3826        // Calculate the total height of the header group
3827        let headerGroupHeight = 0;
3828        const children = headerGroup.children;
3829        for (let i = 0; i < children.length; i++) {
3830          const element = children[i];
3831          if (element === header || !(element instanceof HTMLElement)) continue;
3832          headerGroupHeight += element.offsetHeight;
3833        }
3834
3835        // Check for transparent header special case
3836        if (header.hasAttribute('transparent') && header.parentElement?.nextElementSibling) {
3837          headerGroupHeight += headerHeight;
3838        }
3839
3840        // Set CSS variables
3841        document.body.style.setProperty('--header-height', `${headerHeight}px`);
3842        document.body.style.setProperty('--header-group-height', `${headerGroupHeight}px`);
3843
3844        if (headerTopRow) {
3845          window.requestAnimationFrame(function () {
3846            document.body.style.setProperty('--top-row-height', `${headerTopRow.offsetHeight}px`);
3847          });
3848        }
3849
3850        /**
3851         * Updates CSS custom properties for transparent header offset calculation
3852         * Mimic updateTransparentHeaderOffset() in utilities.js
3853         */
3854
3855        if (!hasHeaderSection || !header?.hasAttribute('transparent')) {
3856          document.body.style.setProperty('--transparent-header-offset-boolean', '0');
3857          return;
3858        }
3859
3860        const hasImmediateSection = hasHeaderSection.nextElementSibling?.classList.contains('shopify-section');
3861
3862        const shouldApplyOffset = !hasImmediateSection ? '1' : '0';
3863        document.body.style.setProperty('--transparent-header-offset-boolean', shouldApplyOffset);
3864      })();
3865
3866      (function setHeaderMenuStyle() {
3867        const headerComponent = document.querySelector('#header-component');
3868        if (headerComponent) {
3869          const isTouchDevice = 'ontouchstart' in window && navigator.maxTouchPoints > 0;
3870          const overflowList = headerComponent?.querySelector('overflow-list');
3871          const hasReachedMinimum = overflowList && overflowList.hasAttribute('minimum-reached');
3872          headerComponent.dataset.menuStyle = isTouchDevice || hasReachedMinimum ? 'drawer' : 'menu';
3873        }
3874      })();
3875    </script>
3875
3876
3877    <main
3878      id="MainContent"
3879      class="content-for-layout"
3880      role="main"
3881      data-page-transition-enabled="false"
3882      data-product-transition="false"
3883      data-template="page.pf-258e770a"
3884    >
3885      <div id="shopify-section-template--22355637502196__pf-258e770a" class="shopify-section">
3886<div data-pf-editor-version="gen-2" class="sc-fAGzVM ckdstx __pf __pf_OeQOEcv0" id="__pf"><div data-pf-type="Body" class="sc-iowYbt LsuWb pf-7_"><div data-pf-type="Layout" class="sc-cTTcKX dkCVVW pf-8_"><section data-section-id="pf-6b60" data-pf-type="FlexSection" class="sc-cKXyOM gdMpOS pf-9_ pf-container-1 pf-color-scheme-1"><div class="sc-bHnkpz ffFBJG pf-flex-section"><img alt="hero-about.png__PID:cbf46b60-e4e5-4969-8ad6-11c6a368401e" src="https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=2048" srcSet="https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=375 375w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=550 550w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=768 768w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=1024 1024w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=1280 1280w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=1440 1440w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=1680 1680w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=1800 1800w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=1920 1920w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/hero-about.png?v=1778890479&width=2048 2048w" fetchPriority="low" decoding="async" loading="lazy" style="--pf-image-ratio:1.7768331562167907" sizes="75vw" data-pf-type="Image5" class="sc-jwZJYP clbmpw pf-10_ pf-image-1" store="[object Object]"/></div></section><section data-section-id="pf-13ea" data-pf-type="FlexSection" class="sc-cKXyOM gdMpOS pf-46_ pf-container-1 pf-color-scheme-1"><div class="sc-bHnkpz ffFBJG pf-flex-section"><img alt="ingredients.png__PID:a2131085-42d1-4f23-b0ba-1868598fdf69" src="https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=2048" srcSet="https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=375 375w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=550 550w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=768 768w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=1024 1024w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=1280 1280w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=1440 1440w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=1680 1680w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=1800 1800w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=1920 1920w,https://cdn.shopify.com/s/files/1/0825/4989/9508/files/ingredients.png?v=1778891698&width=2048 2048w" fetchPriority="low" decoding="async" loading="lazy" style="--pf-image-ratio:1.7768331562167907" sizes="75vw" data-action="url" data-href="/pages/ingredients" data-target="_self" data-pf-type="Image5" class="sc-jwZJYP clbmpw pf-47_ pf-image-1" store="[object Object]"/></div></section></div></div></div>
3886<script>
3887    !function(){
3888      window.__pagefly_page_setting__ = {"pageTitle":"About","pageType":"page","pageId":"258e770a-f5c5-4d61-9e17-e2ba2054945c","lazyLoad":true,"forceByPassGoogleLightHouse":false,"imageLazyLoad":true,"nativeImageLazyLoad":true,"useThemeJQ":false,"sectionRootType":"FlexSection","trackingIDs":[]};
3889      window.__pagefly_setting__&&(window.__pagefly_setting2__=window.__pagefly_setting__),window.__pagefly_setting__={"baseURL":"https://apps.pagefly.io","analyticsURL":"https://analytics.pagefly.io","isBackend":false,"cdnURL":"https://cdn.pagefly.io","pageflyVersion":"4.26.3.31","shopDomain":"perfectlyposh-2.myshopify.com","elementData":{},"shopifyProxyPath":"/apps/pagefly"},window.__pagefly_setting2__&&(window.__pagefly_setting__=function _(d,b){let c={...d||{}};for(let a of Object.keys(b))b[a]instanceof Object&&(Array.isArray(b[a])&&c[a]?Object.assign(b[a],[...b[a],...c[a]]):Object.assign(b[a],_(c[a],b[a])));return Object.assign(c||{},b),c}(__pagefly_setting2__,__pagefly_setting__),delete window.__pagefly_setting2__),window.__pagefly_setting__.moneyFormat="${{amount}}"}();
3890    </script>
3890
3891</div>
3892    </main>
3893
3894    <footer>
3895      <!-- BEGIN sections: footer-group -->
3896<div id="shopify-section-sections--22214414598388__footer_m9NzUG" class="shopify-section shopify-section-group-footer-group section-wrapper">
3897
3898<div class="section-background color-scheme-1"></div>
3899<div
3900  class="section section--page-width color-scheme-1"
3901>
3902  
3903  <div
3904    class="
3905      footer-content
3906      spacing-style
3907      
3908      
3909    "
3910    style="
3911      --padding-block-start: max(20px, calc(var(--spacing-scale) * 30px));--padding-block-end: max(20px, calc(var(--spacing-scale) * 30px));
3912      --footer-gap: 50px;
3913      --grid-columns: 4;
3914      --last-row-count: 4;
3915      --tablet-last-row-count: 2;
3916    "
3917  >
3918    
3919
3920
3921<div
3922  class="
3923    group-block
3924    group-block--height-fit
3925    group-block--width-fill
3926    border-style
3927    spacing-style
3928    size-style
3929    
3930    
3931  "
3932  style="
3933    --border-width: 1px; --border-style: none; --border-color:
3934rgb(var(--color-border-rgb) / 1.0); --border-radius:
39350px; 
3936
3937    --padding-block-start: 0px;--padding-block-end: 0px;--padding-inline-start: 0px;--padding-inline-end: 0px;
3938    --size-style-width: 100%;--size-style-height: fit;--size-style-width-mobile: 100%; --size-style-width-mobile-min: 5rem;
3939    
3940  "
3941  
3942  data-testid="group-block"
3943><div class="group-block__media-wrapper">
3944    
3945
3946
3947
3948    
3949  </div>
3950
3951  <div
3952    class="
3953      group-block-content
3954      
3955      layout-panel-flex
3956      layout-panel-flex--column
3957       mobile-column
3958    "
3959    style="--flex-direction: column; --flex-wrap: nowrap; --flex-wrap-mobile: wrap;
3960
3961--gap: 0px;
3962
3963--horizontal-alignment: center; --vertical-alignment: center;
3964--vertical-alignment-mobile: center;
3965"
3966  >
3967  
3968
3969
3970<div
3971  class="
3972    logo-block
3973    spacing-style
3974  "
3975  style="
3976    
3977      
3978        --logo-width: 167.85498489425981px;
3979      
3980    
3981
3982    
3983    --padding-block-start: 0px;--padding-block-end: 0px;--padding-inline-start: 0px;--padding-inline-end: 0px;
3984  "
3985  
3986>
3987  
3988    <div class="logo-block__image-wrapper">
3989      
3990<img src="//perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=3840" alt="Perfectly Posh" srcset="//perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=240 240w, //perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=352 352w, //perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=832 832w, //perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=1200 1200w, //perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=1600 1600w, //perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=1920 1920w, //perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=2560 2560w, //perfectlyposh.com/cdn/shop/files/logo-pink.png?v=1778884144&amp;width=3840 3840w" width="926" height="662" class="logo-block__image" sizes="(min-width: 750px) calc(var(--logo-width)), 100vw">
3991    </div>
3992  
3993</div>
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007  <rte-formatter class=" spacing-style text-block text-block--AbHlTTHo5blAzaVBPb__text_L97qt9 rte     rte   "  style="    --padding-block-start: 0px; --padding-block-end:0px; --padding-inline-start:20px; --padding-inline-end:20px;         --width: fit-content;    --max-width: var(--max-width--body-normal);          ">
4008    <p><strong>Skincare that's as fun as you are.</strong></p>
4009  </rte-formatter>
4010
4011
4012
4013
4014
4015
4016
4017</div>
4018</div>
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030  <accordion-custom
4031  
4032    class="menu"
4033  
4034  
4035  
4036    open-by-default-on-desktop
4037  
4038  
4039    open-by-default-on-mobile
4040  
4041  
4042    data-disable-on-desktop="true"
4043  
4044  
4045    data-disable-on-mobile="true"
4046  
4047  
4048  
4049  
4050>
4051  
4052    <details
4053      class="
4054        menu__details
4055        spacing-style
4056        
4057      "
4058      data-testid="menu-details"
4059      style="
4060        --spacing--size: 5px;
4061        --padding-block-start: 0px;--padding-block-end: 0px;--padding-inline-start: max(20px, calc(var(--spacing-scale) * 30px));--padding-inline-end: max(20px, calc(var(--spacing-scale) * 30px));
4062      "
4063      
4064        open
4065      
4066      
4067    >
4068      <summary class="menu__heading h5">
4069        <span class="menu__heading__default">ABOUT</span>
4070        <span class="menu__heading__accordion">
4071          ABOUT
4072          
4073            <span class="menu__heading__toggle svg-wrapper icon-caret icon-animated"><svg aria-hidden="true" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
4074  <path d="M11 5.5L7 9.5L3 5.5" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
4075</svg>
4076</span>
4077          
4078        </span>
4079      </summary>
4080
4081      <nav
4082        class="details-content"
4083        
4084          aria-label="ABOUT"
4085        
4086      >
4087        
4088          <ul class="list-unstyled">
4089            
4090              <li class="menu__item paragraph">
4091                <a href="#">
4092                  Our Story
4093                </a>
4094              </li>
4095            
4096              <li class="menu__item paragraph">
4097                <a href="https://perfectlyposh.com/apps/track">
4098                  Track Order
4099                </a>
4100              </li>
4101            
4102              <li class="menu__item paragraph">
4103                <a href="/pages/contact">
4104                  Contact Us
4105                </a>
4106              </li>
4107            
4108          </ul>
4109        
4110      </nav>
4111    </details>
4112  
4113</accordion-custom>
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130  <accordion-custom
4131  
4132    class="menu"
4133  
4134  
4135  
4136    open-by-default-on-desktop
4137  
4138  
4139    open-by-default-on-mobile
4140  
4141  
4142    data-disable-on-desktop="true"
4143  
4144  
4145    data-disable-on-mobile="true"
4146  
4147  
4148  
4149  
4150>
4151  
4152    <details
4153      class="
4154        menu__details
4155        spacing-style
4156        
4157      "
4158      data-testid="menu-details"
4159      style="
4160        --spacing--size: 5px;
4161        --padding-block-start: 0px;--padding-block-end: 0px;--padding-inline-start: max(20px, calc(var(--spacing-scale) * 30px));--padding-inline-end: max(20px, calc(var(--spacing-scale) * 30px));
4162      "
4163      
4164        open
4165      
4166      
4167    >
4168      <summary class="menu__heading h5">
4169        <span class="menu__heading__default">SHOP</span>
4170        <span class="menu__heading__accordion">
4171          SHOP
4172          
4173            <span class="menu__heading__toggle svg-wrapper icon-caret icon-animated"><svg aria-hidden="true" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
4174  <path d="M11 5.5L7 9.5L3 5.5" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
4175</svg>
4176</span>
4177          
4178        </span>
4179      </summary>
4180
4181      <nav
4182        class="details-content"
4183        
4184          aria-label="SHOP"
4185        
4186      >
4187        
4188          <ul class="list-unstyled">
4189            
4190              <li class="menu__item paragraph">
4191                <a href="https://perfectlyposh.com/collections/all?sort_by=best-selling">
4192                  All Products
4193                </a>
4194              </li>
4195            
4196              <li class="menu__item paragraph">
4197                <a href="/collections/bath">
4198                  Bath
4199                </a>
4200              </li>
4201            
4202              <li class="menu__item paragraph">
4203                <a href="/collections/face">
4204                  Face
4205                </a>
4206              </li>
4207            
4208              <li class="menu__item paragraph">
4209                <a href="/collections/body">
4210                  Body
4211                </a>
4212              </li>
4213            
4214              <li class="menu__item paragraph">
4215                <a href="/collections/hair">
4216                  Hair
4217                </a>
4218              </li>
4219            
4220              <li class="menu__item paragraph">
4221                <a href="/collections/hands">
4222                  Hands
4223                </a>
4224              </li>
4225            
4226          </ul>
4227        
4228      </nav>
4229    </details>
4230  
4231</accordion-custom>
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245<div
4246  class="
4247    group-block
4248    group-block--height-fit
4249    group-block--width-custom
4250    border-style
4251    spacing-style
4252    size-style
4253    
4254    
4255  "
4256  style="
4257    --border-width: 1px; --border-style: none; --border-color:
4258rgb(var(--color-border-rgb) / 1.0); --border-radius:
42590px; 
4260
4261    --padding-block-start: 0px;--padding-block-end: 0px;--padding-inline-start: 0px;--padding-inline-end: 0px;
4262    --size-style-width:100%;--size-style-height: fit;--size-style-width-mobile: 100%; --size-style-width-mobile-min: 5rem;
4263    
4264  "
4265  
4266  data-testid="group-block"
4267><div class="group-block__media-wrapper">
4268    
4269
4270
4271
4272    
4273  </div>
4274
4275  <div
4276    class="
4277      group-block-content
4278      
4279      layout-panel-flex
4280      layout-panel-flex--column
4281       mobile-column
4282    "
4283    style="--flex-direction: column; --flex-wrap: nowrap; --flex-wrap-mobile: wrap;
4284
4285--gap: 12px;
4286
4287--horizontal-alignment: flex-start; --vertical-alignment: center;
4288--vertical-alignment-mobile: center;
4289"
4290  >
4291  
4292
4293
4294
4295
4296
4297
4298
4299
4300  <rte-formatter class=" spacing-style text-block text-block--ASUl3Z1FGUG11VlF4Z__text_igDUAh rte     rte   "  style="    --padding-block-start: 0px; --padding-block-end:0px; --padding-inline-start:0px; --padding-inline-end:0px;         --width: fit-content;    --max-width: var(--max-width--body-normal);          ">
4301    <p><strong>BE THE FIRST TO KNOW</strong></p>
4302  </rte-formatter>
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318  <rte-formatter class=" spacing-style text-block text-block--AMThuQVZTK3FMdUhlL__text_3jVffV rte     rte   "  style="    --padding-block-start: 0px; --padding-block-end:0px; --padding-inline-start:0px; --padding-inline-end:0px;         --width: fit-content;    --max-width: var(--max-width--body-normal);          ">
4319    <p>Get exclusive offers, new drops, and feel-good skincare tips.</p>
4320  </rte-formatter>
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330<div
4331  class="email-signup-block size-style spacing-style"
4332  style="--size-style-width: 100%;--size-style-height: ;--padding-block-start: 0px;--padding-block-end: 0px;--padding-inline-start: 0px;--padding-inline-end: 0px;"
4333  
4334>
4335  
4336<form method="post" action="/contact#contact_form" id="contact_form" accept-charset="UTF-8" class="email-signup__form spacing-style"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" />
4337    <div
4338      class="email-signup__input-group     "
4339      style="--border-width: 1px; --border-radius: 100px;"
4340    >
4341      <label
4342        for="EmailInput-AV3FjWi9sczF2dXplM__email_signup_DPtTVk"
4343        class="visually-hidden"
4344      >
4345        Email
4346      </label>
4347      <input
4348        id="EmailInput-AV3FjWi9sczF2dXplM__email_signup_DPtTVk"
4349        class="email-signup__input email-signup__input--all paragraph "
4350        type="email"
4351        name="contact[email]"
4352        autocorrect="off"
4353        autocapitalize="off"
4354        autocomplete="email"
4355        placeholder="Email address"
4356        required
4357        
4358      >
4359      <button
4360        class="email-signup__button  email-signup__button--text paragraph button button--AV3FjWi9sczF2dXplM__email_signup_DPtTVk "
4361        
4362      >
4363        
4364          Sign up
4365        
4366      </button>
4367    </div></form>
4368</div>
4369
4370
4371
4372
4373
4374</div>
4375</div>
4376
4377
4378
4379
4380
4381
4382  </div>
4383</div>
4384
4385
4386
4387
4388</div><div id="shopify-section-sections--22214414598388__footer_utilities_jLGE8U" class="shopify-section shopify-section-group-footer-group footer-utilities">
4389
4390<div class="section-background color-scheme-7428e935-b223-4598-9dc4-78c24b04e5d6"></div>
4391<div
4392  class="section section--page-width color-scheme-7428e935-b223-4598-9dc4-78c24b04e5d6"
4393  
4394>
4395  <div
4396    class="utilities utilities--blocks-2 spacing-style"
4397    style="--padding-block-start: 20px;--padding-block-end: 20px; --border-width: 0px; --gap: 24px;"
4398    data-testid="footer-utilities"
4399  >
4400    
4401
4402<div
4403  class="
4404    footer-utilities__group-copyright
4405    custom-typography
4406    custom-font-size
4407  "
4408  style="
4409--color: ;--font-size: 0.75rem;      --font-weight: ;--font-family: ;    --text-transform: none;    --text-wrap: pretty;          --line-height: var(--line-height--body-);        --letter-spacing: var(--letter-spacing--body-);"
4410  
4411>
4412  <span class="footer-utilities__text">
4413    &copy; 2026
4414    <a href="/" title="">
4414Perfectly Posh</a></span>
4415</div>
4416
4417
4418
4419
4420  <anchored-popover-component
4421    data-hover-triggered="true"
4422  >
4423    <button
4424      class="policy-list-trigger button-unstyled"
4425      popovertarget="terms-policies-popover"
4426      popovertargetaction="toggle"
4427      ref="trigger"
4428      style="
4429--color: ;--font-size: 0.75rem;      --font-weight: ;--font-family: ;    --text-transform: none;    --text-wrap: pretty;          --line-height: var(--line-height--body-);        --letter-spacing: var(--letter-spacing--body-);"
4430      
4431    >
4432      Terms and Policies
4433    </button>
4434    <div
4435      class="terms-policies-popover color-scheme-1"
4436      id="terms-policies-popover"
4437      popover="auto"
4438      ref="popover"
4439    >
4440      <ul
4441        class="
4442          policy_list list-unstyled
4443          custom-typography
4444          custom-font-size
4445        "
4446      ><li>
4447              <a
4448                href="/policies/privacy-policy"
4449                class="footer-utilities__text"
4450              >Privacy policy</a>
4451            </li><li>
4452              <a
4453                href="/policies/refund-policy"
4454                class="footer-utilities__text"
4455              >Refund policy</a>
4456            </li><li>
4457              <a
4458                href="/policies/terms-of-service"
4459                class="footer-utilities__text"
4460              >Terms of service</a>
4461            </li><li>
4462              <a
4463                href="/policies/contact-information"
4464                class="footer-utilities__text"
4465              >Contact information</a>
4466            </li></ul>
4467    </div>
4468  </anchored-popover-component>
4469
4470
4471
4472
4473
4474
4475  </div>
4476</div>
4477
4478
4479
4480
4481</div>
4482<!-- END sections: footer-group -->
4483    </footer>
4484
4485    
4486
4487<script
4488  src="//perfectlyposh.com/cdn/shop/t/1/assets/dialog.js?v=150888536568694194021777514867"
4489  type="module"
4490></script>
4490
4491
4492<script
4493  src="//perfectlyposh.com/cdn/shop/t/1/assets/predictive-search.js?v=149240552485540508541777514867"
4494  type="module"
4495  fetchpriority="low"
4496></script>
4496
4497
4498<dialog-component
4499  id="search-modal"
4500  class="search-modal"
4501  
4502>
4503  <dialog
4504    ref="dialog"
4505    on:click="/closeDialogOnClickOutside"
4506    on:keydown="/closeDialogOnEscapePress"
4507    class="search-modal__content dialog-modal"
4508    scroll-lock
4509    aria-labelledby="search-modal-heading"
4510  >
4511    <h2
4512      id="search-modal-heading"
4513      class="visually-hidden"
4514    >
4515      Search
4516    </h2>
4517    <predictive-search-component
4518      class="predictive-search color-scheme-1"
4519      style="--product-corner-radius: 0px; --card-corner-radius: 4px;"
4520      data-section-id="predictive-search"
4521      data-testid="search-component--modal"
4522      role="search"
4523      aria-label="Search"
4524    >
4525      <form
4526        action="/search"
4527        method="get"
4528        role="search"
4529        class="predictive-search-form"
4530        ref="form"
4531        on:keydown="/onSearchKeyDown"
4532      >
4533        <div
4534          class="predictive-search-form__header"
4535        >
4536          <div class="predictive-search-form__header-inner">
4537            <label
4538              for="cmdk-input"
4539              class="visually-hidden"
4540            >Search</label>
4541            <input
4542              class="search-input"
4543              id="cmdk-input"
4544              type="search"
4545              name="q"
4546              role="combobox"
4547              aria-expanded="false"
4548              aria-owns="predictive-search-results"
4549              aria-controls="predictive-search-results"
4550              aria-haspopup="listbox"
4551              aria-autocomplete="list"
4552              autocomplete="off"
4553              placeholder="Search"
4554              ref="searchInput"
4555              on:input="/search"
4556              on:keydown="/onSearchKeyDown"
4557            >
4558            <input
4559              name="options[prefix]"
4560              type="hidden"
4561              value="last"
4562            >
4563            <span class="svg-wrapper predictive-search__icon">
4564              <svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none"><circle cx="9" cy="9" r="4.75" stroke="currentColor" stroke-width="var(--icon-stroke-width)"/><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="var(--icon-stroke-width)" d="m12.5 12.5 3.25 3.25"/></svg>
4565
4566            </span>
4567            <button
4568              type="button"
4569              class="button-unstyled predictive-search__reset-button"
4570              ref="resetButton"
4571              hidden
4572              on:click="/resetSearch"
4573            >
4574              Clear
4575            </button>
4576          </div>
4577          <button
4578            type="button"
4579            class="button predictive-search__close-modal-button"
4580            aria-label="Close dialog"
4581            on:click="dialog-component/closeDialog"
4582            ref="closeModalButton"
4583          >
4584            <span class="svg-wrapper">
4585              <svg aria-hidden="true" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
4586  <path d="M12 2L2 12" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
4587  <path d="M12 12L2 2" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
4588</svg>
4589
4590            </span>
4591          </button>
4592        </div>
4593
4594        <div class="predictive-search-form__content-wrapper">
4595          <div
4596            class="predictive-search-form__content"
4597            ref="predictiveSearchResults"
4598            on:click="/handleModalClick"
4599          >
4600            
4601
4602<div
4603  id="predictive-search-results"
4604  class="predictive-search-dropdown"
4605  role="listbox"
4606  aria-expanded="true"
4607  style="--color-shadow: rgb(var(--color-foreground-rgb) / 0.1);"
4608>
4609  
4610    <div class="predictive-search-results__inner">
4611      
4612      
4613        
4614        
4615        
4616          <div
4617  id="predictive-search-products"
4618  class="predictive-search-results__products"
4619  
4620    data-testid="products-list-default--modal"
4621  
4622>
4623  
4624    <h4 class="predictive-search-results__title">
4625      Products
4626    </h4>
4627    <ul
4628      class="predictive-search-results__list predictive-search-results__wrapper-products list-unstyled"
4629    >
4630      
4631      
4632        <li
4633          class="predictive-search-results__card predictive-search-results__card--product"
4634          ref="resultsItems[]"
4635        >
4636          
4637<div
4638  class="resource-card"
4639  data-resource-type="product"
4640>
4641  <a
4642    class="resource-card__link"
4643    href="/products/call-me-rosie-rose-clay-cleansing-chunk-big-bath-bar"
4644  >
4645    <span class="visually-hidden">
4646      Call Me Rosie Rose Clay Cleansing Chunk Big Bath Bar - Perfectly Pos
4646h
4647    </span>
4648  </a>
4649  <div
4650    class="resource-card__media"
4651    style="--resource-card-aspect-ratio: 4 / 5;"
4652    
4653  >
4654      
4655      
4656
4657        <img src="//perfectlyposh.com/cdn/shop/files/1lNzp9W8tuF1qqkUZO6gE_WkcpkyrmX-u_w2000.png?v=1778863138&amp;width=500" alt="The Call Me Rosie Rose Clay Cleansing Chunk Big Bath Bar by Perfectly Posh features a pink package with a Rosie the Riveter-inspired woman and offers a gentle, feminine fragrance." srcset="//perfectlyposh.com/cdn/shop/files/1lNzp9W8tuF1qqkUZO6gE_WkcpkyrmX-u_w2000.png?v=1778863138&amp;width=240 240w, //perfectlyposh.com/cdn/shop/files/1lNzp9W8tuF1qqkUZO6gE_WkcpkyrmX-u_w2000.png?v=1778863138&amp;width=352 352w" width="500" height="500" loading="lazy" class="resource-card__image" sizes="auto" ref="" style="object-position: 50.0% 50.0%;">
4658</div>
4659
4660  <div class="resource-card__content">
4661    <p class="resource-card__title paragraph">Call Me Rosie Rose Clay Cleansing Chunk Big Bath Bar - Perfectly Posh</p>
4662
4663    
4664      <div ref="priceContainer">
4665  
4666    
4667    <div
4668      class="
4669        price__regular
4670        
4671      "
4672    >
4673      <span class="price">$10.95</span>
4674    </div>
4675    <div
4676      class="
4677        price__sale
4678        
4679          price__hidden
4680        
4681      "
4682    >
4683      
4684        <span class="price-item__group">
4685          <span class="visually-hidden">Regular price&nbsp;</span>
4686          <span class="price-item--regular compare-at-price"></span>
4687        </span>
4688        <span class="price-item__group">
4689          <span class="visually-hidden">Sale price&nbsp;</span>
4690          <span class="price-item--sale price">$10.95</span>
4691        </span>
4692      
4693    </div>
4694  
4695</div>
4696    
4697  </div>
4698</div>
4699
4700        </li>
4701      
4702        <li
4703          class="predictive-search-results__card predictive-search-results__card--product"
4704          ref="resultsItems[]"
4705        >
4706          
4707<div
4708  class="resource-card"
4709  data-resource-type="product"
4710>
4711  <a
4712    class="resource-card__link"
4713    href="/products/daily-greens-cleansing-face-wash"
4714  >
4715    <span class="visually-hidden">
4716      Daily Greens Cleansing Face Wash - Perfectly Posh
4717    </span>
4718  </a>
4719  <div
4720    class="resource-card__media"
4721    style="--resource-card-aspect-ratio: 4 / 5;"
4722    
4723  >
4724      
4725      
4726
4727        <img src="//perfectlyposh.com/cdn/shop/files/1n1MQ0pzZcJmqkwAEW56Nuu2BqejTOqkT-w2000-_1.png?v=1781983891&amp;width=500" alt="A 3 fl oz tube of Perfectly Posh Daily Greens Cleansing Face Wash, featuring green leaf art and colorful text on white—a gentle cleanser with green tea for glowing skin." srcset="//perfectlyposh.com/cdn/shop/files/1n1MQ0pzZcJmqkwAEW56Nuu2BqejTOqkT-w2000-_1.png?v=1781983891&amp;width=240 240w, //perfectlyposh.com/cdn/shop/files/1n1MQ0pzZcJmqkwAEW56Nuu2BqejTOqkT-w2000-_1.png?v=1781983891&amp;width=352 352w" width="500" height="500" loading="lazy" class="resource-card__image" sizes="auto" ref="" style="object-position: 50.0% 50.0%;">
4728</div>
4729
4730  <div class="resource-card__content">
4731    <p class="resource-card__title paragraph">Daily Greens Cleansing Face Wash - Perfectly Posh</p>
4732
4733    
4734      <div ref="priceContainer">
4735  
4736    
4737    <div
4738      class="
4739        price__regular
4740        
4741      "
4742    >
4743      <span class="price">$14.95</span>
4744    </div>
4745    <div
4746      class="
4747        price__sale
4748        
4749          price__hidden
4750        
4751      "
4752    >
4753      
4754        <span class="price-item__group">
4755          <span class="visually-hidden">Regular price&nbsp;</span>
4756          <span class="price-item--regular compare-at-price"></span>
4757        </span>
4758        <span class="price-item__group">
4759          <span class="visually-hidden">Sale price&nbsp;</span>
4760          <span class="price-item--sale price">$14.95</span>
4761        </span>
4762      
4763    </div>
4764  
4765</div>
4766    
4767  </div>
4768</div>
4769
4770        </li>
4771      
4772        <li
4773          class="predictive-search-results__card predictive-search-results__card--product"
4774          ref="resultsItems[]"
4775        >
4776          
4777<div
4778  class="resource-card"
4779  data-resource-type="product"
4780>
4781  <a
4782    class="resource-card__link"
4783    href="/products/iykyk-cleansing-conditioner"
4784  >
4785    <span class="visually-hidden">
4786      IYKYK Cleansing Conditioner - Perfectly Posh
4787    </span>
4788  </a>
4789  <div
4790    class="resource-card__media"
4791    style="--resource-card-aspect-ratio: 4 / 5;"
4792    
4793  >
4794      
4795      
4796
4797        <img src="//perfectlyposh.com/cdn/shop/files/1cfnuivxh1SKFy48IRn7Vw-mbvX5h-JmU-w2000-_1.png?v=1781983901&amp;width=500" alt="A 12 fl oz (355 ml) white pump bottle of Perfectly Posh IYKYK Cleansing Conditioner, featuring black and pink text and hair type silhouettes, with a no-foam formula for clean, hydrated hair." srcset="//perfectlyposh.com/cdn/shop/files/1cfnuivxh1SKFy48IRn7Vw-mbvX5h-JmU-w2000-_1.png?v=1781983901&amp;width=240 240w, //perfectlyposh.com/cdn/shop/files/1cfnuivxh1SKFy48IRn7Vw-mbvX5h-JmU-w2000-_1.png?v=1781983901&amp;width=352 352w" width="500" height="500" loading="lazy" class="resource-card__image" sizes="auto" ref="" style="object-position: 50.0% 50.0%;">
4798</div>
4799
4800  <div class="resource-card__content">
4801    <p class="resource-card__title paragraph">IYKYK Cleansing Conditioner - Perfectly Posh</p>
4802
4803    
4804      <div ref="priceContainer">
4805  
4806    
4807    <div
4808      class="
4809        price__regular
4810        
4811      "
4812    >
4813      <span class="price">$19.95</span>
4814    </div>
4815    <div
4816      class="
4817        price__sale
4818        
4819          price__hidden
4820        
4821      "
4822    >
4823      
4824        <span class="price-item__group">
4825          <span class="visually-hidden">Regular price&nbsp;</span>
4826          <span class="price-item--regular compare-at-price"></span>
4827        </span>
4828        <span class="price-item__group">
4829          <span class="visually-hidden">Sale price&nbsp;</span>
4830          <span class="price-item--sale price">$19.95</span>
4831        </span>
4832      
4833    </div>
4834  
4835</div>
4836    
4837  </div>
4838</div>
4839
4840        </li>
4841      
4842        <li
4843          class="predictive-search-results__card predictive-search-results__card--product"
4844          ref="resultsItems[]"
4845        >
4846          
4847<div
4848  class="resource-card"
4849  data-resource-type="product"
4850>
4851  <a
4852    class="resource-card__link"
4853    href="/products/mfeo-mint-for-each-other-chunk-big-bath-bar"
4854  >
4855    <span class="visually-hidden">
4856      MFEO Mint for Each Other Chunk Big Bath Bar - Perfectly Posh
4857    </span>
4858  </a>
4859  <div
4860    class="resource-card__media"
4861    style="--resource-card-aspect-ratio: 4 / 5;"
4862    
4863  >
4864      
4865      
4866
4867        <img src="//perfectlyposh.com/cdn/shop/files/1148g-mZLdUEKyWjE8hb9LFe0p4iJ8jOv-w2000-_1.png?v=1781983974&amp;width=500" alt="Enjoy a 7 oz MFEO Mint for Each Other Chunk Big Bath Bar by Perfectly Posh. This nourishing soap blends rosemary, peppermint, and shea butter in light green packaging with botanical designs and gold accents." srcset="//perfectlyposh.com/cdn/shop/files/1148g-mZLdUEKyWjE8hb9LFe0p4iJ8jOv-w2000-_1.png?v=1781983974&amp;width=240 240w, //perfectlyposh.com/cdn/shop/files/1148g-mZLdUEKyWjE8hb9LFe0p4iJ8jOv-w2000-_1.png?v=1781983974&amp;width=352 352w" width="500" height="500" loading="lazy" class="resource-card__image" sizes="auto" ref="" style="object-position: 50.0% 50.0%;">
4868</div>
4869
4870  <div class="resource-card__content">
4871    <p class="resource-card__title paragraph">MFEO Mint for Each Other Chunk Big Bath Bar - Perfectly Posh</p>
4872
4873    
4874      <div ref="priceContainer">
4875  
4876    
4877    <div
4878      class="
4879        price__regular
4880        
4881      "
4882    >
4883      <span class="price">$10.95</span>
4884    </div>
4885    <div
4886      class="
4887        price__sale
4888        
4889          price__hidden
4890        
4891      "
4892    >
4893      
4894        <span class="price-item__group">
4895          <span class="visually-hidden">Regular price&nbsp;</span>
4896          <span class="price-item--regular compare-at-price"></span>
4897        </span>
4898        <span class="price-item__group">
4899          <span class="visually-hidden">Sale price&nbsp;</span>
4900          <span class="price-item--sale price">$10.95</span>
4901        </span>
4902      
4903    </div>
4904  
4905</div>
4906    
4907  </div>
4908</div>
4909
4910        </li>
4911      
4912    </ul>
4913  
4914</div>
4915
4916        
4917      
4918    </div>
4919  
4920</div>
4921
4922          </div>
4923
4924          <div class="predictive-search-form__footer">
4925            <button
4926              class="button predictive-search__search-button"
4927              ref="viewAllButton"
4928            >
4929              View all
4930            </button>
4931          </div>
4932        </div>
4933      </form>
4934    </predictive-search-component>
4935  </dialog>
4936</dialog-component>
4937
4938
4939
4940
4941    
4942      
4942<script
4943  src="//perfectlyposh.com/cdn/shop/t/1/assets/gift-card-recipient-form.js?v=129634859299628245901777514867"
4944  type="module"
4945  fetchpriority="low"
4946></script>
4946
4947<quick-add-dialog id="quick-add-dialog">
4948  <dialog
4949    class="quick-add-modal dialog-modal color-scheme-1"
4950    ref="dialog"
4951    scroll-lock
4952  >
4953    <button
4954      ref="closeButton"
4955      on:click="/closeDialog"
4956      class="button button-unstyled close-button quick-add-modal__close"
4957      aria-label="Close dialog"
4958    ><svg aria-hidden="true" width="14" height="14" viewBox="0 0 14 14" fill="none" xmlns="http://www.w3.org/2000/svg">
4959  <path d="M12 2L2 12" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
4960  <path d="M12 12L2 2" stroke="currentColor" stroke-width="var(--icon-stroke-width)" stroke-linecap="round" stroke-linejoin="round"/>
4961</svg>
4962</button>
4963
4964    <div
4965      id="quick-add-modal-content"
4966      class="quick-add-modal__content"
4967    ></div>
4968  </dialog>
4969</quick-add-dialog>
4970
4971
4972
4973
4974
4975
4976    
4977  <div id="shopify-block-Aamora2hLNHcxQVNaT__12120936241911852800" class="shopify-block shopify-app-block"><section class='jdgm-widget jdgm-revs-tab' role='complementary'>
4978  
4979  <div class='jdgm-revs-tab-btn btn' position="right" tabindex="0" aria-label="Click to open Judge.me floating reviews tab" role='button'>★ Reviews</div>
4980  <div class='jdgm-revs-tab__header'>
4981    <a class='jdgm-close-ico'></a>
4982    <h3 class='jdgm-revs-tab__title'>Let customers speak for us</h3>
4983    <a class='jdgm-revs-tab__url' href='/pages/reviews'>
4984      <div data-score='4.79' class='jdgm-all-reviews-rating' aria-label='Average rating is 4.79' role='img'></div>267 reviews
4985    </a>
4986  </div>
4987  
4988  
4989  <div class='jdgm-widget jdgm-all-reviews-widget-v2025'
4990    data-widget='all-reviews-v2025'
4991    data-entry-point='all_reviews_widget_v2025.js'
4992    data-entry-key='all-reviews-widget-v2025/main.js'
4993    data-block-id='Aamora2hLNHcxQVNaT__12120936241911852800'
4994    data-review-source=''
4995    data-show-all-reviews-in-same-tab=''
4996    data-show-first=''
4997    data-empty-state=''
4998    data-is-floating-tab='true'
4999    
5000    >
5001    
5002      <div class='jdgm-legacy-widget-content' style='display: none;'>
5003        <style>  </style> <section class='jdgm-revs-tab__wrapper'> <style>.jdgm-revs-tab{display: none}</style> <div class='jdgm-mask'></div> <div class='jdgm-revs-tab__main'> <div class='jdgm-revs-tab__content'> <div class='jdgm-revs-tab__content-header' data-number-of-product-reviews='248' data-number-of-shop-reviews='19'> <a style='display: none' href='#' class='jdgm-write-rev-link'>Write a review</a> <div class='jdgm-histogram jdgm-temp-hidden'>  <div class='jdgm-histogram__row' data-rating='5' data-frequency='242' data-percentage='91'>  <div class='jdgm-histogram__star' role='button' aria-label="91% (242) reviews with 5 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 91%;'> </div> </div> <div class='jdgm-histogram__percentage'>91%</div> <div class='jdgm-histogram__frequency'>(242)</div> </div>  <div class='jdgm-histogram__row' data-rating='4' data-frequency='12' data-percentage='4'>  <div class='jdgm-histogram__star' role='button' aria-label="4% (12) reviews with 4 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--off'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 4%;'> </div> </div> <div class='jdgm-histogram__percentage'>4%</div> <div class='jdgm-histogram__frequency'>(12)</div> </div>  <div class='jdgm-histogram__row' data-rating='3' data-frequency='4' data-percentage='1'>  <div class='jdgm-histogram__star' role='button' aria-label="1% (4) reviews with 3 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 1%;'> </div> </div> <div class='jdgm-histogram__percentage'>1%</div> <div class='jdgm-histogram__frequency'>(4)</div> </div>  <div class='jdgm-histogram__row' data-rating='2' data-frequency='0' data-percentage='0'>  <div class='jdgm-histogram__star' role='button' aria-label="0% (0) reviews with 2 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 0%;'> </div> </div> <div class='jdgm-histogram__percentage'>0%</div> <div class='jdgm-histogram__frequency'>(0)</div> </div>  <div class='jdgm-histogram__row' data-rating='1' data-frequency='9' data-percentage='3'>  <div class='jdgm-histogram__star' role='button' aria-label="3% (9) reviews with 1 star rating"  tabindex='0' ><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span><span class='jdgm-star jdgm--off'></span></div> <div class='jdgm-histogram__bar'> <div class='jdgm-histogram__bar-content' style='width: 3%;'> </div> </div> <div class='jdgm-histogram__percentage'>3%</div> <div class='jdgm-histogram__frequency'>(9)</div> </div>  <div class='jdgm-histogram__row jdgm-histogram__clear-filter' data-rating=null tabindex='0'></div> </div> <div class='jdgm-gallery' data-url='reviews/all_reviews_js_based' data-per-page='10'> <div class='jdgm-gallery-data jdgm-hidden' data-json='[{&quot;uuid&quot;:&quot;c5c59ebf-90c1-43c6-a956-32ae6b8b5ad4&quot;,&quot;reviewer_name&quot;:&quot;Carol B.&quot;,&quot;reviewer_initial&quot;:&quot;C&quot;,&quot;title&quot;:&quot;I was introduced to Posh at Messy Bun (Scrapbooking/Crafting B \u0026#39;n\u0026#39; B) in Antioch, IL&quot;,&quot;body_html&quot;:&quot;\u003cp\u003eI was at a scrapbooking/crafting Bed and Breakfast (Messy Bun, in Antioch, IL) and she was STOCKED with Posh products. My face always breaks out from scents and lotions; so, I never try them. Since it was a casual weekend, and she had a variety of Posh products, I decided to try the \&quot;Face Plumping\&quot; followed by the \&quot;moisturizer\&quot;. I felt so pretty afterwards (What a great feeling). By the final night I also tried the body scrub, lip moisturizer, shower moisturizer, eye gel, and she gave me a sample selection (Including make-up wipes) for the future. I&#39;m excited to add Posh to my morning routine as it makes me feel good!\u003c/p\u003e&quot;,&quot;verified_buyer&quot;:false,&quot;location&quot;:&quot;&quot;,&quot;video_external_ids&quot;:[],&quot;media_platform_hosted_video_infos&quot;:[],&quot;cf_answers&quot;:[],&quot;shop_reply_name&quot;:&quot;
5003Perfectly Posh&quot;,&quot;product_title&quot;:&quot;Moisturize 911 Caffeinated Face Moisturizer - Perfectly Posh&quot;,&quot;product_url&quot;:&quot;/products/moisturize-911-caffeinated-face-moisturizer&quot;,&quot;product_url_with_utm&quot;:&quot;https://perfectlyposh.com/products/moisturize-911-caffeinated-face-moisturizer?jdgm_referral_location=widget\u0026ref=judge.me\u0026utm_campaign=judgeme-review-site\u0026utm_medium=referral\u0026utm_source=judgeme&quot;,&quot;rating&quot;:&quot;5&quot;,&quot;created_at&quot;:&quot;2023-08-06 00:00:00 UTC&quot;,&quot;pictures_urls&quot;:[{&quot;compact&quot;:&quot;https://m.media-amazon.com/images/I/71fJmW8FoWL._SY1000.jpg&quot;,&quot;original&quot;:&quot;https://m.media-amazon.com/images/I/71fJmW8FoWL._SY1000.jpg&quot;},{&quot;compact&quot;:&quot;https://m.media-amazon.com/images/I/71qtF--kq8L._SY1000.jpg&quot;,&quot;original&quot;:&quot;https://m.media-amazon.com/images/I/71qtF--kq8L._SY1000.jpg&quot;}]},{&quot;uuid&quot;:&quot;37d297ba-07cd-4aee-8b2b-d0380d625c1d&quot;,&quot;reviewer_name&quot;:&quot;Kathryn W.&quot;,&quot;reviewer_initial&quot;:&quot;K&quot;,&quot;title&quot;:&quot;Good quality&quot;,&quot;body_html&quot;:&quot;\u003cp\u003eI have been using posh products for years now and I love them. This was my first time purchasing this specific face lotion and it love it. It leaves my face feeling so fresh and bright.\u003c/p\u003e&quot;,&quot;verified_buyer&quot;:false,&quot;location&quot;:&quot;&quot;,&quot;video_external_ids&quot;:[],&quot;media_platform_hosted_video_infos&quot;:[],&quot;cf_answers&quot;:[],&quot;shop_reply_name&quot;:&quot;Perfectly Posh&quot;,&quot;product_title&quot;:&quot;Moisturize 911 Caffeinated Face Moisturizer - Perfectly Posh&quot;,&quot;product_url&quot;:&quot;/products/moisturize-911-caffeinated-face-moisturizer&quot;,&quot;product_url_with_utm&quot;:&quot;https://perfectlyposh.com/products/moisturize-911-caffeinated-face-moisturizer?jdgm_referral_location=widget\u0026ref=judge.me\u0026utm_campaign=judgeme-review-site\u0026utm_medium=referral\u0026utm_source=judgeme&quot;,&quot;rating&quot;:&quot;5&quot;,&quot;created_at&quot;:&quot;2023-07-06 00:00:00 UTC&quot;,&quot;pictures_urls&quot;:[{&quot;compact&quot;:&quot;https://m.media-amazon.com/images/I/71K0OuF3JvL._SY1000.jpg&quot;,&quot;original&quot;:&quot;https://m.media-amazon.com/images/I/71K0OuF3JvL._SY1000.jpg&quot;}]}]'></div> </div> <div class="jdgm-medals-wrapper jdgm-hidden" data-updated-at='2026-09-28T22:29:21Z'> <style type="text/css"></style> <div class="jdgm-medals" data-link="https://app.judge.me/reviews/medals"> <div class="jdgm-medals__container"> <div class="jdgm-medal-wrapper" title="Diamond Transparent Shop. Published 100% of verified reviews received in total"> <a class="jdgm-medal jdgm--loading" data-value="" data-type="tran" data-tier="diamond" aria-label="Judge.me Diamond Transparent Shop medal"> <div class="jdgm-medal__image" data-url="tran/diamond.svg" data-alt="Judge.me Diamond Transparent Shop medal"></div> </a> </div> <div class="jdgm-medal-wrapper" title="Gold Verified Reviews Shop. Obtained at least 100 reviews submitted by genuine customers with proof of purchase history"> <a class="jdgm-medal jdgm--loading" data-value="106" data-type="ver_rev" data-tier="gold" aria-label="Judge.me Gold Verified Reviews Shop medal"> <div class="jdgm-medal__image" data-url="ver_rev/gold.svg" data-alt="Judge.me Gold Verified Reviews Shop medal"></div> <div class="jdgm-medal__value ">106</div> </a> </div> <div class="jdgm-medal-wrapper" title="Silver Monthly Record Shop. Achieved an all-time record of 30 published verified reviews within one calendar month."> <a class="jdgm-medal jdgm--loading" data-value="30" data-type="mon_rec" data-tier="silver" aria-label="Judge.me Silver Monthly Record Shop medal"> <div class="jdgm-medal__image" data-url="mon_rec/silver_hollow.svg" data-alt="Judge.me Silver Monthly Record Shop medal"></div> <div class="jdgm-medal__value ">30</div> </a> </div> <div class="jdgm-medal-wrapper" title="Top 5% Trending Shops. Top 5% trending shops that obtained and published the most verified reviews in the last 30 days"> <a class="jdgm-medal jdgm--loading" data-value="" data-type="tops_trend" data-tier="5-percent" aria-label="Judge.me Top 5% Trending Shops medal"> <div class="jdgm-medal__image" data-url="tops_trend/5-percent.svg" data-alt
5003="Judge.me Top 5% Trending Shops medal"></div> </a> </div> </div> </div> </div> <div class='jdgm-rev-widg__sort-wrapper'></div> </div> <div class='jdgm-revs-tab__content-body'> <div class='jdgm-revs-tab__reviews'><div class='jdgm-rev jdgm-divider-top' data-verified-buyer='false' data-review-id='5b142820-4c62-498a-810d-649c85829dd1' data-thumb-up-count='0' data-thumb-down-count='0'> <div class='jdgm-rev__header'>  <div class='jdgm-rev__icon' > A </div>  <span class='jdgm-rev__rating' data-score='5' tabindex='0' aria-label='5 star review' role='img'> <span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span> </span> <span class='jdgm-rev__timestamp jdgm-spinner' data-content='2026-09-28 14:58:42 UTC'></span>  <span class='jdgm-rev__prod-info-wrapper'> <span class='jdgm-rev__prod-link-prefix'></span>  <a href='/products/sassyooma-bfyhc' target='_blank' class='jdgm-rev__prod-link'> Sassyooma Big Fat Yummy Hand Creme - Perfectly Posh </a>  </span> <div class='jdgm-rev__br'></div> <span class='jdgm-rev__buyer-badge-wrapper'>  </span> <span class='jdgm-rev__author-wrapper'> <span class='jdgm-rev__author'>Aimee</span> <span class='jdgm-rev__location' >  </span> </span> </div> <div class='jdgm-rev__content'> <div class='jdgm-rev__custom-form'>  </div> <b class='jdgm-rev__title'></b> <div class='jdgm-rev__body'><p>I love everything POSH
5004<br />This is my most favorite 😍</p></div> <div class='jdgm-rev__pics'>  </div> <div class='jdgm-rev__vids'>   </div> </div> <div class='jdgm-rev__actions'> <div class='jdgm-rev__social'></div> <div class='jdgm-rev__votes'></div> </div> <div class='jdgm-rev__reply'>  </div> </div><div class='jdgm-rev jdgm-divider-top' data-verified-buyer='false' data-review-id='a925f80f-e51b-4a0a-bd52-8fea81751b99' data-thumb-up-count='0' data-thumb-down-count='0'> <div class='jdgm-rev__header'>  <div class='jdgm-rev__icon' > A </div>  <span class='jdgm-rev__rating' data-score='5' tabindex='0' aria-label='5 star review' role='img'> <span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span> </span> <span class='jdgm-rev__timestamp jdgm-spinner' data-content='2026-09-28 01:37:33 UTC'></span>  <span class='jdgm-rev__prod-info-wrapper'> <span class='jdgm-rev__prod-link-prefix'></span>  <a href='/products/bff-best-face-forever-exfoliating-face-wash' target='_blank' class='jdgm-rev__prod-link'> BFF Best Face Forever Exfoliating Face Wash - Perfectly Posh </a>  </span> <div class='jdgm-rev__br'></div> <span class='jdgm-rev__buyer-badge-wrapper'>  </span> <span class='jdgm-rev__author-wrapper'> <span class='jdgm-rev__author'>Anonymous</span> <span class='jdgm-rev__location' >  </span> </span> </div> <div class='jdgm-rev__content'> <div class='jdgm-rev__custom-form'>  </div> <b class='jdgm-rev__title'></b> <div class='jdgm-rev__body'><p>Patiently hoping this is restocked! I have been using this for years and LOVE it!</p></div> <div class='jdgm-rev__pics'>  </div> <div class='jdgm-rev__vids'>   </div> </div> <div class='jdgm-rev__actions'> <div class='jdgm-rev__social'></div> <div class='jdgm-rev__votes'></div> </div> <div class='jdgm-rev__reply'>  </div> </div><div class='jdgm-rev jdgm-divider-top' data-verified-buyer='false' data-review-id='a20e568f-5e56-4bd0-9d25-51ec7ecc9401' data-thumb-up-count='0' data-thumb-down-count='0'> <div class='jdgm-rev__header'>  <div class='jdgm-rev__icon' > C </div>  <span class='jdgm-rev__rating' data-score='5' tabindex='0' aria-label='5 star review' role='img'> <span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span> </span> <span class='jdgm-rev__timestamp jdgm-spinner' data-content='2026-09-21 05:06:55 UTC'></span>  <span class='jdgm-rev__prod-info-wrapper'> <span class='jdgm-rev__prod-link-prefix'></span>  <a href='/products/bff-best-face-forever-exfoliating-face-wash' target='_blank' class='jdgm-rev__prod-link'>
5004 BFF Best Face Forever Exfoliating Face Wash - Perfectly Posh </a>  </span> <div class='jdgm-rev__br'></div> <span class='jdgm-rev__buyer-badge-wrapper'>  </span> <span class='jdgm-rev__author-wrapper'> <span class='jdgm-rev__author'>Customer</span> <span class='jdgm-rev__location' >  </span> </span> </div> <div class='jdgm-rev__content'> <div class='jdgm-rev__custom-form'>  </div> <b class='jdgm-rev__title'></b> <div class='jdgm-rev__body'><p>please restock. This scrub is the best.</p></div> <div class='jdgm-rev__pics'>  </div> <div class='jdgm-rev__vids'>   </div> </div> <div class='jdgm-rev__actions'> <div class='jdgm-rev__social'></div> <div class='jdgm-rev__votes'></div> </div> <div class='jdgm-rev__reply'>  </div> </div><div class='jdgm-rev jdgm-divider-top' data-verified-buyer='false' data-review-id='ca33389c-2530-4fca-9ab1-ab9ec8432954' data-thumb-up-count='0' data-thumb-down-count='0'> <div class='jdgm-rev__header'>  <div class='jdgm-rev__icon' > A </div>  <span class='jdgm-rev__rating' data-score='5' tabindex='0' aria-label='5 star review' role='img'> <span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span><span class='jdgm-star jdgm--on'></span> </span> <span class='jdgm-rev__timestamp jdgm-spinner' data-content='2026-09-20 22:35:41 UTC'></span>  <span class='jdgm-rev__prod-info-wrapper'> <span class='jdgm-rev__prod-link-prefix'></span>  <a href='/products/bff-best-face-forever-exfoliating-face-wash' target='_blank' class='jdgm-rev__prod-link'> BFF Best Face Forever Exfoliating Face Wash - Perfectly Posh </a>  </span> <div class='jdgm-rev__br'></div> <span class='jdgm-rev__buyer-badge-wrapper'>  </span> <span class='jdgm-rev__author-wrapper'> <span class='jdgm-rev__author'>Anonymous</span> <span class='jdgm-rev__location' >  </span> </span> </div> <div class='jdgm-rev__content'> <div class='jdgm-rev__custom-form'>  </div> <b class='jdgm-rev__title'></b> <div class='jdgm-rev__body'><p>I love this face wash! Need it ASAP when will it restock? Please do not discontinue it. It is the best face wash ever!!!</p></div> <div class='jdgm-rev__pics'>  </div> <div class='jdgm-rev__vids'>   </div> </div> <div class='jdgm-rev__actions'> <div class='jdgm-rev__social'></div> <div class='jdgm-rev__votes'></div> </div> <div class='jdgm-rev__reply'>  </div> </div></div> <div class='jdgm-spinner jdgm-revs-tab__spinner' style='display: none'> </div> <div class='jdgm-paginate' data-per-page='4' data-url='https://api.judge.me/reviews/reviews_for_reviews_tab' ><a class='jdgm-paginate__page jdgm-curt' data-page='1' aria-label='Page 1' tabindex='0' aria-current='page'  role='button'>1</a><a class='jdgm-paginate__page ' data-page='2' aria-label='Page 2' tabindex='0'   role='button'>2</a><a class='jdgm-paginate__page ' data-page='3' aria-label='Page 3' tabindex='0'   role='button'>3</a><a class='jdgm-paginate__page jdgm-paginate__next-page' data-page='2' aria-label='Page 2' tabindex='0'  rel='next' role='button'></a><a class='jdgm-paginate__page jdgm-paginate__last-page' data-page='62' aria-label='Page 62' tabindex='0'   role='button'></a></div> </div> </div> </div> </section>
5005      </div>
5006    
5007  </div>
5008
5009  
5010  
5010<script type='application/json' class='jdgm-all-reviews-widget-v2025-data-json'>{"number_of_reviews":267,"number_of_shop_reviews":19,"number_of_product_reviews":248,"average_rating":"4.79","histogram":[{"rating":5,"frequency":242,"percentage":91,"extra_class":null},{"rating":4,"frequency":12,"percentage":4,"extra_class":null},{"rating":3,"frequency":4,"percentage":1,"extra_class":null},{"rating":2,"frequency":0,"percentage":0,"extra_class":null},{"rating":1,"frequency":9,"percentage":3,"extra_class":null}],"photo_gallery":[{"uuid":"c5c59ebf-90c1-43c6-a956-32ae6b8b5ad4","reviewer_name":"Carol B.","reviewer_initial":"C","title":"I was introduced to Posh at Messy Bun (Scrapbooking/Crafting B &#39;n&#39; B) in Antioch, IL","body_html":"<p>I was at a scrapbooking/crafting Bed and Breakfast (Messy Bun, in Antioch, IL) and she was STOCKED with Posh products. My face always breaks out from scents and lotions; so, I never try them. Since it was a casual weekend, and she had a variety of Posh products, I decided to try the \"Face Plumping\" followed by the \"moisturizer\". I felt so pretty afterwards (What a great feeling). By the final night I also tried the body scrub, lip moisturizer, shower moisturizer, eye gel, and she gave me a sample selection (Including make-up wipes) for the future. I'm excited to add Posh to my morning routine as it makes me feel good!</p>","verified_buyer":false,"location":"","video_external_ids":[],"media_platform_hosted_video_infos":[],"cf_answers":[],"shop_reply_name":"Perfectly Posh","product_title":"Moisturize 911 Caffeinated Face Moisturizer - Perfectly Posh","product_url":"/products/moisturize-911-caffeinated-face-moisturizer","product_url_with_utm":"https://perfectlyposh.com/products/moisturize-911-caffeinated-face-moisturizer?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","rating":"5","created_at":"2023-08-06 00:00:00 UTC","pictures_urls":[{"original":"https://m.media-amazon.com/images/I/71fJmW8FoWL._SY1000.jpg","small":"https://m.media-amazon.com/images/I/71fJmW8FoWL._SY1000.jpg","compact":"https://m.media-amazon.com/images/I/71fJmW8FoWL._SY1000.jpg","huge":"https://m.media-amazon.com/images/I/71fJmW8FoWL._SY1000.jpg"},{"original":"https://m.media-amazon.com/images/I/71qtF--kq8L._SY1000.jpg","small":"https://m.media-amazon.com/images/I/71qtF--kq8L._SY1000.jpg","compact":"https://m.media-amazon.com/images/I/71qtF--kq8L._SY1000.jpg","huge":"https://m.media-amazon.com/images/I/71qtF--kq8L._SY1000.jpg"}]},{"uuid":"37d297ba-07cd-4aee-8b2b-d0380d625c1d","reviewer_name":"Kathryn W.","reviewer_initial":"K","title":"Good quality","body_html":"<p>I have been using posh products for years now and I love them. This was my first time purchasing this specific face lotion and it love it. It leaves my face feeling so fresh and bright.</p>","verified_buyer":false,"location":"","video_external_ids":[],"media_platform_hosted_video_infos":[],"cf_answers":[],"shop_reply_name":"Perfectly Posh","product_title":"Moisturize 911 Caffeinated Face Moisturizer - Perfectly Posh","product_url":"/products/moisturize-911-caffeinated-face-moisturizer","product_url_with_utm":"https://perfectlyposh.com/products/moisturize-911-caffeinated-face-moisturizer?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","rating":"5","created_at":"2023-07-06 00:00:00 UTC","pictures_urls":[{"original":"https://m.media-amazon.com/images/I/71K0OuF3JvL._SY1000.jpg","small":"https://m.media-amazon.com/images/I/71K0OuF3JvL._SY1000.jpg","compact":"https://m.media-amazon.com/images/I/71K0OuF3JvL._SY1000.jpg","huge":"https://m.media-amazon.com/images/I/71K0OuF3JvL._SY1000.jpg"}]}],"shop_medals":[{"type":"tran","tier":"diamond","tier_key":500,"medal_image_url":"https://public-images.judge.me/judgeme/medals-v2-2025-rebranding/tran/diamond.svg","title":"Diamond Transparent Shop","description":"Published 100% of verified reviews received in total"},{"type":"ver_rev","tier":"gold","tier_key":300,"medal_image_url":"https://public-images.judge.me/judgeme/medals-v2-2025-rebranding/ver_rev/gold.svg","title":"Gold Verified Reviews Shop","description":"Obtained at least 100 reviews submitted by genuine customers with proof of purchase history","value":"106","value_is_long":false},{"type":"mon_rec","tier":"silver","tier_key":200,"medal_image_url":"https://public-images.judge.me/judgeme/medals-v2-2025-rebranding/mon_rec/silver_hollow.svg","title":"Silver Monthly Record Shop","description":"Achieved an all-time record of 30 published verified reviews within one calendar month.","value":"30","value_is_long":false},{"type":"tops_trend","tier":"5 percent","tier_key":80,"medal_image_url":"https://public-images.judge.me/judgeme/medals-v2-2025-rebranding/tops_trend/5-percent.svg","title":"Top 5% Trending Shops","description":"Top 5% trending shops that obtained and published the most verified reviews in the last 30 days"}],"multi_language_sorting_enabled":false,"ai_summary_text":"","metafield_updated_at":"2026-09-28T22:29:18Z","review_keywords":null,"all_reviews":[{"uuid":"5b142820-4c62-498a-810d-649c85829dd1","title":"","rating":5,"body_html":"<p>I love everything POSH\n<br />This is my most favorite 😍</p>","body":"I love everything POSH\r\nThis is my most favorite 😍","verified_buyer":false,"created_at":"2026-09-28T14:58:42.183Z","reviewer_name":"Aimee","reviewer_initial":"A","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Sassyooma Big Fat Yummy Hand Creme - Perfectly Pos
5010h","encoded_product_id":"gx21lk5w","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/sassyooma-bfyhc","product_url_with_utm":"https://perfectlyposh.com/products/sassyooma-bfyhc?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/Sassyooma-HC-_1.png?v=1781984015","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/Sassyooma-HC-_1.png?v=1781984015","review_site_product_path":null,"is_shop_review":false},{"uuid":"a925f80f-e51b-4a0a-bd52-8fea81751b99","title":"","rating":5,"body_html":"<p>Patiently hoping this is restocked! I have been using this for years and LOVE it!</p>","body":"Patiently hoping this is restocked! I have been using this for years and LOVE it!","verified_buyer":false,"created_at":"2026-09-28T01:37:33.659Z","reviewer_name":"Anonymous","reviewer_initial":"A","is_anonymous_reviewer":true,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"BFF Best Face Forever Exfoliating Face Wash - Perfectly Posh","encoded_product_id":"WoenP4EM","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/bff-best-face-forever-exfoliating-face-wash","product_url_with_utm":"https://perfectlyposh.com/products/bff-best-face-forever-exfoliating-face-wash?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":2,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","review_site_product_path":null,"is_shop_review":false},{"uuid":"a20e568f-5e56-4bd0-9d25-51ec7ecc9401","title":"","rating":5,"body_html":"<p>please restock. This scrub is the best.</p>","body":"please restock. This scrub is the best.","verified_buyer":false,"created_at":"2026-09-21T05:06:55.131Z","reviewer_name":"Customer","reviewer_initial":"C","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"BFF Best Face Forever Exfoliating Face Wash - Perfectly Posh","encoded_product_id":"WoenP4EM","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/bff-best-face-forever-exfoliating-face-wash","product_url_with_utm":"https://perfectlyposh.com/products/bff-best-face-forever-exfoliating-face-wash?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":7,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","review_site_product_path":null,"is_shop_review":false},{"uuid":"4fd36648-b839-48d8-9e0c-ea965aa48e82","title":"","rating":1,"body_html":"<p>The size and quality of your products are truly lacking now. I am very disappointed in Perfectly Pos
5010h! Get the people back who worked for the company in 2015! They knew what they were doing and kept the products that were popular and WORKED!</p>","body":"The size and quality of your products are truly lacking now. I am very disappointed in Perfectly Posh! Get the people back who worked for the company in 2015! They knew what they were doing and kept the products that were popular and WORKED!","verified_buyer":false,"created_at":"2026-09-20T23:53:44.894Z","reviewer_name":"Teresa","reviewer_initial":"T","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Brazilian Bombshell Skindelicious Body Butter - Perfectly Posh","encoded_product_id":"WORrYo49","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/brazilian-bombshell-skindelicious-body-butter","product_url_with_utm":"https://perfectlyposh.com/products/brazilian-bombshell-skindelicious-body-butter?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1dolS09jajkp69Dhb8y07oF4kNGSBie0R-w2000-_1.png?v=1781983937","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1dolS09jajkp69Dhb8y07oF4kNGSBie0R-w2000-_1.png?v=1781983937","review_site_product_path":null,"is_shop_review":false},{"uuid":"ca33389c-2530-4fca-9ab1-ab9ec8432954","title":"","rating":5,"body_html":"<p>I love this face wash! Need it ASAP when will it restock? Please do not discontinue it. It is the best face wash ever!!!</p>","body":"I love this face wash! Need it ASAP when will it restock? Please do not discontinue it. It is the best face wash ever!!!","verified_buyer":false,"created_at":"2026-09-20T22:35:41.374Z","reviewer_name":"Anonymous","reviewer_initial":"A","is_anonymous_reviewer":true,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"BFF Best Face Forever Exfoliating Face Wash - Perfectly Posh","encoded_product_id":"WoenP4EM","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/bff-best-face-forever-exfoliating-face-wash","product_url_with_utm":"https://perfectlyposh.com/products/bff-best-face-forever-exfoliating-face-wash?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","review_site_product_path":null,"is_shop_review":false},{"uuid":"844c1c4f-7790-4870-a610-664c378bf06f","title":"","rating":5,"body_html":"<p>Great company to order from. Love the products</p>","body":"Great company to order from. Love the products","verified_buyer":true,"created_at":"2026-09-19T14:40:41.364Z","reviewer_name":"Margaret h.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Pos
5010h","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":1,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"05a7a7a7-5eff-4dc6-af49-4ac3919af039","title":"","rating":5,"body_html":"<p>Love. Love. Love.</p>","body":"Love. Love. Love.","verified_buyer":true,"created_at":"2026-09-19T14:40:12.445Z","reviewer_name":"Margaret h.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"PJs All Day Skindelicious Body Butter - Perfectly Posh","encoded_product_id":"g015lbXw","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/pjs-all-day-skindelicious-body-butter","product_url_with_utm":"https://perfectlyposh.com/products/pjs-all-day-skindelicious-body-butter?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":1,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1RZ3pilKnfWpS7Ix_lu2dktfuyzavXpRt_w2000.png?v=1778884190","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1RZ3pilKnfWpS7Ix_lu2dktfuyzavXpRt_w2000.png?v=1778884190","review_site_product_path":null,"is_shop_review":false},{"uuid":"bc2df801-1b3c-460a-85db-0baf4aa2153c","title":"","rating":5,"body_html":"<p>Makes my lips feel great</p>","body":"Makes my lips feel great","verified_buyer":true,"created_at":"2026-09-19T14:39:52.290Z","reviewer_name":"Margaret h.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Word of Mouth Nourishing Lip Mask - Perfectly Posh","encoded_product_id":"Dv2VlJ2v","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/word-of-mouth-nourishing-lip-mask","product_url_with_utm":"https://perfectlyposh.com/products/word-of-mouth-nourishing-lip-mask?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":1,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/PPH-LB4114-STY.jpg?v=1778884143","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/PPH-LB4114-STY.jpg?v=1778884143","review_site_product_path":null,"is_shop_review":false},{"uuid":"64adeaa6-6102-4916-8782-8bd16636a58b","title":"","rating":5,"body_html":"<p>Arrived fast and as promised.  Love Gender Bender!</p>","body":"Arrived fast and as promised.  Love Gender Bender!","verified_buyer":true,"created_at":"2026-09-18T23:11:44.628Z","reviewer_name":"Heather R.","reviewer_initial":"H","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Pos
5010h","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":6,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"adb90139-8424-4620-92a1-54831c2cbf80","title":"","rating":5,"body_html":"<p>Great soap.  Cleans well and smells great.  My husband loves it and reorders when getting low.</p>","body":"Great soap.  Cleans well and smells great.  My husband loves it and reorders when getting low.","verified_buyer":true,"created_at":"2026-09-18T23:11:09.049Z","reviewer_name":"Heather R.","reviewer_initial":"H","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Gender Bender Chunk Big Bath Bar - Perfectly Posh","encoded_product_id":"Dw2bwnPP","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/gender-bender-chunk-big-bath-bar","product_url_with_utm":"https://perfectlyposh.com/products/gender-bender-chunk-big-bath-bar?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":6,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1en9AEpV9tz9dt1LI82vOZDtIcRyTzCgm_w2000.png?v=1778863139","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1en9AEpV9tz9dt1LI82vOZDtIcRyTzCgm_w2000.png?v=1778863139","review_site_product_path":null,"is_shop_review":false}],"all_reviews_pagination":{"total_pages":27,"total_count":267,"current_page":1,"per_page":10},"product_reviews":[{"uuid":"5b142820-4c62-498a-810d-649c85829dd1","title":"","rating":5,"body_html":"<p>I love everything POSH\n<br />This is my most favorite 😍</p>","body":"I love everything POSH\r\nThis is my most favorite 😍","verified_buyer":false,"created_at":"2026-09-28T14:58:42.183Z","reviewer_name":"Aimee","reviewer_initial":"A","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Sassyooma Big Fat Yummy Hand Creme - Perfectly Posh","encoded_product_id":"gx21lk5w","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/sassyooma-bfyhc","product_url_with_utm":"https://perfectlyposh.com/products/sassyooma-bfyhc?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/Sassyooma-HC-_1.png?v=1781984015","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/Sassyooma-HC-_1.png?v=1781984015","review_site_product_path":null,"is_shop_review":false},{"uuid":"a925f80f-e51b-4a0a-bd52-8fea81751b99","title":"","rating":5,"body_html":"<p>Patiently hoping this is restocked! I have been using this for years and LOVE it!</p>","body":"Patiently hoping this is restocked! I have been using this for years and LOVE it!","verified_buyer":false,"created_at":"2026-09-28T01:37:33.659Z","reviewer_name":"Anonymous","reviewer_initial":"A","is_anonymous_reviewer":true,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"BFF Best Face Forever Exfoliating Face Wash - Perfectly Pos
5010h","encoded_product_id":"WoenP4EM","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/bff-best-face-forever-exfoliating-face-wash","product_url_with_utm":"https://perfectlyposh.com/products/bff-best-face-forever-exfoliating-face-wash?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":2,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","review_site_product_path":null,"is_shop_review":false},{"uuid":"a20e568f-5e56-4bd0-9d25-51ec7ecc9401","title":"","rating":5,"body_html":"<p>please restock. This scrub is the best.</p>","body":"please restock. This scrub is the best.","verified_buyer":false,"created_at":"2026-09-21T05:06:55.131Z","reviewer_name":"Customer","reviewer_initial":"C","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"BFF Best Face Forever Exfoliating Face Wash - Perfectly Posh","encoded_product_id":"WoenP4EM","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/bff-best-face-forever-exfoliating-face-wash","product_url_with_utm":"https://perfectlyposh.com/products/bff-best-face-forever-exfoliating-face-wash?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":7,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","review_site_product_path":null,"is_shop_review":false},{"uuid":"4fd36648-b839-48d8-9e0c-ea965aa48e82","title":"","rating":1,"body_html":"<p>The size and quality of your products are truly lacking now. I am very disappointed in Perfectly Posh! Get the people back who worked for the company in 2015! They knew what they were doing and kept the products that were popular and WORKED!</p>","body":"The size and quality of your products are truly lacking now. I am very disappointed in Perfectly Posh! Get the people back who worked for the company in 2015! They knew what they were doing and kept the products that were popular and WORKED!","verified_buyer":false,"created_at":"2026-09-20T23:53:44.894Z","reviewer_name":"Teresa","reviewer_initial":"T","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Brazilian Bombshell Skindelicious Body Butter - Perfectly Posh","encoded_product_id":"WORrYo49","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/brazilian-bombshell-skindelicious-body-butter","product_url_with_utm":"https://perfectlyposh.com/products/brazilian-bombshell-skindelicious-body-butter?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Pos
5010h","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1dolS09jajkp69Dhb8y07oF4kNGSBie0R-w2000-_1.png?v=1781983937","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1dolS09jajkp69Dhb8y07oF4kNGSBie0R-w2000-_1.png?v=1781983937","review_site_product_path":null,"is_shop_review":false},{"uuid":"ca33389c-2530-4fca-9ab1-ab9ec8432954","title":"","rating":5,"body_html":"<p>I love this face wash! Need it ASAP when will it restock? Please do not discontinue it. It is the best face wash ever!!!</p>","body":"I love this face wash! Need it ASAP when will it restock? Please do not discontinue it. It is the best face wash ever!!!","verified_buyer":false,"created_at":"2026-09-20T22:35:41.374Z","reviewer_name":"Anonymous","reviewer_initial":"A","is_anonymous_reviewer":true,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"BFF Best Face Forever Exfoliating Face Wash - Perfectly Posh","encoded_product_id":"WoenP4EM","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/bff-best-face-forever-exfoliating-face-wash","product_url_with_utm":"https://perfectlyposh.com/products/bff-best-face-forever-exfoliating-face-wash?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/image-_1.png?v=1781984017","review_site_product_path":null,"is_shop_review":false},{"uuid":"05a7a7a7-5eff-4dc6-af49-4ac3919af039","title":"","rating":5,"body_html":"<p>Love. Love. Love.</p>","body":"Love. Love. Love.","verified_buyer":true,"created_at":"2026-09-19T14:40:12.445Z","reviewer_name":"Margaret h.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"PJs All Day Skindelicious Body Butter - Perfectly Posh","encoded_product_id":"g015lbXw","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/pjs-all-day-skindelicious-body-butter","product_url_with_utm":"https://perfectlyposh.com/products/pjs-all-day-skindelicious-body-butter?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":1,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1RZ3pilKnfWpS7Ix_lu2dktfuyzavXpRt_w2000.png?v=1778884190","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1RZ3pilKnfWpS7Ix_lu2dktfuyzavXpRt_w2000.png?v=1778884190","review_site_product_path":null,"is_shop_review":false},{"uuid":"bc2df801-1b3c-460a-85db-0baf4aa2153c","title":"","rating":5,"body_html":"<p>Makes my lips feel great</p>","body":"Makes my lips feel great","verified_buyer":true,"created_at":"2026-09-19T14:39:52.290Z","reviewer_name":"Margaret h.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Word of Mouth Nourishing Lip Mask - Perfectly Pos
5010h","encoded_product_id":"Dv2VlJ2v","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/word-of-mouth-nourishing-lip-mask","product_url_with_utm":"https://perfectlyposh.com/products/word-of-mouth-nourishing-lip-mask?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":1,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/PPH-LB4114-STY.jpg?v=1778884143","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/PPH-LB4114-STY.jpg?v=1778884143","review_site_product_path":null,"is_shop_review":false},{"uuid":"adb90139-8424-4620-92a1-54831c2cbf80","title":"","rating":5,"body_html":"<p>Great soap.  Cleans well and smells great.  My husband loves it and reorders when getting low.</p>","body":"Great soap.  Cleans well and smells great.  My husband loves it and reorders when getting low.","verified_buyer":true,"created_at":"2026-09-18T23:11:09.049Z","reviewer_name":"Heather R.","reviewer_initial":"H","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Gender Bender Chunk Big Bath Bar - Perfectly Posh","encoded_product_id":"Dw2bwnPP","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/gender-bender-chunk-big-bath-bar","product_url_with_utm":"https://perfectlyposh.com/products/gender-bender-chunk-big-bath-bar?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":6,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1en9AEpV9tz9dt1LI82vOZDtIcRyTzCgm_w2000.png?v=1778863139","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/1en9AEpV9tz9dt1LI82vOZDtIcRyTzCgm_w2000.png?v=1778863139","review_site_product_path":null,"is_shop_review":false},{"uuid":"8d31c86b-41bb-433e-b5bd-238388b12e8d","title":"","rating":5,"body_html":"<p>Have been using it for years. Absolutely love it. Helps with wrinkles</p>","body":"Have been using it for years. Absolutely love it. Helps with wrinkles","verified_buyer":true,"created_at":"2026-09-17T00:49:20.152Z","reviewer_name":"Lee Y.","reviewer_initial":"L","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Moisturize 911 Caffeinated Face Moisturizer - Perfectly Posh","encoded_product_id":"D8O5APOY","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/moisturize-911-caffeinated-face-moisturizer","product_url_with_utm":"https://perfectlyposh.com/products/moisturize-911-caffeinated-face-moisturizer?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":3,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Pos
5010h","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/PPH-FF4040-3-STY.jpg?v=1777518563","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/PPH-FF4040-3-STY.jpg?v=1777518563","review_site_product_path":null,"is_shop_review":false},{"uuid":"1b1fc9a8-2d26-44fb-b0e7-c28f5a3c3907","title":"","rating":1,"body_html":"<p>This product is great, used and loved it for YEARS. But TWENTY-SIX DOLLARS???!!! Absolutely not. This has ruined my opinion on this whole company.</p>","body":"This product is great, used and loved it for YEARS. But TWENTY-SIX DOLLARS???!!! Absolutely not. This has ruined my opinion on this whole company.","verified_buyer":false,"created_at":"2026-09-10T19:08:11.822Z","reviewer_name":"Anonymous","reviewer_initial":"A","is_anonymous_reviewer":true,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"THE HEALER Skin Stick w/Shea Butter - Perfectly Posh","encoded_product_id":"gl8MXajv","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/products/the-healer-shea-butter-skin-stick","product_url_with_utm":"https://perfectlyposh.com/products/the-healer-shea-butter-skin-stick?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/The-Healer.png?v=1784828709","is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/The-Healer.png?v=1784828709","review_site_product_path":null,"is_shop_review":false}],"product_reviews_pagination":{"total_pages":25,"total_count":248,"current_page":1,"per_page":10},"shop_reviews":[{"uuid":"844c1c4f-7790-4870-a610-664c378bf06f","title":"","rating":5,"body_html":"<p>Great company to order from. Love the products</p>","body":"Great company to order from. Love the products","verified_buyer":true,"created_at":"2026-09-19T14:40:41.364Z","reviewer_name":"Margaret h.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Posh","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":1,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"64adeaa6-6102-4916-8782-8bd16636a58b","title":"","rating":5,"body_html":"<p>Arrived fast and as promised.  Love Gender Bender!</p>","body":"Arrived fast and as promised.  Love Gender Bender!","verified_buyer":true,"created_at":"2026-09-18T23:11:44.628Z","reviewer_name":"Heather R.","reviewer_initial":"H","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Pos
5010h","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":6,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"15798bfb-0145-4d96-9b85-77dcf08753cf","title":"","rating":5,"body_html":"<p>Great products, easy order and fast shipping!</p>","body":"Great products, easy order and fast shipping!","verified_buyer":true,"created_at":"2026-09-09T18:56:26.303Z","reviewer_name":"Miranda M.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Posh","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"4f55bee2-f948-4736-a054-8ec232192a1a","title":"","rating":5,"body_html":"<p>Perfectly posh is a great company, it had it's ups n downs, but I'm glad to see it back with the right people.</p>","body":"Perfectly posh is a great company, it had it's ups n downs, but I'm glad to see it back with the right people.","verified_buyer":false,"created_at":"2026-09-06T20:33:04.356Z","reviewer_name":"Anonymous","reviewer_initial":"A","is_anonymous_reviewer":true,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Posh","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":1,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_from_store_visitor"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"03fb0d7c-0bde-4c9c-a0c9-a6f96a0c2d14","title":"","rating":5,"body_html":"<p>I always have loved Posh. I used to be a consultant 2014-2020</p>","body":"I always have loved Posh. I used to be a consultant 2014-2020","verified_buyer":true,"created_at":"2026-09-01T23:30:13.319Z","reviewer_name":"Michelle H.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Pos
5010h","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":3,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"c47bee14-2022-42a1-ac67-49da00df2d69","title":"","rating":5,"body_html":"<p>Shopping is easy and with the price reductions more affordable.</p>","body":"Shopping is easy and with the price reductions more affordable.","verified_buyer":true,"created_at":"2026-08-17T21:58:10.511Z","reviewer_name":"Rene M.J.","reviewer_initial":"R","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Posh","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":5,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"58844f25-3710-41a0-87df-2e28ca86ecd2","title":"","rating":4,"body_html":"<p>I have used it for a long time love it .got the 4oz pump bottle hard to get the pump to work .this time I got the 1.75 squeeze container hope it will better will be getting more soon thank you .</p>","body":"I have used it for a long time love it .got the 4oz pump bottle hard to get the pump to work .this time I got the 1.75 squeeze container hope it will better will be getting more soon thank you .","verified_buyer":true,"created_at":"2026-08-11T22:23:57.176Z","reviewer_name":"Anonymous","reviewer_initial":"A","is_anonymous_reviewer":true,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Posh","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":0,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"0169f343-5a24-446e-8d21-7e39ac6d88a8","title":"","rating":5,"body_html":"<p>Always have a great experience!</p>","body":"Always have a great experience!","verified_buyer":true,"created_at":"2026-08-07T15:35:17.875Z","reviewer_name":"Kelly C.","reviewer_initial":"K","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Pos
5010h","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":7,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"2e6cf586-da3a-4f80-b5bf-04eea982c8d7","title":"","rating":5,"body_html":"<p>Love the products that I have used, including the skin stick (perfect for bug bites) and the antedoat soap (very similar to the ‘milkin’ it bar that has been discontinued)…</p>","body":"Love the products that I have used, including the skin stick (perfect for bug bites) and the antedoat soap (very similar to the ‘milkin’ it bar that has been discontinued)…","verified_buyer":true,"created_at":"2026-08-03T14:48:32.113Z","reviewer_name":"Michele N.","reviewer_initial":"M","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Posh","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":3,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true},{"uuid":"d2f5607d-e6ae-404e-86dd-ccaa63df7f4e","title":"","rating":5,"body_html":"<p>I have been a representative for the company because I believe in the quality of the products</p>","body":"I have been a representative for the company because I believe in the quality of the products","verified_buyer":true,"created_at":"2026-07-25T21:30:21.838Z","reviewer_name":"Jill N.","reviewer_initial":"J","is_anonymous_reviewer":false,"cf_answers":[],"reply_content":null,"pictures_urls":[],"video_external_ids":[],"thumb_up":0,"thumb_down":0,"location_country":"","location_country_code":"","location":"","source":null,"product_title":"Perfectly Posh","encoded_product_id":"DzQL7BrQ","encoded_shop_id":"Ay4p2k1y","is_shopify_lite":false,"product_url":"/","product_url_with_utm":"https://perfectlyposh.com?jdgm_referral_location=widget&ref=judge.me&utm_campaign=judgeme-review-site&utm_medium=referral&utm_source=judgeme","product_in_store":true,"product_variant_title":"","profile_img_idx":3,"avatar_image_url":null,"gravatar_hash":null,"media_platform_hosted_video_infos":[],"country_code_show_flag":null,"pinned":null,"in_a_group":false,"can_pin":true,"shop_reply_name":"Perfectly Posh","transparency_badges":["review_collected_via_store_invitation"],"language":null,"is_for_product_from_group":null,"product_variant_image_url":null,"is_for_product_from_bundle":false,"product_title_localized":null,"product_pictures_url":null,"review_site_product_path":null,"is_shop_review":true}],"shop_reviews_pagination":{"total_pages":2,"total_count":19,"current_page":1,"per_page":10},"custom_form_filters_and_averages":{"choice_cfs":[],"graphic_cfs":[]},"sort_key":"created_at"}</script>
5010
5011  
5011<script class='jdgm-all-reviews-widget-v2025-data'>
5012    jdgm.data ||= {};
5013    try {
5014      jdgm.data.allReviewsWidgetV2025 = JSON.parse(document.currentScript.previousElementSibling.textContent);
5015    } catch (e) { console.error('[Judge.me] all-reviews v2025 data parse failed', e); }
5016  </script>
5016
5017  
5018</section>
5019
5020
5021</div><div id="shopify-block-AMkdPR1kzUnJkYjB1T__13047258039897440615" class="shopify-block shopify-app-block"><div id='jdgm-cart-drawer-source'
5022  class='jdgm-widget'
5023  style='display:none'
5024  data-widget='cart-drawer'
5025  data-entry-point='cart_drawer.js'
5026  data-entry-key='cart-drawer/main.js'
5027  data-shop-reviews='true'
5028  data-shop-average-rating='4.79'
5029  data-shop-review-count='267'
5030  data-widget-type='review-widget'></div>
5031
5032
5033
5034
5035</div><div id="shopify-block-ARTg3djF4REhDLzg1M__16237003337219470499" class="shopify-block shopify-app-block">
5036
5037
5038
5039
5040
5041<script>
5042    var _ALConfig = _ALConfig || {};
5043    _ALConfig = {
5044        'shop_name': '',
5045        'public_domain': null,
5046        'proxy_path_prefix': 'apps/loyalty',
5047        'widgetJsPath': 'https://loyalty-admin.appstle.com/app/loyalty-widget.bundle.js',
5048        'widgetCssPath': 'https://loyalty-admin.appstle.com/content/loyalty-widget.css',
5049        'pointEarnRules': [],
5050        'pointRedeemRules': [],
5051        'widget_setting': null,
5052        'product': null,
5053        'productCollections': [],
5054        'shop_labels': null,
5055        'pointRoundType': 'NO_ROUND'
5056    };
5057
5058    // Shopify's market-aware account routes. Emitted from the Liquid `routes` object so links keep
5059    // the customer's current market/language prefix (e.g. /en-eu/account/login) instead of a
5060    // hard-coded /account/login, which Shopify resolves against the shop's primary market.
5061    _ALConfig.routes = {
5062        'root_url': "\/",
5063        'account_url': "\/account",
5064        'account_login_url': "https:\/\/perfectlyposh.com\/customer_authentication\/redirect?locale=en\u0026region_country=US",
5065        'account_register_url': "https:\/\/account.perfectlyposh.com?locale=en\u0026buyer_flags=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJwZXJmZWN0bHlwb3NoLTIubXlzaG9waWZ5LmNvbSIsImZsYWdzIjpbXSwiZXhwIjoxNzkxNDYyNTE0LCJuYmYiOjE3OTA4NTc3MTR9.kPc4LLc4SWKcl9tXLT1QPD4tHYZVIjjdRaLxoa8wk-E",
5066        'account_logout_url': "\/account\/logout"
5067    };
5068
5069    
5070    _ALConfig.shop_name = "Perfectly Posh";
5071    
5072
5073    
5074    _ALConfig.proxy_path_prefix = "apps/loyalty";
5075    
5076
5077    
5078    _ALConfig.currency = "USD";
5079    
5080
5081    
5082    _ALConfig.storeCurrency = "USD";
5083    
5084
5085    
5086    _ALConfig.pointRoundType = "NO_ROUND";
5087    
5088
5089    
5090    _ALConfig.public_domain = "perfectlyposh.com";
5091    
5092
5093    
5094    _ALConfig.widgetJsPath = "https://loyalty-admin.appstle.com/app/loyalty-widget.bundle.js?v=1784185263763";
5095    
5096
5097    
5098    _ALConfig.widgetCssPath = "https://loyalty-admin.appstle.com/content/loyalty-widget.css?v=1784185263763";
5099    
5100
5101    
5102    _ALConfig.referralEnabled = false;
5103    
5104
5105    
5106    _ALConfig.vipTierEnabled = false;
5107    
5108
5109    
5110    _ALConfig.vipTierSetting = {"id":336,"shop":"perfectlyposh-2.myshopify.com","type":"AMOUNT_SPENT","amountOfTimeToAchieveTier":"CUSTOM","startAt":"2026-07-16T13:07:22.606147Z","evaluationEndAt":null,"createAt":"2026-07-16T13:07:22.606196Z","updateAt":"2026-07-16T14:17:55.991937Z","isRunning":true,"vipIntervalType":"MONTH","vipInterval":1,"expiredAt":null,"allowedCustomerTags":null,"restrictCustomersWithTags":null,"timeToAchieveMilestone":"ONE_YEAR","evaluationWindowedAmountSpent":true};
5111    
5112
5113    
5114    _ALConfig.vipTiers = [];
5115    
5116
5117    
5118    _ALConfig.pointEarnRules = [{"id":846,"shop":"perfectlyposh-2.myshopify.com","type":"LEAVE_REVIEW_JUDGE_ME","status":"ACTIVE","historicPurchaseDuration":"NONE","basePoints":25.0,"includeSubtotal":false,"includeTax":false,"excludeCollections":null,"name":"Write a review using Judge Me","customerNotification":"{{points}} Posh Points added for review using {{review_type}}, {{details}}","createAt":"2026-07-16T13:16:14.459576Z","updateAt":"2026-07-16T14:57:55.222618Z","rewardInterval":"DAY","productId":null,"collectionId":null,"variantId":null,"productData":null,"collectionData":null,"customerFacingLabel":"Get 25 Posh Points for leaving a review","socialUrl":null,"disableForOnSellProduct":false,"autoApprovalDays":1,"enableInterval":false,"earnLimit":1,"activityType":"REGULAR","allowedCustomerTags":null,"includeShippingPoints":false,"eligibleForFirstOrder":false,"maximumPoints":null,"restrictCustomerTags":null,"customerFacingIconUrl":null,"serial":0,"excludeOrderTags":null,"pointBasedOn":null,"excludeProducts":null,"givePointsToGuestCustomers":false,"allowedProductTags":null,"restrictProductTags":null,"rollBackPointsOnUnsubscribe":false,"addAdditionalPoints":true,"additionalPoints":25.0,"refundNotificationLabel":"{{points}} points removed for refund.","disablePointsForDiscountedProduct":false,"platformType":"BOTH","vipTierId":null,"earnType":"POINTS","minimumOrderValue":null,"allowedOrderTags":null,"excludeVariantIds":null,"rewardAssignType":"DYNAMIC","applyOnImportedCustomer":false,"enableBirthdayPromo":false,"promoPoints
5118Multiplier":null,"ruleStartDate":null,"ruleEndDate":null,"translations":null,"appliesOn":"BOTH","manuallyApprovePoints":false},{"id":845,"shop":"perfectlyposh-2.myshopify.com","type":"BIRTHDAY","status":"ACTIVE","historicPurchaseDuration":"NONE","basePoints":50.0,"includeSubtotal":false,"includeTax":false,"excludeCollections":null,"name":"Birthday Reward","customerNotification":"{{points}} points added for {{rule_name}}","createAt":"2026-07-16T13:15:00.64375Z","updateAt":"2026-07-16T14:58:34.031854Z","rewardInterval":"DAY","productId":null,"collectionId":null,"variantId":null,"productData":null,"collectionData":null,"customerFacingLabel":"Get 50 points on your birthday","socialUrl":null,"disableForOnSellProduct":false,"autoApprovalDays":0,"enableInterval":false,"earnLimit":1,"activityType":"REGULAR","allowedCustomerTags":null,"includeShippingPoints":false,"eligibleForFirstOrder":false,"maximumPoints":null,"restrictCustomerTags":null,"customerFacingIconUrl":null,"serial":0,"excludeOrderTags":null,"pointBasedOn":null,"excludeProducts":null,"givePointsToGuestCustomers":false,"allowedProductTags":null,"restrictProductTags":null,"rollBackPointsOnUnsubscribe":false,"addAdditionalPoints":false,"additionalPoints":null,"refundNotificationLabel":"{{points}} points removed for refund.","disablePointsForDiscountedProduct":false,"platformType":"BOTH","vipTierId":null,"earnType":"POINTS","minimumOrderValue":null,"allowedOrderTags":null,"excludeVariantIds":null,"rewardAssignType":"DYNAMIC","applyOnImportedCustomer":false,"enableBirthdayPromo":false,"promoPointsMultiplier":null,"ruleStartDate":null,"ruleEndDate":null,"translations":null,"appliesOn":"BOTH","manuallyApprovePoints":false},{"id":844,"shop":"perfectlyposh-2.myshopify.com","type":"PURCHASE","status":"ACTIVE","historicPurchaseDuration":"NONE","basePoints":1.0,"includeSubtotal":false,"includeTax":false,"excludeCollections":null,"name":"Product Purchase","customerNotification":"{{points}} points added for {{rule_name}}","createAt":"2026-07-16T13:14:16.76962Z","updateAt":"2026-07-16T14:37:42.822036Z","rewardInterval":"DAY","productId":null,"collectionId":null,"variantId":null,"productData":null,"collectionData":null,"customerFacingLabel":"Get 1 points for every $1 spent on product purchases","socialUrl":null,"disableForOnSellProduct":false,"autoApprovalDays":1,"enableInterval":false,"earnLimit":1,"activityType":"REGULAR","allowedCustomerTags":null,"includeShippingPoints":false,"eligibleForFirstOrder":false,"maximumPoints":null,"restrictCustomerTags":null,"customerFacingIconUrl":null,"serial":0,"excludeOrderTags":null,"pointBasedOn":null,"excludeProducts":null,"givePointsToGuestCustomers":false,"allowedProductTags":null,"restrictProductTags":null,"rollBackPointsOnUnsubscribe":false,"addAdditionalPoints":false,"additionalPoints":null,"refundNotificationLabel":"{{points}} points have been deducted for the refunded product.","disablePointsForDiscountedProduct":false,"platformType":"ONLINE_STORE","vipTierId":null,"earnType":"POINTS","minimumOrderValue":null,"allowedOrderTags":null,"excludeVariantIds":null,"rewardAssignType":"DYNAMIC","applyOnImportedCustomer":false,"enableBirthdayPromo":false,"promoPointsMultiplier":null,"ruleStartDate":null,"ruleEndDate":null,"translations":null,"appliesOn":"BOTH","manuallyApprovePoints":false}];
5119    
5120
5121    
5122    _ALConfig.pointRedeemRules = [{"id":1189,"shop":"perfectlyposh-2.myshopify.com","name":"$80 Store Credit","type":"STORE_CREDIT","referralType":null,"status":"ACTIVE","redeemPoints":1000.0,"discountType":"FIXED","discount":80.0,"minimumPurchaseAmount":0.0,"createAt":"2026-07-16T13:35:44.335264Z","updateAt":"2026-07-16T13:42:34.217822Z","maximumShippingRate":0.0,"productId":null,"variantId":null,"productData":null,"collectionId":null,"collectionData":null,"customerFacingLabel":"Redeem 1,000 Posh Points to receive a 80 store credit","restrictCustomers":null,"restrictCustomersWithTags":null,"rewardInterval":"DAY","appliesOn":"ONE_TIME","combinedWithProductDiscount":false,"combinedWithShippingDiscount":false,"combinedWithOrderDiscount":false,"enableInterval":false,"redeemLimit":1,"enableNumberOfUsagesLimit":false,"numberOfUsagesLimit":null,"allowedCustomerTags":null,"earnRuleId":null,"vipTierId":null,"redeemLabel":"{{credits}} Posh Points","customerFacingIconUrl":null,"serial":0,"discountCodeForAllCustomer":false,"allowedCountries":null,"showInPosOnly":false,"redeemAllPoints":false,"enableMinimumPointsToRedeem":false,"requiredMinimumPointsToRedeem":0.0,"enableMaximumPointsToRedeem":false,"requiredMaximumPointsToRedeem":0.0,"enablePOS":false,"minimumPointsLabel":"Add minimum {{points}} points to redeem","maximumPointsLabel":"Maximum {{points}}
5122 points can be redeemed","applyDiscountOnce":true,"enableDiscountPrefix":false,"discountPrefixText":null,"discountCodeNodeId":null,"translations":null,"quantity":1,"applyToEachItem":null},{"id":1188,"shop":"perfectlyposh-2.myshopify.com","name":"$50 Store Credit","type":"STORE_CREDIT","referralType":null,"status":"ACTIVE","redeemPoints":750.0,"discountType":"FIXED","discount":50.0,"minimumPurchaseAmount":0.0,"createAt":"2026-07-16T13:35:34.049961Z","updateAt":"2026-07-16T13:42:23.033064Z","maximumShippingRate":0.0,"productId":null,"variantId":null,"productData":null,"collectionId":null,"collectionData":null,"customerFacingLabel":"Redeem 750 Posh Points to receive a 50 store credit","restrictCustomers":null,"restrictCustomersWithTags":null,"rewardInterval":"DAY","appliesOn":"ONE_TIME","combinedWithProductDiscount":false,"combinedWithShippingDiscount":false,"combinedWithOrderDiscount":false,"enableInterval":false,"redeemLimit":1,"enableNumberOfUsagesLimit":false,"numberOfUsagesLimit":null,"allowedCustomerTags":null,"earnRuleId":null,"vipTierId":null,"redeemLabel":"{{credits}} Posh Points","customerFacingIconUrl":null,"serial":0,"discountCodeForAllCustomer":false,"allowedCountries":null,"showInPosOnly":false,"redeemAllPoints":false,"enableMinimumPointsToRedeem":false,"requiredMinimumPointsToRedeem":0.0,"enableMaximumPointsToRedeem":false,"requiredMaximumPointsToRedeem":0.0,"enablePOS":false,"minimumPointsLabel":"Add minimum {{points}} points to redeem","maximumPointsLabel":"Maximum {{points}} points can be redeemed","applyDiscountOnce":true,"enableDiscountPrefix":false,"discountPrefixText":null,"discountCodeNodeId":null,"translations":null,"quantity":1,"applyToEachItem":null},{"id":1187,"shop":"perfectlyposh-2.myshopify.com","name":"$25 Store Credit","type":"STORE_CREDIT","referralType":null,"status":"ACTIVE","redeemPoints":500.0,"discountType":"FIXED","discount":25.0,"minimumPurchaseAmount":0.0,"createAt":"2026-07-16T13:35:18.067132Z","updateAt":"2026-07-16T13:42:08.95804Z","maximumShippingRate":0.0,"productId":null,"variantId":null,"productData":null,"collectionId":null,"collectionData":null,"customerFacingLabel":"Redeem 500 Posh Points to receive a 25 store credit","restrictCustomers":null,"restrictCustomersWithTags":null,"rewardInterval":"DAY","appliesOn":"ONE_TIME","combinedWithProductDiscount":false,"combinedWithShippingDiscount":false,"combinedWithOrderDiscount":false,"enableInterval":false,"redeemLimit":1,"enableNumberOfUsagesLimit":false,"numberOfUsagesLimit":null,"allowedCustomerTags":null,"earnRuleId":null,"vipTierId":null,"redeemLabel":"{{credits}} Posh Points","customerFacingIconUrl":null,"serial":0,"discountCodeForAllCustomer":false,"allowedCountries":null,"showInPosOnly":false,"redeemAllPoints":false,"enableMinimumPointsToRedeem":false,"requiredMinimumPointsToRedeem":0.0,"enableMaximumPointsToRedeem":false,"requiredMaximumPointsToRedeem":0.0,"enablePOS":false,"minimumPointsLabel":"Add minimum {{points}} points to redeem","maximumPointsLabel":"Maximum {{points}} points can be redeemed","applyDiscountOnce":true,"enableDiscountPrefix":false,"discountPrefixText":null,"discountCodeNodeId":null,"translations":null,"quantity":1,"applyToEachItem":null},{"id":1186,"shop":"perfectlyposh-2.myshopify.com","name":"$10 Store Credit","type":"STORE_CREDIT","referralType":null,"status":"ACTIVE","redeemPoints":250.0,"discountType":"FIXED","discount":10.0,"minimumPurchaseAmount":0.0,"createAt":"2026-07-16T13:35:08.308635Z","updateAt":"2026-07-16T13:41:58.76119Z","maximumShippingRate":0.0,"productId":null,"variantId":null,"productData":null,"collectionId":null,"collectionData":null,"customerFacingLabel":"Redeem 250 Posh Points to receive a 10 store credit","restrictCustomers":null,"restrictCustomersWithTags":null,"rewardInterval":"DAY","appliesOn":"ONE_TIME","combinedWithProductDiscount":false,"combinedWithShippingDiscount":false,"combinedWithOrderDiscount":false,"enableInterval":false,"redeemLimit":1,"enableNumberOfUsagesLimit":false,"numberOfUsagesLimit":null,"allowedCustomerTags":null,"earnRuleId":null,"vipTierId":null,"redeemLabel":"{{credits}} Posh Points","customerFacingIconUrl":null,"serial":0,"discountCodeForAllCustomer":false,"allowedCountries":null,"showInPosOnly":false,"redeemAllPoints":false,"enableMinimumPointsToRedeem":false,"requiredMinimumPointsToRedeem":0.0,"enableMaximumPointsToRedeem":false,"requiredMaximumPointsToRedeem":0.0,"enablePOS":false,"minimumPointsLabel":"Add minimum {{points}} points to redeem","maximumPointsLabel":"Maximum {{points}}
5122 points can be redeemed","applyDiscountOnce":true,"enableDiscountPrefix":false,"discountPrefixText":null,"discountCodeNodeId":null,"translations":null,"quantity":1,"applyToEachItem":null},{"id":1185,"shop":"perfectlyposh-2.myshopify.com","name":"$3 Store Credit","type":"STORE_CREDIT","referralType":null,"status":"ACTIVE","redeemPoints":100.0,"discountType":"FIXED","discount":3.0,"minimumPurchaseAmount":0.0,"createAt":"2026-07-16T13:34:55.078447Z","updateAt":"2026-07-16T13:41:48.363232Z","maximumShippingRate":0.0,"productId":null,"variantId":null,"productData":null,"collectionId":null,"collectionData":null,"customerFacingLabel":"Redeem 100 Posh Points to receive a 3 store credit","restrictCustomers":null,"restrictCustomersWithTags":null,"rewardInterval":"DAY","appliesOn":"ONE_TIME","combinedWithProductDiscount":false,"combinedWithShippingDiscount":false,"combinedWithOrderDiscount":false,"enableInterval":false,"redeemLimit":1,"enableNumberOfUsagesLimit":false,"numberOfUsagesLimit":null,"allowedCustomerTags":null,"earnRuleId":null,"vipTierId":null,"redeemLabel":"{{credits}} Posh Points","customerFacingIconUrl":null,"serial":0,"discountCodeForAllCustomer":false,"allowedCountries":null,"showInPosOnly":false,"redeemAllPoints":false,"enableMinimumPointsToRedeem":false,"requiredMinimumPointsToRedeem":0.0,"enableMaximumPointsToRedeem":false,"requiredMaximumPointsToRedeem":0.0,"enablePOS":false,"minimumPointsLabel":"Add minimum {{points}} points to redeem","maximumPointsLabel":"Maximum {{points}} points can be redeemed","applyDiscountOnce":true,"enableDiscountPrefix":false,"discountPrefixText":null,"discountCodeNodeId":null,"translations":null,"quantity":1,"applyToEachItem":null}];
5123    
5124
5125    
5126    _ALConfig.vipRewards = [];
5127    
5128
5129    
5130    _ALConfig.vipPointRewards = [];
5131    
5132
5133    
5134    _ALConfig.widget_setting = {"id":336,"shop":"perfectlyposh-2.myshopify.com","themePrimaryColor":null,"themeSecondaryColor":null,"widgetPosition":"LEFT","showWidget":false,"widgetBackgroundColor":"#ef4187","widgetTextColor":"#ffffff","faq":null,"popupHeaderColor":"#ef4187","popupTilesColor":"#f8fafc","popupButtonColor":"#ef4187","popupIconColor":"#ef4187","popupLinksColor":"#ef4187","homeGreetings":null,"homeSignup":null,"popupButtonTextColor":"#ffffff","popupTilesTextColor":"#1f2937","popupDiscountCodeGenerated":null,"popupCopyDiscount":null,"popupCopiedDiscount":null,"widgetTitle":null,"customCss":null,"widgetCounterBackgroundColor":"#ef4187","widgetCounterTextColor":"#ffffff","logoUrl":"https://cdn.shopify.com/s/files/1/0825/4989/9508/files/posh-vip-white.png?v=1784224693","notificationToastBackgroundColor":"#ffe3ef","notificationToastTextColor":"#000000","acquirePointsBackgroundColor":"#eef4ff","acquirePointsTextColor":"#1e3a8a","pointsBalanceBackgroundColor":"inherit","pointsBalanceTextColor":"#1f2937","allowedCustomersTag":null,"widgetSettingJson":"{\"widgetDateTimeFormat\":\"MMM D, YYYY, h:mm A\",\"showVIPSection\":true,\"dedicatedPageType\":\"DEDICATED_PAGE_V2\",\"referralRedirectUrl\":\"\",\"loaderIcon\":\"\",\"showLoyaltyOptOut\":false,\"cartWidgetSelector\":\"\",\"toastPosition\":\"bottom-center\",\"primaryDedicatedPageSectionBackgroundColor\":\"#F2F8FF\",\"reachVipMileStoneType\":\"TOTAL_AMOUNT\",\"createAccountLink\":\"\",\"cartDrawerWidgetPlacement\":\"BEFORE\",\"refreshOnAddToCart\":false,\"selectApplyRewardsDefault\":false,\"dateLocalFormat\":\"DEFAULT\",\"loyaltyPageMetaDescription\":\"\",\"enableMetaTagForNoIndexing\":false,\"hideToastNotification\":false,\"hideAppstleLoaderIcon\":false,\"showRedeemSection\":true,\"loadScriptOnlyOnDedicatedPage\":false,\"hideRedeemRuleSectionOnEmpty\":true,\"widgetBackgroundImage\":\"\",\"vipTierBadgeBackgroun
5134dColor\":\"inherit\",\"enableEnhancedV2Styling\":true,\"showCustomerHistoryDescriptionToolTip\":false,\"checkoutAllowedCustomerTags\":\"\",\"secondaryDedicatedPageBackgroundColor\":\"#ffffff\",\"launcherDataType\":\"POINTS\",\"titleCount\":60,\"hideCheckoutBlockLoggedOutCustomers\":false,\"vipTierBadgeTextColor\":\"#000000\",\"popupButtonHoverColor\":\"#b82f67\",\"cartWidgetPlacement\":\"BEFORE\",\"showRewardSection\":true,\"primaryDedicatedPageBackgroundColor\":\"#2f5bd8\",\"showHowItWorksSection\":true,\"visitedIcon\":\"\",\"afterCopiedDiscountRedirectUrl\":\"\",\"showVipTierBadge\":false,\"loggedOutFlagAcquirePoints\":false,\"manageLoyaltyButtonUrl\":\"\",\"hideRulesForLoggedOutCustomer\":false,\"hideStoreCreditsBalance\":false,\"checkoutRestrictCustomerTags\":\"\",\"hideExpirationDate\":false,\"dedicatedPageV2CardGap\":\"1.25rem\",\"showReferralSection\":false,\"cartWidgetRewardIcon\":\"\",\"hideEarnRuleSectionOnEmpty\":true,\"primaryDedicatedPageTextColor\":\"#ffffff\",\"showFAQSection\":true,\"showRangeForRedeemPoints\":false,\"dedicatedPageV2BorderRadius\":\"8px\",\"secondaryDedicatedPageSectionBackgroundColor\":\"#FFFFFF\",\"loyaltyPageMetaTitle\":\"\",\"applyDiscountCodeOnRedeem\":false,\"referralCustomRedirectUrl\":\"\",\"waysToEarnIcon\":\"\",\"vipTierBadgeSelector\":\"\",\"displayMethod\":\"TEXT_ICON\",\"hideFaqSection\":false,\"disableRuleCollapsible\":false,\"showEarnSection\":true,\"showTierName\":false,\"cartDrawerRedeemWidgetSelector\":\"\",\"checkoutRedeemLoginURL\":\"\",\"referralClaimGiftIcon\":\"\",\"widgetButtonLogoUrl\":\"https://cdn.shopify.com/s/files/1/0635/7391/7901/files/icon1.png?v=1719318035\",\"disableLoyaltyBlocks\":false,\"hidePointsBalance\":false,\"descriptionCount\":500,\"exploreButtonCustomRedirect\":\"\",\"hideWidgetOnScroll\":false,\"customFontUrl\":\"\",\"hideWidgetLauncherOnMobile\":false,\"hideFreeProductDropdownProductTitle\":false,\"showCartRedeemWidget\":true,\"customSignInLink\":\"\",\"referredCustomerRewardIcon\":\"\",\"enableAcquirePointsQuantitySelector\":false,\"showPoweredBy\":false,\"hideVipTierName\":false,\"showTransactionHistory\":true,\"waysToRedeemIcon\":\"\",\"secondaryDedicatedPageTextColor\":\"#4b5563\",\"customHtmlInject\":\"[]\",\"referringCustomerRewardIcon\":\"\"}","widgetButtonLogoUrl":"https://cdn.shopify.com/s/files/1/0635/7391/7901/files/icon1.png?v=1719318035","showReferralSocialMedia":true,"referralSocialMediaInfo":"[{\"socialMediaIconURL\":\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiB2aWV3Qm94PSItMzIgMCA1MTIgNTEyIj4KCTxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZ2MzIwYzAgMzUuMyAyOC43IDY0IDY0IDY0aDk4LjJWMzM0LjJoLTUyLjhWMjU2aDUyLjh2LTMzLjdjMC04Ny4xIDM5LjQtMTI3LjUgMTI1LTEyNy41YzE2LjIgMCA0NC4yIDMuMiA1NS43IDYuNFYxNzJjLTYtLjYtMTYuNS0xLTI5LjYtMWMtNDIgMC01OC4yIDE1LjktNTguMiA1Ny4yVjI1Nmg4My42bC0xNC40IDc4LjJIMjU1VjQ4MGgxMjljMzUuMyAwIDY0LTI4LjcgNjQtNjRWOTZjMC0zNS4zLTI4LjctNjQtNjQtNjR6IiAvPgo8L3N2Zz4=\",\"socialMediaLink\":\"https://facebook.com/Shopify\",\"socialMedia\":\"FACEBOOK\"},{\"socialMediaIconURL\":\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiB2aWV3Qm94PSItMzIgMCA1MTIgNTEyIj4KCTxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTY0IDMyQzI4LjcgMzIgMCA2MC43IDAgOTZ2MzIwYzAgMzUuMyAyOC43IDY0IDY0IDY0aDMyMGMzNS4zIDAgNjQtMjguNyA2NC02NFY5NmMwLTM1LjMtMjguNy02NC02NC02NHptMjk3LjEgODRMMjU3LjMgMjM0LjZMMzc5LjQgMzk2aC05NS42TDIwOSAyOTguMUwxMjMuMyAzOTZINzUuOGwxMTEtMTI2LjlMNjkuNyAxMTZoOThsNjcuNyA4OS41bDc4LjItODkuNXptLTM3LjggMjUxLjZMMTUzLjQgMTQyLjloLTI4LjNsMTcxLjggMjI0LjdoMjYuM3oiIC8+Cjwvc3ZnPg==\",\"socialMediaLink\":\"https://x.com\",\"socialMedia\":\"X\"},{\"socialMediaIconURL\":\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij4KCTxnIGZpbGw9ImN1cnJlbnRDb2xvciI+CgkJPHBhdGggZD0iTTIyIDcuNTM1VjE3YTMgMyAwIDAgMS0yLjgyNCAyLjk5NUwxOSAyMEg1YTMgMyAwIDAgMS0yLjk5NS0yLjgyNEwyIDE3VjcuNTM1bDkuNDQ1IDYuMjk3bC4xMTYuMDY2YTEgMSAwIDAgMCAuODc4IDBsLjExNi0uMDY2eiIgLz4KCQk8cGF0aCBkPSJNMTkgNGMxLjA4IDAgMi4wMjcuNTcgMi41NTUgMS40MjdMMTIgMTEuNzk3bC05LjU1NS02LjM3YTMgMyAwIDAgMSAyLjM1NC0xLjQyTDUgNHoiIC8+Cgk8L2c+Cjwvc3ZnPg==\",\"socialMediaLink\":\"https://mail.google.com\",\"socialMedia\":\"EMAIL\"}]","restrictedCustomersTag":null,"blockWidgetOnPages":null,"colorSettingsJson":"{\"popupLinksColor\":\"#ef4187\",\"popupHeaderColor\":\"#ef4187\",\"popupIconColor\":\"#ef4187\",\"acquirePointsBackgroun
5134dColor\":\"#eef4ff\",\"pointsBalanceBackgroundColor\":\"inherit\",\"pointsBalanceTextColor\":\"#1f2937\",\"widgetCounterBackgroundColor\":\"#ef4187\",\"popupButtonColor\":\"#ef4187\",\"popupTilesColor\":\"#f8fafc\",\"widgetBackgroundColor\":\"#ef4187\",\"notificationToastTextColor\":\"#000000\",\"widgetCounterTextColor\":\"#ffffff\",\"notificationToastBackgroundColor\":\"#ffe3ef\",\"popupTilesTextColor\":\"#1f2937\",\"popupButtonTextColor\":\"#ffffff\",\"widgetTextColor\":\"#ffffff\",\"acquirePointsTextColor\":\"#1e3a8a\"}","widgetType":"LAUNCHER","imageLinksJson":"{\"collectionDiscountRuleImage\":\"\",\"purchaseRuleImage\":\"\",\"buyProductFromCollectionRuleImage\":\"\",\"vipTierImage\":\"\",\"freeShippingRuleImage\":\"\",\"birthdayDiscountRuleImage\":\"\",\"referralBackgroundImage\":\"\",\"youtubeRuleImage\":\"\",\"referralReferenceImage\":\"\",\"birthdayRuleImage\":\"\",\"judgeMeReviewRuleImage\":\"\",\"pinterestRuleImage\":\"\",\"freeProductRuleImage\":\"\",\"productDiscountRuleImage\":\"\",\"faqIconImage\":\"\",\"looxIoReviewRuleImage\":\"\",\"stampedIoReviewRuleImage\":\"\",\"productReviewRuleImage\":\"\",\"discountRuleImage\":\"\",\"faqBackgroundImage\":\"\",\"tiktokRuleImage\":\"\",\"twitterRuleImage\":\"\",\"subscriptionRuleImage\":\"\",\"buyProductRuleImage\":\"\",\"createAccountRuleImage\":\"\",\"dynamicDiscountRuleImage\":\"\",\"visitShopRuleImage\":\"\",\"facebookRuleImage\":\"\",\"heroBackgroundImage\":\"\",\"instagramRuleImage\":\"\",\"okendoReviewRuleImage\":\"\",\"availableRewardsImage\":\"\"}","customerGreetingsIcon":null,"heroBackgroundImage":"","referralReferenceImage":"","referralBackgroundImage":"","purchaseRuleImage":"","subscriptionRuleImage":"","createAccountRuleImage":"","visitShopRuleImage":"","birthdayRuleImage":"","buyProductRuleImage":"","buyProductFromCollectionRuleImage":"","facebookRuleImage":"","pinterestRuleImage":"","instagramRuleImage":"","tiktokRuleImage":"","youtubeRuleImage":"","twitterRuleImage":"","stampedIoReviewRuleImage":"","looxIoReviewRuleImage":"","judgeMeReviewRuleImage":"","productReviewRuleImage":"","okendoReviewRuleImage":"","discountRuleImage":"","freeShippingRuleImage":"","freeProductRuleImage":"","productDiscountRuleImage":"","collectionDiscountRuleImage":"","dynamicDiscountRuleImage":"","birthdayDiscountRuleImage":"","availableRewardsImage":"","vipTierImage":"","faqBackgroundImage":"","showAcquirePoints":false,"acquirePointsSelector":null,"showPointsBalance":null,"pointsBalanceSelector":null,"showPoweredBy":false,"forceRedirectDedicatedPage":null,"historyDate":null,"historyActivityDetails":null,"historyPointsAdjustment":null,"historyStatus":null,"afterCopiedDiscountRedirectUrl":"","showVipTierBadge":false,"vipTierBadgeSelector":"","vipTierBadgeBackgroun
5134dColor":"inherit","vipTierBadgeTextColor":"#000000","faqIconImage":"","descriptionCount":500,"customHtmlInject":"[]","availablePoints":null,"showTransactionHistory":true,"showLoyaltyOptOut":false,"loyaltyOptoutActive":null,"loyaltyOptoutInactive":null,"createAccountLink":"","showReferralSection":false,"showRewardSection":true,"showRedeemSection":true,"showEarnSection":true,"showFAQSection":true,"showVIPSection":true,"showHowItWorksSection":true,"vipTierBenefits":null,"enrollLoyaltyProgramTitle":null,"enrollLoyaltyProgramDescription":null,"freeProductRewardAddToCart":null,"freeProductRewardAddedSuccessMessage":null,"enrolledSuccessMessage":null,"customFontUrl":"","visitedIcon":"","allowWidgetOnSpecificPages":null,"referralRedirectUrl":"","showRangeForRedeemPoints":false,"hideAppstleLoaderIcon":false,"hideFreeProductDropdownProductTitle":false,"showToLoggedInCustomerOnly":false,"enableMetaTagForNoIndexing":false,"waysToEarnIcon":"","waysToRedeemIcon":"","loaderIcon":"","toastPosition":"bottom-center","widgetDateTimeFormat":"MMM D, YYYY, h:mm A","toastErrorMsg":null,"primaryDedicatedPageBackgroundColor":"#2f5bd8","secondaryDedicatedPageBackgroundColor":"#ffffff","titleCount":60,"programUpdateMessage":null,"primaryDedicatedPageSectionBackgroundColor":"#F2F8FF","secondaryDedicatedPageSectionBackgroundColor":"#FFFFFF","primaryDedicatedPageV2SectionBackgroundColor":null,"secondaryDedicatedPageV2SectionBackgroundColor":null,"primaryDedicatedPageV2BackgroundColor":null,"secondaryDedicatedPageV2BackgroundColor":null,"primaryDedicatedPageV2TextColor":null,"secondaryDedicatedPageV2TextColor":null,"dedicatedPageV2BorderColor":null,"dedicatedPageV2BorderRadius":"8px","dedicatedPageV2CardGap":"1.25rem","dedicatedPageV2SectionPadding":null,"refreshOnAddToCart":false,"showTierName":false,"customSignInLink":"","checkoutRedeemLoginDescription":null,"checkoutRedeemLoginURL":"","checkoutTotalAcquirePoints":null,"checkoutTotalAcquirePointsDescription":null,"reachVipMileStoneType":"TOTAL_AMOUNT","showCustomerHistoryDescriptionToolTip":false,"checkoutTotalStoreCreditAcquirePoints":null,"hideRulesForLoggedOutCustomer":false,"hideCheckoutBlockLoggedOutCustomers":false,"checkoutAllowedCustomerTags":"","checkoutRe
5134strictCustomerTags":"","hideWidgetLauncherOnMobile":false,"referringCustomerRewardIcon":"","referredCustomerRewardIcon":"","referralClaimGiftIcon":"","hideToastNotification":false,"dateLocalFormat":"DEFAULT","manageLoyaltyButtonUrl":"","rewardsDetailsExpireDate":null,"hideEarnRuleSectionOnEmpty":true,"hideRedeemRuleSectionOnEmpty":true,"hideStoreCreditsBalance":false,"hidePointsBalance":false,"popupButtonHoverColor":"#b82f67","hideWidgetOnScroll":false,"loyaltyPageMetaTitle":"","loyaltyPageMetaDescription":"","hideExpirationDate":false,"disableLoyaltyBlocks":false,"loadScriptOnlyOnDedicatedPage":false,"hideFaqSection":false,"enableAcquirePointsQuantitySelector":false,"showCartRedeemWidget":true,"cartWidgetSelector":"","cartDrawerRedeemWidgetSelector":"","cartWidgetPlacement":"BEFORE","cartWidgetRewardIcon":"","cartDrawerWidgetPlacement":"BEFORE","dedicatedPageType":"DEDICATED_PAGE_V2","secondaryDedicatedPageTextColor":"#4b5563","primaryDedicatedPageTextColor":"#ffffff","displayMethod":"TEXT_ICON","launcherDataType":"POINTS","widgetBackgroundImage":"","hideVipTierName":false,"enableEnhancedV2Styling":true,"applyDiscountCodeOnRedeem":false,"dedicatedPageSectionOrders":"[\n  {\n    \"i
5134d\": \"hero\",\n    \"title\": \"Hero\",\n    \"visible\": true\n  },\n  {\n    \"id\": \"howItWorks\",\n    \"title\": \"How It Works\",\n    \"visible\": true\n  },\n  {\n    \"id\": \"rewards\",\n    \"title\": \"Rewards\",\n    \"visible\": true\n  },\n  {\n    \"id\": \"waysToEarn\",\n    \"title\": \"Ways To Earn\",\n    \"visible\": true\n  },\n  {\n    \"id\": \"waysToRedeem\",\n    \"title\": \"Ways To Redeem\",\n    \"visible\": true\n  },\n  {\n    \"id\": \"vipProgram\",\n    \"title\": \"Vip Program\",\n    \"visible\": true\n  },\n  {\n    \"id\": \"referralProgram\",\n    \"title\": \"Referral Program\",\n    \"visible\": true\n  },\n  {\n    \"id\": \"transactionHistory\",\n    \"title\": \"Transaction History\",\n    \"visible\": true\n  },\n  {\n    \"id\": \"faqs\",\n    \"title\": \"Faqs\",\n    \"visible\": true\n  }\n]","disableRuleCollapsible":false,"referralCustomRedirectUrl":"","selectApplyRewardsDefault":false,"exploreButtonCustomRedirect":"","heroBackgroundMobileImage":null,"loggedOutFlagAcquirePoints":false};
5135    
5136
5137    
5138
5139    
5140    
5141    _ALConfig.assetRev = "e3ec36f5648e60cf43b815812af50ee1";
5142    
5143    _ALConfig.storeFrontApiVersion = "2026-01";
5144    _ALConfig.__appstleLoyaltyNativeFetch = window.fetch.bind(window);
5145
5146    
5147    _ALConfig.pointsExpirationSetting = null;
5148    
5149
5150    
5151
5152
5153    
5154    _ALConfig.showStoreCreditRewards = false;
5155    
5156
5157    
5158    _ALConfig.customerId = null;
5159    _ALConfig.customerName = '';
5160    _ALConfig.customerEmail = null;
5161    _ALConfig.customerStoreCreditBalance = null;
5162    _ALConfig.customerStoreCreditCurrency = null;
5163    _ALConfig.customerTags = [];
5164    _ALConfig.customerLoyalty = null;
5165    
5166
5167    
5168    _ALConfig.shop = "perfectlyposh-2.myshopify.com";
5169    _ALConfig.shopMoneyFormat = "${{amount}}";
5170    _ALConfig.shopMoneyFormatWithCurrencyFormat = "${{amount}} USD";
5171    
5172
5173    
5174    
5175        _ALConfig.enableInactiveCustomer = true;
5176    
5177
5178    
5179    _ALConfig.allowCustomerOptIn = false;
5180    
5181
5182    
5183    _ALConfig.enableDiscountToApplyAutomatically = true;
5184    
5185
5186    
5187        _ALConfig.hasDedicatedPageAccess = true;
5188    
5189
5190    
5191        _ALConfig.themeEditorMode = false;
5192    
5193
5194    
5195    _ALConfig.shop_labels = {"popupRewardsDetailsHeadingText":"Your PoshVIP Rewards","rewardsExpirationLabel":"{{day}} days remaining","acquirePointsLabel":"Earn {{totalPoints}} Posh Points when you buy this item.","checkoutPendingPointsLabel":"with {{pendingPoints}} pending points.","homeSignup":"Sign up to <strong>{{site_name}}'s store </strong> to start earning rewards","vipSpentAmountLabel":"Spend {{amount}} per year","minimumPointsForRedeemText":"You need at least {{points}} Posh Points to redeem this reward.","checkoutAcquiredPointsLabel":"You have acquired {{acquiredPoints}} points from this order","cartWidgetLoginMessageLabel":"Sign in to redeem your Posh Points and view rewards.","popupDiscountCodeGenerated":"Use the below coupon to get your discount.","checkoutDiscountCodeApplyButtonLabel":"Apply Reward","exploreLabel":"Explore PoshVIP","loyaltyPageHeroV2Heading":"Welcome to PoshVIP","availablePoints":"Available Posh Points: {{ points }}","otherRulesRedirectActionLabel":"Claim Posh Points","birthdayDayPlaceholderLabel":"Day","referralLinkSentDescription":"Your referral link is on its way.","currentVipTierBadgeLabel":"Your current PoshVIP tier: {{current_tier}}","checkoutAvailableRewardsLabel":"Your Available Rewards","noteHeadingLabel":"Details","popupCopiedDiscount":"Code Copied!","referralFriendGetText":"Your Friend Gets","cartWidgetRewardsButtonLabel":"Redeem Posh Points","customerReferralClaimedStatus":"Reward Claimed","popupReferralContentText":"Give a friend a reward and earn Posh Points after their first qualifying purchase.","storeCreditApplyGuideLabel":"Your store credit is ready. Select “Apply store credit” at checkout.","storeCreditBalanceLabel":"Available Store Credit","faq":"[{\"title\":\"What is this? \",\"content\":\"<p>We’re excited to show our appreciation through our exclusive rewards program! By creating an account, you’ll earn points for various activities on our site, such as referrals and purchases. These points can be redeemed for discounts on future purchases—the more points you collect, the more you save!</p>\"},{\"title\":\"Who can join?\",\"content\":\"<p>Anyone with an account is automatically enrolled in the program.</p>\"},{\"title\":\"How do I earn points?\",\"content\":\"<p>You can earn points through various activities, such as referring friends and making purchases. To explore all the ways you can earn points, click on the *Ways to Earn* tab in the menu.</p>\"},{\"title\":\"How do I redeem my points?\",\"content\":\"<p>Select the *Ways to Redeem* tab. Here, you'll find a list of all the rewards we offer. If you have sufficient points, you can redeem them for a reward.</p>\"},{\"title\":\"Is there a limit to the number of points I can earn?\",\"content\":\"<p>No. Go ahead and earn as many as you can.</p>\"},{\"title\":\"What do the 'approved', 'pending' and 'cancelled' statuses mean?\",\"content\":\"<p>Approved: These points can be redeemed on rewards immediately.</p><p>Pending: These points need to be verified before you can redeem them. This typically applies to purchases and referrals.</p><p>Cancelled: These points will not be added to your account. For example, this will happen if you cancel a purchase (the points will change from pending to cancelled)</p>\"}]","dynamicPointsLabel":"Enter Posh Points","loyaltyOptOutLabel":"Your PoshVIP settings have been updated.","enrollLoyaltyProgramTitle":"Join PoshVIP!","howItWorksTitleDescription":"Three simple steps to turn every purchase into more Posh.","rewardDetail
5195sHelpLabel":"Copy and apply the code at checkout to use your reward.","popupCopyDiscount":"Copy Code","howItWorksStep2Description":"Earn 1 Posh Point for every $1 you spend.","vipStatusLabel":"Your PoshVIP Status","pendingStatusLabel":"Pending","checkoutTotalStoreCreditAcquirePoints":"Complete your purchase to earn {{totalStoreCreditPoints}} in store credit.","acquirePointsLoggedOutText":"PoshVIP members earn {{totalPoints}} Posh Points when they purchase this item.","sendEmailHeadingText":"Email Your Referral Link","enrollLoyaltyProgramActionLabel":"Join Free","freeProductRewardAddedSuccessMessage":"Added! Your free-product discount will apply at checkout.","birthdayYearPlaceholderLabel":"Year","cartWidgetLoginLinkLabel":"Sign In","popupFAQHeadingText":"FAQ's","widgetTitle":"PoshVIP","noCustomerHistoryDescriptionLabel":"Your Posh Points and store credit activity will appear here.","claimReferralEmailFieldHintText":"Create your account using this same email address to receive your reward.","checkoutToggleRedeemButtonLabel":"Redeem Posh Points","rejectedStatusLabel":"Not Approved","checkoutViewMoreDiscountCodeButtonLabel":"View More Rewards","perTransactionLimitExceedText":"You can redeem up to {{shop_redeem_limit}} Posh Points per transaction.","pointsBalanceLabel":"Your balance: {{points}} Posh Points and {{store_credits}} in store credit.","vipTierBenefits":"Tier Benefits","popupRedeemRewardsHeadingText":"Redeem Posh Points","howItWorksStep3Count":"03","transactionHistoryPaginationLabel":"Showing {{startItem}}–{{endItem}} of {{totalItems}} activities","vipRewardLabel":"PoshVIP Rewards","sendEmailButtonText":"Send Invitation","cartWidgetAvailableBalanceLabel":"You have {{available_points}} Posh Points and {{currency}}{{store_credits}} in store credit.","checkoutRedeemLabel":"Redeem Posh Points","referredByText":"Invited by a PoshVIP member","loyaltyPageMetaTitle":"PoshVIP Rewards & Posh Points | Perfectly Posh","birthdayActionLabel":"Save Birthday","rewardDetailsButtonLabel":"View Reward Details","authenticationLabel":"Sign in to access this PoshVIP feature.","notEligibleLabel":"This account is not currently eligible for PoshVIP.","popupReferralTitleText":"Share the Posh Love","popupEarnRewardsHeadingText":"Earn Posh Points","popupAvailableRewardsContentText":"Available rewards: {{rewards}}","claimedStatusLabel":"Claimed","loyaltyOptoutActive":"Active","redeemActionLabel":"Redeem Points","checkoutRedeemLoginLabel":"Sign In","createAccountLabel":"Join PoshVIP Free!","rewardDetailsTitleLabel":"Spend {{spend_amount}} and , get {{discount_amount}} {{discount_type}} discount","howItWorksTitle":"How PoshVIP Works","claimGiftHeaderText":"Claim Your PoshVIP Reward","yourReferralsHeadingLabel":"Your PoshVIP Referrals","loyaltyOptoutInactive":"Inactive","noRefferralAvailableText":"You haven’t referred anyone yet.","popupCardActionText":"Sign In","popupFAQAskedQuestionHeadingText":"Frequently Asked Questions","popupEarnTilesText":"Ways to Earn Posh Points","minimumAmountSpentForRedeemText":"Spend at least {{amount_spent}} before redeeming Posh Points.","birthdayUpdatedToastLabel":"Birthday saved!","historyPointsAdjustment":"Posh Points / Store Credit","referButtonLabel":"Invite a Friend","claimReferralGiftButtonText":"Claim My Reward","historyActivityDetails":"Activity","widgetCopiedLabel":"Copied!","sentDiscountCodeToEmailText":"Your referral reward has been emailed to you.","referralCustomerGetText":"You Get","sendRefferralLink":"Send My Referral Link","howItWorksStep2Count":"02","popupRemainingPointsHeadingText":"Your Posh Points","referralLinkSentLabel":"Invitation Sent!","birthdayTitleLabel":"Celebrate Your Birthday","checkoutSelectRedeemRuleDropdownLabel":"Choose a Reward","noRedeemRulesLabel":"No rewards are available right now.","minimumOrderCountForRedeemText":"Complete at least {{order_count}} orders before redeeming Posh Points.","enrolledSuccessMessage":"You’re in! Welcome to PoshVIP.","customerHistoryLabel":"Your PoshVIP Activity","redeemLimitExceedText":"You can redeem this reward up to {{redeem_limit}} times per {{reward_interval}}.","widgetDateTimeFormat":"MMM D, YYYY, h:mm A","pointExpirationDateLabel":"Points expire: {{expiration_date}}","popupRedeemTilesText":"Ways to Redeem Posh Points","loyaltyOptOutSettingsLabel":"PoshVIP Settings","alreadyHaveAnAccountLabel":"Already have an account?","checkoutTotalAcquirePointsDescription":"Redeem your Posh Points for store credit toward a future purchase.","birthdayMonthPlaceholderL
5195abel":"Month","discountCodeLabel":"Your Discount Code","checkoutEmptyRewardsLabel":"You don’t have any rewards available yet.","popupRewardPointContentText":"Turn your Posh Points into credit toward a future purchase.","chooseAnOptionLabel":"Choose a Reward","excludeCustomerLabel":"Exclude yourself from the Loyalty program.","noEarnRulesLabel":"More ways to earn are coming soon!","emailValidationLabel":"Enter a valid email address.","historyDate":"Date","popupAvailableRewardsHeadingText":"Your Available Rewards","customerHistoryDescriptionLabel":"Review your Posh Points and store credit activity.","totalAcquiredStoreCreditsLabel":"You earned {{currency}}{{totalStoreCreditPoints}} in store credit on this order.","claimReferralEmailFieldText":"Your email address","subscribeRuleRedirectActionLabel":"Subscribe and Earn","loyaltyPageMetaDescription":"Join PoshVIP, earn Posh Points on every purchase, redeem store credit, and unlock exclusive tier benefits as you shop Perfectly Posh.","claimRewardButtonLabel":"Claim Reward","checkoutRedeemLoginDescription":"to view your Posh Points balance and available rewards.","howItWorksStep2Title":"Earn Posh Points","loyaltyStatusLabel":"PoshVIP Status","vipEarnPointLabel":"Earn {{points}} Posh Points","vipCurrentTierLabel":"Your Current PoshVIP Tier","storeOnSaleForRedeemText":"Posh Points cannot be redeemed during this sale. Try again after {{shop_on_sale_end_date}}.","popupCardHeadingText":"Join PoshVIP","loyaltyPageHeroV2SubHeading":"Earn Posh Points, unlock rewards, and rise through PoshVIP tiers as you shop.","checkoutToggleAvailableRewardsButtonLabel":"Available Rewards","manageLoyaltyButtonLabel":"Manage My PoshVIP","howItWorksStep1Title":"Join PoshVIP","shareReferralLinkLabel":"Copy Your Referral Link","popupWelcomeText":"Welcome, {{customer_first_name}}!","referYourFriendContentText":"Share your unique link. Your friend receives a welcome reward, and you earn Posh Points after their qualifying purchase.","vipAchievableTierLabel":"Spend {{remainingAmount}} more to reach {{achievable_tier}}","shareSocialMediaLabel":"Or share on your favorite platform:","homeGreetings":"Welcome, {{customer_first_name}}","loyaltyOptOutActiveLabel":"PoshVIP status: {{active_status}}","dailyLimitExceedText":"You can redeem up to {{redeem_limit}} Posh Points per day.","popupCardContentText":"Create a free account to earn Posh Points and unlock rewards every time you shop.","rewardsDetailsExpireDate":"Expires on {{expire_date}}","enrollLoyaltyProgramDescription":"Earn Posh Points, unlock rewards, and enjoy exclusive VIP benefits.","loyaltyPageHeroV2AuthenticatedHeading":"Hi, {{customer_first_name}}! You have {{points}} Posh Points and {{store_credits}} in store credit.","statusHeadingLabel":"Status","minimumRedeemRequiredPointsLabel":"You need at least {{required_points}} Posh Points to redeem this reward.","vipTierDetailsText":"Earn Posh Points every time you shop and unlock bigger benefits as your annual spending grows.","membershipRewardTitleLabel":"PoshVIP Benefits","howItWorksStep1Description":"Create a free account to start earning rewards.","birthdayProfileLabel":"Your Birthday","historyStatus":"Status","approvedStatusLabel":"Approved","discountAppliedLabel":"Please copy the discount and proceed to checkout and the discount will be applied automatically","acquireStoreCreditLabel":"Earn {{totalStoreCreditPoints}} in store credit when you buy this item.","toastErrorMsg":"Something went wrong. Please try again.","includeCustomerLabel":"Include yourself in the Loyalty program to earn points.","checkThankYouAcquiredPointsHeadingLabel":"Congratulations!","popupCommunityContentText":"Shop. Earn. Get more Posh.","customerReferralPendingStatus":"Pending","referredEmailHeadingLabel":"Email","currentVipTierText":"Your Current Tier","popupRewardPointTitleText":"Your PoshVIP Rewards","socialMediaActionLabel":"Claim Posh Points","howItWorksStep3Description":"Redeem Posh Points for store credit toward a future order.","noCustomerHistoryLabel":"No Activity Yet","freeProductRewardAddToCart":"Add Free Product","creditRe
5195wardDetailsHelpLabel":"Apply your available store credit at checkout.","shareReferralEmailFieldText":"Friend’s email address","howItWorksStep1Count":"01","vipTierTitleLabel":"Unlock More with PoshVIP","referralCompletedText":"Successful referrals: {{total_count}}","discountAppliedAtCheckoutMessage":"Your discount will be applied at checkout. Your cart may display the full price.","customerReferralRecurringStatus":"Repeat Customer","reviewRuleRedirectActionLabel":"Leave a Review","referYourFriendTitleText":"Invite Your Friends","popupEarnPointDescriptionText":"Earn Posh Points every time you shop and redeem them for store credit.","popupCommunityHeadingText":"Explore PoshVIP Tiers","recurringStatusLabel":"Recurring","claimReferralGiftDescriptionText":"Someone sent you a PoshVIP reward! Enter your email to claim it.","programUpdateMessage":"Updating your PoshVIP settings. Please wait…","dynamicPointsHelpText":"Redeem {{points}} Posh Points for {{discount}} off.","totalAcquiredPointsLabel":"You earned {{totalAcquiredPoints}} Posh Points on this order.","howItWorksStep3Title":"Redeem and Enjoy","checkoutTotalAcquirePoints":"Complete your purchase to earn {{totalAcquiredPoints}} Posh Points."};
5196    
5197
5198    var loyaltyGlobalStyles = `<style>
5199      body {
5200        margin: 0
5201      }
5202      .appstle-loyalty-hidden {
5203        display: none !important;
5204        visibility: hidden !important;
5205      }
5206  </style>`
5207    document.querySelector('body').insertAdjacentHTML('beforeend', loyaltyGlobalStyles);
5208
5209    window.addEventListener('message', appstleLoyaltyIframeListener, false);
5210    window.addEventListener('kp_user_logged_out', function() { window.location.reload(); });
5211    const removeFirstSlashFromURL = (url) => url ? url?.replace(/\\\//g, "/")?.replace(/^\/+/, "") : url;
5212
5213
5214    function applyDiscount(discountCode, shouldReload = false) {
5215        const encodedDiscountCode = encodeURIComponent(discountCode?.trim());
5216        const discountURL = `${location?.origin}/discount/${encodedDiscountCode}`;
5217        fetch(discountURL).then(res => {
5218            if (res.ok) {
5219                console.log('Discount Code Applied');
5220                const discountDetails = window?._ALConfig?.customerLoyalty?.rewards?.find((item) => item?.discountCode === discountCode) || null;
5221                if (discountCode && discountDetails) {
5222                    const discountData = {discountCode: discountCode || discountDetails?.discountCode, description: discountDetails?.description, customerId: discountDetails?.customerId}
5223                    document.dispatchEvent(new CustomEvent('AppstleLoyalty:AppliedDiscountCode', { detail: discountData }));
5224                    window.dispatchEvent(new CustomEvent('AppstleLoyalty:AppliedDiscountCode', { detail: discountData }));
5225                }
5226                if (shouldReload) {
5227                    window.location.reload();
5228                }
5229            } else {
5230                console.log('Discount Code NOT Applied');
5231            }
5232        });
5233    }
5234    const applyDiscountAutomatically = (discountCode, shouldReload = false) => {
5235        (async () => {
5236            const encodedDiscountCode = encodeURIComponent(discountCode?.trim());
5237            const discountURL = `${location.origin}/checkout?discount=${encodedDiscountCode}`;
5238            const cartURL = `${location.origin}/cart.js`;
5239            try {
5240                const discountRes = await fetch(discountURL);
5241                if(discountRes) {
5242                    const cartRes = await fetch(cartURL);
5243                    if (!cartRes.ok) return;
5244                    const cart = await cartRes.json();
5245                    const discount_codes = cart && Array.isArray(cart?.['discount_codes']) ? cart?.['discount_codes'] : [];
5246                    const hasDiscount = discount_codes.some(d => (d?.code || "").toLowerCase() === String(discountCode).toLowerCase());
5247                    if (hasDiscount && shouldReload) {
5248                        window.location.reload();
5249                    }
5250                }
5251            } catch (err) {
5252                console.error("Error applying discount:", err);
5253            }
5254        })();
5255    };
5256
5257    const unescapeWidgetString = (str) => {
5258        if (!str || typeof str !== 'string') return '';
5259        return str?.replace(/\\\//g, '/')?.replace(/\\\\/g, '\\');
5260    };
5261    // Resolves a market-aware account URL. Prefers the routes published above so the customer keeps
5262    // their market/language prefix; the shop root fallback keeps that prefix too when a single route
5263    // entry is blank. Safe to assign to location.href as-is - with new customer accounts Shopify
5264    // returns an absolute URL here, so never prefix an origin.
5265    const loyaltyAccountRoute = (key, fallbackPath) => {
5266        const route = _ALConfig?.routes?.[key];
5267        if (route) return route;
5268        const shopRoot = _ALConfig?.routes?.root_url || window?.Shopify?.routes?.root || '/';
5269        return (shopRoot?.replace(/\/+$/, '') ?? '') + fallbackPath;
5270    };
5271
5272    // Shopify's /customer_authentication/login answers 400 Bad Request unless return_to is a
5273    // store-relative path with one leading slash, so coerce `return_to=apps/loyalty`,
5274    // `return_to=collections/all` or a same-store absolute URL into that shape.
5275    const normalizeLoyaltyReturnTo = (link) => {
5276        const match = /([?&]return_to=)([^&#]*)/i.exec(link || '');
5277        // Only Shopify's own login route on this store - a third-party login app may legitimately want an absolute return_to.
5278        if (!match || !/(^|\/)customer_authentication\//i.test(link.slice(0, match.index))) return link;
5279        if (/^(https?:)?\/\//i.test(link)) {
5280            try {
5281                if (new URL(link, window.location.origin).host !== window.location.host) return link;
5282            } catch (e) {
5283                return link;
5284            }
5285        }
5286        let value = match[2];
5287        try {
5288            for (let i = 0; i < 2 && /%[0-9a-f]{2}/i.test(value); i++) value = decodeURIComponent(value);
5289        } catch (e) {
5290            return link;
5291        }
5292        value = value.trim();
5293        if (/^(https?:)?\/\//i.test(value)) {
5294            try {
5295                const parsed = new URL(value, window.location.origin);
5296                if (parsed.host !== window.location.host) return link;
5297                value = parsed.pathname + parsed.search + parsed.hash;
5298            } catch (e) {
5299                return link;
5300            }
5301        }
5302        value = '/' + value.replace(/^\/+/, '');
5303        return link.slice(0, match.index) + match[1] + encodeURIComponent(value) + link.slice(match.index + match[0].length);
5304    };
5305
5306    const formatUrlByLoyalty = (link) => {
5307        if (!link) return '';
5308        const decodedLink = decodeURIComponent(link);
5309        const loyaltyPagePath = '/' + (_ALConfig?.hasDedicatedPageAccess ? _ALConfig?.proxy_path_prefix || 'apps/loyalty' : '');
5310        let l = decodedLink?.replace("{{proxy_path_prefix}}", loyaltyPagePath)?.trim()?.replace(/\\\//g, '/')?.replace(/^\/+/, '') || '';
5311        l = normalizeLoyaltyReturnTo(l?.replace(/([^:]\/)\/+/g, '$1') ?? '');
5312        if (/^(https?:\/\/|\/\/|www\.)/i.test(l)) {
5313            return /^www\./i.test(l) ? 'https://' + l : l;
5314        }
5315        const shopRoot = window?.Shopify?.routes?.root ?? '/';
5316        return (shopRoot?.replace(/\/+$/, '') ?? '') + '/' + l;
5317    };
5318
5319    function appstleLoyaltyIframeListener(event) {
5320        const redirect = (link, fallback) => { window.location.href = link ? formatUrlByLoyalty(link) : fallback; };
5321        if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('appstle_loyalty_message_to_redirect_to_account') !== -1) {
5322            if (!_ALConfig?.widget_setting?.customSignInLink && typeof kpHandleLogin === 'function') {
5323                kpHandleLogin(window.location.href);
5324            } else {
5325                redirect(_ALConfig?.widget_setting?.customSignInLink, loyaltyAccountRoute('account_url', '/account'));
5326            }
5327        } else if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('appstle_message_to_redirect_to_signup') !== -1) {
5328            if (typeof kpHandleLogin === 'function') {
5329                kpHandleLogin(window.location.href);
5330            } else {
5331                window.location.href = loyaltyAccountRoute('account_register_url', '/account/register');
5332            }
5333        } else if (event?.data && event?.data?.type === 'appstle_message_to_redirect_to_after_copied_discount_redirect_url' && typeof event?.data?.value === 'string') {
5334            window.location.href = 'https://' + window.location.host + event?.data?.value;
5335        } else if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('appstle_message_to_apply_discount_and_reload') !== -1) {
5336            const discountCode = (event?.data?.split('|'))[1];
5337            applyDiscount(discountCode, true);
5338        } else if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('appstle_message_to_apply_discount') !== -1) {
5339            const discountCode = (event?.data?.split('|'))[1];
5340            applyDiscount(discountCode, false);
5341        }   else if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('appstle_message_to_automatic_apply_discount_and_refresh') !== -1) {
5342            const discountCode = (event?.data?.split('|'))[1];
5343            applyDiscountAutomatically(discountCode, true);
5344        }  else if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('appstle_message_to_automatic_apply_discount') !== -1) {
5345            const discountCode = (event?.data?.split('|'))[1];
5346            applyDiscountAutomatically(discountCode, false);
5347        } else if (event?.data && typeof event?.data?.indexOf === 'function' && event?.data?.indexOf('appstle_message_to_redirect_to_custom_url') !== -1) {
5348            redirect(_ALConfig?.widget_setting?.createAccountLink, loyaltyAccountRoute('account_register_url', '/account/register'));
5349        }
5350    }
5351
5352    
5353    
5354    
5355    
5356    
5357    
5358    
5359
5360    
5361
5362    const executeLoyaltyWidget = () => {
5363        <!-- BEGIN app snippet: loyalty-widget -->
5364    const parseHtmlStringContent = (content) => {
5365        if (typeof content !== 'string') return content;
5366        try {
5367            const htmlDecoded = content?.replace(/\\\//g, '/');
5368            return JSON.parse(`"${htmlDecoded}"`);
5369        } catch (error) {
5370            console.error('Error parsing content:', error);
5371            return content;
5372        }
5373    };
5374
5375    const formatNumberByPointRoundType = num => {
5376        if (typeof num !== 'number') return num;
5377        const roundType = _ALConfig?.pointRoundType || "NO_ROUND";
5378        const rounded = roundType === 'ROUND_UP' ? Math.ceil(num) : roundType === 'ROUND_DOWN' ? Math.floor(num) : num;
5379        return (Number.isInteger(rounded) || rounded % 1 === 0) ? rounded.toFixed(0) : rounded.toFixed(2);
5380    };
5381
5382    const formatStoreCreditAmount = value => {
5383        try {
5384            const num = Number(value);
5385            const safe = Number.isFinite(num) ? num : 0;
5386            const format = (_ALConfig?.shopMoneyFormat || '')?.replace(/&lt;/g, '<')?.replace(/&gt;/g, '>')?.replace(/<[^>]*>/g, '');
5387            const tokenMatch = String(format)?.match?.(/\{\{\s*(amount[a-z_]*)\s*\}\}/i);
5388            const token = (tokenMatch?.[1] || 'amount')?.toLowerCase?.() || 'amount';
5389            const decimals = token?.includes?.('no_decimals') ? 0 : 2;
5390            let thousands = ',', decimal = '.';
5391            if (token?.includes?.('comma_separator')) { thousands = '.'; decimal = ','; }
5392            else if (token?.includes?.('space_separator')) { thousands = ' '; }
5393            else if (token?.includes?.('apostrophe_separator')) { thousands = "'"; }
5394            const sign = safe < 0 ? '-' : '';
5395            const parts = Math.abs(safe)?.toFixed?.(decimals)?.split?.('.') || [];
5396            const intPart = (parts?.[0] || '0')?.replace?.(/\B(?=(\d{3})+(?!\d))/g, thousands) || '0';
5397            const amount = decimals === 0 ? sign + intPart : sign + intPart + decimal + (parts?.[1] || '00');
5398            return tokenMatch ? format?.replace(/\{\{\s*amount[a-z_]*\s*\}\}/gi, amount)?.trim() : amount;
5399        } catch (e) {
5400            return String(value ?? '0');
5401        }
5402    };
5403
5404
5405    const loyaltyWidgetStyles = `
5406<style>
5407    .appstle-loyalty-widget-close-icon {
5408        width: 28px;
5409        height: 28px;
5410        opacity: 0;
5411        position: absolute;
5412        top: 50%;
5413        left: 50%;
5414        transform: translate(-50%, -50%);
5415        transition: opacity 0.2s;
5416    }
5417
5418    .appstle-loyalty-button {
5419        bottom: 24px;
5420        z-index: 999;
5421        border-radius: 12px;
5422        position: fixed;
5423        border: none;
5424        transition: max-width 1s;
5425        padding: 0 19px;
5426        overflow: hidden;
5427        height: 56px;
5428        transform-origin: left;
5429        max-width: 300px;
5430        background-color: #ef4187;
5431        color: #ffffff;
5432    }
5433
5434    .appstle-loyalty-right {
5435        right: 40px;
5436    }
5437
5438    .appstle-loyalty-left {
5439        left: 40px;
5440    }
5441
5442    #appstle_loyalty_iframe {
5443        width: 1px;
5444        min-width: 400px;
5445        border: none;
5446        height: 516px;
5447        position: fixed;
5448        bottom: 100px;
5449        z-index: 1234567;
5450        box-shadow: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -2px rgb(0 0 0 / 10%);
5451        background-color: white;
5452        border-radius: 12px;
5453        max-height: calc(100vh - 120px);
5454        transform: scale(0) !important;
5455        transition: all 0.5s;
5456        transform-origin: bottom  left ;
5457        max-width: 80vw;
5458    }
5459
5460    @media screen and (max-width: 800px) {
5461        #appstle_loyalty_iframe {
5462            left: 0;
5463            height: 100vh;
5464            top: 0;
5465            min-width: 100%;
5466        }
5467
5468        #appstle_loyalty_iframe.open + .appstle-loyalty-button {
5469            left: 50%;
5470            transform: translateX(-50%);
5471        }
5472
5473        .appstle-loyalty-button {
5474            transition: all 0.5s;
5475        }
5476    }
5477
5478    #appstle_loyalty_iframe.open {
5479        transform: scale(1) !important;
5480    }
5481
5482    #appstle_loyalty_iframe.open.show-close-icon + button .appstle-loyalty-widget-close-icon {
5483        opacity: 1;
5484    }
5485
5486    #appstle_loyalty_iframe.open + button .appstle_loyalty_widget_button_wrapper {
5487        color: transparent;
5488    }
5489
5490    .appstle_loyalty_widget_button_wrapper {
5491        height: 100%;
5492        width: 100%;
5493        display: flex;
5494        flex-wrap: nowrap;
5495        align-items: center;
5496        gap: 10px;
5497    }
5498
5499    .appstle-loyalty-widget-button-text {
5500        flex-shrink: 0;
5501    }
5502
5503    .loyalty_widget_available_points {
5504        display: none;
5505        height: 100%;
5506        width: auto;
5507        flex-shrink: 0;
5508    }
5509
5510    .appstle_show_points .loyalty_widget_available_points {
5511        display: flex;
5512        align-items: center;
5513        padding: 0 8px;
5514        margin-right: -14px;
5515        background-color: #ef4187;
5516        color: #ffffff;
5517    }
5518
5519    #appstle_loyalty_iframe.open.show-close-icon + button {
5520        background-color: #ef4187;
5521    }
5522
5523    #appstle_loyalty_iframe.open.show-close-icon + button .appstle-loyalty-widget-button-text-wrapper,
5524    #appstle_loyalty_iframe.open.show-close-icon + button .loyalty_widget_available_points {
5525        opacity: 0;
5526    }
5527
5528    #appstle_loyalty_iframe.open + button {
5529        max-width: 56px;
5530    }
5531
5532    .loyalty-widget-buttonImage {
5533        height: 24px;
5534        width: 24px;
5535    }
5536
5537    .appstle-loyalty-widget-button-text-wrapper {
5538        height: 100%;
5539        display: flex;
5540        gap: 4px;
5541        align-items: center;
5542    }
5543
5544    .right_snackbar {
5545        right: 30px;
5546    }
5547
5548    
5549</style>`;
5550    const customStyles = document.getElementById('appstle-loyalty-custom-styles');
5551    if (customStyles) {
5552        customStyles.insertAdjacentHTML('beforebegin', loyaltyWidgetStyles);
5553    } else {
5554        document.querySelector('body').insertAdjacentHTML('beforeend', loyaltyWidgetStyles);
5555    }
5556    const mainHTMLString = `
5557<iframe id="appstle_loyalty_iframe" class="appslte-iframe" title="Ap
5557pstle Loyalty Widget"></iframe>
5558<button id="appstle-loyalty-button"
5559        class="appstle-loyalty-button appstle-loyalty-hidden ${_ALConfig?.customerId ? `logged-in-customer-loyalty-button` : `logged-out-customer-loyalty-button`}"
5560        style="${_ALConfig.widget_setting.showWidget && _ALConfig.widget_setting.widgetType === 'LAUNCHER' ? `` : `display: none !important;`}">
5561    <div class="appstle_loyalty_widget_button_wrapper">
5562        <div class="appstle-loyalty-widget-button-text-wrapper">
5563            
5564                <img
5565                    src="${parseHtmlStringContent('https://cdn.shopify.com/s/files/1/0635/7391/7901/files/icon1.png?v=1719318035')}"
5566                    alt="" role="presentation" class="loyalty-widget-buttonImage">
5567            
5568            <span id="loyalty-widget-title" class="appstle-loyalty-widget-button-text"></span>
5569        </div>
5570        <div class="loyalty_widget_available_points"></div>
5571    </div>
5572    <svg class="appstle-loyalty-widget-close-icon" xmlns="http://www.w3.org/2000/svg" fill="none"
5573         viewBox="0 0 24 24"
5574         stroke-width="1.5" stroke="currentColor">
5575        <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"></path>
5576    </svg>
5577</button>`;
5578    document.querySelector('body').insertAdjacentHTML('beforeend', mainHTMLString);
5579    window.addEventListener('message', widgetEventListener, false);
5580
5581    function widgetEventListener(event) {
5582        if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('appstle_message_for_showWidget') !== -1) {
5583        } else if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('appstle_widget_showHide') !== -1) {
5584            toggleWidget();
5585        } else if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('refresh_appstle_loyalty_widget') !== -1 && _ALConfig?.widget_setting?.widgetType === 'LAUNCHER') {
5586            loadAppstleLoyaltyWidget();
5587            console.log('REFRESH WIDGET');
5588        } else if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('show_appstle_loyalty_widget') !== -1) {
5589            loadAppstleLoyaltyWidget();
5590            enableWidget();
5591        }
5592    }
5593
5594    function removeAppstleLoyaltyWidget() {
5595        document.querySelector('#appstle-loyalty-button')?.classList?.add('appstle-loyalty-hidden');
5596        document.querySelector('#appstle_loyalty_iframe')?.classList?.add('appstle-loyalty-hidden');
5597    }
5598
5599    (function checkForWidgetRestrictions() {
5600        let isShowWidget = true;
5601
5602        if (_ALConfig?.customerLoyalty?.customerStatus === 'EXCLUDED') {
5603            isShowWidget = false;
5604        }
5605        if (!_ALConfig?.customerId) {
5606            isShowWidget = !(_ALConfig?.widget_setting?.restrictedCustomersTag || _ALConfig?.widget_setting?.allowedCustomersTag);
5607        }
5608        if (_ALConfig?.widget_setting?.allowedCustomersTag?.length && isShowWidget) {
5609            let allowedTags = _ALConfig?.widget_setting?.allowedCustomersTag.split(',');
5610            if (allowedTags?.length > 0 && !_ALConfig?.customerTags?.some((tag) => allowedTags?.some((allowedTag) => allowedTag?.trim()?.toLowerCase() === tag?.trim()?.toLowerCase()))) {
5611                isShowWidget = false;
5612            }
5613        }
5614        if (_ALConfig?.widget_setting?.restrictedCustomersTag?.length && isShowWidget) {
5615            let restrictedTags = _ALConfig?.widget_setting?.restrictedCustomersTag?.split(',');
5616            if (restrictedTags?.length > 0 && _ALConfig?.customerTags?.some((tag) => restrictedTags?.some((restrictedTag) => restrictedTag?.trim()?.toLowerCase() === tag?.trim()?.toLowerCase()))) {
5617                isShowWidget = false;
5618            }
5619        }
5620        if (_ALConfig?.widget_setting?.blockWidgetOnPages?.length && isShowWidget) {
5621            let restrictedPages = _ALConfig?.widget_setting?.blockWidgetOnPages?.split(',');
5622            const currentPage = window?.location?.pathname;
5623            if (restrictedPages?.length > 0) {
5624                if (restrictedPages?.includes('/homepage') && currentPage === '/') {
5625                    isShowWidget = false;
5626                } else if (restrictedPages?.some((page) => currentPage?.includes(page))) {
5627                    isShowWidget = false;
5628                }
5629            }
5630        }
5631        if (_ALConfig?.widget_setting?.allowWidgetOnSpecificPages?.length && isShowWidget) {
5632            let allowedPages = _ALConfig?.widget_setting?.allowWidgetOnSpecificPages?.split(',');
5633            const currentPage = window?.location?.pathname;
5634            if (allowedPages?.length > 0) {
5635                if (allowedPages?.includes('/homepage') && currentPage === '/') {
5636                    isShowWidget = true;
5637                } else if (allowedPages?.some((page) => currentPage?.includes(page))) {
5638                    isShowWidget = true;
5639                } else {
5640                    isShowWidget = false;
5641                }
5642            }
5643        }
5644        if (!_ALConfig?.customerId && _ALConfig?.widget_setting?.showToLoggedInCustomerOnly) {
5645            isShowWidget = false;
5646        }
5647        window.__APPSTLE_LOYALTY_LAUNCHER_ALLOWED = !!isShowWidget;
5648        if (isShowWidget) {
5649            showAppstleLoyaltyWidget();
5650        } else {
5651            removeAppstleLoyaltyWidget();
5652        }
5653    })();
5654
5655    function enableWidget() {
5656        document.querySelector('#appstle_loyalty_iframe')?.classList?.add('open');
5657        document.querySelector('#appstle_loyalty_iframe')?.classList?.remove('appstle-loyalty-hidden');
5658        setTimeout(function() {
5659            document.querySelector('#appstle_loyalty_iframe')?.classList?.toggle('show-close-icon');
5660        }, 900);
5661    }
5662
5663    function showAppstleLoyaltyWidget() {
5664        const launcherAllowed = window?.['__APPSTLE_LOYALTY_LAUNCHER_ALLOWED'] !== false;
5665        document.querySelector('#appstle_loyalty_iframe')?.classList?.remove('appstle-loyalty-hidden');
5666        const btn = document.querySelector('#appstle-loyalty-button');
5667        if (!btn) return;
5668        if (launcherAllowed) {
5669            btn.classList.remove('appstle-loyalty-hidden');
5670        } else {
5671            btn.classList.add('appstle-loyalty-hidden');
5672        }
5673    }
5674
5675
5676    document.querySelector('.appstle-loyalty-button').addEventListener('click', toggleWidget);
5677
5678    if (_ALConfig?.widget_setting?.widgetPosition === 'LEFT') {
5679        document.getElementById('appstle_loyalty_iframe')?.classList?.add('appstle-loyalty-left');
5680        document.querySelector('.appstle-loyalty-button')?.classList?.add('appstle-loyalty-left');
5681        document.getElementById('appstle_loyalty_iframe')?.classList?.add('appstle-loyalty-left');
5682        document.getElementById('snackbar')?.classList?.add('left_snackbar');
5683
5684    } else {
5685        document.getElementById('appstle_loyalty_iframe')?.classList?.add('appstle-loyalty-right');
5686        document.querySelector('.appstle-loyalty-button')?.classList?.add('appstle-loyalty-right');
5687        document.getElementById('snackbar')?.classList?.add('right_snackbar');
5688    }
5689
5690
5691    const alIframeSrc = `\x3chtml>
5692\x3chead>
5693    \x3cscript>
5694        window["Shopify"] = {};
5695        window["__st"] = ${JSON.stringify(__st)};
5696        window["Shopify"]["shop"] = "${location.host}";
5697        window.appstle_public_domain = "${location.host}";
5698        window["isAppstleLoyaltyCustomerPortal"] = true;
5699        \x3c/script>
5700        <link rel="stylesheet" href="${_ALConfig.widgetCssPath}">
5701            \x3cscript defer type="text/javascript" src="${_ALConfig.widgetJsPath}">\x3c/script>
5702                <style>
5703                    #loyalty_spinner_container {
5704                    position: absolute;
5705                    top: 0;
5706                    right: 0;
5707                    bottom: 0;
5708                    left: 0;
5709                    display: flex;
5710                    justify-content: center;
5711                    align-items: center;
5712                    height: 100%;
5713                    width: 100%;
5714                    z-index: 9999999999999999999999999;
5715                }
5716                    #loyalty_spinner {
5717                    height: 32px;
5718                    width: 32px;
5719                    animation: spin 1s linear infinite;
5720                    border-radius: 9999px;
5721                    border-width: 1px;
5722                    border-style: solid;
5723                    border-color: rgb(107 114 128);
5724                    border-top-color: transparent;
5725                }
5726                    @keyframes spin {
5727                    100% {
5728                        transform: rotate(360deg);
5729                }
5730                }
5731                </style>
5732            \x3c/head>
5733            \x3cbody>
5734            <div style="overflow: auto;" id="appstleLoyaltyWidget">
5735                <div id="loyalty_spinner_container">
5736                    <div id="loyalty_spinner"></div>
5737                </div>
5738            </div>
5739            \x3c/body>
5740        \x3c/html>`;
5741
5742
5743    function toggleWidget() {
5744        loadAppstleLoyaltyWidget();
5745        if (_ALConfig?.widget_setting?.widgetType?.toUpperCase() === 'LAUNCHER' && _ALConfig?.widget_setting?.forceRedirectDedicatedPage === true) {
5746            window.open(`/${_ALConfig?.proxy_path_prefix}`);
5747        } else {
5748            const isWidgetOpen = document.querySelector('#appstle_loyalty_iframe')?.classList?.toggle('open');
5749            if (isWidgetOpen === false) {
5750                clearLoyaltyDeepLinkHash();
5751            }
5752            showAppstleLoyaltyWidget();
5753            setTimeout(function() {
5754                document.querySelector('#appstle_loyalty_iframe')?.classList?.toggle('show-close-icon');
5755            }, 900);
5756        }
5757    }
5758
5759    const loadAppstleLoyaltyWidget = () => {
5760        var iframe = document.querySelectorAll('#appstle_loyalty_iframe');
5761        iframe.forEach(function(item) {
5762            item.contentWindow._ALConfig = _ALConfig;
5763            item.contentWindow.document.open('text/html', 'replace');
5764            item.contentWindow.document.write(alIframeSrc);
5765            item.contentWindow.document.close();
5766        });
5767    };
5768
5769    const launcherDataType = _ALConfig?.widget_setting?.launcherDataType || 'POINTS';
5770
5771    const loyaltyButtonTitle = document.getElementById('loyalty-widget-title');
5772    if (_ALConfig?.shop_labels?.widgetTitle) {
5773        loyaltyButtonTitle.innerHTML = parseHtmlStringContent(_ALConfig?.shop_labels?.widgetTitle);
5774    }
5775
5776    (function() {
5777        const { customerLoyalty, widget_setting } = _ALConfig || {};
5778        if (!customerLoyalty && !(launcherDataType === 'STORE_CREDITS' && _ALConfig?.customerId)) return;
5779
5780        const showTier = widget_setting?.showTierName;
5781        const launcherButtonElement = document.querySelector('#appstle-loyalty-button');
5782        const pointsEl = document.querySelector('.loyalty_widget_available_points');
5783        if (!pointsEl) return;
5784
5785        const fmt = new Intl.NumberFormat();
5786        const { storeCreditBalance = 0, availablePoints = 0, currentVipTier = '' } = customerLoyalty || {};
5787
5788        let displayValue;
5789        if (launcherDataType === 'STORE_CREDITS') {
5790            displayValue = formatStoreCreditAmount(_ALConfig?.customerStoreCreditBalance || storeCreditBalance || 0);
5791        } else if ((launcherDataType === 'VIP_TIER') && currentVipTier) {
5792            displayValue = String(currentVipTier);
5793        } else {
5794            const n = Number(availablePoints) || 0;
5795            displayValue = fmt.format(formatNumberByPointRoundType(n));
5796        }
5797        pointsEl.textContent = displayValue;
5798        launcherButtonElement?.classList.add('appstle_show_points');
5799    })();
5800
5801
5802    const loyaltyDeepLinks = [
5803        '#appstle-loyalty',
5804        '#appstle-refer',
5805        '#appstle-loyalty-earn-rewards',
5806        '#appstle-loyalty-redeem-rewards',
5807        '#appstle-loyalty-referrals',
5808        '#appstle-loyalty-vip-program'
5809    ];
5810
5811    let lastLoyaltyWidgetUrl = location.href;
5812
5813    function hasLoyaltyDeepLink() {
5814        return loyaltyDeepLinks.some(hash => location?.hash?.includes(hash));
5815    }
5816
5817    function clearLoyaltyDeepLinkHash() {
5818        if (!hasLoyaltyDeepLink()) {
5819            return;
5820        }
5821        window.history.replaceState({}, document.title, window.location.pathname + window.location.search);
5822        lastLoyaltyWidgetUrl = location.href;
5823    }
5824
5825    function handleDeepLink() {
5826        if (!_ALConfig?.widget_setting?.showWidget || !hasLoyaltyDeepLink()) {
5827            return;
5828        }
5829        loadAppstleLoyaltyWidget();
5830        enableWidget();
5831        setTimeout(() => {
5832            document.querySelector('#appstle_loyalty_iframe')?.classList?.add('show-close-icon');
5833        }, 900);
5834    }
5835
5836    handleDeepLink();
5837
5838    const widgetReferralUrl = new URL(window.location.href);
5839    if (_ALConfig?.referralEnabled && widgetReferralUrl?.searchParams.get('appstle_referral') && _ALConfig?.widget_setting?.widgetType === 'LAUNCHER') {
5840        let referralRedirectUrl = _ALConfig?.widget_setting?.referralRedirectUrl;
5841        let redirectURL = referralRedirectUrl + window.location.search;
5842        if (referralRedirectUrl) {
5843            let referralUrlObj;
5844            try {
5845                referralUrlObj = new URL(referralRedirectUrl, window.location.origin);
5846            } catch {
5847                referralUrlObj = null;
5848            }
5849            let referralPath = referralUrlObj ? referralUrlObj.pathname.replace(/\/+$/, '') : referralRedirectUrl.replace(/\/+$/, '');
5850            let currentPath = window.location.pathname.replace(/\/+$/, '');
5851            if (referralPath && currentPath !== referralPath) {
5852                window.open(redirectURL, '_self');
5853            }
5854        }
5855        setTimeout(() => {
5856            loadAppstleLoyaltyWidget();
5857            enableWidget();
5858        }, 200);
5859    }
5860
5861
5862    (function observeURLChanges() {
5863        const handleUrlChange = () => {
5864            if (location.href !== lastLoyaltyWidgetUrl) {
5865                lastLoyaltyWidgetUrl = location.href;
5866                handleDeepLink();
5867            }
5868        };
5869        new MutationObserver(handleUrlChange).observe(document.body, { subtree: true, childList: true });
5870        window.addEventListener('popstate', handleUrlChange);
5871        window.addEventListener('hashchange', handleUrlChange);
5872    })();
5873
5874    const alDOMObserver = new MutationObserver(function(mutations_list) {
5875        mutations_list.forEach(function(mutation) {
5876            mutation.addedNodes.forEach(function(added_node) {
5877                if (added_node.id === 'appstle_loyalty_iframe') {
5878                    var iframe = document.querySelectorAll('#appstle_loyalty_iframe');
5879                    iframe.forEach(function(item) {
5880                        item.contentWindow._ALConfig = _ALConfig;
5881                        item.contentWindow.document.open('text/html', 'replace');
5882                        item.contentWindow.document.write(alIframeSrc);
5883                        item.contentWindow.document.close();
5884                    });
5885                    alDOMObserver.disconnect();
5886                }
5887            });
5888        });
5889    });
5890    alDOMObserver.observe(document.querySelector('body'), { subtree: true, childList: true });
5891
5892    
5893
5894    
5895<!-- END app snippet -->
5896    }
5897
5898    
5899
5900    const storeCreditMismatch = _ALConfig?.customerId && _ALConfig?.customerStoreCreditBalance >= 0 && _ALConfig?.customerLoyalty?.storeCreditBalance >= 0 && _ALConfig?.customerLoyalty?.storeCreditBalance !== _ALConfig?.customerStoreCreditBalance;
5901    if (storeCreditMismatch && _ALConfig.shop === 'olineloyalty27.myshopify.com') {
5902        const updateCustomerUrl = `/${_ALConfig?.proxy_path_prefix || 'apps/loyalty'}/cp/api/update-customer`;
5903        try {
5904            fetch(updateCustomerUrl, { method: 'POST' })
5905                .then((response) => {
5906                    if(response.ok) {}
5907                })
5908                .catch(() => {});
5909        } catch (err) {}
5910    }
5911
5912    <!-- BEGIN app snippet: loyalty-dedicated-page -->
5913    const dedicatedPageURL = new URL(window.location.href);
5914    const decodeUrl = (content) => {
5915        if (typeof content !== 'string') return content;
5916        try {
5917            const htmlDecoded = content?.replace(/\\\//g, '/');
5918            return JSON.parse(`"${htmlDecoded}"`);
5919        } catch (error) {
5920            console.error('Error parsing content:', error);
5921            return content;
5922        }
5923    };
5924
5925    if (dedicatedPageURL?.searchParams?.get('appstle_referral') && _ALConfig?.widget_setting?.widgetType === 'DEDICATED_PAGE') {
5926        const customUrl = decodeUrl(_ALConfig?.widget_setting?.referralCustomRedirectUrl);
5927        if (customUrl) {
5928            const normalizedCustomPath = customUrl.startsWith('/') ? customUrl : `/${customUrl}`;
5929            if (window.location.pathname !== normalizedCustomPath) {
5930                const redirectUrl = new URL(window.location.href);
5931                redirectUrl.pathname = normalizedCustomPath;
5932                window.open(redirectUrl.toString(), '_self');
5933            }
5934        }
5935        else if (dedicatedPageURL?.searchParams?.get('appstle_referral') && _ALConfig?.widget_setting?.widgetType === 'DEDICATED_PAGE' && !window.location.href.includes(_ALConfig?.proxy_path_prefix)) {
5936            window.open(`${window.location.origin}/${_ALConfig?.proxy_path_prefix}${window.location.search}`, '_self');
5937        }
5938    }
5939
5940    const dedicatedPageEventListener = (event) => {
5941        if (event?.data && typeof event?.data.indexOf === 'function' && event?.data?.indexOf('refresh_appstle_loyalty_page') !== -1) {
5942            initiateAppstleLoyaltyPage();
5943            console.log('REFRESH PAGE');
5944        }
5945    };
5946    window.addEventListener('message', dedicatedPageEventListener, false);
5947
5948    function initiateAppstleLoyaltyPage() {
5949        if (document.querySelector('#appstleLoyaltyPage')) {
5950            const appstleLoyaltyPageElement = document.getElementById('appstleLoyaltyPage');
5951            while (appstleLoyaltyPageElement.firstChild) {
5952                appstleLoyaltyPageElement.firstChild.remove();
5953            }
5954
5955            
5956
5957
5958            
5959            document.title = "PoshVIP Rewards & Posh Points | Perfectly Posh";
5960            
5961
5962            
5963            setTimeout(() => {
5964                let metaDescription = document.querySelector('meta[name="description"]');
5965                if (metaDescription) {
5966                    metaDescription.content = "Join PoshVIP, earn Posh Points on every purchase, redeem store credit, and unlock exclusive tier benefits as you shop Perfectly Pos
5966h.";
5967                } else {
5968                    metaDescription = document.createElement('meta');
5969                    metaDescription.name = 'description';
5970                    metaDescription.content = "Join PoshVIP, earn Posh Points on every purchase, redeem store credit, and unlock exclusive tier benefits as you shop Perfectly Posh.";
5971                    document.head.appendChild(metaDescription);
5972                }
5973            }, 500);
5974            
5975            if (appstleLoyaltyPageElement) {
5976
5977                const loadDedicatedPageAsset = (createAsset, attempt, onSettle) => {
5978                    const asset = createAsset();
5979                    let settled = false;
5980                    const settle = () => {
5981                        if (settled) return;
5982                        settled = true;
5983                        if (typeof onSettle === 'function') {
5984                            onSettle();
5985                        }
5986                    };
5987                    asset.onload = settle;
5988                    asset.onerror = () => {
5989                        asset.remove();
5990                        if (attempt < 4) {
5991                            setTimeout(() => loadDedicatedPageAsset(createAsset, attempt + 1, onSettle), 1000 * Math.pow(2, attempt - 1));
5992                        } else {
5993                            settle();
5994                        }
5995                    };
5996                }
5997
5998                const appendDedicatedPageWidgetScript = () => {
5999                    loadDedicatedPageAsset(() => {
6000                        const s = document.createElement('script');
6001                        s.setAttribute('src', _ALConfig?.widgetJsPath);
6002                        s.async = false;
6003                        document.body.appendChild(s);
6004                        return s;
6005                    }, 1);
6006                }
6007
6008                const executeDedicatedPageScript = () => {
6009                    let widgetScriptAppended = false;
6010                    const appendWidgetScriptOnce = () => {
6011                        if (widgetScriptAppended) return;
6012                        widgetScriptAppended = true;
6013                        appendDedicatedPageWidgetScript();
6014                    };
6015                    try {
6016                        const preload = document.createElement('link');
6017                        preload.rel = 'preload';
6018                        preload.as = 'script';
6019                        preload.href = _ALConfig?.widgetJsPath;
6020                        document.head.appendChild(preload);
6021                    } catch (e) {}
6022                    loadDedicatedPageAsset(() => {
6023                        const link = document.createElement('link');
6024                        link.type = 'text/css';
6025                        link.rel = 'stylesheet';
6026                        link.href = _ALConfig?.widgetCssPath;
6027                        document.head.appendChild(link);
6028                        return link;
6029                    }, 1, appendWidgetScriptOnce);
6030                    setTimeout(appendWidgetScriptOnce, 8000);
6031                }
6032
6033                try {
6034                    const versionUrl = `${location.origin}/${_ALConfig?.proxy_path_prefix || 'apps/loyalty'}/app-loyalty-version`;
6035                    fetch(versionUrl).then(res => res.json()).then(data => {
6036                            if (data) {
6037                                const widgetJsUrl = new URL(_ALConfig.widgetJsPath);
6038                                const widgetCssUrl = new URL(_ALConfig.widgetCssPath);
6039                                widgetJsUrl.searchParams.set('v', data);
6040                                widgetCssUrl.searchParams.set('v', data);
6041                                _ALConfig.widgetJsPath = widgetJsUrl.toString();
6042                                _ALConfig.widgetCssPath = widgetCssUrl.toString();
6043                            }
6044                        }).catch(() => {}).finally(() => {
6045                            executeDedicatedPageScript();
6046                        });
6047                } catch (err) {
6048                    executeDedicatedPageScript();
6049                }
6050
6051
6052            }
6053
6054        } else {
6055            setTimeout(() => {
6056                initiateAppstleLoyaltyPage();
6057            }, 2000);
6058        }
6059    }
6060
6061    const dedicatedPageReferralUrl = new URL(window.location.href)?.searchParams.get('appstle_referral');
6062
6063    if (_ALConfig?.widget_setting?.showWidget === true) {
6064        initiateAppstleLoyaltyPage();
6065    }
6066
6067<!-- END app snippet -->
6068
6069    
6070</script>
6070
6071
6072
6073
6074
6075
6076</div><div id="shopify-block-AYzlOTmRyakFvcEJNN__10508887350528622030" class="shopify-block shopify-app-block">
6077
6078
6079
6080
6081
6082
6083    
6084    
6085
6086    
6087    
6088    
6089    
6090    
6091    
6092    
6093    
6094    
6095    
6096    
6097    
6098    
6099
6100    
6101
6102    
6103
6104    
6105
6106    
6106<script>
6107        var _ABConfig = _ABConfig || {};
6108
6109        _ABConfig = {
6110            'shop_name': '',
6111            'public_domain': null,
6112            'proxy_path_prefix': 'apps/bundles',
6113            'widgetJsPath': 'https://bundles-admin.appstle.com/app/build-a-box.bundle.js?v=1788520067062',
6114            'widgetCssPath': 'https://bundles-admin.appstle.com/content/build-a-box.css?v=1788520067062',
6115            'volumeDiscountJsPath': 'https://bundles-admin.appstle.com/app/volume-discount.bundle.js?v=1788520067062',
6116            'volumeDiscountCssPath': 'https://bundles-admin.appstle.com/content/volume-discount.css?v=1788520067062',
6117            'bundle_rules': [],
6118            'upsell_rules': [],
6119            'bundleRule': null,
6120            'product': null,
6121            'bundle_setting': null,
6122            'shop_info': null,
6123            'isProductPage': false,
6124            'isCartPage': false,
6125            'isCollectionPage': false,
6126            'isHomePage': false,
6127            'disableAppFunctionality': false,
6128            'shop_labels': null,
6129        };
6130
6131        _ABConfig.__appstleBundlesNativeFetch = window.fetch.bind(window);
6132
6133        
6134        _ABConfig.shop_name = "Perfectly Posh";
6135        
6136
6137        
6138        _ABConfig.proxy_path_prefix = "apps/bundles";
6139        
6140
6141        _ABConfig.country = "US";
6142        _ABConfig.locale = "en";
6143        _ABConfig.marketId = 38446760180;
6144
6145        
6146        _ABConfig.currency = "USD";
6147        
6148
6149        
6150        
6151        _ABConfig.assetRev = "dd972b8d335be00fa78ac5e6709e4f65";
6152        
6153        _ABConfig.storeFrontApiVersion = "2026-01";
6154
6155        
6156
6157        
6158        _ABConfig.public_domain = "perfectlyposh-2.myshopify.com";
6159        
6160
6161        
6162        _ABConfig.widgetJsPath = "https://bundles-admin.appstle.com/app/build-a-box.bundle.js?v=1788520067062";
6163        
6164        
6165        _ABConfig.widgetCssPath = "https://bundles-admin.appstle.com/content/build-a-box.css?v=1788520067062";
6166        
6167
6168        
6169        
6170        _ABConfig.bundle_rules = [{"id":49484,"shop":"perfectlyposh-2.myshopify.com","name":"Free Shipping","description":null,"status":"ACTIVE","customerIncludeTags":null,"discountType":"NO_DISCOUNT","discountValue":null,"products":"[]","variants":"[]","sequenceNo":null,"bundleType":"SHIPPING_DISCOUNT","settings":"{\"sequentialProductsPerBatch\":50,\"productFilterConfig\":\"{\\\"enabled\\\":false,\\\"filters\\\":[]}\",\"priceSelector\":\"\",\"disableProductDescription\":false,\"includedSubscriptionPlans\":\"\",\"sellingPlanSource\":\"PRODUCT\",\"sellingPlanDisplayType\":\"DROPDOWN\",\"excludeSubscriptionPlans\":\"\",\"disableHighestTierPreference\":false,\"disableCartLineForSelectedBundleItems\":false,\"enableAnnouncementBar\":true,\"showClassicBundleWidgetInChildProduct\":false,\"showPriceWithSubscriptionPrice\":true,\"showComboBundleWidgetInComboProduct\":false,\"updateThemeProductPrice\":false,\"enableVolumeDiscountMixAndMatch\":false,\"hideQuantitySelector\":false,\"enableDedicatedAddToCartButton\":false,\"cardGap\":16,\"showUnitPrice\":false,\"upsellProductSelectionMode\":\"ALL_SELECTED_VARIANTS\",\"showPricesWithoutDecimal\":false,\"topBarFreeShippingMessage\":\"\",\"bundleCheckoutSectionPosition\":\"BELOW\",\"enableOrderDiscountClass\":false,\"bundleProductNameSortOrder\":\"DEFAULT\",\"disableTierRestriction\":true,\"enableTriggerFreeGiftWithoutWidget\":false,\"perRowItem\":\"THREE\",\"showCompareAtPrice\":false,\"borderRadius\":8,\"enableVolumeDiscountTierRestriction\":false,\"enableSequentialProductLoading\":false,\"autofillNotChosenItems\":false,\"showAdditionalNoteInput\":false,\"topBarDiscountRequiredAmountMessage\":\"GET FREE SHIPPING: Add {{currency}}{{amount}} more to unlock FREE Shipping!\",\"disableScrollingToBundle\":false,\"hideOutOfStockVariants\":false,\"compareAtPriceSelector\":\"\",\"showPriceOfChosenProductsOnly\":false,\"disableQuantityRestrictedSection\":false}","bundleProductId":null,"bundleVariantId":null,"productHandle":null,"discountId":null,"price":null,"numberOfProducts":0,"subscriptionBundlingEnabled":false,"subscriptionId":null,"minProductCount":null,"maxProductCount":null,"uniqueRef":"dg432gh5qk","bundleRedirect":"CART","customRedirectURL":null,"minOrderAmount":50.0,"tieredDiscount":null,"productViewStyle":"QUICK_ADD","singleProductSettings":"[]","trackInventory":false,"sellingPlanType":"BUNDLE_LEVEL","clearCart":"ENABLED","minPrice"
6170:null,"maxPrice":null,"externalBuildABoxId":null,"variantVisibilityType":"SHOW_VARIANTS_AS_INDIVIDUAL","subTitle":null,"freeShipping":false,"themeType":"THEME_TWO","showBundleInProductPage":true,"combinedWithProductDiscount":true,"combinedWithShippingDiscount":true,"combinedWithOrderDiscount":true,"allowedTags":null,"restrictTags":null,"selectionType":"FLEXIBLE","bundleHtml":"[]","discountedVariants":"[]","allowedCountries":"US","appliesOn":"BOTH","purchaseRequirement":"MINIMUM_AMOUNT","productDiscountType":"EACH_PRODUCT","countrySelectionType":"SELECTED_COUNTRY","discountApplyApproach":"SHOPIFY_DISCOUNT_FUNCTION","discountedProductChooseType":"CHOOSE_ALL","internalName":"Free Shipping","sections":"[]","limitToUsePerCustomer":null,"discountedVariantSelectionLimit":null,"hideOneTimePurchase":false,"hideSubscriptionPurchase":false,"maxOrderAmount":null,"collectionData":null,"excludedProducts":null,"productSelectionType":"PRODUCT","tag":"appstle_bundles","productChooseType":"CHOOSE_ALL","variantSelectionLimit":null,"discountTargetType":"VARIANT","enableSubscription":false,"subscriptionWidgetPosition":"BELOW","subscribeTitle":"Subscribe and Save","subscribeSubtitle":"Delivered Monthly","subscriptionPreselected":false,"getYAppliesOn":"BOTH","announcementBarMessage":null,"automaticDiscountNodeId":null,"recurringCycleLimit":0,"automaticShippingDiscountNodeId":"gid://shopify/DiscountAutomaticNode/1772143771892","scheduledBundleRule":false,"bundleActiveFrom":"2026-05-24T05:00:00Z","bundleActiveTo":null,"bundleSubType":null,"discountAppliesOn":"PER_ORDER","layoutType":"LAYOUT_ONE","style":"{\"tierFullPriceColor\":\"\",\"tierFreeGiftTitleFontSize\":13,\"tierUpsellTitleFontSize\":13,\"primaryColor\":\"#000000\",\"tierSubTitleFontSize\":13,\"otherProductsModalFullPriceColor\":\"\",\"primaryDisabledColor\":\"#333333\",\"cardHoverColor\":\"\",\"otherProductsModalPriceColor\":\"\",\"otherProductsModalButtonTextColor\":\"\",\"otherProductsButtonBackgroundColor\":\"\",\"tierPriceFontSize\":20,\"tierUpsellSubTitleFontSize\":12,\"comboProductFullPriceFontSize\":12,\"headingTextColor\":\"#000000\",\"badgesTextColor\":\"\",\"blockTitleFontStyle\":\"BOLD\",\"tierTitleFontSize\":20,\"otherProductsProductTitleColor\":\"\",\"subscriptionTitleTextColor\":\"\",\"subscriptionSubTitleFontSize\":13,\"otherProductsImageSize\":40,\"saveBadgeBackgroun
6170dColor\":\"\",\"tierFreeGiftBackgroundColor\":\"\",\"cardGap\":16,\"tierPriceFontStyle\":\"BOLD\",\"otherProductsModalOverlayColor\":\"\",\"tierPriceColor\":\"\",\"tierFreeGiftPriceFontSize\":14,\"otherProductsButtonTextColor\":\"\",\"tierTitleFontStyle\":\"BOLD\",\"ruleUpsellSubTitleFontSize\":13,\"comboProductPriceFontSize\":13,\"tierUnitLabelFontSize\":14,\"blockTitleFontSize\":14,\"otherProductsProductTitleSize\":16,\"productCardBackgroundColor\":\"#ffffff\",\"cardBackgroundColor\":\"\",\"buttonBackgroundColor\":\"#000000\",\"bundlePageBackgroundColor\":\"#FAFAF9\",\"borderRadius\":8,\"tierUpsellBackgroundColor\":\"\",\"ruleUpsellTitleTextColor\":\"\",\"ruleUpsellSubTitleTextColor\":\"\",\"tierUpsellSubTitleTextColor\":\"\",\"primaryDisabledTextColor\":\"#ffffff\",\"otherProductsModalProductTitleTextSize\":14,\"otherProductsModalProductTitleColor\":\"\",\"fieldDisabledBackgroundColor\":\"#D1D5DB\",\"otherProductsModalImageSize\":80,\"disabledTextColor\":\"#6B7280\",\"comboProductTitleFontStyle\":\"BOLD\",\"primaryHoverColor\":\"#000000\",\"saveBadgeTextColor\":\"\",\"tierUnitLabelFontStyle\":\"REGULAR\",\"cardBorderColor\":\"\",\"ruleUpsellTitleFontSize\":15,\"selectedCardBackgroundColor\":\"\",\"tierFullPriceFontSize\":14,\"comboProductTitleFontSize\":13,\"subscriptionSubTitleTextColor\":\"\",\"selectedCardBorderColor\":\"\",\"comboProductFullPriceFontStyle\":\"REGULAR\",\"tierTitleColor\":\"\",\"tierFullPriceFontStyle\":\"REGULAR\",\"tierSubTitleFontStyle\":\"REGULAR\",\"secondaryTextColor\":\"#ffffff\",\"blockTitleColor\":\"\",\"tierSubTitleColor\":\"\",\"saveBadgeFontSize\":12,\"primaryTextColor\":\"#000000\",\"tierFreeGiftTextColor\":\"\",\"tierFreeGiftTitleFontStyle\":\"BOLD\",\"tierUpsellTitleTextColor\":\"\",\"tierFreeGiftPriceFontStyle\":\"REGULAR\",\"perRowItem\":\"THREE\",\"badgesBackgroundColor\":\"\",\"otherProductsModalHeadingLabelColor\":\"\",\"otherProductsModalButtonBackgroundColor\":\"\",\"dedicatedSubscriptionLayout\":\"LAYOUT_ONE\",\"saveBadgeFontStyle\":\"REGULAR\",\"subscriptionTitleFontSize\":15,\"otherProductsModalProductPriceTextSize\":14,\"comboProductPriceFontStyle\":\"BOLD\"}","labels":"{\"mixAndMatchUpsellBadgeLabel\":\"+ Upsell\",\"oneTimeTitle\":\"One Time Purchase\",\"mixAndMatchAddedItemsLabel\":\"Added items\",\"mixAndMatchNoProductSelectedLabel\":\"No product selected\",\"volumeAmountDiscountQuantityRewardsLabel\":\"Buy {{quantity}} quantity and get {{currency}}{{discount}} discount!\",\"oneTimeSubtitle\":\"No Subscription\",\"mixAndMatchNoProductsAvailableLabel\":\"No products available.\",\"volumeDiscountSaveRewardsLabel\":\"Save {{discount}}{{discount_type}}!\",\"volumeDiscountQuantityRewardsLabel\":\"Buy {{quantity}} quantity and get {{discount}}{{discount_type}} discount!\",\"mixAndMatchGiftBadgeLabel\":\"+ Gift\",\"otherProductsModalSubtitleLabel\":\"\",\"volumeDiscountSpentAmountRewardsLabel\":\"Spend {{currency}}{{spent_amount}} and get {{discount}}{{discount_type}} discount!\",\"mixAndMatchAddButtonLabel\":\"Add\",\"volumeAmountDiscountSpentAmountRewardsLabel\":\"Spend {{currency}}{{spent_amount}} and get {{currency}}{{discount}} discount!\",\"mixAndMatchLockedLabel\":\"Locked\",\"mixAndMatchAddToCartLabel\":\"Add to cart\",\"mixAndMatchUnlockedLabel\":\"Unlocked\",\"mixAndMatchSeeAllLabel\":\"See all\",\"mixAndMatchTierDiscountLabel\":\"{{discount}} OFF\",\"volumeAmountDiscountSaveRewardsLabel\":\"Save {{currency}}{{discount}}!\",\"mixAndMatchTierQuantityLabel\":\"{{discountQuantityLabel}} items\"}","upsells":null,"enableVolumeDiscountUpsell":false,"combos":"[]","progressiveGift":null,"enableProgressiveGifts":false,"discountName":"SPECIAL: Get Free shipping for orders over {order-value} (Normally $70)","shippingDiscountType":"NO_DISCOUNT","inventoryTrackingMode":"ADD_CHILD_PRODUCT_ON_CHECKOUT","defaultVariants":null,"translations":null}];
6171        
6172        
6173
6174        
6175
6176        
6177
6178        
6179        _ABConfig.bundle_setting = {"id":21394,"shop":"perfectlyposh-2.myshopify.com","showOnProductPage":null,"selector":null,"placement":"AFTER","customCss":"#ab-discount-header-banner {\n    background: #bd365a !important;\n}","customizeBundleOptionType":"RADIO","buyButtonSelector":null,"labels":"{\"productDiscountCombinedWithOrderDiscount\":true,\"bundleListViewDetailsButtonLabel\":\"View Details\",\"requiredLoginValidationLabel\":\"Please log in to purchase this bundle!\",\"volumeDiscountTypeLabel\":\"Volume Discount\",\"loginAlertLinkLabel\":\"Click here to login\",\"breadCrumbProductsLabel\":\"Choose Products\",\"enableClassicBundleRecreation\":false,\"emptyProductImage\":\"https://cdn.shopify.com/s/files/1/0661/9224/4900/files/EmptyImage.jpg?v=1718447038\",\"enableAnnouncementBarAutoRotate\":true,\"reviewOrderInfoLabel\":\"\",\"productDiscountCombinedWithProductDiscount\":true,\"bundleMaximumQuantityLabel\":\"Add maximum up to {{maximum_quantity}} product\",\"productAddToBundleLabel\":\"Add\",\"breadCrumbReviewBundleLabel\":\"Review Bun
6179dle\",\"enableScrollingToBundleSection\":true,\"orderNoteLabel\":\"Order Note\",\"showProductPerPage\":50,\"requiresSubscriptionMessage\":\"Requires subscription\",\"dynamicBundleDiscountCombinedWithShippingDiscount\":true,\"hidePurchaseOptionSelectLabel\":false,\"showPriceAsDecimals\":false,\"tieredDiscountQuantityLabel\":\"Buy {{quantity}}, Get {{discount_amount}}{{discount_type}} OFF\",\"fixedDiscountText\":\"Enjoy a fixed discount of {{currency}}{{discount_value}} on your purchase!\",\"sectionTotalLabel\":\"Section Total\",\"fieldDisabledBackgroundColor\":\"#D1D5DB\",\"enableShippingDiscountBar\":false,\"bundleTotalLabel\":\"Total\",\"disableRefreshSellingPlan\":false,\"checkInventoryQuantity\":false,\"showSubscriptionPlanDescription\":false,\"fixedPricingBundleTypeLabel\":\"Fixed Pricing Bundle\",\"subscriptionAvailableLabel\":\"Subscription Available\",\"readLessText\":\"Read Less\",\"shippingDiscountLabel\":\"{{discount}}{{discount_type}} Shipping Discount\",\"selectedGiftProductProgressLabelText\":\"{{selected_product_quantity}} gift products added. The required quantity is {{required_product_quantity}}.\",\"disableFitImage\":false,\"secondaryTextColor\":\"#ffffff\",\"bundleProductsQuantityLabel\":\"{{quantity}}x quantity\",\"buyXGetYDiscountCombinedWithProductDiscount\":true,\"tieredDiscountLabel\":\"\",\"buyXGetYQuantityValidationLabel\":\"Add {{product_quantity}} quantities of the gift product (Get Y)\",\"primaryTextColor\":\"#000000\",\"modalOpenOnAddToCart\":true,\"notApplicableForSubscribeAndSaveNotificationTitle\":\"Not applicable for subscribe & save\",\"showAppstleBundleBranding\":true,\"customSignInLink\":\"\",\"volumeDiscountChooseProductLabel\":\"Choose Product\",\"loginAlertTextLabel\":\"You need to login to purchase this bundle.\",\"buyXGetYChooseProductLabel\":\"Choose Product\",\"enableAlternativeVolumeDiscountCalculation\":false,\"chooseAPlanLabel\":\"Choose Plan\",\"singleParentProductDirectRedirectToChildProducts\":true,\"buyXGetYFixedDiscountText\":\"Enjoy a fixed discount of {{discount_value}} {{currency}}\",\"notAvailableSubscriptionMessage\":\"Not available for subscription\",\"primaryColor\":\"#000000\",\"buyXGetYGiftProductPriceVisibilityType\":\"UNIT_PRICE\",\"volumeDiscountVariantSelectLabel\":\"Denominations\",\"chooseSourceProductValidationLabel\":\"Please choose source product!\",\"headingTextColor\":\"#000000\",\"hideBundleToastNotification\":false,\"classicBundleTypeLabel\":\"Classic Bundle\",\"oneTimeAvailableHintLabel\":\"One-time purchase available.\",\"bundleListDescription\":\"Explore our Bundles and Discounted Pricing and enjoy exclusive discounts when you buy products together\",\"getYNoProductSelectedLabel\":\"No gift product selected (Get Y)\",\"prepaidPerDeliveryPriceLabel\":\"{{prepaid_per_delivery_price}}/delivery\",\"hideVariantSelectLabel\":false,\"childProductInfoBannerText\":\"This product is part of a bundle\",\"availableOnlySubscriptionLabel\":\"Available Only On Subscription\",\"enableParentProductDetailButton\":false,\"bundleListTitle\":\"List of Bundles and Discounted Pricing\",\"chooseAssociatedProductsValidationLabel\":\"Please choose associated products!\",\"selectedSourceProductLabel\":\"Selected\",\"enableBuyXGetYWidgetMergeAsOptions\":false,\"volumeDiscountNextApplicableSpentAmountRewardsLabel\":\"Spend {{spent_amount}}{{currency}} get {{discount}}{{discount_type}}\",\"sectionNoProductSelectedValidationLabel\":\"No product selected for: {{section_name}}!\",\"bundlePageBackgroundColor\":\"#FAFAF9\",\"showVendorName\":false,\"buyXQuantityValidationLabel\":\"Add {{product_quantity}} quantities of the product (Bux X)\",\"sectionMaximumQuantityValidationLabel\":\"Maximum quantity not selected for: {{section_name}}!\",\"enableMaxDiscountCap\":false,\"enableVolumeDiscountBar\":false,\"sectionLabel\":\"Section\",\"disabledTextColor\":\"#6B7280\",\"tieredDiscountAmountLabel\":\"Spend {{spent_amount}}, Get {{discount_amount}}{{discount_type}} OFF\",\"primaryHoverColor\":\"#000000\",\"shippingDiscountCombinedWithOrderDiscount\":true,\"defaultDiscountBarMessage\":\"Welcome to our store\",\"enableBundleProductFilter\":false,\"buyXGetYDiscountCombinedWithOrderDiscount\":true,\"bundleSubtotalLabel\":\"Subtotal\",\"reviewOrderDescription\":\"Check your items and select your required frequency plan\",\"dynamicBundleDiscountCombinedWithOrderDiscount\":true,\"addingProductsToBundle\":\"Adding products to bundle\",\"buyXGetYMergedWidgetTitle\":\"Select Buy X Get Y Discount\",\"bundleModalHeaderLabel\":\"Your Bundle({{total_quantity}})\",\"productAddedToBundleNotificationDescription\":\"{{product_title}} added to bundle.\",\"productDiscountTypeLabel\":\"Product Discount\",\"bundleSearchBarPlaceholder\":\"Search product by name or title\",\"bundleTopHtml\":\"\",\"proceedToCheckoutButtonText\":\"\",\"defaultSelectedPurchaseOption\":\"ONE_TIME\",\"interceptorExecutionType\":\"AUTO\",\"showDraftProduct\":false,\"switchSubscriptionLabel\":\"Subscribe & Save\",\"percentDiscountText\":\"Get {{discount_value}}% off on your purchase!\",\"discountUsageLimitExceedLabel\":\"You have exceeded the bundle usage limit\",\"reviewOrderLabel\":\"Review Bun
6179dle\",\"chooseSectionProductsLabel\":\"Choose Section Products\",\"primaryDisabledColor\":\"#333333\",\"bundleMinimumOrderAmountLabel\":\"Add minimum {{minimum_amount}} order amount\",\"breadCrumbSelectSectionLabel\":\"Select Section\",\"loadMoreButtonLabel\":\"Load More\",\"addedBundleToTheCart\":\"Added bundle to the cart\",\"bundleQuantityRewardsLabel\":\"Add {{quantity}} item, get {{discount}}{{discount_type}} discount\",\"shippingDiscountCombinedWithProductDiscount\":true,\"sellingPlanNameSortOrder\":\"ASC\",\"switchOnTimeLabel\":\"One Time\",\"volumeDiscountCombinedWithProductDiscount\":true,\"chooseProductsText\":\"Products\",\"productDetailsViewType\":\"SHOW_PRODUCT_POPUP\",\"enableManualBundleBlockIntegration\":false,\"volumeDiscountNextApplicableQuantityRewardsLabel\":\"Buy {{quantity}} get {{discount}}{{discount_type}}\",\"bundleCheckoutLabel\":\"Checkout\",\"productDiscountCombinedWithShippingDiscount\":true,\"skipSelectSectionPage\":false,\"productCardBackgroundColor\":\"#ffffff\",\"buyXGetYFreeLabel\":\"Free\",\"buttonBackgroundColor\":\"#000000\",\"discountMessageInterval\":3000,\"sectionedBundleTypeLabel\":\"Sectioned Bundle\",\"buyXGetYAddToCartLabel\":\"Add to cart\",\"volumeDiscountChooseButtonLabel\":\"Choose\",\"buyXGetYDiscountCombinedWithShippingDiscount\":true,\"switchPurchaseModeLabel\":\"Switch\",\"selectedProgressLabelText\":\"{{total_bundle_items}} item added with a minimum quantity of {{minimum_quantity}}\",\"requiredBundleProductLabel\":\"Your bundle needs {{min_product_count}} more item(s).\",\"sellingPlanSelectionDropDownLabel\":\"Purchase Options\",\"buyXGetYPercentDiscountText\":\"Enjoy a percentage discount of {{discount_value}}%\",\"preventClickableProductsOnCart\":false,\"showPrepaidPerDeliveryPrice\":true,\"enableProductDetailButton\":false,\"buyXGetYDiscountTypeLabel\":\"Buy X Get Y Discount\",\"customOfferLink\":\"collections/all\",\"noItemsInBundle\":\"No items added to the bundle\",\"enableOpusCart\":false,\"hideProductPurchaseModeAwarenessHint\":false,\"variantSelectionDropDownLabel\":\"Variants\",\"chooseSectionLabel\":\"Choose Section\",\"dynamicPricingBundleTypeLabel\":\"Dynamic Pricing Bundle\",\"breadCrumbPlanLabel\":\"Select Plan\",\"showDynamicBundleOrderNote\":false,\"showOutOfStockProduct\":true,\"disabledSellingPlanSelectionValidation\":false,\"disableViewShopifyProduct\":false,\"bundleDiscountLabel\":\"Discount\",\"bundleNotEligibleLabel\":\"You're not eligible to purchase this bundle!\",\"reviewOrderProductsLabel\":\"Bundle Products\",\"outOfStockLabel\":\"Out Of Stock\",\"buyXGetYFreeGiftDiscountText\":\"Enjoy the free product\",\"showDescriptionPopup\":true,\"maxDiscountCapValue\":0,\"readMoreText\":\"Read More\",\"totalBundleProductsAddedLabel\":\"{{total_bundle_items}} Products Added\",\"bundleMinimumQuantityLabel\":\"Add minimum {{minimum_quantity}} product\",\"noSourceProductSelectedLabel\":\"No source product selected.\",\"nonListedProductText\":\"Non-Listed\",\"buyXNoProductSelectedLabel\":\"No product selected (Buy X)\",\"freeShippingLabel\":\"Free Shipping\",\"previousButtonLabel\":\"Previous Step\",\"draftBundlePageTitle\":\"Oops! This bundle is temporarily unavailable.\",\"productDetailsMaximumDescriptionCount\":300,\"oneTimeOnlyLabel\":\"One time only\",\"buyXAnyNumberOfProductChooseLabel\":\"Choose any number of products\",\"disableDiscountedPricingRedirectToCart\":false,\"volumeDiscountCombinedWithOrderDiscount\":true,\"choosePlanButtonLabel\":\"Choose Plan\",\"enableAnnouncementBar\":false,\"bundleQuantityLabel\":\"{{quantity}}x\",\"disableAutoSelection\":false,\"disableCustomAttributeInterceptor\":false,\"classicBundleLinkLabel\":\"View Complete Bundle\",\"bundleDetailsLabel\":\"Your bundle:\",\"enableAutoRemoveRelevantBundleItemInCart\":false,\"bundleModalShowRewardsLabel\":\"Show all rewards\",\"cartAndCheckoutMandatoryProductValidationMessage\":\"This bundle or discount must include all required products and they cannot be removed.\",\"notApplicableForOneTimeNotificationTitle\":\"Not applicable for one time\",\"showDiscountToNonEligibleCustomers\":false,\"primaryDisabledTextColor\":\"#ffffff\",\"draftBundlePageSubTitle\":\"In the meantime, check out our latest offers and discounts!\",\"volumeDiscountCombinedWithShippingDiscount\":true,\"bundleSpentAmountRewardsLabel\":\"Spent {{spent_amount}} worth of items, get {{discount}}{{discount_type}} discount\",\"nextButtonLabel\":\"Next Step\",\"classicBundleDescriptionLabel\":\"Your bundle contains the following products.\",\"bundleBottomHtml\":\"\",\"sectionMinimumQuantityValidationLabel\":\"Minimum quantity not selected for: {{section_name}}!\",\"enableGa4CrossDomainTracking\":false,\"dynamicBundleDiscountCombinedWithProductDiscount\":true,\"buyXGetYAnyNumberOfGiftProductLabel\":\"Choose any number of gift products\",\"subscriptionAvailableHintLabel\":\"Subscribe & save available.\",\"descriptionLength\":200,\"bundleDiscountNote\":\"Discounts will be applied at checkout.\",\"bundleModalCloseRewardsLabel\":\"Close all rewards\",\"productDetailsAddToBundleLabel\":\"Add to bundle\",\"cartAndCheckoutQuantityValidationMessage\":\"Orders must match the quantity range: Min {{min_quantity}}, Max {{max_quantity}}\",\"bundleNoProductSelectedLabel\":\"No product selected\",\"hideIncompatibleProductMessage\":false,\"checkoutInfoLabel\":\"Add products from each section to enable the add to cart button.\",\"enableShowMultipleImages\":false,\"redirectToCartPageOnCartIconClick\":true,\"customOfferLinkButtonLabel\":\"Explore Offers\",\"oneTimePurchaseLabel\":\"One Time Purchase\",\"bundleMaximumOrderAmountLabel\":\"Add maximum {{maximum_amount}} order amount\",\"enableBundleProductAscOrderView\":true,\"productAddedToBundleNotificationTitle\":\"Added to bundle\",\"customHtmlInject\":\"[]\",\"showMainToggleForProductLevel\":false,\"breadCrumbReviewSectionLabel\":\"Review Section\",\"enableBundleRecreation\":false}","bundleTopHtml":"","bundleBottomHtml":"","proceedToCheckoutButtonText":"","chooseProductsText":"Products","productAddToBundleLabel":"Add","productDetailsAddToBundleLabel":"Add to bundle","productDetailsMaximumDescriptionCount":300,"variantSelectionDropDownLabel":"Variants","sellingPlanSelectionDropDownLabel":"Purchase Options","bundleModalHeaderLabel":"Your Bundle({{total_quantity}})","bundleModalShowRewardsLabel":"Show all rewards","bundleModalCloseRewardsLabel":"Close all rewards","bundleQuantityRewardsLabel":"Add {{quantity}} item, get {{discount}}{{discount_type}} discount","bundleSpentAmountRewardsLabel":"Spent {{spent_amount}} worth of items, get {{discount}}{{discount_type}} discount","bundleQuantityLabel":"{{quantity}}x","bundleSubtotalLabel":"Subtotal","bundleDiscountLabel":"Discount","bundleTotalLabel":"Total","bundleCheckoutLabel":"Checkout","bundleMinimumQuantityLabel":"Add minimum {{minimum_quantity}} product","bundleMaximumQuantityLabel":"Add maximum up to {{maximum_quantity}} product","bundleMinimumOrderAmountLabel":"Add minimum {{minimum_amount}} order amount","oneTimePurchaseLabel":"One Time Purchase","noItemsInBundle":"No items added to the bundle","modalOpenOnAddToCart":true,"productAddedToBundleNotificationTitle":"Added to bundle","productAddedToBundleNotificationDescription":"{{product_title}} added to bundle.","chooseAPlanLabel":"Choose Plan","nextButtonLabel":"Next Step","previousButtonLabel":"Previous Step","chooseSourceProductValidationLabel":"Please choose source product!","chooseAssociatedProductsValidationLabel":"Please choose associated products!","choosePlanButtonLabel":"Choose Plan","selectedSourceProductLabel":"Selected","noSourceProductSelectedLabel":"No source product selected.","reviewOrderLabel":"Review Bun
6179dle","reviewOrderDescription":"Check your items and select your required frequency plan","reviewOrderProductsLabel":"Bundle Products","reviewOrderInfoLabel":"","orderNoteLabel":"Order Note","selectedProgressLabelText":"{{total_bundle_items}} item added with a minimum quantity of {{minimum_quantity}}","availableOnlySubscriptionLabel":"Available Only On Subscription","subscriptionAvailableLabel":"Subscription Available","oneTimeOnlyLabel":"One time only","switchOnTimeLabel":"One Time","switchSubscriptionLabel":"Subscribe & Save","breadCrumbPlanLabel":"Select Plan","breadCrumbProductsLabel":"Choose Products","breadCrumbReviewBundleLabel":"Review Bundle","showDescriptionPopup":true,"tieredDiscountQuantityLabel":"Buy {{quantity}}, Get {{discount_amount}}{{discount_type}} OFF","tieredDiscountAmountLabel":"Spend {{spent_amount}}, Get {{discount_amount}}{{discount_type}} OFF","tieredDiscountLabel":"","emptyProductImage":"https://cdn.shopify.com/s/files/1/0661/9224/4900/files/EmptyImage.jpg?v=1718447038","outOfStockLabel":"Out Of Stock","notApplicableForOneTimeNotificationTitle":"Not applicable for one time","notApplicableForSubscribeAndSaveNotificationTitle":"Not applicable for subscribe & save","descriptionLength":200,"readLessText":"Read Less","readMoreText":"Read More","bundleNoProductSelectedLabel":"No product selected","customHtmlInject":"[]","bundleDetailsLabel":"Your bundle:","bundleDiscountNote":"Discounts will be applied at checkout.","fixedDiscountText":"Enjoy a fixed discount of {{currency}}{{discount_value}} on your purchase!","percentDiscountText":"Get {{discount_value}}% off on your purchase!","hideVariantSelectLabel":false,"hidePurchaseOptionSelectLabel":false,"showMainToggleForProductLevel":false,"hideProductPurchaseModeAwarenessHint":false,"hideIncompatibleProductMessage":false,"subscriptionAvailableHintLabel":"Subscribe & save available.","oneTimeAvailableHintLabel":"One-time purchase available.","switchPurchaseModeLabel":"Switch","notAvailableSubscriptionMessage":"Not available for subscription","requiresSubscriptionMessage":"Requires subscription","headingFontFamily":null,"bodyFontFamily":null,"primaryColor":"#000000","primaryTextColor":"#000000","secondaryTextColor":"#ffffff","primaryHoverColor":"#000000","primaryDisabledColor":"#333333","primaryDisabledTextColor":"#ffffff","fieldDisabledBackgroundColor":"#D1D5DB","disabledTextColor":"#6B7280","volumeDiscountNextApplicableQuantityRewardsLabel":"Buy {{quantity}} get {{discount}}{{discount_type}}","volumeDiscountNextApplicableSpentAmountRewardsLabel":"Spend {{spent_amount}}{{currency}} get {{discount}}{{discount_type}}","addingProductsToBundle":"Adding products to bundle","freeShippingLabel":"Free Shipping","requiredBundleProductLabel":"Your bundle needs {{min_product_count}} more item(s).","enableProductDetailButton":false,"requiredLoginValidationLabel":"Please log in to purchase this bundle!","bundleNotEligibleLabel":"You're not eligible to purchase this bundle!","loginAlertTextLabel":"You need to login to purchase this bundle.","loginAlertLinkLabel":"Click here to login","customSignInLink":"","shippingDiscountLabel":"{{discount}}{{discount_type}} Shipping Discount","classicBundleDescriptionLabel":"Your bundle contains the following products.","singleParentProductDirectRedirectToChildProducts":true,"buyXGetYFixedDiscountText":"Enjoy a fixed discount of {{discount_value}} {{currency}}","buyXGetYPercentDiscountText":"Enjoy a percentage discount of {{discount_value}}%","buyXGetYFreeGiftDiscountText":"Enjoy the free product","buyXGetYAddToCartLabel":"Add to cart","buyXGetYFreeLabel":"Free","disableDiscountedPricingRedirectToCart":false,"nonListedProductText":"Non-Listed","preventClickableProductsOnCart":false,"buyXGetYChooseProductLabel":"Choose Product","showSubscriptionPlanDescription":false,"enableManualBundleBlockIntegration":false,"cartAndCheckoutQuantityValidationMessage":"Orders must match the quantity range: Min {{min_quantity}}, Max {{max_quantity}}","discountUsageLimitExceedLabel":"You have exceeded the bundle usage limit","disableViewShopifyProduct":false,"redirectToCartPageOnCartIconClick":true,"sectionLabel":"Section","chooseSectionLabel":"Choose Section","chooseSectionProductsLabel":"Choose Section Products","breadCrumbSelectSectionLabel":"Select Section","breadCrumbReviewSectionLabel":"Review Section","checkoutInfoLabel":"Add products from each section to enable the add to cart button.","sectionNoProductSelectedValidationLabel":"No product selected for: {{section_name}}!","sectionMinimumQuantityValidationLabel":"Minimum quantity not selected for: {{section_name}}!","sectionMaximumQuantityValidationLabel":"Maximum quantity not selected for: {{section_name}}!","dynamicBundleDiscountCombinedWithProductDiscount":true,"dynamicBundleDiscountCombinedWithShippingDiscount":true,"dynamicBundleDiscountCombinedWithOrderDiscount":true,"volumeDiscountCombinedWithProductDiscount":true,"volumeDiscountCombinedWithShippingDiscount":true,"volumeDiscountCombinedWithOrderDiscount":true,"productDiscountCombinedWithProductDiscount":true,"productDiscountCombinedWithShippingDiscount":true,"productDiscountCombinedWithOrderDiscount":true,"buyXGetYDiscountCombinedWithProductDiscount":true,"buyXGetYDiscountCombinedWithShippingDiscount":true,"buyXGetYDiscountCombinedWithOrderDiscount":true,"shippingDiscountCombinedWithProductDiscount":true,"shippingDiscountCombinedWithOrderDiscount":true,"showDynamicBundleOrderNote":false,"bundleMaximumOrderAmountLabel":"Add maximum {{maximum_amount}} order amount","buyXGetYQuantityValidationLabel":"Add {{product_quantity}} quantities of the gift product (Get Y)","selectedGiftProductProgressLabelText":"{{selected_product_quantity}} gift products added. The required quantity is {{required_product_quantity}}.","draftBundlePageTitle":"Oops! This bundle is temporarily unavailable.","draftBundlePageSubTitle":"In the meantime, check out our latest offers and discounts!","customOfferLink":"collections/all","customOfferLinkButtonLabel":"Explore Offers","enableParentProductDetailButton":false,"sectionTotalLabel":"Section Total","skipSelectSectionPage":false,"buyXGetYGiftProductPriceVisibilityType":"UNIT_PRICE","defaultSelectedPurchaseOption":"ONE_TIME","enableShowMultipleImages":false,"buyXGetYAnyNumberOfGiftProductLabel":"Choose any number of gift products","showDiscountToNonEligibleCustomers":false,"buyXNoProductSelectedLabel":"No product selected (Buy X)","getYNoProductSelectedLabel":"No gift product selected (Get Y)","buyXQuantityValidationLabel":"Add {{product_quantity}} quantities of the product (Bux X)","buyXAnyNumberOfProductChooseLabel":"Choose any number of products","enableBuyXGetYWidgetMergeAsOptions":false,"buyXGetYMergedWidgetTitle":"Select Buy X Get Y Discount","showClassicBundleProductVariant":null,"showProductPerPage":50,"loadMoreButtonLabel":"Load More","enableBundleProductAscOrderView":true,"cartAndCheckoutMandatoryProductValidationMessage":"This bundle or discount must include all required products and they cannot be removed.","sellingPlanNameSortOrder":"ASC","showVendorName":false,"disableFitImage":false,"enableAutoRemoveRelevantBundleItemInCart":false,"enableBundleProductFilter":false,"enableMaxDiscountCap":false,"maxDiscountCapValue":0,"classicBundleLinkLabel":"View Complete Bundle","childProductInfoBannerText":"This product is part of a bundle","showPriceAs
6179Decimals":false,"showOutOfStockProduct":true,"showDraftProduct":false,"totalBundleProductsAddedLabel":"{{total_bundle_items}} Products Added","bundleProductsQuantityLabel":"{{quantity}}x quantity","productDetailsViewType":"SHOW_PRODUCT_POPUP","disableRefreshSellingPlan":false,"enableShippingDiscountBar":false,"enableVolumeDiscountBar":false,"defaultDiscountBarMessage":"Welcome to our store","discountMessageInterval":3000,"addedBundleToTheCart":"Added bundle to the cart","disabledSellingPlanSelectionValidation":false,"volumeDiscountVariantSelectLabel":"Denominations","enableScrollingToBundleSection":true,"enableClassicBundleRecreation":false,"checkInventoryQuantity":false,"hideBundleToastNotification":false,"enableBundleRecreation":false,"enableAnnouncementBar":false,"enableAnnouncementBarAutoRotate":true,"enableAutoThemeStyleDetection":null,"enableComboBundleAutoThemeStyleDetection":false,"bundleListTitle":"List of Bundles and Discounted Pricing","bundleListDescription":"Explore our Bundles and Discounted Pricing and enjoy exclusive discounts when you buy products together","bundleListViewDetailsButtonLabel":"View Details","classicBundleTypeLabel":"Classic Bundle","dynamicPricingBundleTypeLabel":"Dynamic Pricing Bundle","fixedPricingBundleTypeLabel":"Fixed Pricing Bundle","sectionedBundleTypeLabel":"Sectioned Bundle","volumeDiscountTypeLabel":"Volume Discount","productDiscountTypeLabel":"Product Discount","buyXGetYDiscountTypeLabel":"Buy X Get Y Discount","bundlePageBackgroundColor":"#FAFAF9","productCardBackgroundColor":"#ffffff","buttonBackgroundColor":"#000000","showPrepaidPerDeliveryPrice":true,"prepaidPerDeliveryPriceLabel":"{{prepaid_per_delivery_price}}/delivery","bundleSearchBarPlaceholder":"Search product by name or title","headingTextColor":"#000000","volumeDiscountChooseButtonLabel":"Choose","volumeDiscountChooseProductLabel":"Choose Product","disableAutoSelection":false,"interceptorExecutionType":"AUTO","enableOpusCart":false,"disableCustomAttributeInterceptor":false,"enableGa4CrossDomainTracking":false,"enableAlternativeVolumeDiscountCalculation":false,"enableAppliesOnOneTimePurchaseForMixPurchaseType":null,"validateExactDiscountQuantity":null,"showAppstleBundleBranding":true};
6180        
6181
6182        
6183        _ABConfig.shop_info = {"disableAppFunctionality":null,"shopMoneyFormat":null,"enableLooxReview":false,"bundleExcludedPaths":[]};
6184        
6185
6186        
6187
6188        
6189
6190        
6191        _ABConfig.shop_labels = {"switchSubscriptionLabel":"Subscribe & Save","bundleListViewDetailsButtonLabel":"View Details","percentDiscountText":"Get {{discount_value}}% off on your purchase!","discountUsageLimitExceedLabel":"You have exceeded the bundle usage limit","requiredLoginValidationLabel":"Please log in to purchase this bundle!","volumeDiscountTypeLabel":"Volume Discount","reviewOrderLabel":"Review Bundle","loginAlertLinkLabel":"Click here to login","chooseSectionProductsLabel":"Choose Section Products","bundleMinimumOrderAmountLabel":"Add minimum {{minimum_amount}} order amount","breadCrumbSelectSectionLabel":"Select Section","breadCrumbProductsLabel":"Choose Products","loadMoreButtonLabel":"Load More","addedBundleToTheCart":"Added bundle to the cart","bundleQuantityRewardsLabel":"Add {{quantity}} item, get {{discount}}{{discount_type}} discount","reviewOrderInfoLabel":"","switchOnTimeLabel":"One Time","bundleMaximumQuantityLabel":"Add maximum up to {{maximum_quantity}} product","chooseProductsText":"Products","volumeDiscountNextApplicableQuantityRewardsLabel":"Buy {{quantity}} get {{discount}}{{discount_type}}","bundleCheckoutLabel":"Checkout","productAddToBundleLabel":"Add","breadCrumbReviewBundleLabel":"Review Bundle","orderNoteLabel":"Order Note","requiresSubscriptionMessage":"Requires subscription","buyXGetYFreeLabel":"Free","sectionedBundleTypeLabel":"Sectioned Bundle","buyXGetYAddToCartLabel":"Add to cart","tieredDiscountQuantityLabel":"Buy {{quantity}}, Get {{discount_amount}}{{discount_type}} OFF","volumeDiscountChooseButtonLabel":"Choose","fixedDiscountText":"Enjoy a fixed discount of {{currency}}{{discount_value}} on your purchase!","sectionTotalLabel":"Section Total","switchPurchaseModeLabel":"Switch","selectedProgressLabelText":"{{total_bundle_items}} item added with a minimum quantity of {{minimum_quantity}}","bundleTotalLabel":"Total","requiredBundleProductLabel":"Your bundle needs {{min_product_count}} more item(s).","sellingPlanSelectionDropDownLabel":"Purchase Options","buyXGetYPercentDiscountText":"Enjoy a percentage discount of {{discount_value}}%","fixedPricingBundleTypeLabel":"Fixed Pricing Bundle","subscriptionAvailableLabel":"Subscription Available","readLessText":"Read Less","buyXGetYDiscountTypeLabel":"Buy X Get Y Discount","customOfferLink":"collections/all","noItemsInBundle":"No items added to the bundle","variantSelectionDropDownLabel":"Variants","shippingDiscountLabel":"{{discount}}{{discount_type}} Shipping Discount","chooseSectionLabel":"Choose Section","selectedGiftProductProgressLabelText":"{{selected_product_quantity}} gift products added. The required quantity is {{required_product_quantity}}.","dynamicPricingBundleTypeLabel":"Dynamic Pricing Bundle","breadCrumbPlanLabel":"Select Plan","bundleProductsQuantityLabel":"{{quantity}}x quantity","bundleDiscountLabel":"Discount","bundleNotEligibleLabel":"You're not eligible to purchase this bundle!","reviewOrderProductsLabel":"Bundle Products","outOfStockLabel":"Out Of Stock","tieredDiscountLabel":"","buyXGetYFreeGiftDiscountText":"Enjoy the free product","buyXGetYQuantityValidationLabel":"Add {{product_quantity}} quantities of the gift product (Get Y)","readMoreText":"Read More","notApplicableForSubscribeAndSaveNotificationTitle":"Not applicable for subscribe & save","totalBundleProductsAddedLabel":"{{total_bundle_items}} Products Added","bundleMinimumQuantityLabel":"Add minimum {{minimum_quantity}} product","noSourceProductSelectedLabel":"No source product selected.","nonListedProductText":"Non-Listed","buyXNoProductSelectedLabel":"No product selected (Buy X)","volumeDiscountChooseProductLabel":"Choose Product","loginAlertTextLabel":"You need to login to purchase this bundle.","buyXGetYChooseProductLabel":"Choose Product","freeShippingLabel":"Free Shipping","previousButtonLabel":"Previous Step","draftBundlePageTitle":"Oops! This bundle is temporarily unavailable.","chooseAPlanLabel":"Choose Plan","oneTimeOnlyLabel":"One time only","buyXGetYFixedDiscountText":"Enjoy a fixed discount of {{discount_value}} {{currency}}","buyXAnyNumberOfProductChooseLabel":"Choose any number of products","notAvailableSubscriptionMessage":"Not available for subscription","volumeDiscountVariantSelectLabel":"Denominations","chooseSourceProductValidationLabel":"Please choose source product!","choosePlanButtonLabel":"Choose Plan","bundleQuantityLabel":"{{quantity}}x","classicBundleTypeLabel":"Classic Bundle","oneTimeAvailableHintLabel":"One-time purchase available.","bundleListDescription":"Explore our Bundles and Discounted Pricing and enjoy exclusive discounts when you buy products together","getYNoProductSelectedLabel":"No gift product selected (Get Y)","prepaidPerDeliveryPriceLabel":"{{prepaid_per_delivery_price}}/delivery","bundleDetailsLabel":"Your bundle:","availableOnlySubscriptionLabel":"Available Only On Subscription","additionalOrderNoteLabel":"Additional Order Note","bundleListTitle":"List of Bundles and Discounted Pricing","chooseAssociatedProductsValidationLabel":"Please choose associated products!","selectedSourceProductLabel":"Selected","bundleModalShowRewardsLabel":"Show all rewards","volumeDiscountNextApplicableSpentAmountRewardsLabel":"Spend {{spent_amount}}{{currency}} get {{discount}}{{discount_type}}","sectionNoProductSelectedValidationLabel":"No product selected for: {{section_name}}!","buyXQuantityValidationLabel":"Add {{product_quantity}} quantities of the product (Bux X)","sectionMaximumQuantityValidationLabel":"Maximum quantity not selected for: {{section_name}}!","notApplicableForOneTimeNotificationTitle":"Not applicable for one time","sectionLabel":"Section","draftBundlePageSubTitle":"In the meantime, check out our latest offers and discounts!","bundleSpentAmountRewardsLabel":"Spent {{spent_amount}} worth of items, get {{discount}}{{discount_type}} discount","tieredDiscountAmountLabel":"Spend {{spent_amount}}, Get {{discount_amount}}{{discount_type}} OFF","nextButtonLabel":"Next Step","classicBundleDescriptionLabel":"Your bundle contains the following products.","sectionMinimumQuantityValidationLabel":"Minimum quantity not selected for: {{section_name}}!","defaultDiscountBarMessage":"Welcome to our store","subscriptionAvailableHintLabel":"Subscribe & save available.","bundleDiscountNote":"Discounts will be applied at checkout.","bundleModalCloseRewardsLabel":"Close all rewards","productDetailsAddToBundleLabel":"Add to bundle","cartAndCheckoutQuantityValidationMessage":"Orders must match the quantity range: Min {{min_quantity}}, Max {{max_quantity}}","bundleNoProductSelectedLabel":"No product selected","checkoutInfoLabel":"Add products from each section to enable the add to cart button.","bundleSubtotalLabel":"Subtotal","reviewOrderDescription":"Check your items and select your required frequency plan","customOfferLinkButtonLabel":"Explore Offers","popupCommunityHeadingText":"Perfectly Pos
6191h","oneTimePurchaseLabel":"One Time Purchase","bundleMaximumOrderAmountLabel":"Add maximum {{maximum_amount}} order amount","addingProductsToBundle":"Adding products to bundle","buyXGetYMergedWidgetTitle":"Select Buy X Get Y Discount","bundleModalHeaderLabel":"Your Bundle({{total_quantity}})","productAddedToBundleNotificationTitle":"Added to bundle","productAddedToBundleNotificationDescription":"{{product_title}} added to bundle.","productDiscountTypeLabel":"Product Discount","bundleSearchBarPlaceholder":"Search product by name or title","proceedToCheckoutButtonText":"","breadCrumbReviewSectionLabel":"Review Section"};
6192        
6193
6194        _ABConfig.enableValidateDiscountQuantity = false;
6195
6196        
6197        _ABConfig.customerId = null;
6198        _ABConfig.customerName = '';
6199        _ABConfig.firstName = '';
6200        _ABConfig.lastName = '';
6201        _ABConfig.customerEmail = null;
6202        _ABConfig.customerTags = [];
6203        _ABConfig.customerDiscountUsage = [];
6204        
6205
6206
6207        
6208        _ABConfig.shop = "perfectlyposh-2.myshopify.com";
6209        _ABConfig.shopMoneyFormat = "${{amount}}";
6210        _ABConfig.shopMoneyFormatWithCurrencyFormat = "${{amount}} USD";
6211        
6212
6213        
6214
6215            
6216
6217        (function() {
6218            const appstleBundlesCurrentPath = "/pages/about";
6219            if (appstleBundlesCurrentPath?.includes('/collections')) _ABConfig.isCollectionPage = true;
6220            if (appstleBundlesCurrentPath === '/') _ABConfig.isHomePage = true;
6221        })();
6222
6223        _ABConfig.loadBundleAssets = () => {
6224            const css = "https://bundles-admin.appstle.com/content/build-a-box.css?v=1788520067062";
6225            const js = "https://bundles-admin.appstle.com/app/build-a-box.bundle.js?v=1788520067062";
6226            const link = document.createElement('link');
6227            link.rel = 'stylesheet';
6228            link.href = css;
6229            document.head.appendChild(link);
6230            const script = document.createElement('script');
6231            script.defer = true;
6232            script.src = js;
6233            document.head.appendChild(script);
6234        };
6235
6236        <!-- BEGIN app snippet: get-discount-bundles -->
6237    window._ABConfig.getProductDiscountedPricing = ({ variantId, amount, quantity, sellingPlanId }) => {
6238        const disableAppFunctionality = window?._ABConfig?.['disableAppFunctionality'] || false;
6239        if (!variantId || disableAppFunctionality) {
6240            console.error('Please provide a current variant id');
6241            return [];
6242        }
6243        //helper functions
6244        const isDiscountUsageLimitExceed = (customerDiscountUsage, bundle) => {
6245            if (customerDiscountUsage && customerDiscountUsage.length) {
6246                const targetDiscountUsage = customerDiscountUsage.find(
6247                    (discountUsage) => discountUsage?.uniqueRef === bundle?.uniqueRef
6248                );
6249                return targetDiscountUsage && targetDiscountUsage?.usageCount >= bundle?.limitToUsePerCustomer;
6250            }
6251            return false;
6252        };
6253        const isBundleRestrictedCustomerByTagsByDiscount = (item, customerTags) => {
6254            if (!item?.restrictTags) return false;
6255            const restrictTags = item?.restrictTags?.split(',');
6256            return customerTags && customerTags.length > 0 && customerTags.some((tag) => restrictTags?.includes(tag));
6257        };
6258        const isBundleAllowedByCustomersTagByDiscount = (item, customerTags) => {
6259            if (!item?.allowedTags) return true;
6260            const allowedCustomersOnly = item?.allowedTags?.split(',');
6261            return (
6262                customerTags &&
6263                customerTags.length > 0 &&
6264                customerTags.some((tag) => allowedCustomersOnly?.includes(tag))
6265            );
6266        };
6267        const isBundleRestrictedByDiscount = (item, customerTags) => {
6268            return isBundleRestrictedCustomerByTagsByDiscount(item, customerTags) || !isBundleAllowedByCustomersTagByDiscount(item, customerTags);
6269        };
6270        const processBundleRules = (bundles, type, fields) =>
6271            bundles
6272                .filter((bundle) => bundle?.bundleType === type)
6273                .map((rule) => {
6274                    const parsedRule = { ...rule };
6275                    fields.forEach((field) => {
6276                        try {
6277                            parsedRule[field] = JSON.parse(rule[field] || '[]');
6278                        } catch (e) {
6279                            console.error('Failed to parse field:', field, e);
6280                            parsedRule[field] = [];
6281                        }
6282                    });
6283                    return parsedRule;
6284                });
6285        const getBestDiscount = (applicableDiscounts, lineItem, discountKey = 'discount') => {
6286            return applicableDiscounts.reduce((greater, current) => {
6287                const greaterDiscount = greater?.[discountKey];
6288                const currentDiscount = current?.[discountKey];
6289
6290                if ((greater?.discountType === "PERCENTAGE" && current?.discountType === "PERCENTAGE") ||
6291                    (greater?.discountType === "FIXED_AMOUNT" && current?.discountType === "FIXED_AMOUNT")) {
6292                    return currentDiscount > greaterDiscount ? current : greater;
6293
6294                } else if (current?.discountType === "FIXED_AMOUNT" && greater?.discountType === "PERCENTAGE") {
6295                    return currentDiscount > ((greaterDiscount / 100) * lineItem?.totalAmount) ? current : greater;
6296
6297                } else if (current?.discountType === "PERCENTAGE" && greater?.discountType === "FIXED_AMOUNT") {
6298                    return ((currentDiscount / 100) * lineItem?.totalAmount) > greaterDiscount ? current : greater;
6299                }
6300
6301                return currentDiscount > greaterDiscount ? current : greater;
6302            });
6303        };
6304        const getApplicableTieredDiscount = (volumeDiscountBundles, lineItem) => {
6305            let applicableDiscount = null;
6306
6307            const updatedVolumeDiscountBundles = volumeDiscountBundles.map(bundle => {
6308                const updatedTieredDiscount = bundle?.tieredDiscount.map(discount => {
6309                    return {
6310                        ...discount,
6311                        appliesOn: bundle?.appliesOn
6312                    };
6313                })
6314
6315                return {
6316                    ...bundle,
6317                    tieredDiscount: updatedTieredDiscount
6318                }
6319            });
6320
6321            const volumeDiscountBundlesTieredDiscount = updatedVolumeDiscountBundles.reduce((acc, item) => {
6322                return acc.concat(item?.tieredDiscount);
6323            }, []);
6324
6325            let applicableQuantityBasedDiscount = volumeDiscountBundlesTieredDiscount
6326                .filter(tieredDiscount => tieredDiscount?.discountBasedOn === "QUANTITY")
6327                .filter(tieredDiscount => lineItem?.quantity >= tieredDiscount?.value);
6328            applicableQuantityBasedDiscount = applicableQuantityBasedDiscount.length > 0 ? getBestDiscount(applicableQuantityBasedDiscount, lineItem) : null;
6329
6330            let applicableSpendAmountBasedDiscount = volumeDiscountBundlesTieredDiscount
6331                .filter(tieredDiscount => tieredDiscount?.discountBasedOn === "AMOUNT")
6332                .filter(tieredDiscount => lineItem?.totalAmount >= tieredDiscount?.value);
6333            applicableSpendAmountBasedDiscount = applicableSpendAmountBasedDiscount.length > 0 ? getBestDiscount(applicableSpendAmountBasedDiscount, lineItem, ) : null;
6334
6335            if (applicableQuantityBasedDiscount && applicableSpendAmountBasedDiscount) {
6336
6337                if ((applicableQuantityBasedDiscount?.discountType === "PERCENTAGE" && applicableSpendAmountBasedDiscount?.discountType === "PERCENTAGE") || (applicableQuantityBasedDiscount?.discountType === "FIXED_AMOUNT" && applicableSpendAmountBasedDiscount?.discountType === "FIXED_AMOUNT")) {
6338                    if (applicableQuantityBasedDiscount?.discount > applicableSpendAmountBasedDiscount?.discount) {
6339                        applicableDiscount = applicableQuantityBasedDiscount;
6340                    } else {
6341                        applicableDiscount = applicableSpendAmountBasedDiscount;
6342                    }
6343
6344                }else if(applicableQuantityBasedDiscount?.discountType === "PERCENTAGE" && applicableSpendAmountBasedDiscount?.discountType === "FIXED_AMOUNT"){
6345                    if (((applicableQuantityBasedDiscount?.discount / 100) * lineItem?.totalAmount) > applicableSpendAmountBasedDiscount?.discount) {
6346                        applicableDiscount = applicableQuantityBasedDiscount;
6347                    } else {
6348                        applicableDiscount = applicableSpendAmountBasedDiscount;
6349                    }
6350
6351                }else if(applicableQuantityBasedDiscount?.discountType === "FIXED_AMOUNT" && applicableSpendAmountBasedDiscount?.discountType === "PERCENTAGE"){
6352                    if (applicableQuantityBasedDiscount?.discount > ((applicableSpendAmountBasedDiscount?.discount / 100) * lineItem?.totalAmount)) {
6353                        applicableDiscount = applicableQuantityBasedDiscount;
6354                    } else {
6355                        applicableDiscount = applicableSpendAmountBasedDiscount;
6356                    }
6357                }
6358
6359            } else if (applicableQuantityBasedDiscount) {
6360                applicableDiscount = applicableQuantityBasedDiscount;
6361            } else if (applicableSpendAmountBasedDiscount) {
6362                applicableDiscount = applicableSpendAmountBasedDiscount;
6363            }
6364            return applicableDiscount;
6365        }
6366        const getApplicablePercentOrFixedDiscount = (discountedPricingBundles, lineItem) => {
6367            let applicableDiscount = null;
6368
6369            let applicableQuantityBasedDiscount = discountedPricingBundles
6370                .map(bundle => {
6371                    return {
6372                        ...bundle,
6373                        minProductCount: bundle?.minProductCount || 0,
6374                        maxProductCount: bundle?.maxProductCount || 0,
6375                        minOrderAmount: bundle?.minOrderAmount || 0
6376                    };
6377                })
6378                .filter(bundle => {
6379                    const minCount = bundle.minProductCount;
6380                    const maxCount = bundle.maxProductCount;
6381                    const minAmount = bundle.minOrderAmount;
6382
6383                    if (minCount > 0 && lineItem.quantity < minCount) return false;
6384                    if (maxCount > 0 && lineItem.quantity > maxCount) return false;
6385
6386                    if (minAmount > 0 && lineItem.amount < minAmount) return false;
6387
6388                    return true;
6389                });
6390            applicableDiscount = applicableQuantityBasedDiscount.length > 0 ? getBestDiscount(applicableQuantityBasedDiscount, lineItem, 'discountValue') : null;
6391
6392            if(applicableDiscount){
6393                applicableDiscount =  {
6394                    discountBasedOn: applicableDiscount?.minOrderAmount > 0 && applicableDiscount?.minProductCount === 0 ? "AMOUNT" : "QUANTITY",
6395                    value: applicableDiscount?.minOrderAmount > 0 && applicableDiscount?.minProductCount === 0 ? lineItem?.totalAmount : lineItem?.quantity,
6396                    discount: applicableDiscount?.discountValue,
6397                    discountType: applicableDiscount?.discountType,
6398                    appliesOn: applicableDiscount?.appliesOn
6399                }
6400            }
6401
6402            return applicableDiscount;
6403        }
6404
6405
6406
6407
6408        const collections = _ABConfig?.product?.collections || [];
6409        const discountBundles = [{"id":49484,"shop":"perfectlyposh-2.myshopify.com","name":"Free Shipping","description":null,"status":"ACTIVE","customerIncludeTags":null,"discountType":"NO_DISCOUNT","discountValue":null,"products":"[]","variants":"[]","sequenceNo":null,"bundleType":"SHIPPING_DISCOUNT","settings":"{\"sequentialProductsPerBatch\":50,\"productFilterConfig\":\"{\\\"enabled\\\":false,\\\"filters\\\":[]}\",\"priceSelector\":\"\",\"disableProductDescription\":false,\"includedSubscriptionPlans\":\"\",\"sellingPlanSource\":\"PRODUCT\",\"sellingPlanDisplayType\":\"DROPDOWN\",\"excludeSubscriptionPlans\":\"\",\"disableHighestTierPreference\":false,\"disableCartLineForSelectedBundleItems\":false,\"enableAnnouncementBar\":true,\"showClassicBundleWidgetInChildProduct\":false,\"showPriceWithSubscriptionPrice\":true,\"showComboBundleWidgetInComboProduct\":false,\"updateThemeProductPrice\":false,\"enableVolumeDiscountMixAndMatch\":false,\"hideQuantitySelector\":false,\"enableDedicatedAddToCartButton\":false,\"cardGap\":16,\"showUnitPrice\":false,\"upsellProductSelectionMode\":\"ALL_SELECTED_VARIANTS\",\"showPricesWithoutDecimal\":false,\"topBarFreeShippingMessage\":\"\",\"bundleCheckoutSectionPosition\":\"BELOW\",\"enableOrderDiscountClass\":false,\"bundleProductNameSortOrder\":\"DEFAULT\",\"disableTierRestriction\":true,\"enableTriggerFreeGiftWithoutWidget\":false,\"perRowItem\":\"THREE\",\"showCompareAtPrice\":false,\"borderRadius\":8,\"enableVolumeDiscountTierRestriction\":false,\"enableSequentialProductLoading\":false,\"autofillNotChosenItems\":false,\"showAdditionalNoteInput\":false,\"topBarDiscountRequiredAmountMessage\":\"GET FREE SHIPPING: Add {{currency}}{{amount}} more to unlock FREE Shipping!\",\"disableScrollingToBundle\":false,\"hideOutOfStockVariants\":false,\"compareAtPriceSelector\":\"\",\"showPriceOfChosenProductsOnly\":false,\"disableQuantityRestrictedSection\":false}","bundleProductId":null,"bundleVariantId":null,"productHandle":null,"discountId":null,"price":null,"numberOfProducts":0,"subscriptionBundlingEnabled":false,"subscriptionId":null,"minProductCount":null,"maxProductCount":null,"uniqueRef":"dg432gh5qk","bundleRedirect":"CART","customRedirectURL":null,"minOrderAmount":50.0,"tieredDiscount":null,"productViewStyle":"QUICK_ADD","singleProductSettings":"[]","trackInventory":false,"sellingPlanType":"BUNDLE_LEVEL","clearCart":"ENABLED","minPrice":null,"maxPrice":null,"externalBuildABoxId":null,"variantVisibilityType":"SHOW_VARIANTS_AS_INDIVIDUAL","subTitle":null,"freeShipping":false,"themeType":"THEME_TWO","showBundleInProductPage":true,"combinedWithProductDiscount":true,"combinedWithShippingDiscount":true,"combinedWithOrderDiscount":true,"allowedTags":null,"restrictTags":null,"selectionType":"FLEXIBLE","bundleHtml":"[]","discountedVariants":"[]","allowedCountries":"US","appliesOn":"BOTH","purchaseRequirement":"MINIMUM_AMOUNT","productDiscountType":"EACH_PRODUCT","countrySelectionType":"SELECTED_COUNTRY","discountApplyApproach":"SHOPIFY_DISCOUNT_FUNCTION","discountedProductChooseType":"CHOOSE_ALL","internalName":"Free Shipping","sections":"[]","limitToUsePerCustomer":null,"discountedVariantSelectionLimit":null,"hideOneTimePurchase":false,"hideSubscriptionPurchase":false,"maxOrderAmount":null,"collectionData":null,"excludedProducts":null,"productSelectionType":"PRODUCT","tag":"appstle_bundles","productChooseType":"CHOOSE_ALL","variantSelectionLimit":null,"discountTargetType":"VARIANT","enableSubscription":false,"subscriptionWidgetPosition":"BELOW","subscribeTitle":"Subscribe and Save","subscribeSubtitle":"Delivered Monthly","subscriptionPreselected":false,"getYAppliesOn":"BOTH","announcementBarMessage":null,"automaticDiscountNodeId":null,"recurringCycleLimit":0,"automaticShippingDiscountNodeId":"gid://shopify/DiscountAutomaticNode/17721437
640971892","scheduledBundleRule":false,"bundleActiveFrom":"2026-05-24T05:00:00Z","bundleActiveTo":null,"bundleSubType":null,"discountAppliesOn":"PER_ORDER","layoutType":"LAYOUT_ONE","style":"{\"tierFullPriceColor\":\"\",\"tierFreeGiftTitleFontSize\":13,\"tierUpsellTitleFontSize\":13,\"primaryColor\":\"#000000\",\"tierSubTitleFontSize\":13,\"otherProductsModalFullPriceColor\":\"\",\"primaryDisabledColor\":\"#333333\",\"cardHoverColor\":\"\",\"otherProductsModalPriceColor\":\"\",\"otherProductsModalButtonTextColor\":\"\",\"otherProductsButtonBackgroundColor\":\"\",\"tierPriceFontSize\":20,\"tierUpsellSubTitleFontSize\":12,\"comboProductFullPriceFontSize\":12,\"headingTextColor\":\"#000000\",\"badgesTextColor\":\"\",\"blockTitleFontStyle\":\"BOLD\",\"tierTitleFontSize\":20,\"otherProductsProductTitleColor\":\"\",\"subscriptionTitleTextColor\":\"\",\"subscriptionSubTitleFontSize\":13,\"otherProductsImageSize\":40,\"saveBadgeBackgroundColor\":\"\",\"tierFreeGiftBackgroundColor\":\"\",\"cardGap\":16,\"tierPriceFontStyle\":\"BOLD\",\"otherProductsModalOverlayColor\":\"\",\"tierPriceColor\":\"\",\"tierFreeGiftPriceFontSize\":14,\"otherProductsButtonTextColor\":\"\",\"tierTitleFontStyle\":\"BOLD\",\"ruleUpsellSubTitleFontSize\":13,\"comboProductPriceFontSize\":13,\"tierUnitLabelFontSize\":14,\"blockTitleFontSize\":14,\"otherProductsProductTitleSize\":16,\"productCardBackgroundColor\":\"#ffffff\",\"cardBackgroundColor\":\"\",\"buttonBackgroundColor\":\"#000000\",\"bundlePageBackgroundColor\":\"#FAFAF9\",\"borderRadius\":8,\"tierUpsellBackgroun
6409dColor\":\"\",\"ruleUpsellTitleTextColor\":\"\",\"ruleUpsellSubTitleTextColor\":\"\",\"tierUpsellSubTitleTextColor\":\"\",\"primaryDisabledTextColor\":\"#ffffff\",\"otherProductsModalProductTitleTextSize\":14,\"otherProductsModalProductTitleColor\":\"\",\"fieldDisabledBackgroundColor\":\"#D1D5DB\",\"otherProductsModalImageSize\":80,\"disabledTextColor\":\"#6B7280\",\"comboProductTitleFontStyle\":\"BOLD\",\"primaryHoverColor\":\"#000000\",\"saveBadgeTextColor\":\"\",\"tierUnitLabelFontStyle\":\"REGULAR\",\"cardBorderColor\":\"\",\"ruleUpsellTitleFontSize\":15,\"selectedCardBackgroundColor\":\"\",\"tierFullPriceFontSize\":14,\"comboProductTitleFontSize\":13,\"subscriptionSubTitleTextColor\":\"\",\"selectedCardBorderColor\":\"\",\"comboProductFullPriceFontStyle\":\"REGULAR\",\"tierTitleColor\":\"\",\"tierFullPriceFontStyle\":\"REGULAR\",\"tierSubTitleFontStyle\":\"REGULAR\",\"secondaryTextColor\":\"#ffffff\",\"blockTitleColor\":\"\",\"tierSubTitleColor\":\"\",\"saveBadgeFontSize\":12,\"primaryTextColor\":\"#000000\",\"tierFreeGiftTextColor\":\"\",\"tierFreeGiftTitleFontStyle\":\"BOLD\",\"tierUpsellTitleTextColor\":\"\",\"tierFreeGiftPriceFontStyle\":\"REGULAR\",\"perRowItem\":\"THREE\",\"badgesBackgroundColor\":\"\",\"otherProductsModalHeadingLabelColor\":\"\",\"otherProductsModalButtonBackgroundColor\":\"\",\"dedicatedSubscriptionLayout\":\"LAYOUT_ONE\",\"saveBadgeFontStyle\":\"REGULAR\",\"subscriptionTitleFontSize\":15,\"otherProductsModalProductPriceTextSize\":14,\"comboProductPriceFontStyle\":\"BOLD\"}","labels":"{\"mixAndMatchUpsellBadgeLabel\":\"+ Upsell\",\"oneTimeTitle\":\"One Time Purchase\",\"mixAndMatchAddedItemsLabel\":\"Added items\",\"mixAndMatchNoProductSelectedLabel\":\"No product selected\",\"volumeAmountDiscountQuantityRewardsLabel\":\"Buy {{quantity}} quantity and get {{currency}}{{discount}} discount!\",\"oneTimeSubtitle\":\"No Subscription\",\"mixAndMatchNoProductsAvailableLabel\":\"No products available.\",\"volumeDiscountSaveRewardsLabel\":\"Save {{discount}}{{discount_type}}!\",\"volumeDiscountQuantityRewardsLabel\":\"Buy {{quantity}} quantity and get {{discount}}{{discount_type}} discount!\",\"mixAndMatchGiftBadgeLabel\":\"+ Gift\",\"otherProductsModalSubtitleLabel\":\"\",\"volumeDiscountSpentAmountRewardsLabel\":\"Spend {{currency}}{{spent_amount}} and get {{discount}}{{discount_type}} discount!\",\"mixAndMatchAddButtonLabel\":\"Add\",\"volumeAmountDiscountSpentAmountRewardsLabel\":\"Spend {{currency}}{{spent_amount}} and get {{currency}}{{discount}} discount!\",\"mixAndMatchLockedLabel\":\"Locked\",\"mixAndMatchAddToCartLabel\":\"Add to cart\",\"mixAndMatchUnlockedLabel\":\"Unlocked\",\"mixAndMatchSeeAllLabel\":\"See all\",\"mixAndMatchTierDiscountLabel\":\"{{discount}} OFF\",\"volumeAmountDiscountSaveRewardsLabel\":\"Save {{currency}}{{discount}}!\",\"mixAndMatchTierQuantityLabel\":\"{{discountQuantityLabel}} items\"}","upsells":null,"enableVolumeDiscountUpsell":false,"combos":"[]","progressiveGift":null,"enableProgressiveGifts":false,"discountName":"SPECIAL: Get Free shipping for orders over {order-value} (Normally $70)","shippingDiscountType":"NO_DISCOUNT","inventoryTrackingMode":"ADD_CHILD_PRODUCT_ON_CHECKOUT","defaultVariants":null,"translations":null}];
6410        const customerTags = null;
6411        let customerDiscountUsage = [];
6412        let isLoggedIn = false;
6413
6414        
6415
6416        const filteredDiscountBundles = Array.isArray(discountBundles) && discountBundles.length > 0 && discountBundles?.filter((bundle) => {
6417            if (bundle?.status !== 'ACTIVE' || bundle?.bundleSubType === 'BUY_X_GET_Y') {
6418                return false;
6419            }
6420            if ((bundle?.allowedTags || bundle?.restrictTags || bundle?.limitToUsePerCustomer > 0) && !isLoggedIn) {
6421                return false;
6422            }
6423            if ((bundle?.allowedTags || bundle?.restrictTags) && isLoggedIn && isBundleRestrictedByDiscount(bundle, customerTags)) {
6424                return false;
6425            }
6426            if (bundle?.limitToUsePerCustomer > 0 && isDiscountUsageLimitExceed(customerDiscountUsage, bundle)) {
6427                return false;
6428            }
6429            if (bundle?.appliesOn === "ONE_TIME" && sellingPlanId != null) {
6430                return false;
6431            }
6432            if (bundle?.appliesOn === "SUBSCRIPTION" && sellingPlanId === null) {
6433                return false;
6434            }
6435            try {
6436                const variantsString = bundle?.variants || '[]';
6437                const variants = typeof variantsString === 'string' ? JSON.parse(variantsString) : variantsString;
6438                const bundleCollections = JSON.parse(bundle?.collectionData || '[]');
6439
6440                return (Array.isArray(variants) && variants.some((variant) => variant && parseInt(variant?.variantId) === parseInt(variantId))) ||
6441                    (Array.isArray(bundleCollections) &&
6442                        bundleCollections?.length > 0 &&
6443                        bundleCollections.some(bundleCollection => collections.some(collection => collection?.id === bundleCollection?.id)))
6444            } catch (e) {
6445                console.error('Failed to parse JSON:', e);
6446                return false;
6447            }
6448        }) || [];
6449
6450        const totalAmount =  amount * quantity;
6451        const lineItem = {variantId, quantity, amount, totalAmount };
6452        const volumeDiscountBundles = processBundleRules(filteredDiscountBundles, 'VOLUME_DISCOUNT', ["variants", "tieredDiscount"]);
6453        const discountedPricingBundles = processBundleRules(filteredDiscountBundles, 'DISCOUNTED_PRICING', ["variants"]);
6454
6455        let applicableDiscount = null;
6456        const volumeDiscount = getApplicableTieredDiscount(volumeDiscountBundles, lineItem);
6457        const pricingDiscount = getApplicablePercentOrFixedDiscount(discountedPricingBundles, lineItem);
6458
6459        if (volumeDiscount && pricingDiscount) {
6460            applicableDiscount = getBestDiscount([volumeDiscount, pricingDiscount], lineItem);
6461        } else {
6462            applicableDiscount = volumeDiscount || pricingDiscount;
6463        }
6464
6465        const discountAmount = applicableDiscount?.discountType === "PERCENTAGE" ? (totalAmount *  applicableDiscount?.discount) / 100 : applicableDiscount?.discount;
6466        const discountedPrice = applicableDiscount?.discountType === "PERCENTAGE" ? (totalAmount - discountAmount) : ( totalAmount - applicableDiscount?.discount);
6467
6468        return {
6469            variantId,
6470            quantity,
6471            amount,
6472            totalAmount,
6473            discountType: applicableDiscount?.discountType,
6474            discountValue: applicableDiscount?.discount,
6475            discountAmount,
6476            discountedPrice: !isNaN(discountedPrice) ? discountedPrice : undefined,
6477            discountConfigure: applicableDiscount?.appliesOn
6478        };
6479    };
6480
6481<!-- END app snippet -->
6482        
6483        
6484        
6485        
6486        
6487        
6488        
6489
6490        
6491
6492        
6493
6494        if (_ABConfig?.bundle_setting?.enableGa4CrossDomainTracking === true) {
6495            (function () {
6496                const params = new URLSearchParams(window.location.search);
6497                const gl = params.get('_gl');
6498
6499                if (gl) {
6500                    sessionStorage.setItem('_ab_ga4_gl', gl);
6501                }
6502
6503                const saved = sessionStorage.getItem('_ab_ga4_gl');
6504
6505                document.addEventListener('DOMContentLoaded', function () {
6506                    const links = document.querySelectorAll('a[href*="/apps/bundles/bb/"]');
6507                    links.forEach(function (link) {
6508                        const url = new URL(link.href);
6509                        if (saved) url.searchParams.set('_gl', saved);
6510                        link.href = url.toString();
6511                    });
6512                });
6513            })();
6514        }
6515    </script>
6515
6516
6517    
6518
6519    
6520    
6521
6522    
6523        <link href="//cdn.shopify.com/extensions/01a0f557-e7eb-7f84-a41c-209ef8c20ec8/appstle-bundles-3305/assets/appstle-bundles.min.css" rel="stylesheet" type="text/css" media="all" />
6524        <style>
6525            .ab-bogo-title,
6526            .ab-classic-bundle-description,
6527            .ab-classic-bundle-product-quantity,
6528            .ab-classic-bundle-product-name-quantity,
6529            .ab-classic-bundle-product-link {
6530                color: #000000;
6531            }
6532            .ab-discount-header-banner {
6533                background-color: #000000;
6534                color: #ffffff;
6535            }
6536
6537
6538
6539
6540
6541            #ab-discount-header-banner {
6542    background: #bd365a !important;
6543}
6544        </style>
6545        
6545<script src="https://cdn.shopify.com/extensions/01a0f557-e7eb-7f84-a41c-209ef8c20ec8/appstle-bundles-3305/assets/appstle-bundles-trigger-cart-refresh.min.js" defer></script>
6545
6546        
6547        
6548            
6548<script src="https://cdn.shopify.com/extensions/01a0f557-e7eb-7f84-a41c-209ef8c20ec8/appstle-bundles-3305/assets/appstle-bundles-discount-announcement-bar.min.js" defer></script>
6548
6549        
6550        
6551        
6552        
6553        
6554    
6555
6556
6557
6558</div><div id="shopify-block-AVnROZDByMDdzdWs5Z__7415279170309610466" class="shopify-block shopify-app-block">
6559<script>
6560
6561
6562    
6563   
6564
6565</script>
6565
6566
6567
6568
6569
6570</div>
6570<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
6570
6571</body>
6572</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.