PageSourceSearch

https://madhippie.com/pages/stores

html madhippie.com collected 2026-10-03 21:53:10 UTC 321,568 bytes, 4,391 lines download raw bytes

1<!doctype html>
2  <html class="no-js flexbox-gap" lang="en" dir="ltr">
3    <head>
3<script data-source-attribution="shopify.event_observer.bootstrap">
4(function(){let e=navigator,t=`prototype`,n=`sendBeacon`,r=e[n],i=fetch,a=XMLHttpRequest[t],{open:o,send:s}=a,c=`EventListener`,l=`add${c}`,u=`remove${c}`,d=EventTarget[t],f=d[l],p=d[u],m=e=>Error((e=document.currentScript)&&[e?.src,e?.id||e?.dataset?.sourceAttribution]),h=(e=[],t=0)=>(e.p=n=>e[t++%1e3]=n,[e,t=>(e.forEach(e.p=t),e.length=0)]),[g,_]=h(),[v,y]=h(),b,x=new WeakMap,S=e=>e&&g.p([e,b||[m()]]);d[l]=function(e,t,n){let r=this,i=t?.handleEvent||t,a=x.get(t),o=m();i?.call&&!a&&x.set(t,a=function(e){b=[o,e.type];try{i.call(t==i?this:t,e)}finally{b=null}}),v.p([e,o,a,r?.tagName||r+``,r?.id]),f.call(r,e,a||t,n)},d[u]=function(e,t,n){p.call(this,e,x.get(t)||t,n)},a.open=function(e,t){x.set(this,[t+``,e]),o.apply(this,arguments)},a.send=function(e){S(x.get(this)),s.call(this,e)},fetch=(e,t)=>(S([(e?.url||e)+``,t?.method]),i(e,t)),e[n]=(t,n)=>(S([t+``,``]),r.call(e,t,n)),setTimeout(()=>import("//madhippie.com/cdn/shopifycloud/storefront/assets/storefront/event_observer_reporter-ed358274.js").then(e=>e.$(_,y,f,i,`15035836`)))})();
5//# sourceURL=event-observer-collector.js
6</script>
6
7
8
9
10
11
12
13<script src="/cdn/shopifycloud/consent-tracking-api/v0.1/consent-tracking-api.js"></script>
13
14
15<script type="text/javascript">
16  
17    var Y=Object.defineProperty;var X=(m,g,p)=>g in m?Y(m,g,{enumerable:!0,configurable:!0,writable:!0,value:p}):m[g]=p;var n=(m,g,p)=>X(m,typeof g!="symbol"?g+"":g,p);(function(){"use strict";var m=" daum[ /]| deusu/| yadirectfetcher|(?:^|[^g])news(?!sapphire)|(?<! (?:channel/|google/))google(?!(app|/google| pixel))|(?<! cu)bots?(?:\\b|_)|(?<!(?:lib))http|(?<![hg]m)score|(?<!cam)scan|@[a-z][\\w-]+\\.|\\(\\)|\\.com\\b|\\btime/|\\||^<|^[\\w \\.\\-\\(?:\\):%]+(?:/v?\\d+(?:\\.\\d+)?(?:\\.\\d{1,10})*?)?(?:,|$)|^[^ ]{50,}$|^\\d+\\b|^\\w*search\\b|^\\w+/[\\w\\(\\)]*$|^active|^ad muncher|^amaya|^avsdevicesdk/|^biglotron|^bot|^bw/|^clamav[ /]|^client/|^cobweb/|^custom|^ddg[_-]android|^discourse|^dispatch/\\d|^downcast/|^duckduckgo|^email|^facebook|^getright/|^gozilla/|^hobbit|^hotzonu|^hwcdn/|^igetter/|^jeode/|^jetty/|^jigsaw|^microsoft bits|^movabletype|^mozilla/\\d\\.\\d\\s[\\w\\.-]+$|^mozilla/\\d\\.\\d\\s\\(compatible;?(?:\\s\\w+\\/\\d+\\.\\d+)?\\)$|^navermailapp|^netsurf|^offline|^openai/|^owler|^php|^postman|^python|^rank|^read|^reed|^rest|^rss|^snapchat|^space bison|^svn|^swcd |^taringa|^thumbor/|^track|^w3c|^webbandit/|^webcopier|^wget|^whatsapp|^wordpress|^xenu link sleuth|^yahoo|^yandex|^zdm/\\d|^zoom marketplace/|^{{.*}}$|analyzer|archive|ask jeeves/teoma|audit|bit\\.ly/|bluecoat drtr|browsex|burpcollaborator|capture|catch|check\\b|checker|chrome-lighthouse|chromeframe|classifier|cloudflare|convertify|crawl|cypress/|dareboost|datanyze|dejaclick|detect|dmbrowser|download|evc-batch/|exaleadcloudview|feed|firephp|functionize|gomezagent|grab|headless|httrack|hubspot marketing grader|hydra|ibisbrowser|infrawatch|insight|inspect|iplabel|ips-agent|java(?!;)|library|linkcheck|mail\\.ru/|manager|measure|neustar wpm|node|nutch|offbyone|onetrust|optimize|pageburst|pagespeed|parser|perl|phantomjs|pingdom|powermarks|preview|proxy|ptst[ /]\\d|retriever|rexx;|rigor|rss\\b|scrape|server|sogou|sparkler/|speedcurve|spider|splash|statuscake|supercleaner|synapse|synthetic|tools|torrent|transcoder|url|validator|virtuoso|wappalyzer|webglance|webkit2png|whatcms/|xtate/",g=/bot|crawl|http|lighthouse|scan|search|spider/i,p;function M(){if(p instanceof RegExp)return p;try{p=new RegExp(m,"i")}catch{p=g}return p}function O(c){return!!c&&M().test(c)}/*! js-cookie v3.0.5 | MIT */function _(c){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var i in t)c[i]=t[i]}return c}var U={read:function(c){return c[0]==='"'&&(c=c.slice(1,-1)),c.replace(/(%[\dA-F]{2})+/gi,decodeURIComponent)},write:function(c){return encodeURIComponent(c).replace(/%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,decodeURIComponent)}};function S(c,e){function t(r,a,s){if(!(typeof document>"u")){s=_({},e,s),typeof s.expires=="number"&&(s.expires=new Date(Date.now()+s.expires*864e5)),s.expires&&(s.expires=s.expires.toUTCString()),r=encodeURIComponent(r).replace(/%(2[346B]|5E|60|7C)/g,decodeURIComponent).replace(/[()]/g,escape);var o="";for(var h in s)s[h]&&(o+="; "+h,s[h]!==!0&&(o+="="+s[h].split(";")[0]));return document.cookie=r+"="+c.write(a,r)+o}}function i(r){if(!(typeof document>"u"||arguments.length&&!r)){for(var a=document.cookie?document.cookie.split("; "):[],s={},o=0;o<a.length;o++){var h=a[o].split("="),d=h.slice(1).join("=");try{var f=decodeURIComponent(h[0]);if(s[f]=c.read(d,f),r===f)break}catch{}}return r?s[r]:s}}return Object.create({set:t,get:i,remove:function(r,a){t(r,"",_({},a,{expires:-1}))},withAttributes:function(r){return S(this.converter,_({},this.attributes,r))},withConverter:function(r){return S(_({},this.converter,r),this.attributes)}},{attributes:{value:Object.freeze(e)},converter:{value:Object.freeze(c)}})}var R=S(U,{path:"/"});const F=c=>{const e=window.innerWidth<768||window.outerWidth<768?"mobile":"desktop";return c===e},L=(c,e)=>{const t=!!e,i=String(c)==="true";return t===i},I="shg_geo_data";function B(c,e){const t=c-e;return Math.floor(t/(1e3*60*60*24))}function N(){if(new URLSearchParams(window.location.search).get("shg_geo_cache")==="false")return null;let e=null;try{const t=localStorage.getItem(I);if(t){const i=JSON.parse(t),r=Date.now();i.timestamp&&B(r,i.timestamp)<=7?e=i:localStorage.removeItem(I)}}catch(t){return console.error("Error reading geo data from cache:",t),localStorage.removeItem(I),null}return e}function q(c){let e=null;if(!c)return console.warn("Geo location API URL not configured."),e;try{const t=new XMLHttpRequest;t.open("GET",c,!1),t.send(null),t.status===200?(e=JSON.parse(t.responseText),e?(e.timestamp=Date.now(),localStorage.setItem(I,JSON.stringify(e))):(console.error("Geo API response parsed to null or undefined."),e=null)):console.error(`Geo API request failed with status: ${t.status}`)}catch(t){console.error("Error fetching geo data from API:",t)}return e}function Q(c){let e=null;try{const t=N();t?(e=t,console.debug("Loaded geo data from cache:",e)):(e=q(c),console.debug("Fetched geo data from API:",e))}catch(t){console.error("Error initializing geo data:",t),e=null}return e}const j=(c,e)=>{const{type:t,country_code:i,toponym_name:r,parent_name:a}=c||{},{country:s,region:o,city:h}=e||{};if(!t||!i||!e)return!1;switch(t){case"country":return s===i;case"region":return o===r&&s===i;case"city":return h===r&&o===a&&s===i;default:return console.debug("Unknown location type:",t),!1}},x=c=>typeof c!="string"?!1:document.referrer.toLowerCase().includes(c.toLowerCase()),$=c=>typeof c!="string"?!1:window.location.href.toLowerCase().includes(c.toLowerCase()),G=(c,e,t)=>{if(!e)return!1;const{expectedTimeInMillseconds:i,withinOrAfter:r}=c||{};if(typeof i!="number"||!r)return!1;const a=e.first_visit_timestamp;return r==="within"?a+i>t:a+i<t},K=(c,e,t)=>e?t-e.first_visit_timestamp<18e5===c:c===!0;function H(c,e){return c===e}const y=class y{constructor(e){n(this,"visitorDetails",null);n(this,"currentTime");n(this,"geoLocationApi");n(this,"customerId");n(this,"isB2B");n(this,"internalGeoData");n(this,"isGeoDataInitialized",!1);n(this,"checkers",{device:e=>F(e),logged_in:(e,t)=>L(e,this.customerId),new_visitor:(e,t)=>
17K(e,t.visitorDetails,t.currentTime),returning_visitor:(e,t)=>G(e,t.visitorDetails,t.currentTime),url_contains:e=>$(e),referrer_contains:e=>x(e),location:(e,t)=>j(e,t.geoData),b2b:e=>H(e,this.isB2B)});this.geoLocationApi=e.geoLocationApi,this.customerId=e.customerId,this.isB2B=e.isB2B,this.currentTime=Date.now(),this.initializeVisitorDetails()}initializeVisitorDetails(){var e;try{const t=localStorage.getItem(y.VISITOR_DETAILS_KEY);t&&(this.visitorDetails=JSON.parse(t),typeof((e=this.visitorDetails)==null?void 0:e.first_visit_timestamp)!="number"&&(console.warn("Invalid visitor details found in storage, resetting."),this.visitorDetails=null)),this.visitorDetails===null?(console.debug("Initializing new visitor details."),this.visitorDetails={first_visit_timestamp:this.currentTime},localStorage.setItem(y.VISITOR_DETAILS_KEY,JSON.stringify(this.visitorDetails))):console.debug("Loaded visitor details from storage:",this.visitorDetails)}catch(t){console.error("Error initializing visitor details:",t),localStorage.removeItem(y.VISITOR_DETAILS_KEY),this.visitorDetails={first_visit_timestamp:this.currentTime},localStorage.setItem(y.VISITOR_DETAILS_KEY,JSON.stringify(this.visitorDetails))}}check(e){const t=this.checkers[e.audience_type];
17if(!t)return console.warn(`Unknown audience type: ${e.audience_type}`),!1;e.audience_type==="location"&&(e.value=this.snakeCaseKeys(e.value),this.isGeoDataInitialized||(console.debug("Location check required, initializing geoData..."),this.internalGeoData=Q(this.geoLocationApi),this.isGeoDataInitialized=!0,console.debug("GeoData initialization result:",this.internalGeoData)));const i={geoData:this.internalGeoData===void 0?null:this.internalGeoData,visitorDetails:this.visitorDetails,currentTime:this.currentTime};try{const r=!!t(e.value,i);return console.debug("Audience check result:",{audience:e,internalContext:i,matched:r}),e.condition==="is_not"?!r:r}catch(r){return console.error("Error during audience check:",{audience:e,internalContext:i,error:r}),!1}}snakeCaseKeys(e){if(typeof e!="object")return e;const t={};for(const[i,r]of Object.entries(e)){const a=i.replace(/[A-Z]/g,s=>`_${s.toLowerCase()}`);t[a]=r}return t}};n(y,"VISITOR_DETAILS_KEY","_shg_ab_visitor_details");let P=y;class J{constructor(e,t){n(this,"buyItNowHandlerAttached",!1);n(this,"currentCartVariantId",null);n(this,"storefrontAccessToken");n(this,"shopDomain");n(this,"trackDispatchedSelection",(e,t)=>{const i=e&&e.isFirstAssignment===!1?"cache":t.distribution_method,r={shop_id:t.shop_id,optimization_id:e==null?void 0:e.optimization.id,variant_id:e==null?void 0:e.selectedVariant.id,details:{optimization_ids:t.optimization_ids,distribution_method:i,selection_details:t.selection_details,cache:t.cache,context:t.context,optimization_matches:t.optimization_matches}};this.trackingService.trackDispatch("dispatched",r)});this.trackingService=e,this.storefrontAccessToken=(t==null?void 0:t.storefrontAccessToken)??null,this.shopDomain=(t==null?void 0:t.shopDomain)??null,this.currentCartVariantId=(t==null?void 0:t.currentCartVariantId)??null,typeof document<"u"&&document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>{this.attachPriceTestBuyItNowHandler()}):setTimeout(()=>{this.attachPriceTestBuyItNowHandler()},100)}async createCartAndGetCheckoutUrl(e,t,i){var o,h,d,f,V;if(!this.storefrontAccessToken||!this.shopDomain)return null;const r=`
18      mutation cartCreate($input: CartInput!) {
19        cartCreate(input: $input) {
20          cart {
21            id
22            checkoutUrl
23          }
24          userErrors {
25            field
26            message
27          }
28        }
29      }
30    `,a=i?[{key:"shogun_variant_id",value:i}]:[],s={input:{lines:[{merchandiseId:`gid://shopify/ProductVariant/${e}`,quantity:t}],attributes:a}};try{const k=JSON.stringify({query:r,variables:s}),z=`https://${this.shopDomain}/api/2025-10/graphql.json`;console.debug("shogun: cartCreate request URL:",z),console.debug("shogun: cartCreate request body:",k);const b=await(await fetch(z,{method:"POST",headers:{"Content-Type":"application/json","X-Shopify-Storefront-Access-Token":this.storefrontAccessToken},body:k})).json();return console.debug("shogun: cartCreate full response:",JSON.stringify(b,null,2)),(d=(h=(o=b.data)==null?void 0:o.cartCreate)==null?void 0:h.cart)!=null&&d.checkoutUrl?(console.debug("shogun: cartCreate successful, checkoutUrl:",b.data.cartCreate.cart.checkoutUrl),b.data.cartCreate.cart.checkoutUrl):(console.error("shogun: cartCreate failed:",((V=(f=b.data)==null?void 0:f.cartCreate)==null?void 0:V.userErrors)||b.errors),null)}catch(k){return console.error("shogun: cartCreate error:",k),null}}async addToCartAndCheckout(e,t,i){const r={items:[{id:e,quantity:t}]};i&&(r.attributes={shogun_variant_id:i});try{const a=await fetch("/cart/add.js",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r)});a.ok?(console.debug("shogun: added to cart, redirecting to checkout"),window.location.href="/checkout"):console.error("shogun: cart add failed:",await a.text())}catch(a){console.error("shogun: cart add error:",a)}}attachPriceTestBuyItNowHandler(){if(this.buyItNowHandlerAttached)return;this.buyItNowHandlerAttached=!0;const e=async i=>{const r=new FormData(i);let a=r.get("id")||r.get("variant_id");if(console.debug("shogun: buy-it-now form data:",Object.fromEntries(r.entries())),console.debug("shogun: raw variantId from form:",a),!a){console.debug("shogun: no variant ID found for buy-it-now");return}if(a.includes("gid://")){const h=a.match(/\/(\d+)$/);h&&(a=h[1],console.debug("shogun: extracted numeric ID from GID:",a))}const s=parseInt(r.get("quantity")||"1",10)||1,o=this.currentCartVariantId;if(console.debug("shogun: buy-it-now details:",{variantId:a,quantity:s,cartVariantId:o,storefrontAccessToken:this.storefrontAccessToken?"***":null,shopDomain:this.shopDomain}),this.storefrontAccessToken&&this.shopDomain){console.debug("shogun: attempting cartCreate with merchandiseId:",`gid://shopify/ProductVariant/${a}`);const h=await this.createCartAndGetCheckoutUrl(a,s,o);if(h){console.debug("shogun: redirecting to cartCreate checkoutUrl (original cart preserved)"),window.location.href=h;return}}console.debug("shogun: falling back to cart add with cart variant"),await this.addToCartAndCheckout(a,s,o)};typeof document<"u"&&(()=>{document.addEventListener("click",i=>{const r=i.target;if(!r)return;const a=r.closest('[data-ab-price-test-payment-button="true"]');if(!a||!r.closest('shopify-buy-it-now-button, shopify-accelerated-checkout, [data-shopify="payment-button"]'))return;const o=a.closest("form");o&&(i.preventDefault(),i.stopPropagation(),i.stopImmediatePropagation(),e(o))},{capture:!0})})()}extractViewParamFromFullTemplateKey(e){const t=e.split("/").pop().split(".");return t.slice(1,t.length-1).join(".")}async handleRedirect(e){const t=new URL(window.location.href),i=new URL(window.location.href);if(e.optimization.scope==="theme")i.searchParams.set("preview_theme_id",e.
30selectedVariant.config.theme_id);else if(e.optimization.scope==="url_redirect")i.pathname=e.languageRootUrl!=="/"?e.languageRootUrl+e.selectedVariant.config.path:e.selectedVariant.config.path;else{const r=this.extractViewParamFromFullTemplateKey(e.selectedVariant.config.full_template_key);i.searchParams.set("view",r)}t.toString()===i.toString()?this.hideViewParam():this.redirectWithoutCache(i)}hideViewParam(){const e=new URL(window.location.href);e.searchParams.delete("view"),window.history.replaceState({},"",e.toString())}dispatch(e,t,i){let r=null,a=e.find(s=>s.current())||e[0];if(["price","product_details","checkout"].includes(a.optimization.scope))if(r=a,this.currentCartVariantId=t||a.selectedVariant.id,this.attachPriceTestBuyItNowHandler(),t)console.debug("shogun: price variant already assigned, returning");else{const s=a.selectedVariant.id;console.debug("shogun: assigning price variant");const o=JSON.stringify({attributes:{shogun_variant_id:s}}),h=new XMLHttpRequest;h.open("POST","/cart/update.js",!0),h.setRequestHeader("Content-Type","application/json"),h.onreadystatechange=()=>{if(h.readyState==4&&h.status==200){if(e[0].optimization.scope==="checkout")return;console.debug("shogun: reloading to reflect cart pricing");const d=new URL(window.location.href);this.redirectWithoutCache(d)}},h.send(o)}else{const s=e.find(h=>h.matchingVariant.id!==h.selectedVariant.id);if(console.debug("redirectingSelection",s),s&&(s.optimization.scope!=="url_redirect"||s.isFirstAssignment===!0||s.optimization.config.permanent_redirect===!0))return this.trackDispatchedSelection(s,i),this.handleRedirect(s);const o=new Set(e.map(h=>h.optimization.scope));(o.has("template")||o.has("page"))&&this.hideViewParam(),r=e.find(h=>h.current())||s||null}e.length>0&&!r&&(r=e[0]),(r||e.length>0)&&this.trackDispatchedSelection(r,i),e.filter(s=>s.current()).forEach(s=>{this.trackingService.trackVariantImpression(s.selectedVariant,s.optimization.type)})}redirectWithoutCache(e){typeof e=="string"&&(e=new URL(e)),e.searchParams.delete("cache"),document.referrer!=""&&sessionStorage.setItem(C,document.referrer),console.debug("shogun: redirecting to ",e),window.location.replace(e)}}class v{constructor(e){n(this,"optimization");n(this,"matchingVariant");n(this,"selectedVariant");n(this,"isFirstAssignment");n(this,"languageRootUrl");this.optimization=e.optimization,this.matchingVariant=e.matchingVariant,this.selectedVariant=e.selectedVariant,this.isFirstAssignment=e.isFirstAssignment,this.languageRootUrl=e.languageRootUrl}current(){return this.matchingVariant.id===this.selectedVariant.id}}const w=class w{constructor(){n(this,"ran",!1)}removePreviewBarIframe(){console.debug("Setting up preview bar iframe removal");const e=()=>{w.PREVIEW_BAR_IFRAME_IDS.forEach(t=>{const i=document.getElementById(t);i&&(console.debug(`Removing preview bar iframe with id: ${t}`),i.remove())})};e(),document.addEventListener("DOMContentLoaded",()=>{console.debug("DOM loaded, setting up mutation observer for preview bar");const t=new MutationObserver(i=>{i.forEach(r=>{r.addedNodes.forEach(a=>{if(a.nodeType===Node.ELEMENT_NODE){const s=a;w.PREVIEW_BAR_IFRAME_IDS.includes(s.id)&&(console.debug(`Detected and removing preview bar iframe with id: ${s.id} via observer`),s.remove())}})})});if(document.body)t.observe(document.body,{childList:!0,subtree:!0});else{const i=new MutationObserver(()=>{document.body&&(t.observe(document.body,{childList:!0,subtree:!0}),e(),i.disconnect())});i.observe(document.documentElement,{childList:!0})}e()})}run(){this.ran||(this.removePreviewBarIframe(),this.ran=!0)}};n(w,"PREVIEW_BAR_IFRAME_IDS",["preview-bar-iframe","PBarNextFrameWrapper"]);let T=w;const D="_shg_analytics_queue";class W{enqueue(e){const t={...e,id:crypto.randomUUID(),attempts:0,createdAt:Date.now()},i=this.readQueue();return i[t.category].push(t),this.writeQueue(i),t}all(){const e=this.readQueue();return[...e.shogun_load,...e.dispatcher].sort((t,i)=>t.createdAt-i.createdAt)}update(e){const t=this.readQueue(),i=t[e.category],r=i.findIndex(a=>a.id===e.id);r!==-1&&(i[r]=e,this.writeQueue(t))}remove(e){const t=this.readQueue(),i=t[e.category],r=i.findIndex(a=>a.id===e.id);r!==-1&&(i.splice(r,1),this.writeQueue(t))}findLatest(e){const i=this.readQueue()[e];if(i.length!==0)return i[i.length-1]}readQueue(){const e=localStorage.getItem(D);if(!e)return this.emptyQueue();try{const t=JSON.parse(e);return t.shogun_load||(t.shogun_load=[]),t.dispatcher||(t.dispatcher=[]),t}catch(t){return console.error("shogun: failed to parse analytics queue storage, resetting",t),localStorage.removeItem(D),this.emptyQueue()}}writeQueue(e){try{localStorage.setItem(D,JSON.stringify(e))}catch(t){console.error("shogun: failed to save analytics queue",t)}}emptyQueue(){return{shogun_load:[],dispatcher:[]}}}const u=class u{constructor(e,t,i,r,a,s){n(this,"publishable",!1);n(this,"allowed",null);n(this,"eventQueue",new W);n(this,"processingQueue",!1);n(this,"pendingProcess",!1);n(this,"processTimer",null);n(this,"trackVariantImpression",(e,t)=>{const i={page_type:this.pageType,page_id:this.pageId,app_type:t=="ab_test"?"ab_testing":"personalization",original_referrer:this.originalReferrer};i.optimization_id=e.optimization_id,i.variant_id=e.id,console.debug(`Tracking variant impression: optimization=${e.optimization_id}, variant=${e.id}`),this.enqueueShogunLoadEvent(i)});n(this,"trackPage",()=>{const e={page_type:this.pageType,page_id:this.pageId,app_type:"ab_testing"};this.enqueueShogunLoadEvent(e)});n(this,"trackDispatch",(e,t)=>{this.enqueueEvent({category:"dispatcher",event:e,data:t})});n(this,"enqueueEvent",e=>{console.debug("shogun: enqueueing tracking event",{category:e.category,event:"event"in e?e.event:void 0}),e.category==="shogun_load"&&(!this.publishable||this.allowed!==!0)&&console.debug("shogun: not ready, enqueueing shogun:load event");try{this.eventQueue.enqueue(e),this.scheduleProcessQueue()}catch(t){console.error("shogun: failed to enqueue analytics event",t)}});n(this,"enqueueShogunLoadEvent",e=>{this.enqueueEvent({category:"shogun_load",data:e})});n(this,"waitForPublishable",()=>{var i,r;let e=0;const t=()=>{var a,s;if(typeof((s=(a=window.Shopify)==null?void 0:a.analytics)==null?void 0:s.publish)>"u")if(e<=u.retryAttemptsLimit){setTimeout(t,u.retryIntervalInMs);return}else{console.warn("shogun:ts: Shopify analytics unavailable after 30s"),this.handleError("Error initializing TrackingService: Shopify analytics not available after 30s");return}console.debug("shogun:ts: publishable"),this.publishable=!0,this.scheduleProcessQueue()};(r=(i=window.Shopify)==null?void 0:i.analytics)!=null&&r.publish?(console.debug("shogun:ts: publishable"),this.publishable=!0):(console.debug("shogun:ts: analytics api not available yet, waiting..."),t())});n(this,"waitForConsent",()=>{var i,r;let e=0;const t=()=>{if(typeof window.Shopify>"u"&&e<=u.retryAttemptsLimit){setTimeout(t,u.retryIntervalInMs);return}window.Shopify.loadFeatures([{name:"consent-tracking-api",version:"0.1"}],a=>{var s;if(a&&a.length>0){let o=[];a.forEach(h=>{console.error(h),o.push(h.message)}),this.handleError(`Error initializing TrackingService: ${o.join(", ")}`)}else console.debug("shogun:ts: consent available"),this.handleConsentChange(((s=window.Shopify.customerPrivacy)==null?void 0:s.analyticsProcessingAllowed())??!1)})};(r=(i=window.Shopify)==null?void 0:i.customerPrivacy)!=null&&r.analyticsProcessingAllowed?(console.debug("shogun:ts: consent available"),this.allowed=window.Shopify.customerPrivacy.analyticsProcessingAllowed()):(console.debug("shogun:ts: privacy api not available yet, waiting..."),t())});n(this,"handleConsentChange",e=>{this.allowed=e,console.debug("shogun: analytics consent updated to: ",this.allowed),this.scheduleProcessQueue()});n(this,"scheduleProcessQueue",()=>{if(this.processingQueue){this.pendingProcess=!0;return}this.processingQueue=!0;try{this.processQueue()}catch(e){console.error("shogun: error processing analytics queue",e)}finally{this.processingQueue=!1,this.pendingProcess&&(this.pendingProcess=!1,this.scheduleProcessQueue())}});n(this,"scheduleProcessQueueAfter",e=>{this.processTimer||(this.processTimer=setTimeout(()=>{this.processTimer=null,this.scheduleProcessQueue()},e))});n(this,"handleError",e=>{let t,i;const r=this.eventQueue.findLatest("shogun_load");r&&(t=r.data.optimization_id,i=r.data.variant_id),this.trackDispatchFallback("errored",{shop_id:this.shopI
30d,dispatcher_session_id:this.dispatcherSessionId,optimization_id:t,variant_id:i,details:{error:e}})});n(this,"dispatcherFallbackReady",e=>e.category!=="dispatcher"?!1:Date.now()-e.createdAt>=u.dispatchFallbackDelayInMs);n(this,"trackDispatchFallback",(e,t)=>{console.debug(`shogun: sending dispatch:${e} via fallback`),t.name=e,fetch(`${this.analyticsUrl}/dispatcher/${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),keepalive:!0})});n(this,"prepareFallbackPayload",e=>{const t=this.clonePayload(e);return t.shop_id=t.shop_id||this.shopId,t.dispatcher_session_id=this.dispatcherSessionId,t.details||(t.details={}),t});n(this,"clonePayload",e=>{try{return JSON.parse(JSON.stringify(e))}catch{return e}});this.shopId=e,this.pageType=t,this.pageId=i,this.originalReferrer=r,this.analyticsUrl=a,this.dispatcherSessionId=s,this.waitForPublishable(),this.waitForConsent(),document.addEventListener("visitorConsentCollected",o=>{this.handleConsentChange(o.detail.analyticsAllowed)}),this.scheduleProcessQueue()}processQueue(){console.debug("shogun: processing queue");const e=this.eventQueue.all();let t=!1;for(const i of e){if(this.shouldDropEvent(i)){this.eventQueue.remove(i);continue}if(this.isWithinBackoffWindow(i)){t=!0;continue}if(!this.isEventReady(i)){t=!0;continue}let r="success";try{r=this.deliverEvent(i)}catch(a){console.error("shogun: error delivering analytics event",a),r="retry"}r==="success"||r==="drop"?this.eventQueue.remove(i):(i.attempts+=1,i.lastAttemptedAt=Date.now(),this.eventQueue.update(i),t=!0)}t&&this.scheduleProcessQueueAfter(u.queueRetryDelayInMs)}shouldDropEvent(e){return Date.now()-e.createdAt>u.maxQueueAgeInMs||e.attempts>=u.maxQueueAttempts||e.category==="dispatcher"&&!e.event}isWithinBackoffWindow(e){if(!e.lastAttemptedAt)return!1;const t=u.queueRetryDelayInMs*Math.pow(2,Math.min(e.attempts,u.maxQueueAttempts));return Date.now()-e.lastAttemptedAt<t}isEventReady(e){return e.category==="shogun_load"?this.publishable&&this.allowed===!0:e.category==="dispatcher"?this.allowed===!0&&this.publishable?!0:this.dispatcherFallbackReady(e):!1}deliverEvent(e){return e.category==="shogun_load"?this.deliverShogunLoad(e):this.deliverDispatch(e)}deliverShogunLoad(e){const t=e.data;try{if(console.debug("Firing shogun:load event",t),!window.Shopify.analytics.publish)throw new Error("Shopify analytics publish is not available");return window.Shopify.analytics.publish("shogun:load",t),"success"}catch(i){return console.error("Error publishing shogun:load event:",i),"retry"}}deliverDispatch(e){if(e.category!=="dispatcher"||!e.event)return"drop";if(this.allowed===!0&&this.publishable){const i=`shogun:dispatcher:${e.event}`;try{if(console.debug(`Firing ${i} event`,e.data),!window.Shopify.analytics.publish)throw new Error("Shopify analytics publish is not available");return window.Shopify.analytics.publish(i,e.data),"success"}catch(r){console.error(`Error publishing ${i} event:`,r);const a=this.prepareFallbackPayload(e.data);return a.details||(a.details={}),a.details.error=`Error publishing ${i} event: ${r.message}`,this.trackDispatchFallback(e.event,a),"success"}}if(!this.dispatcherFallbackReady(e))return"retry";const t=this.prepareFallbackPayload(e.data);return this.trackDispatchFallback(e.event,t),"success"}};n(u,"retryIntervalInMs",250),n(u,"retryAttemptsLimit",3e4/u.retryIntervalInMs),n(u,"queueRetryDelayInMs",1e3),n(u,"maxQueueAttempts",5),n(u,"maxQueueAgeInMs",24*60*60*1e3),n(u,"dispatchFallbackDelayInMs",30*1e3);let A=u;const C="_shg_referrer",l=class l{constructor(e){n(this,"shopId");n(this,"optimizations");n(this,"currentThemeId");n(this,"pageId");n(this,"pageType");n(this,"currentPartialTemplateKey");n(this,"distributionMethod");n(this,"cachedOptimizations");n(this,"audienceChecker");n(this,"personalizations");n(this,"abTests");n(this,"dispatcher");n(this,"trackingService");n(this,"currentPath");n(this,"themeTestHandler");n(this,"currentCartVariantId");n(this,"languageRootUrl");n(this,"dispatcherSessionId");n(this,"originalReferrer");n(this,"inAudience",e=>this.audienceChecker.check(e));if(this.originalReferrer=sessionStorage.getItem(C),this.originalReferrer){sessionStorage.removeItem(C),console.debug("shogun: retaining original referrer: ",this.originalReferrer);try{Object.defineProperty(document,"referrer",{get:()=>this.originalReferrer})}catch(s){console.debug("shogun: failed to set original referrer via `Object.defineProperty`"),console.error(s);try{window.document.__defineGetter__("referrer",()=>this.originalReferrer)}catch(o){console.debug("shogun: failed to set original referrer via `__defineGetter__`"),console.error(o)}}}
30this.shopId=e.shopId,this.currentThemeId=e.currentThemeId,this.currentCartVariantId=e.currentCartVariantId;const t=e.optimizations||[];e.defaultThemeId!==this.currentThemeId?this.optimizations=t.filter(s=>s.scope==="price"||s.scope==="product_details"||s.variants.some(o=>o.config.theme_id===this.currentThemeId)):this.optimizations=t,this.personalizations=this.optimizations.filter(s=>s.type==="personalization"),this.abTests=this.optimizations.filter(s=>s.type==="ab_test"),this.distributionMethod=e.distributionMethod||l.DEFAULT_DISTRIBUTION_METHOD,this.pageId=e.pageId,this.pageType=e.pageType,this.languageRootUrl=e.languageRootUrl;const i=this.pageType==="metaobject"?"templates/metaobject/":"templates/",r=[e.templateName,e.templateSuffix].filter(Boolean).join(".");this.currentPartialTemplateKey=i+r,this.currentPath=window.location.pathname,this.cachedOptimizations=JSON.parse(localStorage.getItem(l.OPTIMIZATIONS_CACHE_KEY)||"{}"),this.audienceChecker=new P(e),e.sessionIdOverride?this.dispatcherSessionId=e.sessionIdOverride:(this.dispatcherSessionId=R.get(l.DISPATCHER_SESSION_COOKIE)||crypto.randomUUID(),R.set(l.DISPATCHER_SESSION_COOKIE,this.dispatcherSessionId,{path:"/",expires:1/48})),this.trackingService=new A(this.shopId,this.pageType,this.pageId,this.originalReferrer,e.analyticsUrl,this.dispatcherSessionId);const a=new T;this.themeTestHandler=a,this.dispatcher=new J(this.trackingService,{storefrontAccessToken:e.storefrontAccessToken,shopDomain:e.shopDomain,currentCartVariantId:e.currentCartVariantId})}getOptimizationPriority(e){return{theme:1,template:2,page:3,url_redirect:4,price:5,product_details:6,checkout:7}[e.scope]}sortMatches(e){return[...e].sort((t,i)=>{const r=this.getOptimizationPriority(t.optimization),a=this.getOptimizationPriority(i.optimization);return r===a?0:r-a})}audienceMatchesCurrentVisitor(e){const t=e.audiences||[];return t.length===0?!0:e.audiences_condition==="any"?t.some(this.inAudience):t.every(this.inAudience)}configAudiencesMatch(e,t){const i=e.audiences||[],r=t.audiences||[];if(i.length!==r.length)return!1;const a=i.map(o=>JSON.stringify(o)),s=r.map(o=>JSON.stringify(o));return!(a.some(o=>!s.includes(o))||s.some(o=>!a.includes(o))||i.length>1&&e.audiences_condition!==t.audiences_condition)}getCachedVariant(e){const t=this.cachedOptimizations[e.id];if(t)return e.variants.find(i=>i.id===t)}setCachedVariant(e,t){this.cachedOptimizations[e.id]=t.id,console.debug("setCachedVariant",e.id,t.id),localStorage.setItem(l.OPTIMIZATIONS_CACHE_KEY,JSON.stringify(this.cachedOptimizations))}extractPartialTemplateKeyFromFullTemplateKey(e){if(!e)return;const t=e.split(".");return t.length<2?e:t.slice(0,-1).join(".")}matchesAnyAttributeOfCurrentPage(e,t){const i=this.checkTemplateMatch(t),r=this.checkThemeMatch(e,t),a=this.checkPageMatch(e),s=this.checkPathMatch(t),o=this.checkPriceMatch(e,t),h=this.checkProductDetailsMatch(e,t),d=this.checkCheckoutMatch(e,t);return r||i&&a||s||o||h||d}getMatchingVariant(e,t=void 0){var a;const i=e.config,r=(a=t==null?void 0:t.selectedVariant)==null?void 0:a.config;for(const s of e.variants){if(!this.matchesAnyAttributeOfCurrentPage(e,s))continue;const o=e.type==="ab_test"?e.config:s.config;if(this.audienceMatchesCurrentVisitor(o)&&!(r&&!this.configAudiencesMatch(i,r)))return s}}getPersonalizationMatches(){const e=[];for(const t of this.personalizations){const i=this.getMatchingVariant(t);i&&e.push({optimization:t,matchingVariant:i})}return e}getPrioritizedNonDefaultPersonalizationSelection(){const e=this.getPersonalizationMatches();if(e.length===0)return;const t=this.sortMatches(e);for(const i of t){const a=i.optimization.variants.sort((s,o)=>s.position-o.position).find(s=>!s.config.original&&this.audienceMatchesCurrentVisitor(s.config));if(a)return new v({optimization:i.optimization,matchingVariant:i.matchingVariant,selectedVariant:a,isFirstAssignment:!0,languageRootUrl:this.languageRootUrl})}}getDefaultPersonalizationSelectionsForImpressionTracking(e){return this.getPersonalizationMatches().filter(r=>r.matchingVariant.config.original&&r.optimization.id!==(e==null?void 0:e.optimization.id)).map(r=>new v({optimization:r.optimization,matchingVariant:r.matchingVariant,selectedVariant:r.matchingVariant,isFirstAssignment:!0,languageRootUrl:this.languageRootUrl}))}getRandomVariantForOptimization(e){const t=`${this.dispatcherSessionId}-${e.id}`,r=this.hashWithDjb2(t)%l.DEFAULT_NUMBER_OF_BINS;let a=0;for(const s of e.variants)if(a+=l.DEFAULT_NUMBER_OF_BINS*(s.config.percentage||0)/100,r<a)return s;return e.variants[0]}hasAnyCachedVariants(){return this.abTests.some(e=>!!this.cachedOptimizations[e.id])}getGreedySelections(e){const t=e[Math.floor(Math.random()*e.length)],i=t.cachedVariant||this.getRandomVariantForOptimization(t.optimization);return[new v({optimization:t.optimization,matchingVariant:t.matchingVariant,selectedVariant:i,isFirstAssignment:!t.cachedVariant,languageRootUrl:this.languageRootUrl})]}userBin(){const e=this.dispatcherSessionId;return e?this.hashWithDjb2(e)%l.DEFAULT_NUMBER_OF_BINS:0}hashWithDjb2(e){let t=5381;for(let i=0;i<e.length;i++)t=(t<<5)-t+e.charCodeAt(i),t|=0;return Math.abs(t)}getVariantForUserBin(){const e=this.userBin(),t=this.abTests.flatMap(r=>r.variants);let i=0;for(const r of t)if(i+=l.DEFAULT_NUMBER_OF_BINS*(r.traffic_percentage||0)/100,e<i)return r;return null}getEvenSelections(e){const t=this.getVariantForUserBin();if(!t)return[];const i=e.find(r=>r.optimization.variants.some(a=>a.id===t.id));return i?[new v({optimization:i.optimization,matchingVariant:i.matchingVariant,selectedVariant:t,isFirstAssignment:!i.cachedVariant,languageRootUrl:this.languageRootUrl})]:[]}getAbTestMatches(e){const t=[];
30return this.abTests.forEach(i=>{const r=this.getMatchingVariant(i,e);if(r){const a=this.getCachedVariant(i);(r.config.original||a)&&t.push({optimization:i,matchingVariant:r,cachedVariant:a})}}),t}getAbTestSelections(e){const t=this.getAbTestMatches(e);if(t.length===0)return[];const i=t.find(r=>!!r.cachedVariant);if(!i&&this.hasAnyCachedVariants())return[];if(i)return[new v({optimization:i.optimization,matchingVariant:i.matchingVariant,selectedVariant:i.cachedVariant,isFirstAssignment:!1,languageRootUrl:this.languageRootUrl})];switch(this.distributionMethod){case"greedy":return this.getGreedySelections(t);case"even":return this.getEvenSelections(t);default:throw new Error(`Unknown distribution method: ${this.distributionMethod}`)}}isBot(){const e=navigator.userAgent,t=O(e);return console.debug("Bot testing with user agent:",e),t}handleThemeReview(){const t=new URLSearchParams(location.search).get("shgpvid"),i=sessionStorage.getItem("_shg_preview_variant_id");if(i&&(!t||i==t)){console.debug(`shogun: theme review in progress, viewing variant: ${i}`);const r=document.getElementById("shogun-price-test-preview");if(!r){console.debug("shogun: sidebar not found!!!");return}const a=r.content.cloneNode(!0);document.addEventListener("DOMContentLoaded",()=>{document.body.style.paddingLeft="32rem",document.body.prepend(a)});return}else if(t&&(!i||i!=t)){console.debug(`shogun: theme review in progress, setting variant: ${t}`),sessionStorage.setItem("_shg_preview_variant_id",t);const r=JSON.stringify({attributes:{shogun_variant_id:t}}),a=new XMLHttpRequest;a.open("POST","/cart/update.js",!0),a.setRequestHeader("Content-Type","application/json"),a.onreadystatechange=()=>{a.readyState==4&&a.status==200&&(console.debug("shogun: reloading to reflect cart pricing"),location=location)},a.send(r)}}run(){let e=null,t=this.distributionMethod,i=[];const r=(a,s={})=>{var h,d;const o=a&&a.isFirstAssignment===!1?"cache":t;return{shop_id:this.shopId,optimization_id:(h=a==null?void 0:a.optimization)==null?void 0:h.id,variant_id:(d=a==null?void 0:a.selectedVariant)==null?void 0:d.id,details:{optimization_ids:this.optimizations.map(f=>f.id),distribution_method:o,selection_details:i,...s}}};try{if(this.isBot()){console.debug("Bot traffic detected, optimizer disabled");return}this.handleThemeReview();const a=this.getPrioritizedNonDefaultPersonalizationSelection(),s=this.getAbTestSelections(a),o=[];a&&o.push(a),o.push(...s),o.push(...this.getDefaultPersonalizationSelectionsForImpressionTracking(a)),localStorage.getItem("_shg_is_merchant")||this.themeTestHandler.run(),e=o.find(d=>d.matchingVariant.id===d.selectedVariant.id)||null,e&&!e.isFirstAssignment&&(t="cache"),i=o.map(d=>({optimization_id:d.optimization.id,selected_variant_id:d.selectedVariant.id,matching_variant_id:d.matchingVariant.id}));const h={shop_id:this.shopId,optimization_ids:this.optimizations.map(d=>d.id),selection_details:i,distribution_method:t,cache:{...this.cachedOptimizations},context:{template_key:this.currentPartialTemplateKey,theme_id:this.currentThemeId,page_type:this.pageType,page_id:this.pageId},optimization_matches:this.buildOptimizationMatches(a)};if(s.forEach(d=>{this.setCachedVariant(d.optimization,d.selectedVariant)}),o.length===0){this.abTests.length>0&&(this.trackingService.trackPage(),this.trackingService.trackDispatch("skipped",r(e)));return}this.dispatcher.dispatch(o,this.currentCartVariantId,h)}catch(a){this.trackingService.trackDispatch("errored",r(e,{error:a.message}))}}getCurrentPathWithoutLanguagePrefix(){return this.languageRootUrl==="/"||!this.currentPath.startsWith(this.languageRootUrl)?this.currentPath:this.currentPath.substring(this.languageRootUrl.length)||"/"}checkTemplateMatch(e){return this.extractPartialTemplateKeyFromFullTemplateKey(e.config.full_template_key)===this.currentPartialTemplateKey}checkThemeMatch(e,t){return e.scope==="theme"&&t.config.theme_id===this.currentThemeId}checkPageMatch(e){const{page_type:t,page_id:i}=e.config,r=!t||t===this.pageType,a=!i||i===this.pageId;return e.scope!=="url_redirect"&&r&&a}checkPathMatch(e){const t=e.config.path;if(!t)return!1;const i=this.getCurrentPathWithoutLanguagePrefix();return decodeURIComponent(t)===decodeURIComponent(i)}checkPriceMatch(e,t){return e.scope!=="price"?!1:!this.currentCartVariantId||this.currentCartVariantId===t.id}checkProductDetailsMatch(e,t){return e.scope!=="product_details"?!1:!this.currentCartVariantId||this.currentCartVariantId===t.id}checkCheckoutMatch(e,t){return e.scope!=="checkout"?!1:!this.currentCartVariantId||this.currentCartVariantId===t.id}getDetailedMatchingInfo(e,t,i){const{page_type:r,page_id:a}=e.config,s=!r||r===this.pageType,o=!a||a===this.pageId,h=e.type==="ab_test"?e.config:t.config,d=i?this.configAudiencesMatch(e.config,i.selectedVariant.config):!1;return{matches_template:this.checkTemplateMatch(t),matches_theme:this.checkThemeMatch(e,t),matches_page_type:s,matches_page_id:o,matches_page:this.checkPageMatch(e),matches_path:this.checkPathMatch(t),matches_price:this.checkPriceMatch(e,t),matches_audience:this.audienceMatchesCurrentVisitor(h),matches_personalization_config:d}}buildOptimizationMatches(e){const t={};for(const i of this.optimizations)if(t[i.id]={}
30,i.variants&&Array.isArray(i.variants))for(const r of i.variants)t[i.id][r.id]=this.getDetailedMatchingInfo(i,r,e);return t}};n(l,"DEFAULT_NUMBER_OF_BINS",1e4),n(l,"DEFAULT_DISTRIBUTION_METHOD","greedy"),n(l,"OPTIMIZATIONS_CACHE_KEY","_shg_ab_optimizations_cache"),n(l,"DISPATCHER_SESSION_COOKIE","_shg_dispatcher_session");let E=l;window.ShogunOptimizer=E})();
31
32  
33</script>
33<script type="text/javascript">
34  ;(function() {
35    if (typeof ShogunOptimizer === 'undefined') {
36      console.error("ShogunOptimizer is not defined. Please ensure the optimizer script is properly loaded.");
37      return;
38    }
39
40    const designMode = false;
41    if (designMode) {
42      console.debug("Design mode is enabled, skipping optimizer initialization");
43      return;
44    }
45
46    // If the referrer url is the Shopify admin url, then set a local storage shg_is_merchant flag to true
47    // This is used to remove the preview bar from the page for shoppers
48    const referrer = document.referrer
49    if (!localStorage.getItem('_shg_is_merchant') && ((referrer.includes('admin.shopify.com') || referrer.includes('shogun')))) {
50      console.debug('Setting shg_is_merchant to true')
51      localStorage.setItem('_shg_is_merchant', 'true')
52    }
53
54    const urlParams = new URLSearchParams(window.location.search);
55    const optimizationDisabled = urlParams.get('shg') === "false" || window.location.hostname.includes('shopifypreview');
56
57    if (optimizationDisabled) {
58      console.debug("Optimization is disabled, skipping optimizer initialization");
59      return;
60    }
61
62    const shopMetafieldConfig = {"default_theme_id":147750650016,"method":"greedy","optimizations":[],"expires_at":1770370502000,"env":"production"} || {};
63    const optimizationsData = shopMetafieldConfig.expires_at > Date.now() ? (shopMetafieldConfig.optimizations || []) : [];
64
65    const optimizerConfig = {
66      shopId: "585cb521-5919-40d8-925f-12dd150ecef4",
67      optimizations: optimizationsData,
68      distributionMethod: urlParams.get('shgMethod') || shopMetafieldConfig.method,
69      defaultThemeId: String(shopMetafieldConfig.default_theme_id),
70      currentThemeId: "147750650016",
71      pageId: "236458120",
72      pageType: "page",
73      templateName: "page",
74      templateSuffix: "",
75      customerId: "",
76      isB2B: false,
77      sessionIdOverride: urlParams.get('shgSessionId'),
78      geoLocationApi: "https://ipinfo.io/json?token=f2ae3a557d807b",
79      currentCartVariantId: null,
80      languageRootUrl: "/",
81      analyticsUrl: "https://shogun-abc-production.global.ssl.fastly.net",
82      storefrontAccessToken: null,
83      shopDomain: ""
84    };
85
86    console.debug("Initializing ShogunOptimizer with config:", optimizerConfig);
87    const optimizer = new ShogunOptimizer(optimizerConfig);
88    optimizer.run();
89  })();
90</script>
90
91
92
93
94      
95 
96  <!-- Google tag (gtag.js) — bootstraps GA4 ecom tracking below.
97       AW-1015735328 (Google Ads) intentionally NOT configured here —
98       it fires via the Google & YouTube Shopify app to avoid duplicate measurement. -->
vendor: 66 bytes, lines 98-99
98
99  <script async src="https://www.googletagmanager.com/gtag/js?id=
99G-C3R54PY4XP
vendor: 14 bytes, lines 99-100
99"></script>
100  
100<script>
101    window.dataLayer = window.dataLayer || [];
102    function gtag(){dataLayer.push(arguments);}
103    gtag('js', new Date());
104  </script>
104
105  
106
107<script>
108(function() {
109  'use strict';
110
111  // GA4 property — connected via Shopify Google channel
112  gtag('config', 'G-C3R54PY4XP', { send_page_view: false });
113
114  var cachedCart = null;
115
116  // =========================================================
117  // FETCH INTERCEPTOR (cart cache only)
118  // Caches /cart.js responses for begin_checkout.
119  // add_to_cart removed — Shopify native handles it.
120  // =========================================================
121  var _fetch = window.fetch;
122  window.fetch = function(url) {
123    var urlStr = (typeof url === 'string') ? url : (url && url.url) || '';
124    var args = arguments;
125    var promise = _fetch.apply(this, args);
126
127    try {
128      if (/\/cart\.js(\?|$)/.test(urlStr)) {
129        promise.then(function(res) {
130          if (!res.ok) return;
131          res.clone().json().then(function(cart) {
132            cachedCart = cart;
133          }).catch(function(){});
134        }).catch(function(){});
135      }
136    } catch(e) {}
137
138    return promise;
139  };
140
141  // =========================================================
142  // BEGIN CHECKOUT
143  // Fires when user clicks checkout button or submits checkout form.
144  // Uses cached cart data (updated on every cart fetch) to avoid
145  // async fetch that could lose the race to navigation.
146  // =========================================================
147  function fireBeginCheckout() {
148    var cart = cachedCart;
149    if (!cart || !cart.items || !cart.items.length) return;
150
151    var items = [];
152    for (var i = 0; i < cart.items.length; i++) {
153      var ci = cart.items[i];
154      items.push({
155        item_id: String(ci.product_id),
156        item_name: ci.product_title || '',
157        item_brand: 'Mad Hippie',
158        item_variant: ci.variant_title || undefined,
159        price: (ci.final_price || ci.price || 0) / 100,
160        quantity: ci.quantity || 1
161      });
162    }
163
164    gtag('event', 'begin_checkout', {
165      currency: 'USD',
166      value: (cart.total_price || 0) / 100,
167      items: items
168    });
169  }
170
171  // Capture phase so event fires before navigation
172  document.addEventListener('click', function(e) {
173    var el = e.target.closest(
174      'a[href*="/checkout"], button[name="checkout"], input[name="checkout"], ' +
175      '[data-action="checkout"], .cart--checkout-button'
176    );
177    if (el) fireBeginCheckout();
178  }, true);
179
180  document.addEventListener('submit', function(e) {
181    var action = e.target.action || '';
182    if (action.indexOf('/checkout') > -1) fireBeginCheckout();
183  }, true);
184
185  // =========================================================
186  // INITIAL CART CACHE
187  // Pre-load cart state so begin_checkout has data even if
188  // user goes directly to cart page and clicks checkout.
189  // =========================================================
190  try {
191    _fetch('/cart.js').then(function(res) {
192      if (!res.ok) return;
193      res.json().then(function(cart) {
194        cachedCart = cart;
195      }).catch(function(){});
196    }).catch(function(){});
197  } catch(e) {}
198
199})();
200</script>
200
201
202
203
204
205      <meta charset="UTF-8">
206      <meta http-equiv="X-UA-Compatible" content="IE=edge">
207      <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=5.0"><meta name="description" content="Find our skin care products at a store near you!"><link href="//madhippie.com/cdn/shop/t/190/assets/theme--critical.css?v=183289855503955922831790034617" as="style" rel="preload"><link href="//madhippie.com/cdn/shop/t/190/assets/theme--async.css?v=78488721515109189021790034617" as="style" rel="preload"><link rel="canonical" href="https://madhippie.com/pages/stores" rel="dns-prefetch"><link rel="shortcut icon" href="//madhippie.com/cdn/shop/files/MH-Watercolor-Circle-44-_Cleansing_Oil.png?v=1702485987&width=32" type="image/png">
208        <link rel="apple-touch-icon" href="//madhippie.com/cdn/shop/files/MH-Watercolor-Circle-44-_Cleansing_Oil.png?v=1702485987&width=180"><title>Stores | Mad Hippie | Mad Hippie</title><meta property="og:type" content="website" />
209  <meta property="og:title" content="Stores | Mad Hippie" /><meta property="og:url" content="https://madhippie.com/pages/stores" />
210<meta property="og:site_name" content="Mad Hippie" />
211<meta property="og:description" content="Find our skin care products at a store near you!" /><meta name="twitter:card" content="summary" />
212<meta name="twitter:description" content="Find our skin care products at a store near you!" /><meta name="twitter:title" content="Stores | Mad Hippie" /><meta
213      property="twitter:image"
214      content="https://madhippie.com/cdn/shop/files/Mad_Hippie_Logo_cb87bc33-ed92-4f1d-8344-f631a006524a.png?v=1753908194&width=480"
215    /><style>@font-face {
216  font-family: "DM Sans";
217  font-weight: 400;
218  font-style: normal;
219  font-display: swap;
220  src: url("//madhippie.com/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2") format("woff2"),
221       url("//madhippie.com/cdn/fonts/dm_sans/dmsans_n4.87bdd914d8a61247b911147ae68e754d695c58a6.woff") format("woff");
222}
223@font-face {
224  font-family: "DM Sans";
225  font-weight: 400;
226  font-style: normal;
227  font-display: swap;
228  src: url("//madhippie.com/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2") format("woff2"),
229       url("//madhippie.com/cdn/fonts/dm_sans/dmsans_n4.87bdd914d8a61247b911147ae68e754d695c58a6.woff") format("woff");
230}
231@font-face {
232  font-family: "DM Sans";
233  font-weight: 500;
234  font-style: normal;
235  font-display: swap;
236  src: url("//madhippie.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"),
237       url("//madhippie.com/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff");
238}
239@font-face {
240  font-family: "DM Sans";
241  font-weight: 700;
242  font-style: normal;
243  font-display: swap;
244  src: url("//madhippie.com/cdn/fonts/dm_sans/dmsans_n7.97e21d81502002291ea1de8aefb79170c6946ce5.woff2") format("woff2"),
245       url("//madhippie.com/cdn/fonts/dm_sans/dmsans_n7.af5c214f5116410ca1d53a2090665620e78e2e1b.woff") format("woff");
246}
247@font-face {
248  font-family: "DM Sans";
249  font-weight: 500;
250  font-style: italic;
251  font-display: swap;
252  src: url("//madhippie.com/cdn/fonts/dm_sans/dmsans_i5.8654104650c013677e3def7db9b31bfbaa34e59a.woff2") format("woff2"),
253       url("//madhippie.com/cdn/fonts/dm_sans/dmsans_i5.a0dc844d8a75a4232f255fc600ad5a295572bed9.woff") format("woff");
254}
255@font-face {
256  font-family: "DM Sans";
257  font-weight: 700;
258  font-style: italic;
259  font-display: swap;
260  src: url("//madhippie.com/cdn/fonts/dm_sans/dmsans_i7.52b57f7d7342eb7255084623d98ab83fd96e7f9b.woff2") format("woff2"),
261       url("//madhippie.com/cdn/fonts/dm_sans/dmsans_i7.d5e14ef18a1d4a8ce78a4187580b4eb1759c2eda.woff") format("woff");
262}
263</style><style>
264  :root {
265    --font--featured-heading--size: 30px;
266    --font--section-heading--size: 24px;
267    --font--block-heading--size: 18px;
268    --font--heading--uppercase: normal;
269    --font--paragraph--size: 16px;
270
271    --font--heading--family: "DM Sans", sans-serif;
272    --font--heading--weight: 400;
273    --font--heading--normal-weight: 400;
274    --font--heading--style: normal;
275
276    --font--accent--family: "system_ui", -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', 'Noto Sans', 'Liberation Sans', Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
277    --font--accent--weight: 400;
278    --font--accent--style: normal;
279    --font--accent--size: 13px;
280
281    --font--paragraph--family: "DM Sans", sans-serif;
282    --font--paragraph--weight: 500;
283    --font--paragraph--style: normal;
284    --font--bolder-paragraph--weight: 700;
285  }
286</style><style>
287  :root {
288    --color--accent-1: #eaf9ff;
289    --color--accent-1-translucent: rgba(234, 249, 255, 0.85);
290    --color--accent-2: #ffffff;
291    --color--accent-2-translucent: rgba(255, 255, 255, 0.85);
292    --bg-color--light: #ffffff;
293    --bg-color--light-translucent: rgba(255, 255, 255, 0.85);
294    --bg-color--cream: #ffffff;
295    --bg-color--dark: #222222;
296    --bg-color--dark-translucent: rgba(34, 34, 34, 0.85);
297    --bg-color--body: #ffffff;
298    --bg-color--body-translucent: rgba(255, 255, 255, 0.85);
299    --color--body: #212121;
300    --color--body--light: #515151;
301    --color--alternative: #ffffff;
302    --color--button: #212121;
303    --bg-color--button: #f68566;
304    --bg-color--button--hover: #f68566;
305    --bg-color--textbox: #fff;
306    --bg-color--panel: #f7f7f7;
307    --bdr-color--button: #212121;
308    --bdr-color--general: #eaeaea;
309    --bdr-color--badge: rgba(33, 33, 33, 0.07);
310
311    --color--border-disabled: #d2d2d2;
312    --color--button-disabled: #b9b9b9;
313    --color--success: #4caf50;
314    --color--fail: #d32f2f;
315    --color--stars: black;
316    --color--stars--bundle: #B06400; 
317
318    /* shop pay */
319    --payment-terms-background-color: #ffffff;
320
321    /* js helpers */
322    --sticky-offset: 0px;
323  }
324</style><style></style>
324<script defer="defer">
325  var theme = theme || {};
326  theme.libraries = theme.libraries || {};
327  theme.local_storage = theme.local_storage || {};
328  theme.settings = theme.settings || {};
329  theme.scripts = theme.scripts || {};
330  theme.styles = theme.styles || {};
331  theme.swatches = theme.swatches || {};
332  theme.translations = theme.translations || {};
333  theme.urls = theme.urls || {};
334
335  theme.libraries.masonry = '//madhippie.com/cdn/shop/t/190/assets/masonry.min.js?v=153413113355937702121790034617';
336  theme.libraries.swipe = '//madhippie.com/cdn/shop/t/190/assets/swipe-listener.min.js?v=123039615894270182531790034617';
337  theme.libraries.plyr = '/cdn/shopifycloud/plyr/v2.0/shopify-plyr';
338  theme.libraries.vimeo = 'player.vimeo.com/api/player.js';
339  theme.libraries.youtube = 'youtube.com/iframe_api';
340
341  theme.local_storage.age_verification = 'beyondTheme:ageVerified';
342  theme.local_storage.collection_layout = 'beyondTheme:collectionLayout';
343  theme.local_storage.recent_products = 'beyondTheme:recentlyViewed';
344  theme.local_storage.search_layout = 'beyondTheme:searchLayout';
345
346  theme.settings.cart_type = 'drawer';
347  theme.settings.money_format = "${{amount}}";
348  theme.settings.transitions = 'true' === 'false';
349
350  theme.translations.add_to_cart = 'Add to Cart';
351  theme.translations.mailing_list_success_message = 'Thanks for signing up!';
352  theme.translations.out_of_stock = 'Out of stock';
353  theme.translations.unavailable = 'Unavailable';
354  theme.translations.url_copied = 'Link copied to clipboard';
355  theme.translations.low_in_stock = {
356    one: 'Only 1 item left',
357    other: 'Only 2 items left'
358  };
359
360  theme.urls.all_products_collection = '/collections/all';
361  theme.urls.cart = '/cart';
362  theme.urls.cart_add = '/cart/add';
363  theme.urls.cart_change = '/cart/change';
364  theme.urls.cart_update = '/cart/update';
365  theme.urls.product_recommendations = '/recommendations/products';
366  theme.urls.predictive_search = '/search/suggest';
367  theme.urls.search = '/search';
368
369  
370    theme.urls.root = '';
371  
372
373          theme.swatches['yellow-green'] = '#9acd32';
374        
375
376          theme.swatches['red'] = 'rgb(139,0,0)';
377        
378
379          theme.swatches['orange'] = 'orange.PNG';
380        
381
382          theme.swatches['stealth-grey'] = '//madhippie.com/cdn/shop/files/stealth-grey_100x.jpg?v=49655';
383        
384</script>
384
385
386
387<script defer="defer">
388  String.prototype.handleize = function () {
389    const char_map = {
390      á: "a", é: "e", í: "i", ó: "o", ú: "u", ñ: "n", ü: "u", à: "a", è: "e", ì: "i", ò: "o", ù: "u",
391      â: "a", ê: "e", î: "i", ô: "o", û: "u", ö: "o", ä: "a", ß: "ss", ç: "c", è: "e", é: "e", ê: "e",
392      ë: "e", î: "i", ï: "i", ô: "o", œ: "oe", ù: "u", û: "u", ü: "u"
393    };
394    // we need to convert non-english chars to english counterparts to match Liquid's 'handelize' filter
395    const regex = new RegExp(Object.keys(char_map).join("|"), 'g');
396
397    return this.toLowerCase()
398      .replace(regex, (match) => (char_map[match] ? char_map[match] : match))
399      .replace(/[^a-z0-9]+/g, '-')
400      .replace(/-+/g, '-')
401      .replace(/^-|-$/g, '');
402  };
403
404  // Element extended methods
405  Element.prototype.trigger = window.trigger = function(event, data = null) {
406    const event_obj = data == null ? new Event(event) : new CustomEvent(event, { detail: data });
407    this.dispatchEvent(event_obj);
408  };
409
410  Element.prototype.on = document.on = window.on = function(events, callback, options) {
411    // save the namespaces on the element itself
412    if (!this.namespaces) this.namespaces = {};
413
414    events.split(' ').forEach(event => {
415      this.namespaces[event] = callback;
416      this.addEventListener(event.split('.')[0], callback, options);
417    });
418    return this;
419  };
420
421  Element.prototype.off = window.off = function(events) {
422    if (!this.namespaces) return;
423
424    events.split(' ').forEach(event => {
425      this.removeEventListener(event.split('.')[0], this.namespaces[event]);
426      delete this.namespaces[event];
427    });
428    return this;
429  };
430
431  Element.prototype.index = function() {
432    return [...this.parentNode.children].indexOf(this);
433  };
434
435  Element.prototype.offset = function() {
436    const rect = this.getBoundingClientRect();
437
438    return {
439      top: rect.top + window.scrollY,
440      left: rect.left + window.pageXOffset
441    };
442  };
443
444  Element.prototype.setStyles = function(styles = {}) {
445    for (const property in styles) this.style[property] = styles[property];
446    return this;
447  }
448
449  Element.prototype.remove = function() {
450    return this.parentNode.removeChild(this);
451  };
452
453  // NodeList & Array extended methods
454  NodeList.prototype.on = Array.prototype.on = function(events, callback, options) {
455    this.forEach(element => {
456      // save the namespaces on the element itself
457      if (!element.namespaces) element.namespaces = {};
458
459      events.split(' ').forEach(event => {
460        element.namespaces[event] = callback;
461        element.addEventListener(event.split('.')[0], callback, options);
462      });
463    });
464  };
465
466  NodeList.prototype.off = Array.prototype.off = function(events) {
467    this.forEach(element => {
468      if (!element.namespaces) return;
469
470      events.split(' ').forEach(event => {
471        element.removeEventListener(event.split('.')[0], element.namespaces[event]);
472        delete element.namespaces[event];
473      });
474    });
475  };
476
477  NodeList.prototype.not = Array.prototype.not = function(arr_like_obj) {
478    // this always returns an Array
479    const new_array_of_elements = [];
480    if (arr_like_obj instanceof HTMLElement) arr_like_obj = [arr_like_obj];
481
482    this.forEach(element => {
483      if (![...arr_like_obj].includes(element)) new_array_of_elements.push(element);
484    });
485
486    return new_array_of_elements;
487  };
488
489  // this global method is necessary for the youtube API, we can't use our own callback in this case
490  // https://developers.google.com/youtube/iframe_api_reference#Requirements
491  function onYouTubeIframeAPIReady() {
492    window.trigger('theme:youtube:apiReady');
493  }
494
495  // Utility methods
496  theme.utils = new class Utilities {
497    constructor() {
498      this.isTouchDevice = window.matchMedia('(pointer: coarse)').matches;}
499
500    isValidEmail(email) {
501      const email_pattern = /^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i;
502      return email_pattern.test(email);
503    }
504
505    formatMoney(raw_amount) {
506      const num_decimals = theme.settings.money_format.includes('no_decimals') ? 0 : 2;
507      const locale = theme.settings.money_format.includes('comma') ? 'de-DE' : 'en-US';
508
509      const formatter = Intl.NumberFormat(locale, {
510        minimumFractionDigits: num_decimals,
511        maximumFractionDigits: num_decimals
512      });
513
514      const formatted_amount = formatter.format(raw_amount / 100);
515      
516      return theme.settings.money_format.replace(/\{\{\s*(\w+)\s*\}\}/, formatted_amount);
517    }
518
519    getHiddenDimensions(element, strip_components = []) {
520      const cloned_el = this.parseHtml(element.outerHTML, null, strip_components);
521      cloned_el.setStyles({
522        display: 'block',
523        position: 'absolute',
524        padding: element.style.padding,
525        visibility: 'hidden',
526      })
527
528      element.parentNode ? element.parentNode.appendChild(cloned_el) : document.body.appendChild(cloned_el);
529      const { offsetHeight: height, offsetWidth: width } = cloned_el;
530      cloned_el.remove();
531      return { height, width };
532    }
533
534    libraryLoader(name, url, callback) {
535      if (theme.scripts[name] === undefined) {
536        theme.scripts[name] = 'requested';
537        const script = document.createElement('script');
538        script.src = url;
539        script.onload = () => {
540          theme.scripts[name] = 'loaded';
541          callback && callback();
542          window.trigger(`theme:${name}:loaded`);
543        };
544        document.body ? document.body.appendChild(script) : document.head.appendChild(script);
545      } else if (callback && theme.scripts[name] === 'requested') {
546        window.on(`theme:${name}:loaded`, callback);
547      } else if (callback && theme.scripts[name] === 'loaded') callback();
548    }
549
550    parseHtml(html_string, selector, strip_components = []) {
551      strip_components.forEach(component => { // remove web components so they don't init
552        const regex = new RegExp(component, 'g');
553        html_string = html_string.replace(regex, 'div')
554      });
555
556      const container = document.createElement('div');
557      container.innerHTML = html_string;
558      return selector ? container.querySelector(selector) : container.querySelector(':scope > *');
559    }
560
561    setSwatchColors(inputs = false) {
562      if (!inputs) return
563
564      inputs.forEach(input => {
565        const swatch = input.nextElementSibling;
566        const swatch_color = input.value.handleize();
567
568        if (theme.swatches[swatch_color] === undefined) {
569          swatch.style['background-color'] = swatch_color;
570        } else if (CSS.supports('color', theme.swatches[swatch_color])) {
571          swatch.style['background-color'] = theme.swatches[swatch_color];
572        } else {
573          swatch.style['background-image'] = `url(${theme.swatches[swatch_color]})`;
574        }
575      });
576    }
577
578    stylesheetLoader(name, url, callback) {
579      if (theme.styles[name] === undefined) {
580        theme.styles[name] = 'requested';
581        const stylesheet = document.createElement('link');
582        stylesheet.rel = 'stylesheet';
583        stylesheet.href = url;
584        stylesheet.onload = () => {
585          theme.styles[name] = 'loaded';
586          callback && callback();
587          window.trigger(`theme:${name}Styles:loaded`);
588        }
589        document.body ? document.body.appendChild(stylesheet) : document.head.appendChild(stylesheet);
590      } else if (callback && theme.styles[name] === 'requested') {
591        window.on(`theme:${name}Styles:loaded`, callback);
592      } else if (callback && theme.styles[name] === 'loaded') callback();
593    }
594
595    getQuantity(product_id, { id, management, policy, quantity }, requested_quantity) {
596      // if inventory isn't tracked we can add items indefinitely
597      if (management !== 'shopify' || policy === 'continue') return requested_quantity;
598
599      const cart_quantity = theme.cart.basket[id] ? theme.cart.basket[id] : 0;
600      let quantity_remaining = parseInt(quantity) - cart_quantity;
601
602      if (quantity_remaining <= 0) {
603        quantity_remaining = 0;
604        window.trigger(`theme:product:${product_id}:updateQuantity`, 1);
605      } else if (requested_quantity > quantity_remaining) {
606        window.trigger(`theme:product:${product_id}:updateQuantity`, quantity_remaining);
607      } else return requested_quantity;
608
609      theme.feedback.trigger('quantity', quantity_remaining);
610      return false;
611    }
612
613    updateRecentProducts(handle) {
614      const current_product_arr = [handle];
615      const previous_product_str = localStorage.getItem(theme.local_storage.recent_products);
616      const max_num_recents_stored = 4;
617      let previous_product_arr, current_product_str, newly_visited_product = false;
618
619      // first check if we have existing data or not
620      if (previous_product_str) {
621        previous_product_arr = JSON.parse(previous_product_str);
622
623        if (previous_product_arr.indexOf(handle) === -1) newly_visited_product = true;
624      } else {
625        // localStorage accepts strings only, so we'll convert to string and set
626        current_product_str = JSON.stringify(current_product_arr);
627        localStorage.setItem(theme.local_storage.recent_products, current_product_str);
628      }
629      if (newly_visited_product) {
630        if (previous_product_arr.length === max_num_recents_stored)
631          previous_product_arr = previous_product_arr.slice(1);
632
633        current_product_str = JSON.stringify(previous_product_arr.concat(current_product_arr));
634        localStorage.setItem(theme.local_storage.recent_products, current_product_str);
635      }
636    }
637  }
638</script>
vendor: 1 bytes, line 638
638
639<script type="module" defer="defer">
640  import "//madhippie.com/cdn/shop/t/190/assets/a11y.js?v=88460550814538636921790034617";
641  import "//madhippie.com/cdn/shop/t/190/assets/media-queries.js?v=71639634187374033171790034617";
642  import "//madhippie.com/cdn/shop/t/190/assets/radios.js?v=95698407015915903831790034617";
643  import "//madhippie.com/cdn/shop/t/190/assets/transitions.js?v=160551515380760614921790034617";
644  import "//madhippie.com/cdn/shop/t/190/assets/general.js?v=144083206377805666131790034617";
645  import "//madhippie.com/cdn/shop/t/190/assets/tab-order.js?v=32202179289059533031790034617";
646  import "//madhippie.com/cdn/shop/t/190/assets/collapsible-row.js?v=100618055053173039611790034617";
647  import "//madhippie.com/cdn/shop/t/190/assets/placeholder.js?v=9426227501006968881790034617";
648  import "//madhippie.com/cdn/shop/t/190/assets/disclosure.js?v=150954186219758191661790034617";
649  import "//madhippie.com/cdn/shop/t/190/assets/quantity-selector.js?v=129937398248354481681790034617";
650  import "//madhippie.com/cdn/shop/t/190/assets/feedback-bar.js?v=41068180466968126491790034617";
651  import "//madhippie.com/cdn/shop/t/190/assets/modal.js?v=34505000701165224281790034617";import "//madhippie.com/cdn/shop/t/190/assets/y-menu.js?v=105207714253058857401790034617";
652    import "//madhippie.com/cdn/shop/t/190/assets/drawer.js?v=82951047663087684911790034617";
653    import "//madhippie.com/cdn/shop/t/190/assets/header.js?v=135871133677133542451790034617";
654    import "//madhippie.com/cdn/shop/t/190/assets/cart.js?v=75442524199986842621790034617";
655    import "//madhippie.com/cdn/shop/t/190/assets/x-menu.js?v=160269860071682030911790034617";import "//madhippie.com/cdn/shop/t/190/assets/quick-add.js?v=8171462438333045641790034617";
656      import "//madhippie.com/cdn/shop/t/190/assets/product-buy-buttons.js?v=145238618526072675201790034617";import "//madhippie.com/cdn/shop/t/190/assets/product-media--variants.js?v=19431236665372190101790034617";
657    import "//madhippie.com/cdn/shop/t/190/assets/product-price.js?v=158189426169192202801790034617";
658    import "//madhippie.com/cdn/shop/t/190/assets/product-options.js?v=93435881930355150891790034617";</script>
658<link href="//madhippie.com/cdn/shop/t/190/assets/theme--critical.css?v=183289855503955922831790034617" rel="stylesheet" media="all" rel="dns-prefetch">
659      <link
660        href="//madhippie.com/cdn/shop/t/190/assets/theme--async.css?v=78488721515109189021790034617"
661        rel="stylesheet"
662        media="print"
663        onload="this.media='all'"
664        rel="dns-prefetch"
665      >
666  
667      <noscript>
668        <style>
669          .layout--template > *,
670          .layout--footer-group > *,
671          .modal--root,
672          .modal--window {
673            opacity: 1;
674          }
675        </style>
676        <link href="//madhippie.com/cdn/shop/t/190/assets/theme--async.css?v=78488721515109189021790034617" rel="stylesheet">
677      </noscript>
678  <style>
679    /* PP Mori variable font (wght 100-800), served from Shopify Files
680       (Content > Files > PPMori-Variable.woff2) via file_url.
681       Declared under all three family names used across sections:
682       'PP Mori', 'PPMori', and 'pp-mori'. */
683    @font-face {
684      font-family: 'PP Mori';
685      src: url('//madhippie.com/cdn/shop/files/PPMori-Variable.woff2?v=16603348809566422624') format('woff2');
686      font-weight: 100 800;
687      font-style: normal;
688      font-display: swap;
689    }
690    @font-face {
691      font-family: 'PPMori';
692      src: url('//madhippie.com/cdn/shop/files/PPMori-Variable.woff2?v=16603348809566422624') format('woff2');
693      font-weight: 100 800;
694      font-style: normal;
695      font-display: swap;
696    }
697    @font-face {
698      font-family: 'pp-mori';
699      src: url('//madhippie.com/cdn/shop/files/PPMori-Variable.woff2?v=16603348809566422624') format('woff2');
700      font-weight: 100 800;
701      font-style: normal;
702      font-display: swap;
703    }
704
705    /* ── PDP TYPE SYSTEM ────────────────────────────────────────────────
706       CANONICAL SPEC:  ~/master/channels/shopify/design-system.md
707       VISUAL SPEC:     ~/master/madhippie-theme/vitc-type-system.html
708       Read the spec before changing anything here. It explains WHY.
709
710       One family. Every weight has exactly one job. Uppercase is allowed
711       in exactly three places: eyebrows, icon labels, and the CTA.
712
713         300  display + h2 — every section heading is light
714         400  body, lead, small
715         500  quiet UI — micro labels, CTA price
716         600  h3, card titles, subheads
717         700  the loud weight — product title (h1), eyebrows, icon labels, stats
718         800  CTA action ONLY — locked to that one component
719
720       The h1/h2 split is deliberate: the product name is bold, every section
721       heading below it is light. Hierarchy comes from that contrast.
722
723       NOTE: theme-level custom_css sets `h1..h6 { font-weight:600 !important }`
724       (config/settings_data.json → platform_customizations). Any rule below
725       that targets a real h1-h6 tag must carry !important to survive it.
726       ------------------------------------------------------------------ */
727    :root {
728      --mh-font: 'PP Mori', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
729
730      /* Text scale */
731      --t-h1-size: clamp(30px, 3.2vw, 40px);  --t-h1-w: 700;    --t-h1-ls: -0.01em;   --t-h1-lh: 1.15;
732      --t-h2-size: clamp(26px, 2.6vw, 34px);  --t-h2-w: 300;    --t-h2-ls: -0.015em;  --t-h2-lh: 1.1;
733      --t-h3-size: 19px;                      --t-h3-w: 600;    --t-h3-ls: -0.01em;   --t-h3-lh: 1.25;
734      --t-lead-size: 17px;                    --t-lead-w: 400;  --t-lead-ls: 0;       --t-lead-lh: 1.5;
735      --t-body-size: 15px;                    --t-body-w: 400;  --t-body-ls: 0;       --t-body-lh: 1.6;
736      --t-small-size: 13px;                   --t-small-w: 400; --t-small-ls: 0;      --t-small-lh: 1.5;
737      --t-micro-size: 12px;                   --t-micro-w: 500; --t-micro-ls: 0.01em; --t-micro-lh: 1.4;
738
739      /* The quiet line under a headline: citations, sources, qualifiers, feature
740         asides. It must RECEDE — never compete with the content it supports. It has
741         its own role because the alternative was --t-label, which is built to shout
742         (caps + 700 + tracking) and made every citation out-weigh the claims below it. */
743      --t-footnote-size: 12px;                --t-footnote-w: 400; --t-footnote-ls: 0; --t-footnote-lh: 1.45;
744
745      /* Uppercase — the only sanctioned caps. Never typed into content. */
746      --t-eyebrow-size: 11px;  --t-eyebrow-w: 700;  --t-eyebrow-ls: 0.14em;  /* section kickers */
747      --t-label-size: 11px;    --t-label-w: 700;    --t-label-ls: 0.08em;    /* icon + badge labels */
748      --t-cta-size: 0.8125rem; --t-cta-w: 800;      --t-cta-ls: 0.1em;       /* CTA action */
749      --t-cta-price-size: 0.78rem; --t-cta-price-w: 500; --t-cta-price-ls: 0.02em; /* quieter sibling */
750
751      /* Numerals */
752      --t-stat-size: 30px;                    --t-stat-w: 700;
752  --t-stat-ls: -0.02em;
753      --t-display-size: clamp(44px, 5vw, 64px); --t-display-w: 300; --t-display-ls: -0.02em;
754
755      /* ── RADIUS ───────────────────────────────────────────────────────
756         Two families, and the split is the whole idea:
757
758           MEDIA is a window.   Tight corners. Led by the hero image.
759           SURFACES are objects. Round corners. Cards, panels, bands.
760
761         A photo with soft corners reads as a sticker; a card with hard
762         corners reads as a table cell. Keeping them apart is what makes
763         both look intentional.
764
765           --r-media   hero image, gallery slides, product photos, video
766           --r-card    cards, panels, bands, notes, badges, drawers
767           --r-cta     the CTA action + floating CTA. Nothing else.
768           --r-pill    fully-rounded pills (skin-type chips, conservation tags)
769           --r-circle  coins, rings, icon wells
770
771         Pills and circles are SHAPES, not corners — they're not part of the
772         scale and must not scale with it.
773         ---------------------------------------------------------------- */
774      --r-media: 0.3125rem;  /* 5px  — the hero image radius. Media stays crisp. */
775      --r-card: 0.75rem;     /* 12px — surfaces are objects, so they're round. */
776      --r-cta: 0.875rem;     /* 14px — a touch wider than a card, so the thing
777                                       you're meant to press reads as pressable. */
778      --r-pill: 999px;
779      --r-circle: 50%;
780    }
781  </style>
782  <link rel="preload" href="//madhippie.com/cdn/shop/files/PPMori-Variable.woff2?v=16603348809566422624" as="font" type="font/woff2" crossorigin>
783      
783<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
783<meta name="google-site-verification" content="aQq7n-9bsZS6XktZ2LjdwbPTt1bq9Ov8j3b_LECi5Hg">
784<meta name="google-site-verification" content="ujOfHUkav1NtU9tnnGcNJVp31_7QuCZuRFXWwjzq2nk">
785<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/15035836/digital_wallets/dialog">
786<meta id="in-context-paypal-metadata" data-shop-id="15035836" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
787<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
787<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=3548577952"></script>
787
788<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
789<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=3548577952&shop_id=15035836" crossorigin="anonymous"></script>
vendor: 1 bytes, line 789
789
790<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":15035836,"countryCode":"US","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/15035836","merchantName":"Mad Hippie","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","discover","elo","jcb"],"total":{"type":"pending","label":"Mad Hippie","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 790
790
791<script id="shopify-features" type="application/json">{"accessToken":"8138d588026b06d6335ee0e79a4ad3d7","betas":["rich-media-storefront-analytics"],"domain":"madhippie.com","predictiveSearch":true,"shopId":15035836,"locale":"en"}</script>
vendor: 1 bytes, line 791
791
792<script>var Shopify = Shopify || {};
793Shopify.shop = "mad-hippie.myshopify.com";
794Shopify.locale = "en";
795Shopify.currency = {"active":"USD","rate":"1.0"};
796Shopify.country = "US";
797Shopify.theme = {"name":"mh_2026_1.5.1","id":199773487264,"schema_name":"Beyond","schema_version":"3.3.1","theme_store_id":null,"role":"main"};
798Shopify.theme.handle = "null";
799Shopify.theme.style = {"id":null,"handle":null};
800Shopify.cdnHost = "madhippie.com/cdn";
801Shopify.routes = Shopify.routes || {};
802Shopify.routes.root = "/";
803Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
804Shopify.SignInWithShop = Shopify.SignInWithShop || {};
805Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
806Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 806
806
807<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 807
807
808<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 808
808
809<script>
810  window.ShopifyPay = window.ShopifyPay || {};
811  window.ShopifyPay.apiHost = "shop.app\/pay";
812  window.ShopifyPay.redirectState = null;
813</script>
vendor: 1 bytes, line 813
813
814<script>
815  window.Shopify = window.Shopify || {};
816  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
817  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
818  window.Shopify.SignInWithShop.eligible = true;
819</script>
vendor: 1 bytes, line 819
819
820<script id="shop-js-analytics" type="application/json">{"pageType":"page"}</script>
vendor: 1 bytes, line 820
820
821<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 821
821
822<script type="module">
823  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
824
825  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
826
827</script>
vendor: 1 bytes, line 827
827
828<script>
829  window.Shopify = window.Shopify || {};
830  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
831  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"]};
832</script>
vendor: 1 bytes, line 832
832
833<script>(function() {
834  var isLoaded = false;
835  function asyncLoad() {
836    if (isLoaded) return;
837    isLoaded = true;
838    var urls = ["https:\/\/pc-quiz.s3.us-east-2.amazonaws.com\/current\/quiz-loader.min.js?shop=mad-hippie.myshopify.com","https:\/\/embed.closeby.co\/v1.js?closeby.mapKey=3b1f8591980f81aa79c2d2066470b9f8\u0026shop=mad-hippie.myshopify.com","\/\/cdn.shopify.com\/proxy\/c420e497da9c9aa47079bf10a9e77164cc1e38b25d95ddc917f9a063c2391d53\/faqs-plus.herokuapp.com\/public\/script-tags\/ef-faq-plus-script.min.js?shop=mad-hippie.myshopify.com\u0026sp-cache-control=cHVibGljLCBtYXgtYWdlPTkwMA","https:\/\/d10lpsik1i8c69.cloudfront.net\/w.js?shop=mad-hippie.myshopify.com","https:\/\/gdprcdn.b-cdn.net\/js\/gdpr_cookie_consent.min.js?shop=mad-hippie.myshopify.com","https:\/\/d217z8zw4dqir.cloudfront.net\/script_tags\/loop_snippets?shop=mad-hippie.myshopify.com","https:\/\/static.klaviyo.com\/onsite\/js\/klaviyo.js?company_id=WEiPar\u0026shop=mad-hippie.myshopify.com","https:\/\/assets.dailykarma.io\/prod\/init-v3.js?shop=mad-hippie.myshopify.com"];
839    for (var i = 0; i < urls.length; i++) {
840      var s = document.createElement('script');
841      s.type = 'text/javascript';
842      s.async = true;
843      s.src = urls[i];
844      var x = document.getElementsByTagName('script')[0];
845      x.parentNode.insertBefore(s, x);
846    }
847  };
848  if(window.attachEvent) {
849    window.attachEvent('onload', asyncLoad);
850  } else {
851    window.addEventListener('load', asyncLoad, false);
852  }
853})();</script>
vendor: 1 bytes, line 853
853
854<script id="__st">var __st={"a":15035836,"offset":-18000,"reqid":"2c04a8fa-e8a7-48f9-93f3-9254b09c490c-1791064388","pageurl":"madhippie.com\/pages\/stores","s":"pages-236458120","u":"91350d33d5d6","p":"page","rtyp":"page","rid":236458120};</script>
vendor: 1 bytes, line 854
854
855<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 855
855
856<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 856
856
857<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//madhippie.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 857
857
858<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 = "//madhippie.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>
858<script crossorigin="anonymous" defer="defer" src="//madhippie.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 858
858
859<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 859
859
860<script>
861  window.Shopify = window.Shopify || {};
862  window.Shopify.MCP = window.Shopify.MCP || {};
863  window.Shopify.MCP.enabled = true;
864  window.Shopify.MCP.shop = "mad-hippie.myshopify.com";
865  window.Shopify.MCP.mcpEndpoint = "https:\/\/madhippie.com\/api\/mcp";
866  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"]}}];
867</script>
vendor: 1 bytes, line 867
867
868<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("\/\/madhippie.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
869</script>
vendor: 1 bytes, line 869
869
870<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://madhippie.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
871</script>
vendor: 1 bytes, line 871
871
872<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
873  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);
874</script>
vendor: 1 bytes, line 874
874
875<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})}}));
876</script>
876
877<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://madhippie.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
878<style id="shopify-accelerated-checkout-cart">
879        #shopify-buyer-consent {
880  margin-top: 1em;
881  display: inline-block;
882  width: 100%;
883}
884
885#shopify-buyer-consent.hidden {
886  display: none;
887}
888
889#shopify-subscription-policy-button {
890  background: none;
891  border: none;
892  padding: 0;
893  text-decoration: underline;
894  font-size: inherit;
895  cursor: pointer;
896}
897
898#shopify-subscription-policy-button::before {
899  box-shadow: none;
900}
901
902      </style>
903
904<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
904
905  
906  
907
908 
909
910        
911
912      
912<script type="text/javascript" id="loop-subscription-script" src="//madhippie.com/cdn/shop/t/190/assets/loop-widget.js?v=106822643431440590871790034617" defer></script>
912
913    
914<!-- BEGIN app block: shopify://apps/epsilon-tag-integration/blocks/epsilon_ust_head/019eb349-8002-7fd2-84a2-e3b4de5e0013 -->
915
916
917
918  
919
920  
921
922  
923
924  
925
926  
926<script>
927    (function() {
928      // Avoid running tracking logic in theme editor preview
929      var isDesignMode = false;
930      if (isDesignMode) {
931        return;
932      }
933
934      var debugMode = "false" === 'true';
935
936      function debugLog() {
937        if (!debugMode) return;
938        console.log.apply(console, arguments);
939      }
940
941      function debugWarn() {
942        if (!debugMode) return;
943        console.warn.apply(console, arguments);
944      }
945
946      // Config object for your app to use if needed
947      window.epsilonUstConfig = {
948        companyId: "86269",
949        companyMagic: "19c6f8",
950        accelerate_tag_uuid: "",
951        reverseProxyDomain: "dtm.madhippie.com",
952        ustTag: "https:\/\/dtm.madhippie.com\/profile\/visit\/js\/1_0?dtm_fid=101\u0026dtm_promo_id=200\u0026dtm_cid=86269\u0026dtm_cmagic=19c6f8",
953        extVersion: "1.2.14",
954        debugMode: debugMode
955      };
956      debugLog("Epsilon UST Config:", window.epsilonUstConfig);
957
958      var ustLoaded = false;
959      var accelerateLoaded = false;
960
961      function shouldLoadTags() {
962        var customerPrivacy = window.Shopify && window.Shopify.customerPrivacy;
963        if (!customerPrivacy) {
964          return false;
965        }
966
967        var marketingAllowed =
968          typeof customerPrivacy.marketingAllowed === 'function' &&
969          customerPrivacy.marketingAllowed();
970        var analyticsAllowed =
971          typeof customerPrivacy.analyticsProcessingAllowed === 'function' &&
972          customerPrivacy.analyticsProcessingAllowed();
973        var saleOfDataAllowed =
974          typeof customerPrivacy.saleOfDataAllowed === 'function' &&
975          customerPrivacy.saleOfDataAllowed();
976
977        return (marketingAllowed || analyticsAllowed) && saleOfDataAllowed;
978      }
979
980      function handleConsentState() {
981        if (!shouldLoadTags()) {
982          return;
983        }
984
985        loadUstTagOnce();
986        loadAccelerateTagOnce();
987      }
988
989      function loadUstTagOnce() {
990        var NAMESPACED_DTM_COOKIE_ID = "ust:dtm_cookie_id";
991
992        if (ustLoaded) return;
993        ustLoaded = true;
994
995        var ustTagUrl = "https:\/\/dtm.madhippie.com\/profile\/visit\/js\/1_0?dtm_fid=101\u0026dtm_promo_id=200\u0026dtm_cid=86269\u0026dtm_cmagic=19c6f8\u0026ext_version=1.2.14";
996        if (!ustTagUrl) {
997          return;
998        }
999
1000        function getLocalStorageValue(key) {
1001          try {
1002            return window.localStorage.getItem(key);
1003          } catch (e) {
1004            return false;
1005          }
1006        }
1007
1008        const dtmCookieId = getLocalStorageValue(NAMESPACED_DTM_COOKIE_ID);
1009        if (dtmCookieId) {
1010          ustTagUrl = ustTagUrl + '&dtm_cookie_id=' + dtmCookieId
1011        }
1012        var script = document.createElement('script');
1013        script.src = ustTagUrl;
1014        script.async = true;
1015        document.head.appendChild(script);
1016      }
1017
1018      function loadAccelerateTagOnce() {
1019        if (accelerateLoaded) return;
1020        accelerateLoaded = true;
1021
1022        var accelerateTagUuid = "";
1023        if (!accelerateTagUuid) {
1024          return;
1025        }
1026
1027        var DEV_STORAGE_KEY = 'yld_env';
1028        var DEV_STORAGE_VALUE = 'dev';
1029        var DEV_DOMAIN = 'td.yieldify-dev.com';
1030        var PROD_DOMAIN = 'td.yieldify.com';
1031
1032        function getLocalStorageValue(key) {
1033          try {
1034            return window.localStorage.getItem(key) === DEV_STORAGE_VALUE;
1035          } catch (e) {
1036            return false;
1037          }
1038        }
1039
1040        var tagDomain = getLocalStorageValue(DEV_STORAGE_KEY) ? DEV_DOMAIN : PROD_DOMAIN;
1041
1042        var script = document.createElement('script');
1043        script.src = 'https://' + tagDomain + '/yieldify/code.js?w_uuid=' + encodeURIComponent(accelerateTagUuid) + '&k=1';
1044        script.async = true;
1045        document.head.appendChild(script);
1046      }
1047
1048      function initConsentGatedTags() {
1049        handleConsentState();
1050
1051        document.addEventListener('visitorConsentCollected', function() {
1052          handleConsentState();
1053        });
1054      }
1055
1056      // If Shopify or loadFeatures isn't available, bail out safely
1057      if (!window.Shopify || !window.Shopify.loadFeatures) {
1058        debugWarn("Epsilon UST: Shopify.loadFeatures not available; no marketing tags loaded.");
1059        return;
1060      }
1061
1062      // Load the Customer Privacy API
1063      window.Shopify.loadFeatures(
1064        [
1065          {
1066            name: 'consent-tracking-api',
1067            version: '0.1',
1068          },
1069        ],
1070        function(error) {
1071          if (error) {
1072            debugWarn("Epsilon UST: Failed to load consent-tracking-api; no marketing tags loaded.", error);
1073            return;
1074          }
1075
1076          var customerPrivacy = window.Shopify.customerPrivacy;
1077          if (
1078            !customerPrivacy ||
1079            typeof customerPrivacy.marketingAllowed !== 'function' ||
1080            typeof customerPrivacy.analyticsProcessingAllowed !== 'function' ||
1081            typeof customerPrivacy.saleOfDataAllowed !== 'function'
1082          ) {
1083            debugWarn("Epsilon UST: customerPrivacy API not available; no marketing tags loaded.");
1084            return;
1085          }
1086
1087          initConsentGatedTags();
1088        }
1089      );
1090    })();
1091  </script>
1091
1092
1093
1094
1095<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 -->
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108  
1108<script async src="https://static.klaviyo.com/onsite/js/WEiPar/klaviyo.js?company_id=WEiPar"></script>
1108
1109  
1109<script>!function(){if(!window.klaviyo){window._klOnsite=window._klOnsite||[];try{window.klaviyo=new Proxy({},{get:function(n,i){return"push"===i?function(){var n;(n=window._klOnsite).push.apply(n,arguments)}:function(){for(var n=arguments.length,o=new Array(n),w=0;w<n;w++)o[w]=arguments[w];var t="function"==typeof o[o.length-1]?o.pop():void 0,e=new Promise((function(n){window._klOnsite.push([i].concat(o,[function(i){t&&t(i),n(i)}]))}));return e}}})}catch(n){window.klaviyo=window.klaviyo||[],window.klaviyo.push=function(){var n;(n=window._klOnsite).push.apply(n,arguments)}}}}();</script>
1109
1110
1111  
1112
1113
1114
1115
1116  
1116<script>
1117    window.klaviyoReviewsProductDesignMode = false
1118  </script>
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128<!-- END app block --><!-- BEGIN app block: shopify://apps/essential-announcer/blocks/app-embed/93b5429f-c8d6-4c33-ae14-250fd84f361b -->
1128<script>
1129  
1130    window.essentialAnnouncementConfigs = [];
1131  
1132  window.essentialAnnouncementMeta = {
1133    productCollections: null,
1134    productData: null,
1135    templateName: "page",
1136    collectionId: null,
1137  };
1138  
1139</script>
1139
1140
1141 
1142
1143<style>
1144  .essential_annoucement_bar_wrapper {display: none;}
1145</style>
1146
1147
1148
1149<script src="https://cdn.shopify.com/extensions/01a0ae33-7196-7ba7-a372-9039e66cd741/essential-announcement-bar-120/assets/announcement-bar-essential-apps.js" defer></script>
1149
1150
1151
1152<!-- END app block --><!-- BEGIN app block: shopify://apps/judge-me-reviews/blocks/judgeme_core/61ccd3b1-a9f2-4160-9fe9-4fec8413e5d8 --><!-- Start of Judge.me Core -->
1153
1154
1155
1156
1157
1158
1159
1160<link rel="dns-prefetch" href="https://cdn.judge.me">
1161<link rel="dns-prefetch" href="https://cdn1.judge.me">
1162<link rel="dns-prefetch" href="https://api.judge.me">
1163
1164<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":true,"badge_no_review_text":"No reviews","badge_n_reviews_text":"{{ n }} review/reviews","badge_star_color":"#FBA696","hide_badge_preview_if_no_reviews":true,"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
1164ou! Please refresh the page in a few moments to see your review. ","widget_submit_success_msg_no_auto_publish":"Thank you! Your review will be published as soon as it is approved by the shop admin. ","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":"{{ 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","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.","widget_star_color":"#FBA696","verified_badge_text":"Verified","verified_badge_bg_color":"","verified_badge_text_color":"","verified_badge_placement":"left-of-reviewer-name","widget_review_max_height":5,"widget_hide_border":true,"widget_social_share":false,"widget_thumb":false,"widget_review_location_show":false,"widget_location_format":"","all_reviews_include_out_of_store_products":false,"all_reviews_out_of_store_text":"(out of store)","all_reviews_pagination":100,"all_reviews_product_name_prefix_text":"about","enable_review_pictures":false,"enable_question_anwser":false,"widget_theme":"","review_date_format":"mm/dd/yyyy","default_sort_method":"highest-rating","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":true,"featured_carousel_show_header":true,"featured_carousel_title":"Customer Reviews","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":20,"featured_carousel_arrows_on_the_sides":true,"featured_carousel_height":200,"featured_carousel_width":90,"featured_carousel_image_size":150,"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":false,"widget_histogram_use_custom_color":false,"widget_pagination_use_custom_color":false,"widget_star_use_custom_color":true,"widget_verified_badge_use_custom_color":false,"widget_write_review_use_custom_color":false,"picture_reminder_submit_button":"Upload Pictures","enable_review_videos":false,"mute_video_by_default":false,"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":true,"widget_add_search_bar":false,"widget_search_bar_placeholder":"Search","widget_sorting_verified_only_text":"Verified only","featured_carousel_theme":"aligned","featured_carousel_show_rating":true,"featured_carousel_show_title":false,"featured_carousel_show_body":true,"featured_carousel_show_date":false,"featured_carousel_show_reviewer":false,"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":"#F5CB3D","featured_carousel_empty_star_background":"#dadada","featured_carousel_vertical_theme_background":"#f9fafb","featured_carousel_verified_badge_enable":false,"featured_carousel_verified_badge_color":"#D6D6D6","featured_carousel_border_style":"round","featured_carousel_review_line_length_limit":5,"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":false,"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":false,"widget_load_with_code_splitting":true,"widget_ugc_install_preference":false,"widget_ugc_title":"Made by us, Shared by you","widget_ugc_subt
1164itle":"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":"#0D0D0C","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":true,"widget_show_product_medals":false,"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 madhippie.com","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":"#FFC773","show_product_variant":false,"all_reviews_product_variant_label_text":"Variant: ","widget_show_verified_branding":false,"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":true,"widget_autofill_review_title":true,"redirect_reviewers_invited_via_email":"external_form","request_store_review_after_product_review":false,"request_review_other_products_in_order":false,"review_form_color_scheme":"default","review_form_corner_style":"square","review_form_star_color":"#0D0D0C","review_form_text_color":"#333333","review_form_background_color":"#ffffff","review_form_field_background_color":"#fafafa","review_form_button_color":"#0D0D0C","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_
1164youtube_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":false,"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":false,"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":6,"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-01-26T14:31:14.000+00:00","review_widget_header_theme":"minimal","review_widget_widget_title_enabled":true,"review_widget_header_text_size":"large","review_widget_header_text_weight":"regular","review_widget_average_rating_style":"bold","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":"standard","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":"always","review_widget_card_section_size":"small","review_widget_star_and_histogram_color":"#FFD51B","review_widget_button_text_color":"#FFFFFF","review_widget_text_color":"#212121","review_widget_lighter_text_color":"#7B7B7B","review_widget_corner_styling":"soft","review_widget_custom_css":"/* Mad Hippie — review widget polish */\n[data-widget-container=\"review-widget\"]{\n  max-width:800px!important;\n  margin:0 auto!important;\n  font-family:'PPMori','PP Mori',-apple-system,sans-serif!important;\n  --jm-review-widget-text-color:#1c1a18!important;\n  --jm-review-widget-lighter-text-color:#4a4644!important;\n}\n[data-widget-container=\"review-widget\"] *{\n  --jm-review-widget-star-and-histogram-color:var(--review-star-color,#f4b63e)!important;\n}\n","review_widget_review_word_singular":"review","review_widget_review_word_plural"
1164:"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":false,"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":"Mad Hippie","shop_currency":"USD","widget_version":"3.0","footer":true,"autopublish":false,"review_dates":false,"enable_custom_form":false,"shop_use_review_site":false,"shop_locale":"en","enable_multi_locales_translations":true,"show_review_title_input":true,"autofill_review_title":true,"review_verification_email_status":"never","require_verification_before_submit":false,"sign_in_with_
1164shop_enabled":false,"customer_account_validation_enabled":true,"coupon_promo_invited_eligible":true,"coupon_promo_web_eligible":false,"uses_coupon_integration":false,"uses_external_coupon":false,"can_be_branded":false,"reply_name_text":"Mad Hippie"};</script>
1164 <style class='jdgm-settings-style'>.jdgm-xx{left:0}:root{--jdgm-primary-color: #0D0D0C;--jdgm-secondary-color: rgba(13,13,12,0.1);--jdgm-star-color: #FBA696;--jdgm-write-review-text-color: white;--jdgm-write-review-bg-color: #0D0D0C;--jdgm-paginate-color: #0D0D0C;--jdgm-border-radius: 10;--jdgm-reviewer-name-color: #0D0D0C}.jdgm-histogram__bar-content{background-color:#0D0D0C}.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:#0D0D0C}.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-preview-badge .jdgm-star.jdgm-star{color:#FBA696}.jdgm-prev-badge[data-average-rating='0.00']{display:none !important}.jdgm-rev .jdgm-rev__timestamp,.jdgm-quest .jdgm-rev__timestamp,.jdgm-carousel-item__timestamp{display:none !important}.jdgm-rev .jdgm-rev__icon{display:none !important}.jdgm-widget.jdgm-all-reviews-widget,.jdgm-widget .jdgm-rev-widg{border:none;padding:0}.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-histogram{display:none !important}.jdgm-widget .jdgm-sort-dropdown-wrapper{margin-top:12px}.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_written_in_etsy"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_written_in_google_business"]{display:none !important}.jdgm-rev__transparency-badge[data-badge-type="review_written_in_shop_app"]{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: #FFC773;--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:#FFC773}.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:'Mad Hippie'}.jdgm-full-rev-modal.rev-snippet-widget .jm-mfp-container .jdgm-full-rev .jdgm-full-rev__product-button{border-radius:calc( 8px * 6 )}
1165</style> <style class='jdgm-settings-style'>.jdgm-review-widget [data-widget-container="review-widget"]{max-width:800px !important;margin:0 auto !important;font-family:"PPMori","PP Mori",-apple-system,sans-serif !important;--jm-review-widget-text-color:#1c1a18!important;--jm-review-widget-lighter-text-color:#4a4644!important}.jdgm-review-widget [data-widget-container="review-widget"] *{--jm-review-widget-star-and-histogram-color:var(--review-star-color,#f4b63e)!important}
1166</style>
1167
1168  
1169  
1170  
1171  <style class='jdgm-miracle-styles'>
1172  @-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
1172/gAAeAFjYoAAEA1jAwAAZAAHAHgB3crBCcAwDEPRZydkih567CDdf4ZskmLwFBV8xBfCaC4BXkOUmx4sU0h2ngNb9V0vQCxaRKIAevT7fGWuBrEAAAAAAAAAAAA0AHgAugAAeAF9z79Kw1AUx/FzTm7un6QmJtwmQ5Bg1abgEGr/BAqlU6Gju+Cgg1MkQ/sA7Vj7BOnmO/gUvo2Lo14NqIO6/IazfD8HEODtmQCfoANwNsyp2/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-prev-badge{display:block !important}
1173
1174</style>
1175
1176
1177  
1178  
1179   
1180
1181
1182
1183
1184<script data-cfasync='false' class='jdgm-script'>
1185!function(e){window.jdgm=window.jdgm||{};
1186/* INF-1976 */
1187var _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;}();
1188if(_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;}
1189jdgm.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/01a0fd03-c455-7b82-9766-74101e55572c/judgeme-771/assets/",jdgm.CDN_API_HOST="https://cdn.judge.me/",
1190jdgm.docReady=function(d){(e.attachEvent?"complete"===e.readyState:"loading"!==e.readyState)?
1191setTimeout(d,0):e.addEventListener("DOMContentLoaded",d)},jdgm.loadCSS=function(d,t,o,a){
1192!o&&jdgm.loadCSS.requestedUrls.indexOf(d)>=0||(jdgm.loadCSS.requestedUrls.push(d),
1193(a=e.createElement("link")).rel="stylesheet",a.class="jdgm-stylesheet",a.media="nope!",
1194a.href=d,a.onload=function(){this.media="all",t&&setTimeout(t)},e.body.appendChild(a))},
1195jdgm.loadCSS.requestedUrls=[],jdgm.loadJS=function(e,d){var t=new XMLHttpRequest;
1196t.onreadystatechange=function(){4===t.readyState&&t.status>=200&&t.status<300&&(Function(t.response)(),d&&d(t.response))},
1197t.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(
1198".jdgm-widget, .jdgm-all-reviews-page").length>0)&&(jdgmSettings.widget_load_with_code_splitting?
1199parseFloat(jdgmSettings.widget_version)>=3?jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_v3_base.css"):
1200jdgm.loadCSS(jdgm.CDN_BASE_URL+"widget_base.css"):jdgm.loadCSS(jdgm.CDN_BASE_URL+"shopify_v2.css")
1201)}))}(document);
1202</script>
1202
1203<noscript><link rel="stylesheet" type="text/css" media="all" href="https://cdn.shopify.com/extensions/01a0fd03-c455-7b82-9766-74101e55572c/judgeme-771/assets/shopify_v2.css"></noscript>
1204
1205<!-- BEGIN app snippet: theme_fix_tags -->
1205<script>
1206  (function() {
1207    var jdgmThemeFixes = {"135176618144":{"html":"","css":".jdgm-rev__icon, .jdgm-rev__icon::before, .jdgm-rev__icon::after {   \ndisplay: none !important;\n}","js":""},"135574913184":{"html":"","css":".jdgm-rev-widg__summary-average {\npointer-events: none !important\n}\n.jdgm-rev__icon {\ndisplay: none !important\n}","js":""}};
1208    if (!jdgmThemeFixes) return;
1209
1210    // "All themes" fix: CSS and JS applied on every theme. CSS is injected
1211    // before the per-theme fix so the theme-specific CSS wins the cascade.
1212    // HTML is never applied globally (too risky).
1213    var allThemesFix = jdgmThemeFixes['all'];
1214    if (allThemesFix && allThemesFix.css) {
1215      var allStyleTag = document.createElement('style');
1216      allStyleTag.classList.add('jdgm-theme-fix-style-all');
1217      allStyleTag.innerHTML = allThemesFix.css;
1218      document.head.append(allStyleTag);
1219    };
1220
1221    if (allThemesFix && allThemesFix.js) {
1222      var allScriptTag = document.createElement('script');
1223      allScriptTag.classList.add('jdgm-theme-fix-script-all');
1224      allScriptTag.innerHTML = allThemesFix.js;
1225      document.head.append(allScriptTag);
1226    };
1227
1228    var thisThemeFix = jdgmThemeFixes[Shopify.theme.id];
1229    if (!thisThemeFix) return;
1230
1231    if (thisThemeFix.html) {
1232      document.addEventListener("DOMContentLoaded", function() {
1233        var htmlDiv = document.createElement('div');
1234        htmlDiv.classList.add('jdgm-theme-fix-html');
1235        htmlDiv.innerHTML = thisThemeFix.html;
1236        document.body.append(htmlDiv);
1237      });
1238    };
1239
1240    if (thisThemeFix.css) {
1241      var styleTag = document.createElement('style');
1242      styleTag.classList.add('jdgm-theme-fix-style');
1243      styleTag.innerHTML = thisThemeFix.css;
1244      document.head.append(styleTag);
1245    };
1246
1247    if (thisThemeFix.js) {
1248      var scriptTag = document.createElement('script');
1249      scriptTag.classList.add('jdgm-theme-fix-script');
1250      scriptTag.innerHTML = thisThemeFix.js;
1251      document.head.append(scriptTag);
1252    };
1253  })();
1254</script>
1254
1255<!-- END app snippet -->
1256<!-- End of Judge.me Core -->
1257
1258
1259
1260<!-- END app block --><!-- BEGIN app block: shopify://apps/eg-auto-add-to-cart/blocks/app-embed/0f7d4f74-1e89-4820-aec4-6564d7e535d2 -->
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272  
1273    
1273<script
1274      async
1275      type="text/javascript"
1276      src="https://cdn.506.io/eg/script.js?shop=mad-hippie.myshopify.com&v=12"
1277    ></script>
1277
1278  
1279
1280
1281
1282  <meta id="easygift-shop" itemid="c2hvcF8kXzE3OTEwNjQzODg=" content="{&quot;isInstalled&quot;:true,&quot;installedOn&quot;:&quot;2022-07-05T19:30:52.057Z&quot;,&quot;appVersion&quot;:&quot;3.0&quot;,&quot;subscriptionName&quot;:&quot;Unlimited&quot;,&quot;cartAnalytics&quot;:true,&quot;freeTrialEndsOn&quot;:null,&quot;settings&quot;:{&quot;reminderBannerStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:&quot;right&quot;,&quot;vertical&quot;:&quot;bottom&quot;},&quot;backgroundColor&quot;:&quot;#FFFFFF&quot;,&quot;borderRadius&quot;:null,&quot;padding&quot;:null,&quot;headerFontSize&quot;:null,&quot;subHeaderFontSize&quot;:null,&quot;fontFamily&quot;:null,&quot;imageUrl&quot;:null,&quot;closingMode&quot;:&quot;doNotAutoClose&quot;,&quot;cssStyles&quot;:&quot;&quot;,&quot;displayAfter&quot;:5,&quot;headerText&quot;:&quot;&quot;,&quot;primaryColor&quot;:&quot;#000000&quot;,&quot;reshowBannerAfter&quot;:&quot;everyNewSession&quot;,&quot;selfcloseAfter&quot;:5,&quot;showImage&quot;:false,&quot;subHeaderText&quot;:&quot;&quot;},&quot;addedItemIdentifier&quot;:&quot;auto&quot;,&quot;ignoreOtherAppLineItems&quot;:null,&quot;customVariantsInfoLifetimeMins&quot;:1440,&quot;redirectPath&quot;:null,&quot;ignoreNonStandardCartRequests&quot;:false,&quot;bannerStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:&quot;right&quot;,&quot;vertical&quot;:&quot;bottom&quot;},&quot;backgroundColor&quot;:&quot;#FFFFFF&quot;,&quot;borderRadius&quot;:null,&quot;padding&quot;:null,&quot;headerFontSize&quot;:null,&quot;subHeaderFontSize&quot;:null,&quot;fontFamily&quot;:null,&quot;cssStyles&quot;:null,&quot;primaryColor&quot;:&quot;#000000&quot;},&quot;themePresetId&quot;:null,&quot;notificationStyle&quot;:{&quot;position&quot;:{&quot;horizontal&quot;:null,&quot;vertical&quot;:null},&quot;backgroundColor&quot;:&quot;#FFFFFF&quot;,&quot;borderRadius&quot;:null,&quot;headerFontSize&quot;:null,&quot;subHeaderFontSize&quot;:null,&quot;padding&quot;:null,&quot;fontFamily&quot;:null,&quot;primaryColor&quot;:null,&quot;duration&quot;:null,&quot;cssStyles&quot;:null,&quot;hasCustomizations&quot;:false},&quot;fetchCartData&quot;:false,&quot;useLocalStorage&quot;:{&quot;expiryMinutes&quot;:null,&quot;enabled&quot;:false},&quot;popupStyle&quot;:{&quot;backgroundColor&quot;:&quot;#FFFFFF&quot;,&quot;borderRadius&quot;:null,&quot;padding&quot;:null,&quot;headerFontSize&quot;:null,&quot;subHeaderFontSize&quot;:null,&quot;bodyColor&quot;:null,&quot;bodyFontSize&quot;:null,&quot;closeModalOutsideClick&quot;:true,&quot;priceShowZeroDecimals&quot;:true,&quot;headerFontFamily&quot;:null,&quot;bodyFontFamily&quot;:null,&quot;primaryColor&quot;:null,&quot;secondaryColor&quot;:null,&quot;cssStyles&quot;:null,&quot;addButtonText&quot;:null,&quot;dismissButtonText&quot;:null,&quot;outOfStockButtonText&quot;:null,&quot;imageUrl&quot;:null,&quot;hasCustomizations&quot;:false,&quot;showProductLink&quot;:false,&quot;subscriptionLabel&quot;:&quot;Subscription Plan&quot;},&quot;refreshAfterBannerClick&quot;:false,&quot;disableReapplyRules&quot;:false,&quot;disableReloadOnFailedAddition&quot;:false,&quot;autoReloadCartPage&quot;:false,&quot;ajaxRedirectPath&quot;:null,&quot;allowSimultaneousRequests&quot;:false,&quot;applyRulesOnCheckout&quot;:false,&quot;enableCartCtrlOverrides&quot;:true,&quot;customRedirectFromCart&quot;:null,&quot;scriptSettings&quot;:{&quot;branding&quot;:{&quot;show&quot;:false,&quot;removalRequestSent&quot;:null},&quot;productPageRedirection&quot;:{&quot;enabled&quot;:false,&quot;products&quot;:[],&quot;redirectionURL&quot;:&quot;\/&quot;},&quot;debugging&quot;:{&quot;enabled&quot;:false,&quot;enabledOn&quot;:null,&quot;stringifyObj&quot;:false},&quot;fetchProductInfoFromSavedDomain&quot;:false,&quot;enableBuyNowInterceptions&quot;:false,&quot;removeProductsAddedFromExpiredRules&quot;:false,&quot;useFinalPrice&quot;:false,&quot;useFinalPriceGetEntireCart&quot;:false,&quot;hideGiftedPropertyText&quot;:false,&quot;fetchCartDataBeforeRequest&quot;:false,&quot;disableRedirectAfterFormSubmit&quot;:false,&quot;customCSS&quot;:null,&quot;delayUpdates&quot;:2000,&quot;decodePayload&quot;:false,&quot;hideAlertsOnFrontend&quot;:false,&quot;removeEGPropertyFromSplitActionLineItems&quot;:false},&quot;promoCodeMessageStyle&quot;:{&quot;message&quot;:&quot;Free gift added!&quot;},&quot;accessToEnterprise&quot;:false},&quot;translations&quot;:null,&quot;defaultLocale&quot;:&quot;en&quot;,&quot;shopDomain&quot;:&quot;madhippie.com&quot;}">
1283
1284
1285<script defer>
1286  (async function() {
1287    try {
1288
1289      const blockVersion = "v3"
1290      if (blockVersion != "v3") {
1291        return
1292      }
1293
1294      let metaErrorFlag = false;
1295      if (metaErrorFlag) {
1296        return
1297      }
1298
1299      // Parse metafields as JSON
1300      const metafields = {};
1301
1302      // Process metafields in JavaScript
1303      let savedRulesArray = [];
1304      for (const [key, value] of Object.entries(metafields)) {
1305        if (value) {
1306          for (const prop in value) {
1307            // avoiding Object.Keys for performance gain -- no need to make an array of keys.
1308            savedRulesArray.push(value);
1309            break;
1310          }
1311        }
1312      }
1313
1314      const metaTag = document.createElement('meta');
1315      metaTag.id = 'easygift-rules';
1316      metaTag.content = JSON.stringify(savedRulesArray);
1317      metaTag.setAttribute('itemid', 'cnVsZXNfJF8xNzkxMDY0Mzg4');
1318
1319      document.head.appendChild(metaTag);
1320      } catch (err) {
1321        
1322      }
1323  })();
1324</script>
1324
1325
1326
1327  
1327<script
1328    type="text/javascript"
1329    defer
1330  >
1331
1332    (function () {
1333      try {
1334        window.EG_INFO = window.EG_INFO || {};
1335        var shopInfo = {"isInstalled":true,"installedOn":"2022-07-05T19:30:52.057Z","appVersion":"3.0","subscriptionName":"Unlimited","cartAnalytics":true,"freeTrialEndsOn":null,"settings":{"reminderBannerStyle":{"position":{"horizontal":"right","vertical":"bottom"},"backgroundColor":"#FFFFFF","borderRadius":null,"padding":null,"headerFontSize":null,"subHeaderFontSize":null,"fontFamily":null,"imageUrl":null,"closingMode":"doNotAutoClose","cssStyles":"","displayAfter":5,"headerText":"","primaryColor":"#000000","reshowBannerAfter":"everyNewSession","selfcloseAfter":5,"showImage":false,"subHeaderText":""},"addedItemIdentifier":"auto","ignoreOtherAppLineItems":null,"customVariantsInfoLifetimeMins":1440,"redirectPath":null,"ignoreNonStandardCartRequests":false,"bannerStyle":{"position":{"horizontal":"right","vertical":"bottom"},"backgroundColor":"#FFFFFF","borderRadius":null,"padding":null,"headerFontSize":null,"subHeaderFontSize":null,"fontFamily":null,"cssStyles":null,"primaryColor":"#000000"},"themePresetId":null,"notificationStyle":{"position":{"horizontal":null,"vertical":null},"backgroundColor":"#FFFFFF","borderRadius":null,"headerFontSize":null,"subHeaderFontSize":null,"padding":null,"fontFamily":null,"primaryColor":null,"duration":null,"cssStyles":null,"hasCustomizations":false},"fetchCartData":false,"useLocalStorage":{"expiryMinutes":null,"enabled":false},"popupStyle":{"backgroundColor":"#FFFFFF","borderRadius":null,"padding":null,"headerFontSize":null,"subHeaderFontSize":null,"bodyColor":null,"bodyFontSize":null,"closeModalOutsideClick":true,"priceShowZeroDecimals":true,"headerFontFamily":null,"bodyFontFamily":null,"primaryColor":null,"secondaryColor":null,"cssStyles":null,"addButtonText":null,"dismissButtonText":null,"outOfStockButtonText":null,"imageUrl":null,"hasCustomizations":false,"showProductLink":false,"subscriptionLabel":"Subscription Plan"},"refreshAfterBannerClick":false,"disableReapplyRules":false,"disableReloadOnFailedAddition":false,"autoReloadCartPage":false,"ajaxRedirectPath":null,"allowSimultaneousRequests":false,"applyRulesOnCheckout":false,"enableCartCtrlOverrides":true,"customRedirectFromCart":null,"scriptSettings":{"branding":{"show":false,"removalRequestSent":null},"productPageRedirection":{"enabled":false,"products":[],"redirectionURL":"\/"},"debugging":{"enabled":false,"enabledOn":null,"stringifyObj":false},"fetchProductInfoFromSavedDomain":false,"enableBuyNowInterceptions":false,"removeProductsAddedFromExpiredRules":false,"useFinalPrice":false,"useFinalPriceGetEntireCart":false,"hideGiftedPropertyText":false,"fetchCartDataBeforeRequest":false,"disableRedirectAfterFormSubmit":false,"customCSS":null,"delayUpdates":2000,"decodePayload":false,"hideAlertsOnFrontend":false,"removeEGPropertyFromSplitActionLineItems":false},"promoCodeMessageStyle":{"message":"Free gift added!"},"accessToEnterprise":false},"translations":null,"defaultLocale":"en","shopDomain":"madhippie.com"};
1336        var productRedirectionEnabled = shopInfo.settings.scriptSettings.productPageRedirection.enabled;
1337        if (["Unlimited", "Enterprise"].includes(shopInfo.subscriptionName) && productRedirectionEnabled) {
1338          var products = shopInfo.settings.scriptSettings.productPageRedirection.products;
1339          if (products.length > 0) {
1340            var productIds = products.map(function(prod) {
1341              var productGid = prod.id;
1342              var productIdNumber = parseInt(productGid.split('/').pop());
1343              return productIdNumber;
1344            });
1345            var productInfo = null;
1346            var isProductInList = productIds.includes(productInfo.id);
1347            if (isProductInList) {
1348              var redirectionURL = shopInfo.settings.scriptSettings.productPageRedirection.redirectionURL;
1349              if (redirectionURL) {
1350                window.location = redirectionURL;
1351              }
1352            }
1353          }
1354        }
1355
1356        
1357      } catch(err) {
1358      return
1359    }}
1359)()
1360  </script>
1360
1361
1362
1363
1364<!-- END app block -->
1364<script src="https://cdn.shopify.com/extensions/01a0fd03-c455-7b82-9766-74101e55572c/judgeme-771/assets/loader.js" type="text/javascript" defer="defer"></script>
1364
1365<meta property="og:image" content="https://cdn.shopify.com/s/files/1/1503/5836/files/Mad_Hippie_Logo_cb87bc33-ed92-4f1d-8344-f631a006524a.png?v=1753908194" />
1366<meta property="og:image:secure_url" content="https://cdn.shopify.com/s/files/1/1503/5836/files/Mad_Hippie_Logo_cb87bc33-ed92-4f1d-8344-f631a006524a.png?v=1753908194" />
1367<meta property="og:image:width" content="3417" />
1368<meta property="og:image:height" content="1077" />
1369<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1370<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: 15035836,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 1370
1370
1371<script>
1372  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
1373</script>
vendor: 1 bytes, line 1373
1373
1374<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}
1374).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: 15035836,storefrontBaseUrl: "https://madhippie.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://madhippie.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"4723867808","configuration":"{\"config\":\"{\\\"companyId\\\":\\\"86269\\\",\\\"companyMagic\\\":\\\"19c6f8\\\",\\\"reverseProxyDomain\\\":\\\"dtm.madhippie.com\\\",\\\"ustCheckoutEventsList\\\":\\\"\\\",\\\"accelerateTagUuid\\\":\\\"\\\",\\\"debugMode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"009fd5bc744ab53b83e6d3f2dd10f809","type":"APP","apiClientId":348421160961,"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":"4705190048","configuration":"{\"accountID\":\"123\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"4b1f94d30978e5e74a4c3495451f4c18","type":"APP","apiClientId":438566913,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]}
1374,"dataSharingState":"unrestricted"},{"id":"4516118688","configuration":"{\"accountID\":\"11353\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"fd808ef676af80f68a7052770545cafd","type":"APP","apiClientId":2594385,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"1686929568","configuration":"{\"accountID\":\"WEiPar\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"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":"1565196448","configuration":"{\n        \"accountID\":\"mad-hippie.myshopify.com\",\n        \"environment\":\"production\",\n        \"apiURL\":\"https:\/\/api.quizkitapp.com\"\n        }","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8b4008b7d9cf69ef6aab7ff3dbda8179","type":"APP","apiClientId":4291957,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"1060995232","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":"492109984","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-C3R54PY4XP\\\",\\\"GT-MJWW3V3\\\",\\\"AW-1015735328\\\"],\\\"target_country\\\":\\\"US\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-C3R54PY4XP\\\"},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-C3R54PY4XP\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-C3R54PY4XP\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-C3R54PY4XP\\\",\\\"MC-SLKYHSLLZH\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-C3R54PY4XP\\\",\\\"MC-SLKYHSLLZH\\\",\\\"AW-1015735328\\\/i_K9CLC79AQQoMir5AM\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-C3R54PY4XP\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-C3R54PY4XP\\\",\\\"MC-SLKYHSLLZH\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-C3R54PY4XP\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-C3R54PY4XP\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-C3R54PY4XP\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-C3R54PY4XP\\\"}],\\\"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":"481624224","configuration":"{\"pixelCode\":\"C8F5LBQ4VMMHDQEFO6V0\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"22e92c2ad45662f435e4801458fb78cc","type":"APP","apiClientId":4383523,"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":"271122592","configuration":"{\"pixel_id\":\"1646747468977727\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]}
1374,{"id":"112853152","configuration":"{\"tagID\":\"2618730134159\"}","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":"19431584","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Google Ads Conversion Tracking"},{"id":"26149024","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"3","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Convert Tracking"},{"id":"30736544","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Vibe Purchase w dollars"},{"id":"31424672","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"name":"Hulu"},{"id":"73531552","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","PREFERENCES","SALE_OF_DATA"],"name":"Peacock"},{"id":"135430304","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"1","type":"CUSTOM","privacyPurposes":["ANALYTICS","MARKETING","PREFERENCES","SALE_OF_DATA"],"name":"Trade Desk Conversion"},{"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":"Mad Hippie","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"mad-hippie.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/madhippie.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"15270474842272","handle":"aha-bha-milk-serum","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"53139038961824","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15302281822368","handle":"aha-bha-milk-serum-mini","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"53233139056800","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7830219016","handle":"antioxidant-facial-oil","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"25481970312","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120989257888","handle":"blemish-cream","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52601945456800","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15276238667936","handle":"brightening-gel-moisturizer","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"53153469104288","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"1829500289067","handle":"fig-cheek-lip-tint","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"41876279656608","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"1369439797291","handle":"cleansing-oil","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"
137412886652813355","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"5020436168839","handle":"clear-skin-routine","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"34173455007879","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120878796960","handle":"corrective-peptide-serum","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52601802686624","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15124938752160","handle":"corrective-peptide-serum-mini","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52614317277344","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7830218824","handle":"cream-cleanser","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"25481970056","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120916414624","handle":"daily-protective-serum","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52601859899552","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"4791831232647","handle":"day-night-dual-pack","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"33437040083079","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7830218760","handle":"eye-cream","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"25481969928","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7830218952","handle":"face-cream","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"25481970248","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15776574636192","handle":"gua-sha-masterclass","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58131548143776","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120934994080","handle":"hydrating-facial-spf","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52601881297056","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"5020226322567","handle":"hydrating-routine-for-dry-skin","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"34111184535687","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120896721056","handle":"jelly-cleanser","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52601824805024","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120945905824","handle":"luminizing-facial-spf","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52601895649440","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15141517918368","handle":"mad-hippie-gift-card","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52674191524000","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"5523404587168","handle":"microdermabrasion-facial","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"35748558799008","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}
1374,{"id":"15121816060064","handle":"refillable-vitamin-c-serum","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52612439507104","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120922869920","handle":"restorative-routine-for-mature-skin","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52601867534496","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120962453664","handle":"sheer-tint-sun-serum","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52602212778144","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15121847189664","handle":"sunshine-routine","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52604283027616","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7830218440","handle":"vitamin-a-serum","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"25481969224","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15250239684768","handle":"super-a-serum-mini","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"53083195703456","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"5041660199047","handle":"the-deluxe-routine","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"34157268074631","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15214946451616","handle":"the-essentials-routine","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52985025724576","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15121931075744","handle":"travel-essentials-kit","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52604461482144","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"4352155189383","handle":"triple-c-night-cream","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"31180538413191","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15200590332064","handle":"triple-c-night-cream-mini","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52922156384416","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15120982966432","handle":"ultra-rich-barrier-cream","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"52601936117920","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6704067084448","handle":"ultra-sheer-body-spf","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"39970369044640","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7830218888","handle":"vitamin-c-serum","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"25481970120","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"15755963498656","handle":"vitamin-c-serum-deluxe-sample-size","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"57903392850080","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8328519057","handle":"hydrating-nutrient-mist","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"27896613521","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}
1374,{"id":"15793643880608","handle":"wrinkle-relaxing-eye-treatment","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"58188014846112","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://madhippie.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"199773487264","themePublished":"true","eventMetadataId":"7d51a72b-19aa-4b90-9ead-534296a77af7","pageType":"page","resourceId":"236458120","shopId":"15035836","storefrontBaseUrl":"https:\/\/madhippie.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>
1374<script>
1375  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
1376  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
1377  window.ShopifyAnalytics.meta.currency = 'USD';
1378  var meta = {"page":{"pageType":"page","resourceType":"page","resourceId":236458120,"requestId":"2c04a8fa-e8a7-48f9-93f3-9254b09c490c-1791064388"}};
1379  for (var attr in meta) {
1380    window.ShopifyAnalytics.meta[attr] = meta[attr];
1381  }
1382</script>
vendor: 1 bytes, line 1382
1382
1383<script class="analytics">
1384  (function () {
1385    var customDocumentWrite = function(content) {
1386      var jquery = null;
1387
1388      if (window.jQuery) {
1389        jquery = window.jQuery;
1390      } else if (window.Checkout && window.Checkout.$) {
1391        jquery = window.Checkout.$;
1392      }
1393
1394      if (jquery) {
1395        jquery('body').append(content);
1396      }
1397    };
1398
1399    var hasLoggedConversion = function(token) {
1400      if (token) {
1401        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
1402      }
1403      return false;
1404    }
1405
1406    var setCookieIfConversion = function(token) {
1407      if (token) {
1408        var twoMonthsFromNow = new Date(Date.now());
1409        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
1410
1411        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
1412      }
1413    }
1414
1415    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
1416    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
1417    if (trekkie.integrations) {
1418      return;
1419    }
1420    trekkie.methods = [
1421      'identify',
1422      'page',
1423      'ready',
1424      'track',
1425      'trackForm',
1426      'trackLink'
1427    ];
1428    trekkie.factory = function(method) {
1429      return function() {
1430        var args = Array.prototype.slice.call(arguments);
1431        args.unshift(method);
1432        trekkie.push(args);
1433        if (method == 'track' || method == 'page') {
1434          var pageUrl;
1435          try {
1436            pageUrl = window.location.href;
1437          } catch (e) {}
1438          var pageReferrer;
1439          try {
1440            pageReferrer = document.referrer;
1441          } catch (e) {}
1442          try {
1443            if (window.__TREKKIE_SHIM_QUEUE == null) {
1444              window.__TREKKIE_SHIM_QUEUE = [];
1445            }
1446            window.__TREKKIE_SHIM_QUEUE.push({
1447              from: 'trekkie-stub',
1448              method: method,
1449              args: args.slice(1),
1450              pageContext: {
1451                url: pageUrl,
1452                referrer: pageReferrer
1453              }
1454            });
1455          } catch (e) {
1456            // no-op
1457          }
1458        }
1459        return trekkie;
1460      };
1461    };
1462    for (var i = 0; i < trekkie.methods.length; i++) {
1463      var key = trekkie.methods[i];
1464      trekkie[key] = trekkie.factory(key);
1465    }
1466    trekkie.load = function(config) {
1467      trekkie.config = config || {};
1468      trekkie.config.initialDocumentCookie = document.cookie;
1469      var first = document.getElementsByTagName('script')[0];
1470var script = document.createElement('script');
1471script.type = 'text/javascript';
1472script.onerror = function(e) {
1473  var scriptFallback = document.createElement('script');
1474  scriptFallback.type = 'text/javascript';
1475  scriptFallback.onerror = function(error) {
1476          var Monorail = {
1477      produce: function produce(monorailDomain, schemaId, payload) {
1478        var currentMs = new Date().getTime();
1479        var event = {
1480          schema_id: schemaId,
1481          payload: payload,
1482          metadata: {
1483            event_created_at_ms: currentMs,
1484            event_sent_at_ms: currentMs
1485          }
1486        };
1487        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
1488      },
1489      sendRequest: function sendRequest(endpointUrl, payload) {
1490        // Try the sendBeacon API
1491        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
1492          var blobData = new window.Blob([payload], {
1493            type: 'text/plain'
1494          });
1495
1496          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
1497            return true;
1498          } // sendBeacon was not successful
1499
1500        } // XHR beacon
1501
1502        var xhr = new XMLHttpRequest();
1503
1504        try {
1505          xhr.open('POST', endpointUrl);
1506          xhr.setRequestHeader('Content-Type', 'text/plain');
1507          xhr.send(payload);
1508        } catch (e) {
1509          console.log(e);
1510        }
1511
1512        return false;
1513      },
1514      isIos12: function isIos12() {
1515        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
1516      }
1517    };
1518    Monorail.produce('monorail-edge.shopifysvc.com',
1519      'trekkie_storefront_load_errors/1.1',
1520      {shop_id: 15035836,
1521      theme_id: 199773487264,
1522      app_name: "storefront",
1523      context_url: window.location.href,
1524      source_url: "//madhippie.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
1525
1526  };
1527  scriptFallback.async = true;
1528  scriptFallback.src = '//madhippie.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1529  first.parentNode.insertBefore(scriptFallback, first);
1530};
1531script.async = true;
1532script.src = '//madhippie.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1533first.parentNode.insertBefore(script, first);
1534
1535    };
1536    trekkie.load(
1537      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":15035836,"isMerchantRequest":null,"themeId":199773487264,"themeCityHash":"14776300810622668567","contentLanguage":"en","currency":"USD","eventMetadataId":"7d51a72b-19aa-4b90-9ead-534296a77af7"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
1538    );
1539
1540    var loaded = false;
1541    trekkie.ready(function() {
1542      if (loaded) return;
1543      loaded = true;
1544
1545      window.ShopifyAnalytics.lib = window.trekkie;
1546
1547      var originalDocumentWrite = document.write;
1548      document.write = customDocumentWrite;
1549      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
1550      document.write = originalDocumentWrite;
1551
1552      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
1553      var token = match? match[1]: undefined;
1554      if (!hasLoggedConversion(token)) {
1555        setCookieIfConversion(token);
1556        
1557      }
1558    });
1559
1560    window.ShopifyAnalytics.lib.page(null,{"pageType":"page","resourceType":"page","resourceId":236458120,"requestId":"2c04a8fa-e8a7-48f9-93f3-9254b09c490c-1791064388","shopifyEmitted":true});
1561
1562    var eventsListenerScript = document.createElement('script');
1563    eventsListenerScript.async = true;
1564    eventsListenerScript.src = "//madhippie.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
1565    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
1566})();</script>
vendor: 1 bytes, line 1566
1566
1567<script
1568  defer
1569  src="https://madhippie.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
1570  data-application="storefront-renderer"
1571  data-shop-id="15035836"
1572  data-render-region="gcp-us-central1"
1573  data-page-type="page"
1574  data-theme-instance-id="199773487264"
1575  data-theme-name="Beyond"
1576  data-theme-version="3.3.1"
1577  data-monorail-region="shop_domain"
1578  data-resource-timing-sampling-rate="10"
1579  data-shs="true"
1580  data-shs-beacon="true"
1581  data-shs-export-with-fetch="true"
1582  data-shs-logs-sample-rate="1"
1583  data-shs-beacon-endpoint="https://madhippie.com/api/collect"
1584></script>
1584
1585<meta name="shopify-y" content="784bf661-0311-4767-b41c-952c602071f9" data-expiration="1822621988000"><meta name="shopify-s" content="2c09778b-6731-41bf-855a-41f28cb8428f" data-expiration="1791066188000"><meta name="new-cookie-storage-activated" content="t">
1586</head>
1587
1588        
1589
1590    <style class="loop-style"> .loop-hidden {
1591  display: none !important;
1592}
1593.loop-full-width {
1594  width: 100% !important;
1595}
1596.loop-subscription-container {
1597  display: flex;
1598  flex-direction: column;
1599}
1600.loop-selling-plan-fieldset {
1601  padding: 0;
1602  margin: 15px 0;
1603  flex-basis: 100%;
1604  border-width: 0;
1605  border-style: groove;
1606  border-color: threedface;
1607  border-image: initial;
1608  border-radius: 0.5em;
1609  border: 1px solid #c3cfd9 !important;
1610  overflow: hidden !important;
1611}
1612.loop-selling-plan-fieldset-legend {
1613  display: none;
1614}
1615.loop-one-time-purchase-option-position {
1616  display: flex !important;
1617}
1618.loop-purchase-options-label {
1619  width: auto !important;
1620  flex: 2;
1621  padding: 0 !important;
1622  margin: 0 !important;
1623  font-size: 1.1em !important;
1624  line-height: 1.1em !important;
1625}
1626.loop-one-time-purchase-option {
1627  display: flex;
1628  align-items: center;
1629  width: 100% !important;
1630  padding: 1.1em !important;
1631}
1632.loop-one-time-purchase-option-radio {
1633  width: 1.2rem !important;
1634  height: 1.2rem !important;
1635  min-height: 1.2rem !important;
1636  position: initial !important;
1637  appearance: auto !important;
1638  line-height: 1.2rem !important;
1639  margin: 0 1rem 0 0 !important;
1640  padding: 0 !important;
1641}
1642.loop-one-time-purchase-option-label {
1643  width: auto !important;
1644  line-height: 1.2em !important;
1645  font-size: 1em !important;
1646  font-weight: 600 !important;
1647  flex: 2;
1648  padding: 0 !important;
1649  margin: 0 !important;
1650}
1651.loop-one-time-purchase-option-price-container {
1652  text-align: right;
1653  flex: 1;
1654}
1655.loop-one-time-purchase-option-price-amount {
1656  line-height: 1.2em !important;
1657  font-size: 1em !important;
1658}
1659
1660.loop-one-time-purchase-option-price-quantity {
1661  line-height: 1em !important;
1662  font-size: 0.8em !important;
1663  opacity: 0.8;
1664}
1665
1666.loop-selling-plan-allocation {
1667  display: flex !important;
1668}
1669
1670.loop-subscription-group {
1671  display: flex;
1672  align-items: center;
1673  flex-wrap: wrap;
1674  padding: 1.1em !important;
1675}
1676.loop-subscription-group-border-top {
1677  border-top: 1px solid #c3cfd9 !important;
1678}
1679
1680.loop-subscription-group-border-bottom {
1681  border-bottom: 1px solid #c3cfd9 !important;
1682}
1683.loop-subscription-group-radio {
1684  width: 1.2rem !important;
1685  height: 1.2rem !important;
1686  min-height: 1.2rem !important;
1687  line-height: 1.2rem;
1688  position: initial !important;
1689  appearance: auto !important;
1690  margin: 0 1rem 0 0 !important;
1691  padding: 0 !important;
1692}
1693.loop-subscription-group-text {
1694  display: flex;
1695  flex-wrap: wrap;
1696  flex: 3;
1697  align-items: center;
1698}
1699
1700.loop-subscription-group-label {
1701  width: auto !important;
1702  padding: 0;
1703  margin: 0 1em 0 0;
1704  line-height: 1.2em !important;
1705  font-size: 1em !important;
1706  font-weight: 600 !important;
1707  display: flex;
1708  align-items: center;
1709}
1710.loop-subscription-group-discount-badge {
1711  border-radius: 50px;
1712  padding: 0.3em 0.8em;
1713  background: #53cf54;
1714  display: flex;
1715  justify-content: center;
1716  width: max-content;
1717  line-height: 1.2em;
1718  font-size: 1em;
1719}
1720
1721.loop-subscription-group-price-container {
1722  text-align: right;
1723  flex: 1;
1724}
1725
1726.loop-subscription-group-price-amount {
1727  line-height: 1.2em !important;
1728  font-size: 1em !important;
1729}
1730
1731.loop-subscription-group-price-quantity {
1732  line-height: 1em !important;
1733  font-size: 0.8em !important;
1734  opacity: 0.8;
1735}
1736
1737.loop-subscription-group-selling-plans-container {
1738  display: flex;
1739  flex-wrap: wrap;
1740  align-items: center;
1741  width: 100% !important;
1742  margin-top: 0.5em;
1743  margin-left: 2.2rem;
1744}
1745
1746.loop-selling-plan-selector-label {
1747  width: auto !important;
1748  padding: 0;
1749  margin: 0.5em 0 0.5em 0;
1750  line-height: 1.2em;
1751  font-size: 1em;
1752}
1753
1754.loop-selling-plan-selector {
1755  width: auto !important;
1756  display: block !important;
1757  border-color: #c3d0d9 !important;
1758  border-width: 1px !important;
1759  margin: 6px 0 0 12px !important;
1760  padding: 0.5em 2.5em 0.5em 0.7em !important;
1761  border-radius: 5px !important;
1762  font-size: 1em !important;
1763  background-image: linear-gradient(45deg, transparent 50%, gray 50%),
1764    linear-gradient(135deg, gray 50%, transparent 50%),
1765    linear-gradient(to right, #ccc, #ccc);
1766  background-position: calc(100% - 20px) calc(1em), calc(100% - 15px) calc(1em),
1767    calc(100% - 2.5em) 0.5em;
1768  background-size: 5px 5px, 5px 5px, 0px 1.5em;
1769  background-repeat: no-repeat;
1770  -webkit-box-sizing: border-box;
1771  -moz-box-sizing: border-box;
1772  box-sizing: border-box;
1773  -webkit-appearance: none;
1774  -moz-appearance: none;
1775}
1776
1777.loop-selling-plan-selector:focus {
1778  background-image: linear-gradient(45deg, transparent 50%, gray 50%),
1779    linear-gradient(135deg, gray 50%, transparent 50%),
1780    linear-gradient(to right, #ccc, #ccc);
1781  background-position: calc(100% - 20px) calc(1em), calc(100% - 15px) calc(1em),
1782    calc(100% - 2.5em) 0.5em;
1783  background-size: 5px 5px, 5px 5px, 0px 1.5em;
1784  background-repeat: no-repeat;
1785  border-color: green;
1786  outline: 0;
1787  padding: 0.5em 2.5em 0.5em 0.7em !important;
1788}
1789
1790.loop-selling-plan-selector:-moz-focusring {
1791  color: transparent;
1792  text-shadow: 0 0 0 #000;
1793}
1794
1795.loop-selling-plan-selector-option {
1796  display: flex;
1797  align-items: center;
1798}
1799
1800.loop-selling-plan-selector-description {
1801  width: 100%;
1802  font-size: 0.9em !important;
1803  line-height: normal !important;
1804  margin: 0 !important;
1805  padding: 0 !important;
1806  opacity: 0.8;
1807}
1808
1809.loop-subscription-group-radio:not(:checked)
1810  ~ .loop-subscription-group-selling-plans-container {
1811  display: none !important;
1812}
1813
1814.loop-selling-plan-selector:focus-visible {
1815  outline: none !important;
1816  outline-offset: 0.3rem;
1817  box-shadow: none !important;
1818}
1819
1820.loop-price-container {
1821  display: flex;
1822  align-items: center;
1823  flex-direction: column;
1824}
1825.loop-price-section {
1826  width: 100%;
1827  display: flex;
1828  flex-direction: row;
1829}
1830.loop-price-section-subscription-banner {
1831  display: flex;
1832  align-items: center;
1833  font-size: 12px;
1834  padding: 0px 5px;
1835  border: 1px solid;
1836  border-radius: 5px;
1837  line-height: 11px;
1838  margin-left: 8px;
1839}
1840
1841.loop-final-price {
1842}
1843
1844.loop-compare-price {
1845  text-decoration: line-through;
1846  opacity: 0.5;
1847}
1848.loop-price-sub-text {
1849  font-size: 11px;
1850}
1851
1852.loop-dot {
1853  height: 4px;
1854  width: 4px;
1855  background-color: #000;
1856  border-radius: 50%;
1857  display: inline-block;
1858  margin: 0 10px;
1859}
1860
1861.loop-display-none {
1862  display: none !important;
1863}
1864
1865.loop-display-none-by-variant {
1866  display: none !important;
1867}
1868
1869.loop-left-margin-0 {
1870  margin-left: 0 !important;
1871}
1872
1873.loop-tooltip {
1874  position: relative;
1875  display: flex;
1876  align-items: center;
1877  width: fit-content;
1878  padding-bottom: 1em;
1879  margin-top: -10px;
1880}
1881
1882.loop-tooltip-label {
1883  display: flex;
1884  cursor: pointer;
1885}
1886.loop-tooltip-image {
1887  height: 18px;
1888  width: 18px;
1889  margin-right: 10px;
1890  display: flex;
1891  align-items: center;
1892}
1893
1894.loop-tooltip .loop-tooltiptext {
1895  visibility: hidden;
1896  width: 300px;
1897  min-width: 100%;
1898  background-color: #081d33;
1899  color: #fff;
1900  text-align: left;
1901  border-radius: 6px;
1902  padding: 15px;
1903  margin-top: -10px;
1904
1905  position: absolute;
1906  z-index: 9999 !important;
1907  top: 100%;
1908  left: 0%;
1909}
1910
1911.loop-tooltip:hover .loop-tooltiptext {
1912  visibility: visible;
1913}
1914
1915.loop-tooltip-description {
1916  margin: 0 !important;
1917  padding: 0 !important;
1918  font-size: 1em;
1919}
1920
1921.loop-container-arrow {
1922  height: 16px;
1923  width: 16px;
1924  background-color: #081d33;
1925  position: absolute;
1926}
1927
1928.loop-container-arrow--tl {
1929  left: 32px;
1930  top: 0px;
1931  border-left: 1px solid rgba(0, 0, 0, 0.3);
1932  border-top: 1px solid rgba(0, 0, 0, 0.3);
1933  transform: translate(50%, -50%) rotate(45deg);
1934}
1935 </style>
1936    
1937    <body
1938      class="template--page page--stores-mad-hippie"
1939      data-theme-id="939"
1940      data-theme-name="Beyond"
1941      data-theme-version="3.3.1"
1942      data-theme-preset=""
1943      data-transition-container="viewport">
1944      
1945      <!--[if IE]>
1946        <div style="text-align:center;padding:72px 16px;">
1947          Browser unsupported, please update or try an alternative
1948        </div>
1949        <style>
1950          .layout--viewport { display: none; }
1951        </style>
1952      <![endif]-->
1953  
1954      <a data-item="a11y-button" href='#main-content'>Skip to main content</a>
1955  
1956      <div class="layout--viewport" data-drawer-status="closed">
1957        <div class="layout--main-content">
1958          <header class="layout--header-group"><!-- BEGIN sections: header-group -->
1959<div id="shopify-section-sections--30094091485344__header" class="shopify-section shopify-section-group-header-group section--header"> <style>
1960    /* Modern Header Styles */
1961    .header--root {
1962      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1963    }
1964    
1965    .header--root[data-fixed="true"] {
1966      backdrop-filter: blur(10px);
1967      -webkit-backdrop-filter: blur(10px);
1968      background-color: rgba(255, 255, 255, 0.9);
1969      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
1970    }
1971    
1972    .header--root[data-background-color="dark"][data-fixed="true"] {
1973      background-color: rgba(0, 0, 0, 0.9);
1974    }
1975    
1976    /* Custom background color support */
1977    .header--root[data-custom-bg-color]:not([data-custom-bg-color=""]) {
1978      background-color: var(--custom-header-bg);
1979    }
1980    
1981    .header--root[data-custom-bg-color]:not([data-custom-bg-color=""])[data-fixed="true"] {
1982      background-color: color-mix(in srgb, var(--custom-header-bg) 95%, transparent) !important;
1983    }
1984    
1985    /* Desktop hover effects */
1986    @media (min-width: 768px) {
1987      .header--x-menu a {
1988        transition: all 0.2s ease;
1989        position: relative;
1990      }
1991      
1992      .header--x-menu a:hover {
1993        transform: translateY(-1px);
1994      }
1995      
1996      .header--x-menu a::after {
1997        content: '';
1998        position: absolute;
1999        bottom: -2px;
2000        left: 50%;
2001        width: 0;
2002        height: 2px;
2003        background-color: currentColor;
2004        transition: all 0.3s ease;
2005        transform: translateX(-50%);
2006      }
2007      
2008      .header--x-menu a:hover::after {
2009        width: 100%;
2010      }
2011    }
2012    
2013    /* Modern cart styles */
2014    .header--cart {
2015      position: relative;
2016      min-height: 44px;
2017      min-width: 44px;
2018      display: flex;
2019      align-items: center;
2020      justify-content: center;
2021    }
2022    
2023    .header--cart a,
2024    .header--cart [data-drawer-open] {
2025      transition: all 0.2s ease;
2026      position: relative;
2027      display: flex;
2028      align-items: center;
2029      justify-content: center;
2030      min-height: 44px;
2031      min-width: 44px;
2032    }
2033    
2034    .header--cart:hover a,
2035    .header--cart:hover [data-drawer-open] {
2036      transform: scale(1.05);
2037    }
2038    
2039    .header--cart svg,
2040    .header--cart img {
2041      width: 24px !important;
2042      height: 24px !important;
2043    }
2044    
2045    /* Hide theme's default cart count (fallback) */
2046    .cart--external--total-items {
2047      display: none !important;
2048    }
2049    
2050    /* Cart count badge - single source of truth */
2051    .header--cart::after {
2052      content: attr(data-cart-count);
2053      position: absolute;
2054      top: 2px;
2055      right: 2px;
2056      background-color: rgba(74, 85, 104, 0.9);
2057      color: white;
2058      border-radius: 50%;
2059      min-width: 18px;
2060      height: 18px;
2061      display: flex;
2062      align-items: center;
2063      justify-content: center;
2064      font-size: 11px;
2065      font-weight: 600;
2066      line-height: 1;
2067      border: 2px solid white;
2068      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
2069      opacity: 0;
2070      transform: scale(0.8);
2071      transition: all 0.3s ease;
2072      z-index: 10;
2073      pointer-events: none;
2074    }
2075    
2076    .header--cart[data-cart-count]:not([data-cart-count="0"]):not([data-cart-count=""])::after {
2077      opacity: 1;
2078      transform: scale(1);
2079    }
2080    
2081    /* Quick add animations */
2082    @keyframes cartBounce {
2083      0% { transform: scale(1); }
2084      25% { transform: scale(1.25) rotate(-5deg); }
2085      50% { transform: scale(0.95) rotate(3deg); }
2086      75% { transform: scale(1.1) rotate(-2deg); }
2087      100% { transform: scale(1) rotate(0deg); }
2088    }
2089    
2090    @keyframes cartCountPop {
2091      0% { transform: scale(1); background-color: rgba(74, 85, 104, 0.9); }
2092      50% { transform: scale(1.5); background-color: rgba(34, 197, 94, 0.95); }
2093      100% { transform: scale(1); background-color: rgba(74, 85, 104, 0.9); }
2094    }
2095    
2096    .header--cart.cart-adding {
2097      animation: cartBounce 0.6s cubic-bezier(0.68, -0.55, 0.265, 1.55);
2098    }
2099    
2100    .header--cart.cart-adding::after {
2101      animation: cartCountPop 0.5s ease 0.1s;
2102    }
2103    
2104    /* Mobile cart badge adjustments */
2105    @media (max-width: 767px) {
2106      .header--cart::after {
2107        top: 4px;
2108        right: 4px;
2109        min-width: 16px;
2110        height: 16px;
2111        font-size: 10px;
2112        border-width: 1.5px;
2113      }
2114    }
2115    
2116    /* Hide account option */
2117    .header--account[data-hidden="true"] {
2118      display: none !important;
2119    }
2120    
2121    /* Desktop Cart Preview */
2122    .header--cart-preview {
2123      position: absolute;
2124      top: calc(100% + 12px);
2125      right: 0;
2126      width: 360px;
2127      max-height: 500px;
2128      background: white;
2129      border-radius: 12px;
2130      box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
2131      opacity: 0;
2132      visibility: hidden;
2133      transform: translateY(-10px);
2134      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
2135      z-index: 9999;
2136      border: 1px solid #e5e7eb;
2137      overflow: hidden;
2138    }
2139    
2140    .cart-preview--header {
2141      padding: 20px 20px 16px;
2142      border-bottom: 1px solid #f3f4f6;
2143      display: flex;
2144      align-items: center;
2145      justify-content: space-between;
2146    }
2147    
2148    .cart-preview--title {
2149      font-size: 18px;
2150      font-weight: 600;
2151      margin: 0;
2152      color: #111827;
2153    }
2154    
2155    .cart-preview--count {
2156      font-size: 14px;
2157      color: #6b7280;
2158    }
2159    
2160    .cart-preview--items {
2161      max-height: 300px;
2162      overflow-y: auto;
2163      padding: 16px 20px;
2164    }
2165    
2166    .cart-preview--item {
2167      display: flex;
2168      gap: 12px;
2169      padding: 12px 0;
2170      border-bottom: 1px solid #f9fafb;
2171    }
2172    
2173    .cart-preview--item:last-child {
2174      border-bottom: none;
2175    }
2176    
2177    .cart-preview--item-image {
2178      flex-shrink: 0;
2179      width: 60px;
2180      height: 60px;
2181      border-radius: 8px;
2182      overflow: hidden;
2183      background-color: #f9fafb;
2184      display: flex;
2185      align-items: center;
2186      justify-content: center;
2187    }
2188    
2189    .cart-preview--item-image img {
2190      width: 100%;
2191      height: 100%;
2192      object-fit: cover;
2193    }
2194    
2195    .cart-preview--no-image {
2196      color: #d1d5db;
2197      font-size: 20px;
2198    }
2199    
2200    .cart-preview--item-details {
2201      flex: 1;
2202      min-width: 0;
2203    }
2204    
2205    .cart-preview--item-title {
2206      font-size: 14px;
2207      font-weight: 500;
2208      margin: 0 0 4px;
2209      color: #111827;
2210      line-height: 1.4;
2211      display: -webkit-box;
2212      -webkit-line-clamp: 2;
2213      -webkit-box-orient: vertical;
2214      overflow: hidden;
2215    }
2216    
2217    .cart-preview--item-variant {
2218      font-size: 12px;
2219      color: #6b7280;
2220      margin: 0 0 8px;
2221      line-height: 1.3;
2222    }
2223    
2224    .cart-preview--item-price {
2225      display: flex;
2226      align-items: center;
2227      gap: 8px;
2228      font-size: 14px;
2229    }
2230    
2231    .cart-preview--quantity {
2232      color: #6b7280;
2233    }
2234    
2235    .cart-preview--price {
2236      font-weight: 500;
2237      color: #111827;
2238    }
2239    
2240    .cart-preview--more {
2241      padding: 12px 0 0;
2242      text-align: center;
2243      border-top: 1px solid #f3f4f6;
2244    }
2245    
2246    .cart-preview--more p {
2247      margin: 0;
2248      font-size: 14px;
2249      color: #6b7280;
2250      font-style: italic;
2251    }
2252    
2253    .cart-preview--footer {
2254      padding: 16px 20px 20px;
2255      border-top: 1px solid #f3f4f6;
2256      background-color: #fafafa;
2257    }
2258    
2259    .cart-preview--total {
2260      display: flex;
2261      justify-content: space-between;
2262      align-items: center;
2263      margin-bottom: 16px;
2264      font-size: 16px;
2265    }
2266    
2267    .cart-preview--total-label {
2268      font-weight: 500;
2269      color: #374151;
2270    }
2271    
2272    .cart-preview--total-price {
2273      font-weight: 600;
2274      color: #111827;
2275    }
2276    
2277    .cart-preview--actions {
2278      display: flex;
2279      gap: 12px;
2280    }
2281    
2282    .cart-preview--view-cart,
2283    .cart-preview--checkout {
2284      flex: 1;
2285      padding: 10px 16px;
2286      border-radius: 6px;
2287      font-size: 14px;
2288      font-weight: 500;
2289      text-align: center;
2290      transition: all 0.2s ease;
2291      line-height: 1.4;
2292      border: none;
2293      cursor: pointer;
2294      text-decoration: none;
2295      display: inline-block;
2296    }
2297    
2298    .cart-preview--view-cart span,
2299    .cart-preview--checkout span {
2300      font-size: 14px;
2301      font-weight: 500;
2302      color: inherit;
2303    }
2304    
2305    .cart-preview--view-cart {
2306      background-color: white;
2307      color: #374151;
2308      border: 1px solid #d1d5db;
2309    }
2310    
2311    .cart-preview--view-cart:hover {
2312      background-color: #f9fafb;
2313      border-color: #9ca3af;
2314      color: #374151;
2315    }
2316    
2317    .cart-preview--view-cart:hover span {
2318      color: #374151;
2319    }
2320    
2321    .cart-preview--checkout {
2322      background-color: #111827;
2323      color: white;
2324      border: 1px solid #111827;
2325    }
2326    
2327    .cart-preview--checkout:hover {
2328      background-color: #1f2937;
2329      color: white;
2330    }
2331    
2332    .cart-preview--checkout:hover span {
2333      color: white;
2334    }
2335    
2336    .cart-preview--empty {
2337      padding: 40px 20px;
2338      text-align: center;
2339    }
2340    
2341    .cart-preview--empty-icon {
2342      font-size: 48px;
2343      color: #d1d5db;
2344      margin-bottom: 16px;
2345    }
2346    
2347    .cart-preview--empty-text {
2348      margin: 0 0 20px;
2349      color: #6b7280;
2350      font-size: 16px;
2351    }
2352    
2353    .cart-preview--continue-shopping {
2354      display: inline-block;
2355      padding: 10px 20px;
2356      background-color: #111827;
2357      color: white;
2358      text-decoration: none;
2359      border-radius: 6px;
2360      font-size: 14px;
2361      font-weight: 500;
2362      transition: background-color 0.2s ease;
2363    }
2364    
2365    .cart-preview--continue-shopping:hover {
2366      background-color: #1f2937;
2367    }
2368    
2369    /* Mobile search hiding */
2370    @media (max-width: 767px) {
2371      .header--search[data-mobile-hidden="true"] {
2372        display: none !important;
2373      }
2374    }
2375    
2376    /* Mobile always fixed */
2377    @media (max-width: 768px) {
2378      .header--root[data-fixed-enabled="true"] {
2379        position: fixed !important;
2380        top: 0;
2381        width: 100%;
2382        z-index: 1000;
2383        backdrop-filter: blur(10px);
2384        -webkit-backdrop-filter: blur(10px);
2385        background-color: rgba(255, 255, 255, 0.95);
2386        box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
2387      }
2388      
2389      .header--root[data-background-color="dark"][data-fixed-enabled="true"] {
2390        background-color: rgba(0, 0, 0, 0.95);
2391      }
2392    }
2393    
2394    /* Mobile touch targets */
2395    @media (max-width: 767px) {
2396      .header--cart,
2397      .header--account,
2398      .header--search {
2399        min-height: 48px;
2400        min-width: 48px;
2401        display: flex;
2402        align-items: center;
2403        justify-content: center;
2404      }
2405      
2406      .header--right-column {
2407        display: flex;
2408        align-items: center;
2409        justify-content: flex-end;
2410        gap: 8px;
2411        flex-shrink: 0;
2412      }
2413      
2414      .header--middle-column {
2415        display: flex;
2416        align-items: center;
2417        justify-content: center;
2418        flex: 1;
2419        text-align: center;
2420      }
2421      
2422      .header--left-column {
2423        display: flex;
2424        align-items: center;
2425        justify-content: flex-start;
2426        flex-shrink: 0;
2427        width: auto;
2428      }
2429      
2430      .header--top-row {
2431        display: flex;
2432        align-items: center;
2433        width: 100%;
2434        padding: 0 16px;
2435      }
2436    }
2437    
2438    /* Desktop hover effect */
2439    @media (min-width: 769px) {
2440      .header--cart:hover .header--cart-preview {
2441        opacity: 1;
2442        visibility: visible;
2443        transform: translateY(0);
2444      }
2445      
2446      .header--cart[data-hover-preview="false"] .header--cart-preview {
2447        display: none !important;
2448      }
2449    }
2450    
2451    /* Mobile Search Drawer Fix */
2452    @media (max-width: 767px) {
2453      /* Hide left drawer when mobile search is active */
2454      .drawer--instance[data-side=left].drawer--hidden-for-search {
2455        transform: translateZ(0) !important;
2456        visibility: hidden !important;
2457        opacity: 0 !important;
2458        pointer-events: none !important;
2459        transition: all 0.3s ease;
2460      }
2461      
2462      /* Ensure search drawer appears above everything */
2463      .drawer--instance[data-side=top] {
2464        z-index: 10001 !important;
2465      }
2466      
2467      /* Make sure search drawer overlay is above left drawer */
2468      .drawer--instance[data-side=top] .drawer--overlay {
2469        z-index: 10000 !important;
2470      }
2471    }
2472  </style><div class="header--fill-for-fixing"></div><header-root
2473    class="header--root"
2474    data-section-id="sections--30094091485344__header"
2475    data-background-color="none"
2476    data-custom-bg-color="#fafafa"
2477    data-light-text="false"
2478    data-logo-position="above"
2479    data-fixed="true"
2480    data-fixed-enabled="true"
2481    data-always-compact="true"
2482    style="display:block;--header-logo--max-height:30px;--header-logo--max-width:172.56px;background-color:#fafafa;"
2483  ><div class="header--y-menu-for-drawer" style="display:none;"><style>
2484  .y-menu--level-1--link a {
2485    font-family: 'PP Mori', sans-serif;
2486    font-size: 16px;
2487    font-weight: 600;
2488    letter-spacing: 0.5px;
2489    padding: 18px 35px 18px 20px;
2490  }
2491
2492  .y-menu--level-1--link:not([data-y-menu--depth="2"]):not([data-y-menu--depth="3"]) a {
2493    font-weight: 700;
2494  }
2495
2496  .y-menu--level-1--link[data-y-menu--depth="2"] a,
2497  .y-menu--level-1--link[data-y-menu--depth="3"] a {
2498    font-weight: 500;
2499    color: var(--color--body--light);
2500  }
2501
2502  .y-menu--level-1--link .icon--chevron-right--small {
2503    opacity: 0.5;
2504  }
2505
2506  .y-menu--level-2--link a,
2507  .y-menu--level-3--link a,
2508  .y-menu--parent-link a,
2509  .y-menu--back-link a {
2510    font-family: 'PP Mori', sans-serif;
2511    padding: 16px 35px 16px 20px;
2512    font-size: 15px;
2513  }
2514
2515  .y-menu--back-link a {
2516    font-weight: 600;
2517    font-size: 14px;
2518  }
2519
2520  @media only screen and (min-width: 768px) {
2521    .y-menu--logo {
2522      display: block;
2523      padding: 40px 20px 30px;
2524      text-align: center;
2525    }
2526    
2527    .y-menu--logo img {
2528      max-width: 140px;
2529      height: auto;
2530    }
2531
2532    .y-menu--level-1--link a,
2533    .y-menu--level-2--link a,
2534    .y-menu--level-3--link a,
2535    .y-menu--parent-link a,
2536    .y-menu--back-link a {
2537      transition: background-color 0.2s ease, padding-left 0.2s ease;
2538    }
2539
2540    .y-menu--level-1--link a:hover,
2541    .y-menu--level-2--link a:hover,
2542    .y-menu--level-3--link a:hover,
2543    .y-menu--parent-link a:hover {
2544      background-color: var(--bg-color--light, #f9f9f9);
2545      padding-left: 24px;
2546    }
2547
2548    .y-menu--level-1--link a:hover .icon--chevron-right--small {
2549      opacity: 1;
2550    }
2551
2552    .y-menu--back-link a:hover {
2553      background-color: var(--bg-color--light, #f9f9f9);
2554    }
2555  }
2556
2557  @media only screen and (max-width: 767px) {
2558    .y-menu--logo {
2559      display: none;
2560    }
2561  }
2562</style><y-menu-root class="y-menu">
2563  <ul class="y-menu--level-1--container">
2564    
2565<li
2566        class="y-menu--level-1--link"
2567        data-item="nav-text"
2568        data-y-menu--depth="1"
2569        data-y-menu--open="false"
2570        data-link-id="shop-all"
2571        
2572      ><a href="/collections/shop-all">Shop All</a></li><li
2573        class="y-menu--level-1--link"
2574        data-item="nav-text"
2575        data-y-menu--depth="1"
2576        data-y-menu--open="false"
2577        data-link-id="deals"
2578        
2579      ><a href="/collections/routines">Deals</a></li><li
2580        class="y-menu--level-1--link"
2581        data-item="nav-text"
2582        data-y-menu--depth="1"
2583        data-y-menu--open="false"
2584        data-link-id="suncare"
2585        
2586      ><a href="/collections/suncare">Suncare</a></li><li
2587        class="y-menu--level-1--link"
2588        data-item="nav-text"
2589        data-y-menu--depth="1"
2590        data-y-menu--open="false"
2591        data-link-id="skin-quiz"
2592        
2593      ><a href="/pages/mad-hippie-skincare-quiz">Skin Quiz</a></li><li
2594        class="y-menu--level-1--link"
2595  
2595      data-item="nav-text"
2596        data-y-menu--depth="1"
2597        data-y-menu--open="false"
2598        data-link-id="routine-builder"
2599        
2600      ><a href="/pages/routine-builder">Routine Builder</a></li><li
2601        class="y-menu--level-1--link"
2602        data-item="nav-text"
2603        data-y-menu--depth="1"
2604        data-y-menu--open="false"
2605        data-link-id="results"
2606        
2607      ><a href="/pages/results">Results</a></li><li
2608        class="y-menu--level-1--link"
2609        data-item="nav-text"
2610        data-y-menu--depth="2"
2611        data-y-menu--open="false"
2612        data-link-id="about-us"
2613        
2614      ><a
2615            href="https://madhippie.com/pages/our-skin-care-philosophy"
2616            data-submenu="true"
2617            aria-haspopup="true"
2618            aria-expanded="false"
2619            aria-controls="y-menu--sub-about-us"
2620          >
2621            About us
2622<svg class="icon--root icon--chevron-right--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg">
2623      <path d="M6.274 7.202.408 1.336l.707-.707 6.573 6.573-.096.096-6.573 6.573-.707-.707 5.962-5.962Z" fill="#000" fill-rule="nonzero" />
2624    </svg></a><ul
2625            class="y-menu--level-2--container"
2626            
2627              data-y-menu--parent-link="level-2"
2628            
2629            id="y-menu--sub-about-us"
2630          >
2631            <li class="y-menu--back-link">
2632              <a href="#"><svg class="icon--root icon--chevron-left--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg">
2633      <path d="m1.726 7.298 5.866 5.866-.707.707L.312 7.298l.096-.096L6.981.629l.707.707-5.962 5.962Z" fill="#000" fill-rule="nonzero" />
2634    </svg> Back</a>
2635            </li><li class="y-menu--parent-link">
2636                <a href="https://madhippie.com/pages/our-skin-care-philosophy">About us</a>
2637              </li><li
2638                class="y-menu--level-2--link"
2639                data-item="nav-text"
2640                data-link-id="about-us--skin-care-philosophy"
2641              >
2642                <a href="https://www.madhippie.com/pages/our-skin-care-philosophy" data-submenu="true">Skin Care Philosophy</a>
2643
2644                
2645</li><li
2646                class="y-menu--level-2--link"
2647                data-item="nav-text"
2648                data-link-id="about-us--the-hippie-creed"
2649              >
2650                <a href="/pages/about-us" data-submenu="true">The Hippie Creed</a>
2651
2652                
2653</li><li
2654                class="y-menu--level-2--link"
2655                data-item="nav-text"
2656                data-link-id="about-us--conservation-giving-back"
2657              >
2658                <a href="/pages/conservation-efforts" data-submenu="true">Conservation / Giving Back</a>
2659
2660                
2661</li><li
2662                class="y-menu--level-2--link"
2663                data-item="nav-text"
2664                data-link-id="about-us--our-story"
2665              >
2666                <a href="/pages/our-story" data-submenu="true">Our Story</a>
2667
2668                
2669</li><li
2670                class="y-menu--level-2--link"
2671                data-item="nav-text"
2672                data-link-id="about-us--press"
2673              >
2674                <a href="/pages/press" data-submenu="true">Press</a>
2675
2676                
2677</li></ul></li><li
2678        class="y-menu--level-1--link"
2679        data-item="nav-text"
2680        data-y-menu--depth="2"
2681        data-y-menu--open="false"
2682        data-link-id="more"
2683        
2684      ><a
2685            href="/pages/guarantee"
2686            data-submenu="true"
2687            aria-haspopup="true"
2688            aria-expanded="false"
2689            aria-controls="y-menu--sub-more"
2690          >
2691            More
2692<svg class="icon--root icon--chevron-right--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg">
2693      <path d="M6.274 7.202.408 1.336l.707-.707 6.573 6.573-.096.096-6.573 6.573-.707-.707 5.962-5.962Z" fill="#000" fill-rule="nonzero" />
2694    </svg></a><ul
2695            class="y-menu--level-2--container"
2696            
2697              data-y-menu--parent-link="level-2"
2698            
2699            id="y-menu--sub-more"
2700          >
2701            <li class="y-menu--back-link">
2702              <a href="#"><svg class="icon--root icon--chevron-left--small" width="8" height="14" viewBox="0 0 8 14" xmlns="http://www.w3.org/2000/svg">
2703      <path d="m1.726 7.298 5.866 5.866-.707.707L.312 7.298l.096-.096L6.981.629l.707.707-5.962 5.962Z" fill="#000" fill-rule="nonzero" />
2704    </svg> Back</a>
2705            </li><li class="y-menu--parent-link">
2706                <a href="/pages/guarantee">More</a>
2707              </li><li
2708                class="y-menu--level-2--link"
2709                data-item="nav-text"
2710                data-link-id="more--recycle-with-pact"
2711              >
2712                <a href="/pages/pact-collective" data-submenu="true">Recycle with Pact</a>
2713
2714                
2715</li><li
2716                class="y-menu--level-2--link"
2717                data-item="nav-text"
2718                data-link-id="more--stores"
2719              >
2720                <a href="/pages/stores" data-submenu="true">Stores</a>
2721
2722                
2723</li><li
2724                class="y-menu--level-2--link"
2725                data-item="nav-text"
2726                data-link-id="more--pro-tips"
2727              >
2728                <a href="/pages/pro-tips" data-submenu="true">Pro Tips</a>
2729
2730                
2731</li><li
2732                class="y-menu--level-2--link"
2733                data-item="nav-text"
2734                data-link-id="more--faq"
2735              >
2736                <a href="https://madhippie.com/a/faq" data-submenu="true">FAQ</a>
2737
2738                
2739</li><li
2740                class="y-menu--level-2--link"
2741                data-item="nav-text"
2742                data-link-id="more--guarantee"
2743              >
2744                <a href="/pages/guarantee" data-submenu="true">Guarantee</a>
2745
2746                
2747</li><li
2748                class="y-menu--level-2--link"
2749                data-item="nav-text"
2750                data-link-id="more--contact-us"
2751              >
2752                <a href="https://madhippie.com/pages/contact-us" data-submenu="true">Contact Us</a>
2753
2754                
2755</li><li
2756                class="y-menu--level-2--link"
2757                data-item="nav-text"
2758                data-link-id="more--manage-subscription"
2759              >
2760                <a href="https://madhippie.com/a/loop_subscriptions/get-subscription-link" data-submenu="true">Manage Subscription</a>
2761
2762                
2763</li><li
2764                class="y-menu--level-2--link"
2765                data-item="nav-text"
2766                data-link-id="more--ingredient-science"
2767              >
2768                <a href="/blogs/naked-ingredients" data-submenu="true">Ingredient Science</a>
2769
2770                
2771</li></ul></li><li
2772        class="y-menu--level-1--link"
2773        data-item="nav-text"
2774        data-y-menu--depth="1"
2775        data-y-menu--open="false"
2776        data-link-id="visit-our-flagship"
2777        
2778      ><a href="/pages/visit-us">Visit our Flagship</a></li></ul></y-menu-root></div>
2779  
2780    <div class="header--top-row">
2781      <div class="header--left-column">
2782        <div class="header--menu-icon">
2783          <div class="x-menu--overlap-icon">
2784            <div
2785              tabindex="0"
2786              role="button"
2787              aria-label="Open navigation menu"
2788              data-drawer-open="left"
2789              data-drawer-view="y-menu"
2790              aria-haspopup="menu"
2791            >
2791<svg class="icon--root icon--menu" width="22" height="16" viewBox="0 0 22 16" xmlns="http://www.w3.org/2000/svg">
2792      <path d="M0 2.4V.6h22v1.8H0Zm0 6.584v-1.8h22v1.8H0Zm0 6.584v-1.8h22v1.8H0Z" fill="#000" fill-rule="nonzero" />
2793    </svg></div>
2794          </div>
2795        </div></div>
2796  
2797      <div class="header--middle-column">
2798        <div class="header--logo" data-position="center">
2799          
2800<div
2801  class="logo--root"
2802  data-type="image"
2803  itemscope
2804  itemtype="https://schema.org/Organization"
2805>
2806  <a
2807    class="logo--wrapper"
2808    href="/"
2809    title="Mad Hippie"
2810    itemprop="url"
2811  ><img
2812        class="logo--image logo-coll-bundle"
2813        src="//madhippie.com/cdn/shop/files/MH-Logo-Effect.png?v=1752971310&width=402"
2814        srcset="//madhippie.com/cdn/shop/files/MH-Logo-Effect.png?v=1752971310&width=201 1x, //madhippie.com/cdn/shop/files/MH-Logo-Effect.png?v=1752971310&width=402 2x"
2815        alt="Mad Hippie"
2816        itemprop="logo"
2817        width="402"
2818        height="70"
2819        fetchpriority="high"style="object-position:50.0% 50.0%">
2820      <style>
2821        .logo--image {
2822          height: auto;
2823          width: 201px;
2824        }
2825
2826        @media only screen and (max-width: 767px) {
2827          .logo--image {
2828            width: 173px;
2829          }
2830        }
2831      </style></a>
2832</div>
2833        </div>
2834      </div>
2835  
2836      <div class="header--right-column default-header" data-item="nav-text">
2837        <div class="header--localization"><form method="post" action="/localization" id="header--localization" accept-charset="UTF-8" class="shopify-localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/pages/stores" /></form></div>
2838
2839        
2840<div
2841            class="header--search"
2842            role="button"
2843            data-drawer-open="top"
2844            data-drawer-view="search"
2845            data-mobile-hidden="true"
2846            tabindex="0"
2847            aria-label="Search"
2848          ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
2849      <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" />
2850    </svg></div>
2851          <div class="mobile-nav--search--for-drawer" style="display:none;">
2852            <div
2853              data-drawer-open="top"
2854              data-drawer-view="search"
2855              tabindex="0"
2856              aria-label="Search"
2857              data-mq="small"
2858            ><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
2859      <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" />
2860    </svg></div>
2861          </div>
2862<div class="header--cart" data-cart-count="0" data-hover-preview="false"><div class="cart--external--icon" data-item-count="0">
2863  <a
2864    class="header--cart-toggle"
2865    aria-label="Cart"
2866    
2867      data-drawer-open="right"
2868      data-drawer-view="cart-drawer"
2869      aria-haspopup="menu"
2870      href="#"
2871    
2872  >
2873    <svg class="icon--root icon--bag" width="18" height="21" viewBox="0 0 18 21" xmlns="http://www.w3.org/2000/svg">
2874      <path d="M5.156 3.99A3.837 3.837 0 0 1 9 .3a3.837 3.837 0 0 1 3.844 3.69h4.49l.389 14.704a1.75 1.75 0 0 1-1.704 1.795H2.027a1.75 1.75 0 0 1-1.75-1.75l.001-.046L.674 3.99h4.482Zm1.502 0h4.684A2.337 2.337 0 0 0 9 1.8a2.337 2.337 0 0 0-2.342 2.19Zm-1.506 1.5H2.135l-.358 13.243v.007c0 .138.112.25.25.25h13.946a.251.251 0 0 0 .25-.257L15.874 5.49h-3.026v2.823h-1.5V5.49H6.
2874652v2.823h-1.5V5.49Z" fill="#000" fill-rule="nonzero" />
2875    </svg>
2876  </a>
2877
2878  <noscript>
2879    <a
2880      class="header--cart-toggle--noscript"
2881      aria-label="Cart"
2882      href="/cart"
2883    >
2884      <svg class="icon--root icon--bag" width="18" height="21" viewBox="0 0 18 21" xmlns="http://www.w3.org/2000/svg">
2885      <path d="M5.156 3.99A3.837 3.837 0 0 1 9 .3a3.837 3.837 0 0 1 3.844 3.69h4.49l.389 14.704a1.75 1.75 0 0 1-1.704 1.795H2.027a1.75 1.75 0 0 1-1.75-1.75l.001-.046L.674 3.99h4.482Zm1.502 0h4.684A2.337 2.337 0 0 0 9 1.8a2.337 2.337 0 0 0-2.342 2.19Zm-1.506 1.5H2.135l-.358 13.243v.007c0 .138.112.25.25.25h13.946a.251.251 0 0 0 .25-.257L15.874 5.49h-3.026v2.823h-1.5V5.49H6.652v2.823h-1.5V5.49Z" fill="#000" fill-rule="nonzero" />
2886    </svg>
2887      <span class="cart--external--total-items"></span>
2888    </a>
2889  </noscript>
2890</div>
2891<span data-cart-count-sr aria-live="polite" style="position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;">0 items in cart</span></div>
2892      </div>
2893    </div><div class="header--bottom-row" data-view="with-js">
2894        <div class="header--bottom-row--container">
2895          <div class="header--x-menu" data-position="below"><x-menu-root
2896  class="x-menu"
2897  role="navigation"
2898  aria-label="Main navigation"
2899  data-item="nav-text"
2900  data-x-menu--align=""
2901  
2902    data-x-menu--overlap
2903    data-x-menu--overlap-parent="2"
2904   
2905  style="display:inline-block;"
2906><ul class="x-menu--level-1--container"><li
2907        class="x-menu--level-1--link"
2908        data-x-menu--depth="1"
2909        data-x-menu--open="false"
2910        data-state="closed"
2911        data-link-id="shop-all"
2912      ><a href="/collections/shop-all"><span>Shop All</span></a></li><li
2913        class="x-menu--level-1--link"
2914        data-x-menu--depth="1"
2915        data-x-menu--open="false"
2916        data-state="closed"
2917        data-link-id="deals"
2918      ><a href="/collections/routines"><span>Deals</span></a></li><li
2919        class="x-menu--level-1--link"
2920        data-x-menu--depth="1"
2921        data-x-menu--open="false"
2922        data-state="closed"
2923        data-link-id="suncare"
2924      ><a href="/collections/suncare"><span>Suncare</span></a></li><li
2925        class="x-menu--level-1--link"
2926        data-x-menu--depth="1"
2927        data-x-menu--open="false"
2928        data-state="closed"
2929        data-link-id="skin-quiz"
2930      ><a href="/pages/mad-hippie-skincare-quiz"><span>Skin Quiz</span></a></li><li
2931        class="x-menu--level-1--link"
2932        data-x-menu--depth="1"
2933        data-x-menu--open="false"
2934        data-state="closed"
2935        data-link-id="routine-builder"
2936      ><a href="/pages/routine-builder"><span>Routine Builder</span></a></li><li
2937        class="x-menu--level-1--link"
2938        data-x-menu--depth="1"
2939        data-x-menu--open="false"
2940        data-state="closed"
2941        data-link-id="results"
2942      ><a href="/pages/results"><span>Results</span></a></li><li
2943        class="x-menu--level-1--link"
2944        data-x-menu--depth="2"
2945        data-x-menu--open="false"
2946        data-state="closed"
2947        data-link-id="about-us"
2948      ><a
2949            href="https://madhippie.com/pages/our-skin-care-philosophy"
2950            aria-haspopup="true"
2951            aria-expanded="false"
2952            aria-controls="x-menu--sub-about-us"
2953          >
2954            <span>About us</span>&nbsp;<svg class="icon--root icon--chevron-down" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
2955      <path d="M5 4.058 8.53.528l.707.707-3.53 3.53L5 5.472.763 1.235 1.47.528 5 4.058Z" fill="#000" fill-rule="nonzero" />
2956    </svg><svg class="icon--root icon--chevron-up" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
2957      <path d="m5 1.942-3.53 3.53-.707-.707 3.53-3.53L5 .528l4.237 4.237-.707.707L5 1.942Z" fill="#000" fill-rule="nonzero" />
2958    </svg></a><div
2959            class="x-menu--level-2--container"
2960            id="x-menu--sub-about-us"
2961            aria-hidden="true"
2962            style="display:none;"
2963          ><ul class="x-menu--level-2--list"><li
2964                  class="x-menu--level-2--link"
2965                  data-link-id="about-us--skin-care-philosophy"
2966                  
2967                    data-x-menu--single-parent="true"
2968                  
2969                >
2970                  <a href="https://www.madhippie.com/pages/our-skin-care-philosophy">Skin Care Philosophy</a></li><li
2971                  class="x-menu--level-2--link"
2972                  data-link-id="about-us--the-hippie-creed"
2973                  
2974                    data-x-menu--single-parent="true"
2975                  
2976                >
2977                  <a href="/pages/about-us">
2977The Hippie Creed</a></li><li
2978                  class="x-menu--level-2--link"
2979                  data-link-id="about-us--conservation-giving-back"
2980                  
2981                    data-x-menu--single-parent="true"
2982                  
2983                >
2984                  <a href="/pages/conservation-efforts">Conservation / Giving Back</a></li><li
2985                  class="x-menu--level-2--link"
2986                  data-link-id="about-us--our-story"
2987                  
2988                    data-x-menu--single-parent="true"
2989                  
2990                >
2991                  <a href="/pages/our-story">Our Story</a></li><li
2992                  class="x-menu--level-2--link"
2993                  data-link-id="about-us--press"
2994                  
2995                    data-x-menu--single-parent="true"
2996                  
2997                >
2998                  <a href="/pages/press">Press</a></li></ul>
2999          </div></li><li
3000        class="x-menu--level-1--link"
3001        data-x-menu--depth="2"
3002        data-x-menu--open="false"
3003        data-state="closed"
3004        data-link-id="more"
3005      ><a
3006            href="/pages/guarantee"
3007            aria-haspopup="true"
3008            aria-expanded="false"
3009            aria-controls="x-menu--sub-more"
3010          >
3011            <span>More</span>&nbsp;<svg class="icon--root icon--chevron-down" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
3012      <path d="M5 4.058 8.53.528l.707.707-3.53 3.53L5 5.472.763 1.235 1.47.528 5 4.058Z" fill="#000" fill-rule="nonzero" />
3013    </svg><svg class="icon--root icon--chevron-up" width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg">
3014      <path d="m5 1.942-3.53 3.53-.707-.707 3.53-3.53L5 .528l4.237 4.237-.707.707L5 1.942Z" fill="#000" fill-rule="nonzero" />
3015    </svg></a><div
3016            class="x-menu--level-2--container"
3017            id="x-menu--sub-more"
3018            aria-hidden="true"
3019            style="display:none;"
3020          ><ul class="x-menu--level-2--list"><li
3021                  class="x-menu--level-2--link"
3022                  data-link-id="more--recycle-with-pact"
3023                  
3024                    data-x-menu--single-parent="true"
3025                  
3026                >
3027                  <a href="/pages/pact-collective">Recycle with Pact</a></li><li
3028                  class="x-menu--level-2--link"
3029                  data-link-id="more--stores"
3030                  
3031                    data-x-menu--single-parent="true"
3032                  
3033                >
3034                  <a href="/pages/stores">Stores</a></li><li
3035                  class="x-menu--level-2--link"
3036                  data-link-id="more--pro-tips"
3037                  
3038                    data-x-menu--single-parent="true"
3039                  
3040                >
3041                  <a href="/pages/pro-tips">Pro Tips</a></li><li
3042                  class="x-menu--level-2--link"
3043                  data-link-id="more--faq"
3044                  
3045                    data-x-menu--single-parent="true"
3046                  
3047                >
3048                  <a href="https://madhippie.com/a/faq">FAQ</a></li><li
3049                  class="x-menu--level-2--link"
3050                  data-link-id="more--guarantee"
3051                  
3052                    data-x-menu--single-parent="true"
3053                  
3054                >
3055                  <a href="/pages/guarantee">Guarantee</a></li><li
3056                  class="x-menu--level-2--link"
3057                  data-link-id="more--contact-us"
3058                  
3059                    data-x-menu--single-parent="true"
3060                  
3061                >
3062                  <a href="https://madhippie.com/pages/contact-us">Contact Us</a></li><li
3063                  class="x-menu--level-2--link"
3064                  data-link-id="more--manage-subscription"
3065                  
3066                    data-x-menu--single-parent="true"
3067                  
3068                >
3069                  <a href="https://madhippie.com/a/loop_subscriptions/get-subscription-link">Manage Subscription</a></li><li
3070                  class="x-menu--level-2--link"
3071                  data-link-id="more--ingredient-science"
3072                  
3073                    data-x-menu--single-parent="true"
3074                  
3075                >
3076                  <a href="/blogs/naked-ingredients">Ingredient Science</a></li></ul>
3077          </div></li><li
3078        class="x-menu--level-1--link"
3079        data-x-menu--depth="1"
3080        data-x-menu--open="false"
3081        data-state="closed"
3082        data-link-id="visit-our-flagship"
3083      ><a href="/pages/visit-us"><span>Visit our Flagship</span></a></li></ul></x-menu-root></div>
3084        </div>
3085        <div class="header--bottom-row--edge-detector"></div>
3086      </div><noscript>
3087      <div class="header--bottom-row" data-view="no-js">
3088        <div class="header--bottom-row--container">
3089          <div class="header--x-menu" data-position="below"><style>
3090    @media only screen and (min-width: 768px) {
3091      .x-menu--level-1--container {
3092        display: flex;
3093        flex-wrap: wrap;
3094      }
3095    }
3096  </style><x-menu-root
3097  class="x-menu"
3098  role="navigation"
3099  aria-label="Main navigation"
3100  data-item="nav-text"
3101  data-x-menu--align=""
3102  
3103    data-x-menu--overlap
3104    data-x-menu--overlap-parent="2"
3105   
3106  style="display:inline-block;"
3107><ul class="x-menu--level-1--container"></ul></x-menu-root></div>
3108        </div>
3109        <div class="header--bottom-row--edge-detector"></div>
3110      </div>
3111    </noscript>
3112  </header-root>
3113
3114  
3114<script>
3115    // Modern header functionality
3116    document.addEventListener('DOMContentLoaded', function() {
3117      const header = document.querySelector('.header--root');
3118      const fixEnabled = header.dataset.fixedEnabled === 'true';
3119      const alwaysCompact = header.dataset.alwaysCompact === 'true';
3120      const customBgColor = header.dataset.customBgColor;
3121      
3122      // Set custom background color CSS variable
3123      if (customBgColor && customBgColor !== '') {
3124        document.documentElement.style.setProperty('--custom-header-bg', customBgColor);
3125      }
3126      
3127      // Check if mobile
3128      const isMobile = window.innerWidth <= 768;
3129      
3130      // If always-compact is enabled, keep header in fixed/compact state always
3131      if (alwaysCompact) {
3132        header.dataset.fixed = 'true';
3133        // No scroll behavior needed - always compact
3134      } else if (fixEnabled) {
3135        if (isMobile) {
3136          // On mobile, keep header always fixed with glass effect
3137          header.dataset.fixed = 'true';
3138          header.style.position = 'fixed';
3139          header.style.top = '0';
3140          header.style.width = '100%';
3141          header.style.zIndex = '1000';
3142        } else {
3143          // Desktop sticky behavior - only if NOT always-compact
3144          let ticking = false;
3145          let lastScrollY = window.scrollY;
3146          
3147          function updateHeader() {
3148            const currentScrollY = window.scrollY;
3149            const scrolled = currentScrollY > 50;
3150            
3151            if (header.dataset.fixed !== scrolled.toString()) {
3152              header.dataset.fixed = scrolled;
3153            }
3154            
3155            lastScrollY = currentScrollY;
3156            ticking = false;
3157          }
3158          
3159          function requestTick() {
3160            if (!ticking) {
3161              requestAnimationFrame(updateHeader);
3162              ticking = true;
3163            }
3164          }
3165          
3166          let throttleTimer;
3167          window.addEventListener('scroll', function() {
3168            if (throttleTimer) {
3169              return;
3170            }
3171            
3172            throttleTimer = setTimeout(function() {
3173              requestTick();
3174              throttleTimer = null;
3175            }, 16);
3176          }, { passive: true });
3177        }
3178      }
3179      
3180      // Cart count animation
3181      const cartCount = document.querySelector('.header--cart[data-cart-count]');
3182      if (cartCount) {
3183        const observer = new MutationObserver(function(mutations) {
3184          mutations.forEach(function(mutation) {
3185            if (mutation.type === 'attributes' && mutation.attributeName === 'data-cart-count') {
3186              const newCount = cartCount.getAttribute('data-cart-count');
3187              // Keep the screen-reader-only live count in sync so changes are announced.
3188              const srCount = cartCount.querySelector('[data-cart-count-sr]');
3189              if (srCount) {
3190                const n = parseInt(newCount, 10) || 0;
3191                srCount.textContent = n + (n === 1 ? ' item' : ' items') + ' in cart';
3192              }
3193              if (newCount && newCount !== '0') {
3194                cartCount.style.setProperty('--cart-animation', 'cartBounce 0.3s ease');
3195                setTimeout(() => {
3196                  cartCount.style.removeProperty('--cart-animation');
3197                }, 300);
3198              }
3199            }
3200          });
3201        });
3202        
3203        observer.observe(cartCount, {
3204          attributes: true,
3205          attributeFilter: ['data-cart-count']
3206        });
3207      }
3208      
3209      // A11y: Space-key activation for role="button" elements that aren't native buttons/links.
3210      // The theme's core JS already handles Enter; this adds Space (expected for button role) without double-firing.
3211      document.addEventListener('keydown', function(e) {
3212        if (e.key !== ' ' && e.key !== 'Spacebar') return;
3213        var btn = e.target && e.target.closest ? e.target.closest('[role="button"]') : null;
3214        if (!btn) return;
3215        if (btn.tagName === 'BUTTON' || btn.tagName === 'A') return; // native handling
3216        if (document.activeElement !== btn) return; // only when the button itself is focused
3217        e.preventDefault(); // stop page scroll on Space
3218        btn.click();
3219      });
3220
3221      // Mobile search drawer fix
3222      function handleMobileSearchDrawer() {
3223        const searchButton = document.querySelector('.header--search[data-drawer-open="top"]');
3224        
3225        if (!searchButton) return;
3226        
3227        // Function to hide left drawer when search opens
3228        function hideLeftDrawerForSearch() {
3229          const leftDrawer = document.querySelector('.drawer--instance[data-side=left]');
3230          if (leftDrawer) {
3231            // Add a class to disable the transform
3232            leftDrawer.classList.add('drawer--hidden-for-search');
3233            
3234            // Also set aria-expanded to false to ensure proper accessibility
3235            leftDrawer.setAttribute('aria-expanded', 'false');
3236          }
3237        }
3238        
3239        // Function to restore left drawer when search closes
3240        function restoreLeftDrawer() {
3241          const leftDrawer = document.querySelector('.drawer--instance[data-side=left]');
3242          if (leftDrawer) {
3243            leftDrawer.classList.remove('drawer--hidden-for-search');
3244          }
3245        }
3246        
3247        // Listen for search button clicks
3248        searchButton.addEventListener('click', function() {
3249          hideLeftDrawerForSearch();
3250        });
3251        
3252        // Listen for search button keydown (for accessibility)
3253        searchButton.addEventListener('keydown', function(e) {
3254          if (e.key === 'Enter' || e.key === ' ') {
3255            hideLeftDrawerForSearch();
3256          }
3257        });
3258        
3259        // Listen for drawer state changes using MutationObserver
3260        const observer = new MutationObserver(function(mutations) {
3261          mutations.forEach(function(mutation) {
3262            if (mutation.type === 'attributes' && mutation.attributeName === 'aria-expanded') {
3263              const isSearchOpen = document.querySelector('.drawer--instance[data-side=top][aria-expanded="true"]');
3264              
3265              if (!isSearchOpen) {
3266                // Search drawer is closed, restore left drawer
3267                restoreLeftDrawer();
3268              }
3269            }
3270          });
3271        });
3272        
3273        // Wait for drawer elements to be available, then observe them
3274        const checkForDrawers = setInterval(function() {
3275          const allDrawers = document.querySelectorAll('.drawer--instance');
3276          if (allDrawers.length > 0) {
3277            allDrawers.forEach(function(drawer) {
3278              observer.observe(drawer, {
3279                attributes: true,
3280                attributeFilter: ['aria-expanded']
3281              });
3282            });
3283            clearInterval(checkForDrawers);
3284          }
3285        }, 100);
3286        
3287        // Alternative: Listen for clicks on drawer close buttons or overlay
3288        document.addEventListener('click', function(e) {
3289          // If clicking on drawer close or overlay, restore left drawer
3290          if (e.target.matches('[data-drawer-close]') || 
3291              e.target.matches('.drawer--overlay') ||
3292              e.target.closest('[data-drawer-close]')) {
3293            setTimeout(restoreLeftDrawer, 100); // Small delay to ensure drawer is closed
3294          }
3295        });
3296        
3297        // Listen for ESC key to close search
3298        document.addEventListener('keydown', function(e) {
3299          if (e.key === 'Escape') {
3300            setTimeout(restoreLeftDrawer, 100); // Small delay to ensure drawer is closed
3301          }
3302        });
3303      }
3304      
3305      // Initialize the mobile search fix
3306      handleMobileSearchDrawer();
3307    });
3308    
3309    // Global function to trigger cart animation (called by quick-add sections)
3310    window.animateCartIcon = function(newCount) {
3311      const cartEl = document.querySelector('.header--cart[data-cart-count]');
3312      if (!cartEl) return;
3313      
3314      // Update the count
3315      if (typeof newCount !== 'undefined') {
3316        cartEl.setAttribute('data-cart-count', newCount);
3317      }
3318      
3319      // Remove animation class if already present
3320      cartEl.classList.remove('cart-adding');
3321      
3322      // Force reflow to restart animation
3323      void cartEl.offsetWidth;
3324      
3325      // Add animation class
3326      cartEl.classList.add('cart-adding');
3327      
3328      // Remove class after animation completes
3329      setTimeout(() => {
3330        cartEl.classList.remove('cart-adding');
3331      }, 700);
3332    };
3333    
3334    // Listen for quick-add events
3335    document.addEventListener('quickadd:success', function(e) {
3336      const cart = e.detail?.cart;
3337      if (cart && typeof cart.item_count !== 'undefined') {
3338        window.animateCartIcon(cart.item_count);
3339      }
3340    });
3341    
3342    // Listen for theme cart events (varies by theme)
3343    document.addEventListener('cart:updated', function(e) {
3344      const cart = e.detail?.cart || e.detail;
3345      if (cart && typeof cart.item_count !== 'undefined') {
3346        window.animateCartIcon(cart.item_count);
3347      }
3348    });
3349    
3350    // Listen for Shopify's native cart change
3351    document.addEventListener('cart:change', function(e) {
3352      const cart = e.detail?.cart || e.detail;
3353      if (cart && typeof cart.item_count !== 'undefined') {
3354        window.animateCartIcon(cart.item_count);
3355      }
3356    });
3357    
3358    // Intercept fetch requests to /cart/add to catch all add-to-cart actions
3359    (function() {
3360      const originalFetch = window.fetch;
3361      window.fetch = function(...args) {
3362        const [url, options] = args;
3363        const urlString = typeof url === 'string' ? url : url?.url || '';
3364        
3365        return originalFetch.apply(this, args).then(response => {
3366          // Check if this was a cart add/update request
3367          if (urlString.includes('/cart/add') || urlString.includes('/cart/change') || urlString.includes('/cart/update')) {
3368            // Clone response so we can read it
3369            response.clone().json().then(data => {
3370              // Fetch fresh cart data to get accurate count
3371              fetch('/cart.js')
3372                .then(r => r.json())
3373                .then(cart => {
3374                  if (typeof cart.item_count !== 'undefined') {
3375                    window.animateCartIcon(cart.item_count);
3376                  }
3377                })
3378                .catch(() => {});
3379            }).catch(() => {});
3380          }
3381          return response;
3382        });
3383      };
3384    })();
3385  </script>
3385
3386
3387
3388
3389
3390</div>
3391<!-- END sections: header-group --></header>
3392  
3393          <div class="layout--overlay-group"><!-- BEGIN sections: overlay-group -->
3394<!-- Failed to render section "popup": section file "popup.liquid" does not exist -->
3395<!-- END sections: overlay-group --></div>
3396  
3397          <main class="layout--template" id="main-content"><div id="shopify-section-template--30094100889760__main" class="shopify-section">
3398
3399
3400  <h1 class="hidden">Store Locations</h1>
3401
3402<div
3403    class="template-page--root"
3404    data-section-id="template--30094100889760__main"
3405    data-background-color="none"
3406    data-container-width="4"
3407    data-spacing-above="true"
3408    data-spacing-below="true"
3409    data-light-text="false"
3410    
3411  >
3412    <div class="template-page--wrapper"><div data-item="rte-content"><div class="closeby-embed-3b1f8591980f81aa79c2d2066470b9f8"></div>
3413<script>window.closeby = { mapKey: "3b1f8591980f81aa79c2d2066470b9f8", options: { embed: true, height: 700 } };</script>
vendor: 1 bytes, line 3413
3413
3414<script src="https://embed.closeby.co/v1.js" async defer></script>
3414
3415*Always call locations to confirm selections of our product!</div>
3416    </div>
3417  </div>
3418</div>
3419          </main>
3420  
3421          <footer class="layout--footer-group"><!-- BEGIN sections: footer-group -->
3422<div id="shopify-section-sections--30094091288736__footer_2026_BrAYK8" class="shopify-section shopify-section-group-footer-group section--footer-2026">
3423
3424<link href="//madhippie.com/cdn/shop/t/190/assets/footer-2026.css?v=7360402689248888431790034617" rel="stylesheet" type="text/css" media="all" />
3425<footer
3426  class="footer-2026 footer-2026--has-brand-pieces"
3427  data-section-id="sections--30094091288736__footer_2026_BrAYK8"
3428  data-section-type="footer-2026"
3429  style="--footer-2026-bg: #ffffff;--footer-2026-text: #000000;"
3430>
3431  <div class="footer-2026__container"><div class="footer-2026__nav-wrapper footer-2026__nav-wrapper--with-brand"><div class="footer-2026__brand-pieces" >
3432            <div class="footer-2026__brand-pieces-content">
3433              <div class="footer-2026__brand-pieces-image-wrap"><img
3434                    src="//madhippie.com/cdn/shop/files/VitaminC-Circle.png?v=1751336888&width=200"
3435                    srcset="//madhippie.com/cdn/shop/files/VitaminC-Circle.png?v=1751336888&width=100 100w, //madhippie.com/cdn/shop/files/VitaminC-Circle.png?v=1751336888&width=200 200w"
3436                    alt=""
3437                    class="footer-2026__brand-pieces-image"
3438                    loading="lazy"
3439                    style="width: 80px; height: 80px;"
3440                  ><p class="footer-2026__brand-pieces-title footer-2026__brand-pieces-title--mobile" style="color: #000000; font-size: 18px;">
3441                  Who do you want in your circle?
3442                </p></div>
3443              <div class="footer-2026__brand-pieces-text"><p class="footer-2026__brand-pieces-title footer-2026__brand-pieces-title--desktop" style="color: #000000; font-size: 22px;">
3444                  Who do you want in your circle?
3445                </p><div class="footer-2026__brand-pieces-line" style="background-color: #000000;"></div>
3446                <div class="footer-2026__brand-pieces-right">
3447                  <p class="footer-2026__brand-pieces-subtitle" style="color: #000000; font-size: 18px;">
3448                    If it's freethinking, naked ingredient lovers,
3449                  </p>
3450                  <p class="footer-2026__brand-pieces-tagline" style="color: #000000; font-size: 20px;">
3451                    We are the OG's.
3452                  </p>
3453                </div>
3454              </div>
3455            </div>
3456          </div><nav class="footer-2026__nav" aria-label="Footer navigation"><div class="footer-2026__menu-col" ><ul class="footer-2026__menu"><li class="footer-2026__menu-item">
3457                    <a href="/collections/shop-all" class="footer-2026__menu-link">
3458                      shop all
3459                    </a>
3460                  </li><li class="footer-2026__menu-item">
3461                    <a href="/collections/routines" class="footer-2026__menu-link">
3462                      bundle & save
3463                    </a>
3464                  </li><li class="footer-2026__menu-item">
3465                    <a href="/pages/routine-builder" class="footer-2026__menu-link">
3466                      routine builder
3467                    </a>
3468                  </li><li class="footer-2026__menu-item">
3469                    <a href="https://madhippie.com/pages/mad-hippie-skincare-quiz" class="footer-2026__menu-link">
3470                      skin quiz
3471                    </a>
3472                  </li></ul></div><div class="footer-2026__menu-col" ><ul class="footer-2026__menu"><li class="footer-2026__menu-item">
3473                    <a href="/pages/our-skin-care-philosophy" class="footer-2026__menu-link">
3474                      skincare philosophy
3475                    </a>
3476                  </li><li class="footer-2026__menu-item">
3477                    <a href="/pages/about-us" class="footer-2026__menu-link">
3478                      the hippie creed
3479                    </a>
3480                  </li><li class="footer-2026__menu-item">
3481                    <a href="/pages/conservation-efforts" class="footer-2026__menu-link">
3482                      conservation
3483                    </a>
3484                  </li><li class="footer-2026__menu-item">
3485                    <a href="/pages/pact-collective" class="footer-2026__menu-link">
3486                      sustainability
3487                    </a>
3488                  </li></ul></div></nav></div><div class="footer-2026__bottom"><a href="/" class="footer-2026__logo-link" title="Mad Hippie">
3489          <img
3490            src="//madhippie.com/cdn/shop/files/Mad_Hippie_Logo_-_2024_1.png?v=1711461092&width=400"
3491            srcset="//madhippie.com/cdn/shop/files/Mad_Hippie_Logo_-_2024_1.png?v=1711461092&width=200 200w, //madhippie.com/cdn/shop/files/Mad_Hippie_Logo_-_2024_1.png?v=1711461092&width=400 400w"
3492            alt="Mad Hippie logo black - text on white background"
3493            class="footer-2026__logo"
3494            loading="lazy"
3495            width="156"
3496            height="40"
3497          >
3498        </a><div class="footer-2026__copyright"><span class="footer-2026__copyright-line1">© 2026 Mad Hippie
3499</span><span class="footer-2026__copyright-line2">
3500            <p><a href="/pages/accessibility-statement">Accessibility</a> / <a href="/pages/privacy-policy">Privacy Policy</a> / <a href="/pages/terms-of-service">Terms of Service</a></p>
3501          </span></div></div>
3502
3503  </div>
3504</footer>
3505
3506
3507</div>
3508<!-- END sections: footer-group --></footer>
3509        </div>
3509<drawer-root class="drawer--root">
3510  <div class="drawer--overlay" aria-hidden="true"></div>
3511
3512  <div class="drawer--focus-trigger" tabindex="0"></div>
3513
3514  <div
3515    class="drawer--close"
3516    role="button"
3517    aria-label="close"
3518    tabindex="0"
3519    data-drawer-close
3520  ><svg class="icon--root icon--cross" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
3521      <path d="M10 8.727 17.944.783l1.273 1.273L11.273 10l7.944 7.944-1.273 1.273L10 11.273l-7.944 7.944-1.273-1.273L8.727 10 .783 2.056 2.056.783 10 8.727Z" fill="#000" fill-rule="nonzero" />
3522    </svg></div>
3523
3524  <div
3525    class="drawer--instance"
3526    data-side="top"
3527    data-focus-id="search-input"
3528    aria-expanded="false"
3529  >
3530    <div class="drawer--container" data-view="search"><link
3531    href="//madhippie.com/cdn/shop/t/190/assets/predictive-search.css?v=167321754974556843241790034617"
3532    rel="stylesheet"
3533    onload="this.loaded=true;window.trigger('theme:PredictiveSearchStyles:loaded');"
3534  >
3534<script type="module">
3535    import '//madhippie.com/cdn/shop/t/190/assets/predictive-search.js?v=45642202801356340241790034617';
3536  </script>
3536
3537<predictive-search-root class="search--root" data-loading="false">
3538  <form action="/search" method="get" role="search">
3539    <div class="search--bar-wrapper">
3540      <div class="search--bar">
3541        <div class="search--icon"><svg class="icon--root icon--search" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
3542      <path d="m14.37 12.86 5.636 5.637-1.414 1.414-5.633-5.632a7.627 7.627 0 0 1-4.688 1.604c-4.256 0-7.707-3.483-7.707-7.78 0-4.297 3.45-7.78 7.707-7.78s7.707 3.483 7.707 7.78c0 1.792-.6 3.442-1.608 4.758ZM8.27 14.084c3.259 0 5.907-2.673 5.907-5.98 0-3.306-2.648-5.98-5.907-5.98-3.258 0-5.907 2.674-5.907 5.98 0 3.307 2.649 5.98 5.907 5.98Z" fill="#000" fill-rule="nonzero" />
3543    </svg><svg class="icon--root icon--spinner">
3544      <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" />
3545    </svg></div>
3546
3547        <label for="search-input" data-item="hidden-text">Search here...</label>
3548        <input
3549          id="search-input"
3550          class="search--textbox"
3551          type="search"
3552          name="q"
3553          value=""
3554          placeholder="Search here..."
3555          data-item="paragraph"
3556          role="combobox"
3557          aria-owns="predictive-search-results-list"
3558          aria-controls="predictive-search-results-list"
3559          aria-autocomplete="list"
3560          autocorrect="off"
3561          autocomplete="off"
3562          autocapitalize="off"
3563          spellcheck="false"
3564        >
3565
3566        <div class="search--clear" tabindex="0" aria-label="clear" style="display:none;"><svg class="icon--root icon--x-mark" width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
3567      <path d="M9.997 0c5.518 0 9.998 4.48 9.998 9.997 0 5.518-4.48 9.998-9.998 9.998C4.48 19.995 0 15.515 0 9.997 0 4.48 4.48 0 9.997 0Zm0 8.933L7.276 6.211a.749.749 0 1 0-1.062 1.061l2.722 2.722-2.728 2.728a.75.75 0 1 0 1.061 1.062l2.728-2.728 2.729 2.728a.75.75 0 0 0 1.06-1.062l-2.727-2.728 2.717-2.717a.75.75 0 0 0-.531-1.281.746.746 0 0 0-.531.22L9.997 8.933Z" fill="#222" />
3568    </svg></div>
3569      </div>
3570
3571      <div class="search--cancel" data-item="block-link" tabindex="0" data-drawer-close>
3572        <div>cancel</div>
3573      </div>
3574    </div>
3575
3576    <div
3577      class="search--results"
3578      id="predictive-search-results-list"
3579      
3580    ><div class="predictive-search--products"><div class="predictive-search--heading" data-item="block-heading">Popular products</div><div
3581      class="predictive-search--product-grid"
3582      data-container="panel"
3583      data-columns="4"
3584      data-mobile-columns="2"
3585    ><div
3586  class="product--root"
3587  data-product-item
3588  data-product-view="grid"
3589  data-text-alignment="center"
3590  
3591    data-hover-image
3592  
3593  data-container="block"
3594  
3595  
3596><a href="/products/wrinkle-relaxing-eye-treatment" aria-label="Wrinkle Relaxing Eye Treatment">
3597    <div class="product--image-wrapper coll-bundle__product--image-wrapper">
3598      <div class="product--image" data-item="image"><picture
3599  class="image--root coll--bundle-image--root"
3600  data-parallax=""
3601  data-darken=""
3602  data-darken-mobile=""
3603  style="--aspect-ratio:0.8056;--mobile-aspect-ratio:0.8056;--max-width:100%;--object-position:;--mobile-object-position:;"
3604><img
3605    class="coll--bundle-slider-image"
3606    src="//madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=1856"
3607    srcset="//madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=200 200w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=300 300w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=400 400w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=500 500w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=600 600w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=700 700w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=800 800w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=1000 1000w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=1200 1200w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=1500 1500w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=1800 1800w, //madhippie.com/cdn/shop/files/out-v1.jpg?v=1785436994&width=1856 1856w"
3608    alt=""
3609    height="2304"
3610    width="1856"
3611    onload="this.classList.add('loaded');"
3612    sizes="(max-width: 767px) 50vw, 25vw"
3613    loading="lazy"
3614    
3615  >
3616</picture></div><div class="product--hover-image"><picture
3617  class="image--root coll--bundle-image--root"
3618  data-parallax=""
3619  data-darken=""
3620  data-darken-mobile=""
3621  style="--aspect-ratio:1.0;--mobile-aspect-ratio:1.0;--max-width:100%;--object-position:;--mobile-object-position:;"
3622><img
3623    class="coll--bundle-slider-image"
3624    src="//madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=2048"
3625    srcset="//madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=200 200w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=300 300w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=400 400w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=500 500w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=600 600w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=700 700w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=800 800w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=1000 1000w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=1200 1200w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=1500 1500w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=1800 1800w, //madhippie.com/cdn/shop/files/MH_RetailSlides_Neuropeptide_2.jpg?v=1785614354&width=2048 2048w"
3626    alt=""
3627    height="2048"
3628    width="2048"
3629    onload="this.classList.add('loaded');"
3630    sizes="(max-width: 767px) 50vw, 25vw"
3631    loading="lazy"
3632    
3633  >
3634</picture></div><product-quick-add
3635    class="product--quick-add"
3636    tabindex="0"
3637    role="button"
3638    aria-label="Quick add Wrinkle Relaxing Eye Treatment to cart"
3639    data-handle="wrinkle-relaxing-eye-treatment"
3640    aria-haspopup="menu"
3641    data-loading="false"
3642    data-id="58188014846112"data-form="false"
3643      data-management="shopify"
3644      data-policy="deny"
3645      data-quantity="19634">
3646    <div class="product--quick-add--icon"><svg class="icon--root icon--plus" width="10" height="10" viewBox="0 0 10 10" xmlns="http://www.w3.org/2000/svg">
3647      <path d="M10 5.714H5.714V10H4.286V5.714H0V4.286h4.286V0h1.428v4.286H10z" fill="#000" fill-rule="nonzero" />
3648    </svg></div>
3649
3650    <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner">
3651      <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" />
3652    </svg></div>
3653  </product-quick-add></div>
3654    
3655      <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Wrinkle Relaxing Eye Treatment</p><div class="product--rating"><div
3656    class="product-rating--root"
3657    role="img"
3658    aria-label="4.82 out of 5.0 stars"
3659    style="--rating:4;--rating-max:5.0;--rating-decimal:0.82;"
3660  >
3661    <div class="product-rating--stars coll-bundle-product-rating-star"></div>
3662    <span class="product-rating--count" data-item="accent-text" aria-label="total reviews">38</span>
3663  </div></div></div><div class="product--price-container">
3664    
3665      <div class="product--price-wrapper"><span class="product--price money" data-item="accent-text">$34.99</span>
3666      </div>
3667    
3668
3669    <div class="product--unit-price-container" data-item="small-text"></div>
3670  </div></div></div>
3671    
3672  </a>
3673</div><div
3674  class="product--root"
3675  data-product-item
3676  data-product-view="grid"
3677  data-text-alignment="center"
3678  
3679    data-hover-image
3680  
3681  data-container="block"
3682  
3683  
3684><a href="/products/hydrating-nutrient-mist" aria-label="Vitamin C Toning Mist">
3685    <div class="product--image-wrapper coll-bundle__product--image-wrapper">
3686      <div class="product--image" data-item="image"><picture
3687  class="image--root coll--bundle-image--root"
3688  data-parallax=""
3689  data-darken=""
3690  data-darken-mobile=""
3691  style="--aspect-ratio:0.8003;--mobile-aspect-ratio:0.8003;--max-width:100%;--object-position:;--mobile-object-position:;"
3692><img
3693    class="coll--bundle-slider-image"
3694    src="//madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=2048"
3695    srcset="//madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=200 200w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=300 300w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=400 400w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=500 500w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=600 600w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=700 700w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=800 800w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=1000 1000w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=1200 1200w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=1500 1500w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=1800 1800w, //madhippie.com/cdn/shop/files/MH2024_VitaminCToningMist_Pastel.jpg?v=1730744731&width=2048 2048w"
3696    alt="Vitamin C Toning Mist Bottle on Peach Background"
3697    height="2559"
3698    width="2048"
3699    onload="this.classList.add('loaded');"
3700    sizes="(max-width: 767px) 50vw, 25vw"
3701    loading="lazy"
3702    
3703  >
3704</picture></div><div class="product--hover-image"><picture
3705  class="image--root coll--bundle-image--root"
3706  data-parallax=""
3707  data-darken=""
3708  data-darken-mobile=""
3709  style="--aspect-ratio:0.7997;--mobile-aspect-ratio:0.7997;--max-width:100%;--object-position:;--mobile-object-position:;"
3710><img
3711    class="coll--bundle-slider-image"
3712    src="//madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=3649"
3713    srcset="//madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=200 200w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=300 300w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=400 400w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=500 500w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=600 600w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=700 700w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=800 800w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=1000 1000w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=1200 1200w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=1500 1500w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=1800 1800w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=2100 2100w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=2400 2400w, //madhippie.com/cdn/shop/files/VitaminCToningMist_Slide_02.jpg?v=1702993031&width=3000 3000w"
3714    alt="Vitamin C Toning Mist + two boxes in front of stone slabs, with grey background"
3715    height="4563"
3716    width="3649"
3717    onload="this.classList.add('loaded');"
3718    sizes="(max-width: 767px) 50vw, 25vw"
3719    loading="lazy"
3720    
3721  >
3722</picture></div><product-quick-add
3723    class="product--quick-add"
3724    tabindex="0"
3725    role="button"
3726    aria-label="Quick add Vitamin C Toning Mist to cart"
3727    data-handle="hydrating-nutrient-mist"
3728    aria-haspopup="menu"
3729    data-loading="false"
3730    data-id="27896613521"data-form="false"
3731      data-management="shopify"
3732      data-policy="deny"
3733      data-quantity="38568">
3734    <div class="product--quick-add--icon"><svg class="icon--root icon--plus" width="10" height="10" viewBox="0 0 10 10" xmlns="http://www.w3.org/2000/svg">
3735      <path d="M10 5.714H5.714V10H4.286V5.714H0V4.286h4.286V0h1.428v4.286H10z" fill="#000" fill-rule="nonzero" />
3736    </svg></div>
3737
3738    <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner">
3739      <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" />
3740    </svg></div>
3741  </product-quick-add></div>
3742    
3743      <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Vitamin C Toning Mist</p><div class="product--rating"><div
3744    class="product-rating--root"
3745    role="img"
3746    aria-label="4.82 out of 5.0 stars"
3747    style="--rating:4;--rating-max:5.0;--rating-decimal:0.82;"
3748  >
3749    <div class="product-rating--stars coll-bundle-product-rating-star"></div>
3750    <span class="product-rating--count" data-item="accent-text" aria-label="total reviews">95</span>
3751  </div></div></div><div class="product--price-container">
3752    
3753      <div class="product--price-wrapper"><span class="product--price money" data-item="accent-text">$19.99</span>
3754      </div>
3755    
3756
3757    <div class="product--unit-price-container" data-item="small-text"></div>
3758  </div></div></div>
3759    
3760  </a>
3761</div><div
3762  class="product--root"
3763  data-product-item
3764  data-product-view="grid"
3765  data-text-alignment="center"
3766  
3767    data-hover-image
3768  
3769  data-container="block"
3770  
3771  
3772><a href="/products/vitamin-c-serum-deluxe-sample-size" aria-label="Vitamin C Serum (mini)">
3773    <div class="product--image-wrapper coll-bundle__product--image-wrapper">
3774      <div class="product--image" data-item="image"><picture
3775  class="image--root coll--bundle-image--root"
3776  data-parallax=""
3777  data-darken=""
3778  data-darken-mobile=""
3779  style="--aspect-ratio:0.7995;--mobile-aspect-ratio:0.7995;--max-width:100%;--object-position:;--mobile-object-position:;"
3780><img
3781    class="coll--bundle-slider-image"
3782    src="//madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=1842"
3783    srcset="//madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=200 200w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=300 300w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=400 400w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=500 500w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=600 600w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=700 700w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=800 800w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=1000 1000w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=1200 1200w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=1500 1500w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=1800 1800w, //madhippie.com/cdn/shop/files/MH2024_RetailSlides_VitaminCSerum_Deluxe_01_Web.png?v=1781537083&width=1842 1842w"
3784    alt=""
3785    height="2304"
3786    width="1842"
3787    onload="this.classList.add('loaded');"
3788    sizes="(max-width: 767px) 50vw, 25vw"
3789    loading="lazy"
3790    
3791  >
3792</picture></div><div class="product--hover-image"><picture
3793  class="image--root coll--bundle-image--root"
3794  data-parallax=""
3795  data-darken=""
3796  data-darken-mobile=""
3797  style="--aspect-ratio:0.8002;--mobile-aspect-ratio:0.8002;--max-width:100%;--object-position:;--mobile-object-position:;"
3798><img
3799    class="coll--bundle-slider-image"
3800    src="//madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1882"
3801    srcset="//madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=200 200w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=300 300w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=400 400w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=500 500w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=600 600w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=700 700w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=800 800w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1000 1000w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1200 1200w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1500 1500w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1800 1800w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1882 1882w"
3802    alt="Clinically Proven Skincare"
3803    height="2352"
3804    width="1882"
3805    onload="this.classList.add('loaded');"
3806    sizes="(max-width: 767px) 50vw, 25vw"
3807    loading="lazy"
3808    
3809  >
3810</picture></div><product-quick-add
3811    class="product--quick-add"
3812    tabindex="0"
3813    role="button"
3814    aria-label="Quick add Vitamin C Serum (mini) to cart"
3815    data-handle="vitamin-c-serum-deluxe-sample-size"
3816    aria-haspopup="menu"
3817    data-loading="false"
3818    data-id="57903392850080"data-form="false"
3819      data-management="shopify"
3820      data-policy="deny"
3821      data-quantity="30057">
3822    <div class="product--quick-add--icon"><svg class="icon--root icon--plus" width="10" height="10" viewBox="0 0 10 10" xmlns="http://www.w3.org/2000/svg">
3823      <path d="M10 5.714H5.714V10H4.286V5.714H0V4.286h4.286V0h1.428v4.286H10z" fill="#000" fill-rule="nonzero" />
3824    </svg></div>
3825
3826    <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner">
3827      <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" />
3828    </svg></div>
3829  </product-quick-add></div>
3830    
3831      <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Vitamin C Serum (mini)</p><div class="product--rating"><div
3832    class="product-rating--root"
3833    role="img"
3834    aria-label="5.0 out of 5.0 stars"
3835    style="--rating:5;--rating-max:5.0;--rating-decimal:0.0;"
3836  >
3837    <div class="product-rating--stars coll-bundle-product-rating-star"></div>
3838    <span class="product-rating--count" data-item="accent-text" aria-label="total reviews">1</span>
3839  </div></div></div><div class="product--price-container">
3840    
3841      <div class="product--price-wrapper"><span class="product--price money" data-item="accent-text">$17.99</span>
3842      </div>
3843    
3844
3845    <div class="product--unit-price-container" data-item="small-text"></div>
3846  </div></div></div>
3847    
3848  </a>
3849</div><div
3850  class="product--root"
3851  data-product-item
3852  data-product-view="grid"
3853  data-text-alignment="center"
3854  
3855    data-hover-image
3856  
3857  data-container="block"
3858  
3859  
3860><a href="/products/vitamin-c-serum" aria-label="Vitamin C Serum">
3861    <div class="product--image-wrapper coll-bundle__product--image-wrapper">
3862      <div class="product--image" data-item="image"><picture
3863  class="image--root coll--bundle-image--root"
3864  data-parallax=""
3865  data-darken=""
3866  data-darken-mobile=""
3867  style="--aspect-ratio:0.8003;--mobile-aspect-ratio:0.8003;--max-width:100%;--object-position:;--mobile-object-position:;"
3868><img
3869    class="coll--bundle-slider-image"
3870    src="//madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=1868"
3871    srcset="//madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=200 200w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=300 300w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=400 400w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=500 500w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=600 600w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=700 700w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=800 800w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=1000 1000w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=1200 1200w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=1500 1500w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=1800 1800w, //madhippie.com/cdn/shop/files/MH2026-DTCPrimary-VitaminCSerum_Shopify_923cb972-84b8-4716-99a4-ed2ca23fb066.jpg?v=1767935440&width=1868 1868w"
3872    alt=""
3873    height="2334"
3874    width="1868"
3875    onload="this.classList.add('loaded');"
3876    sizes="(max-width: 767px) 50vw, 25vw"
3877    loading="lazy"
3878    
3879  >
3880</picture></div><div class="product--hover-image"><picture
3881  class="image--root coll--bundle-image--root"
3882  data-parallax=""
3883  data-darken=""
3884  data-darken-mobile=""
3885  style="--aspect-ratio:0.8002;--mobile-aspect-ratio:0.8002;--max-width:100%;--object-position:;--mobile-object-position:;"
3886><img
3887    class="coll--bundle-slider-image"
3888    src="//madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1882"
3889    srcset="//madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=200 200w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=300 300w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=400 400w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=500 500w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=600 600w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=700 700w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=800 800w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1000 1000w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1200 1200w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1500 1500w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1800 1800w, //madhippie.com/cdn/shop/files/MH_Shopify_VitC_02.jpg?v=1767935440&width=1882 1882w"
3890    alt="Clinically Proven Skincare"
3891    height="2352"
3892    width="1882"
3893    onload="this.classList.add('loaded');"
3894    sizes="(max-width: 767px) 50vw, 25vw"
3895    loading="lazy"
3896    
3897  >
3898</picture></div><product-quick-add
3899    class="product--quick-add"
3900    tabindex="0"
3901    role="button"
3902    aria-label="Quick add Vitamin C Serum to cart"
3903    data-handle="vitamin-c-serum"
3904    aria-haspopup="menu"
3905    data-loading="false"
3906    data-id="25481970120"data-form="false"
3907      data-management="shopify"
3908      data-policy="deny"
3909      data-quantity="52160">
3910    <div class="product--quick-add--icon">
3910<svg class="icon--root icon--plus" width="10" height="10" viewBox="0 0 10 10" xmlns="http://www.w3.org/2000/svg">
3911      <path d="M10 5.714H5.714V10H4.286V5.714H0V4.286h4.286V0h1.428v4.286H10z" fill="#000" fill-rule="nonzero" />
3912    </svg></div>
3913
3914    <div class="product--quick-add--spinner"><svg class="icon--root icon--spinner">
3915      <use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="#loading-spinner" />
3916    </svg></div>
3917  </product-quick-add></div>
3918    
3919      <div class="product--details-container"><div class="product--details"><div class="product--details-wrapper"><p class="product--title" data-item="paragraph">Vitamin C Serum</p><div class="product--rating"><div
3920    class="product-rating--root"
3921    role="img"
3922    aria-label="4.86 out of 5.0 stars"
3923    style="--rating:4;--rating-max:5.0;--rating-decimal:0.86;"
3924  >
3925    <div class="product-rating--stars coll-bundle-product-rating-star"></div>
3926    <span class="product-rating--count" data-item="accent-text" aria-label="total reviews">477</span>
3927  </div></div></div><div class="product--price-container">
3928    
3929      <div class="product--price-wrapper"><span class="product--price money" data-item="accent-text">$33.99</span>
3930      </div>
3931    
3932
3933    <div class="product--unit-price-container" data-item="small-text"></div>
3934  </div></div></div>
3935    
3936  </a>
3937</div></div></div></div>
3938  </form>
3939</predictive-search-root></div>
3940  </div>
3941
3942  <div
3943    class="drawer--instance"
3944    data-side="right"
3945    aria-expanded="false"
3946  ><div class="drawer--container" data-view="product-form"></div><div class="drawer--container" data-view="cart-drawer"><cart-drawer-root
3947  class="cdv2"
3948  data-view="drawer"
3949  data-has-items="false"
3950  data-cart-units="0"
3951  data-builder-group=""
3952  data-tier-rate="0"
3953>
3954  <div class="cdv2__status visually-hidden" aria-live="polite" aria-atomic="true"></div><div class="cdv2__head">
3955    <div class="cdv2__title-row">
3956      <h3 class="cdv2__title">Cart</h3></div></div><div class="cdv2__scroll"><div class="cdv2__empty">
3957        <p class="cdv2__empty-big">Nothing in here yet.</p>
3958        <p class="cdv2__empty-sub">A routine builds itself faster than you&rsquo;d think.</p>
3959      </div><div class="cdv2__lines"></div></div><div class="cdv2__foot"><div class="cdv2__totals" aria-live="polite" aria-atomic="true"><div class="cdv2__row is-total"><span>Total</span><strong class="cart--total--price">$0.00</strong></div>
3960      <p class="cdv2__tax-note">Taxes and shipping calculated at checkout</p>
3961    </div>
3962
3963    <form action="/cart" method="post" novalidate>
3964      <button type="submit" name="checkout" class="cdv2__checkout" disabled>Checkout</button>
3965    </form>
3966  </div>
3967
3968  
3968<script type="application/json" data-cdv2-config>
3969    {
3970      "engaged": false,
3971      "builderGroupId": "",
3972      "tierLabel": "Routine discount",
3973      "tiersEnabled": true,
3974      "cartUnits": 0,
3975      "builderUnits": 0,
3976      "looseUnits": 0,
3977      "tierRate": 0
3978    }
3979  </script>
3979
3980</cart-drawer-root>
3981
3982<script src="//madhippie.com/cdn/shop/t/190/assets/cart-drawer-v2.js?v=175378701260237562321790087280" defer></script>
3982
3983
3984<style data-shopify>
3985/* CART DRAWER V2 — site design system (white/#333/#666, #e5e5e5 borders, theme
3986   accent, green = discounts, 6px/4px radii, site fonts). !important throughout
3987   because theme globals bleed into the drawer (same reason the old drawer did). */
3988cart-drawer-root.cdv2{
3989  --drawer-bg:#fff; --drawer-text:#333; --drawer-text-light:#666; --drawer-border:#e5e5e5;
3990  --drawer-accent:#f9815f; --drawer-accent-hover:#f2a18a;
3991  --drawer-success:#27ae60; --drawer-error:#dc3545;
3992  --drawer-radius:6px; --drawer-radius-sm:4px;
3993  --drawer-spacing:1rem; --drawer-spacing-sm:0.75rem;
3994  display:flex !important; flex-direction:column !important;
3995  height:100% !important; height:100dvh !important; overflow:hidden !important;
3996  background:var(--drawer-bg) !important; color:var(--drawer-text) !important;
3997  width:100% !important; margin:0 !important; padding:0 !important;
3998  font-family:'PP Mori', -apple-system, 'Segoe UI', Roboto, sans-serif !important;
3999  font-size:0.875rem !important; line-height:1.4 !important;
4000}
4001cart-drawer-root.cdv2 button, cart-drawer-root.cdv2 input, cart-drawer-root.cdv2 textarea, cart-drawer-root.cdv2 summary{font-family:inherit !important}
4002cart-drawer-root.cdv2 s{color:#9a978f !important; font-weight:400 !important; font-size:0.75rem !important; margin-right:6px !important; text-decoration:line-through !important}
4003
4004/* header */
4005cart-drawer-root.cdv2 .cdv2__head{flex-shrink:0 !important; padding:var(--drawer-spacing) var(--drawer-spacing) 0.5rem !important}
4006cart-drawer-root.cdv2 .cdv2__title-row{display:flex !important;
4006 align-items:baseline !important; gap:0.5rem !important}
4007cart-drawer-root.cdv2 .cdv2__title{margin:0 !important; font-size:1.25rem !important; font-weight:600 !important}
4008cart-drawer-root.cdv2 .cdv2__count{color:var(--drawer-text-light) !important; font-size:0.75rem !important; font-weight:400 !important}
4009
4010/* scroll body */
4011cart-drawer-root.cdv2 .cdv2__scroll{flex:1 1 auto !important; min-height:0 !important; overflow-y:auto !important; overflow-x:hidden !important; -webkit-overflow-scrolling:touch !important; overscroll-behavior:contain !important; padding:0 var(--drawer-spacing) !important}
4012cart-drawer-root.cdv2 .cdv2__empty{display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; padding:3rem var(--drawer-spacing) !important; text-align:center !important}
4013cart-drawer-root.cdv2 .cdv2__empty-big{font-size:0.9375rem !important; font-weight:600 !important; margin:0 0 0.25rem !important}
4014cart-drawer-root.cdv2 .cdv2__empty-sub{color:var(--drawer-text-light) !important; font-size:0.8125rem !important; margin:0 !important}
4015
4016/* lines — 64px thumb, title + price, stepper + Remove. No copy, no per-line
4017   discount text (2026-09-22): the strikethrough is the only per-line signal. */
4018cart-drawer-root.cdv2 .cdv2__line{display:flex !important; gap:0.75rem !important; padding:0.75rem 0 !important; border-bottom:1px solid var(--drawer-border) !important; position:relative !important; align-items:flex-start !important}
4019cart-drawer-root.cdv2 .cdv2__line:last-child{border-bottom:none !important}
4020cart-drawer-root.cdv2 .cdv2__line-img{flex-shrink:0 !important; width:64px !important; height:64px !important; border-radius:var(--drawer-radius) !important; overflow:hidden !important; background:#f5f5f5 !important; display:block !important}
4021cart-drawer-root.cdv2 .cdv2__line-img img{width:100% !important; height:100% !important; object-fit:cover !important; display:block !important}
4022cart-drawer-root.cdv2 .cdv2__line-info{flex:1 !important; min-width:0 !important; display:flex !important; flex-direction:column !important; gap:0.375rem !important}
4023cart-drawer-root.cdv2 .cdv2__line-top{display:flex !important; justify-content:space-between !important;
4023 align-items:baseline !important; gap:0.625rem !important}
4024cart-drawer-root.cdv2 .cdv2__line-title{font-weight:600 !important; font-size:0.9375rem !important; color:var(--drawer-text) !important; text-decoration:none !important; line-height:1.25 !important}
4025cart-drawer-root.cdv2 .cdv2__line-title:hover{text-decoration:underline !important}
4026cart-drawer-root.cdv2 .cdv2__line-price{flex-shrink:0 !important; white-space:nowrap !important; display:flex !important; align-items:baseline !important; gap:0.375rem !important; font-variant-numeric:tabular-nums !important}
4027cart-drawer-root.cdv2 .cdv2__line-price strong{font-weight:600 !important; font-size:0.9375rem !important}
4028cart-drawer-root.cdv2 .cdv2__line-variant{color:var(--drawer-text-light) !important; font-size:0.75rem !important; margin-top:-0.25rem !important}
4029cart-drawer-root.cdv2 .cdv2__line-ctl{display:flex !important; align-items:center !important; justify-content:space-between !important; margin-top:0.125rem !important}
4030cart-drawer-root.cdv2 .cdv2__qty{display:inline-flex !important; align-items:center !important; border:1px solid var(--drawer-border) !important; border-radius:var(--drawer-radius) !important; height:32px !important; background:#fff !important}
4031cart-drawer-root.cdv2 .cdv2__qty-btn{width:36px !important; height:100% !important; border:0 !important; background:none !important; color:var(--drawer-text) !important; font-size:1rem !important; cursor:pointer !important; line-height:1 !important; padding:0 !important; margin:0 !important}
4032cart-drawer-root.cdv2 .cdv2__qty-val{min-width:30px !important; text-align:center !important; font-size:0.8125rem !important; border-left:1px solid var(--drawer-border) !important; border-right:1px solid var(--drawer-border) !important; line-height:30px !important; height:100% !important; font-variant-numeric:tabular-nums !important}
4033cart-drawer-root.cdv2 .cdv2__rm{border:0 !important; background:none !important; color:var(--drawer-text-light) !important; font-size:0.75rem !important; cursor:pointer !important; line-height:1 !important; padding:0.625rem 0 0.625rem 0.75rem !important; margin:0 !important; text-decoration:underline !important; text-underline-offset:2px !important; transition:color 0.2s !important; position:static !important; width:auto !important; height:auto !important; opacity:1 !important}
4034cart-drawer-root.cdv2 .cdv2__rm:hover{color:var(--drawer-text) !important}
4035cart-drawer-root.cdv2 .cdv2__rm--bundle{position:absolute !important; top:0.25rem !important; right:0.25rem !important; width:36px !important; height:36px !important; padding:0 !important; font-size:1.125rem !important; text-decoration:none !important; display:flex !important; align-items:center !important; justify-content:center !important}
4036
4037/* legacy bundle card */
4038cart-drawer-root.cdv2 .cdv2__bundle{background:linear-gradient(135deg, rgba(148,163,184,0.08) 0%, rgba(148,163,184,0.14) 100%) !important; border:1px solid rgba(148,163,184,0.25) !important; border-radius:var(--drawer-radius) !important; padding:0.5rem 0.625rem !important; margin:0.375rem 0 !important}
4039cart-drawer-root.cdv2 .cdv2__bundle-thumbs{display:flex !important; flex-wrap:wrap !important; gap:6px !important; width:90px !important; flex-shrink:0 !important; align-content:flex-start !important}
4040cart-drawer-root.cdv2 .cdv2__bundle-thumb{width:40px !important; height:40px !important; border-radius:4px !important; overflow:hidden !important; background:#fff !important; border:1px solid var(--drawer-border) !important}
4041cart-drawer-root.cdv2 .cdv2__bundle-thumb img{width:100% !important; height:100% !important; object-fit:cover !important; display:block !important}
4042cart-drawer-root.cdv2 .cdv2__bundle .cdv2__line-top{flex-direction:column !important; align-items:flex-start !important; gap:0.25rem !important}
4043cart-drawer-root.cdv2 .cdv2__bundle-label{font-weight:600 !important; font-size:0.875rem !important; color:#040404 !important}
4044cart-drawer-root.cdv2 .cdv2__bundle-label em{font-style:normal !important; color:var(--drawer-text-light) !important; font-weight:400 !important; font-size:0.75rem !important; margin-left:5px !important}
4045cart-drawer-root.cdv2 .cdv2__badge{display:inline-block !important; margin-top:2px !important; font-size:0.6875rem !important; font-weight:500 !important; color:var(--drawer-success) !important; background:rgba(255,255,255,0.55) !important; padding:1px 4px !important; border-radius:3px !important}
4046
4047/* routine module — quiet, cross-sell scale */
4048cart-drawer-root.cdv2 .cdv2__routine{padding:12px 14px 8px !important; border:1px solid var(--drawer-border) !important; border-radius:10px !important; background:#fafaf8 !important; margin:0.75rem 0 0.25rem !important}
4049cart-drawer-root.cdv2 .cdv2__kicker{display:flex !important; align-items:center !important; justify-content:space-between !important; gap:8px !important; font-size:13px !important; color:var(--drawer-text) !important; text-transform:none !important; margin:0 !important; font-weight:600 !important; letter-spacing:0 !important; line-height:1.2 !important}
4050cart-drawer-root.cdv2 .cdv2__kicker-txt{min-width:0 !important}
4051cart-drawer-root.cdv2 .cdv2__status{flex-shrink:0 !important; font-size:11px !important; font-weight:600 !important; color:#6d6d6d !important; background:#f0efeb !important; border-radius:999px !important; padding:3px 9px !important; white-space:nowrap !important; text-transform:none !important; letter-spacing:0.01em !important}
4052cart-drawer-root.cdv2 .cdv2__status.is-applied{color:var(--drawer-success) !important; background:rgba(39,174,96,0.1) !important}
4053cart-drawer-root.cdv2 .cdv2__strip{display:flex !important; gap:5px !important; justify-content:space-between !important; margin:10px 0 4px !important; padding:0 !important; border:0 !important}
4054cart-drawer-root.cdv2 .cdv2__slot{flex:1 !important; text-align:center !important; min-width:0 !important}
4055cart-drawer-root.cdv2 .cdv2__slot-box{display:flex !important; align-items:center !important; justify-content:center !important; height:20px !important; border-radius:10px !important; border:1px dashed #ddd !important; color:#ccc !important; font-size:0.625rem !important; background:#fff !important; position:static !important}
4056cart-drawer-root.cdv2 .cdv2__slot.is-filled .cdv2__slot-box{border:1px solid rgba(39,174,96,0.3) !important; background:rgba(39,174,96,0.07) !important; color:var(--drawer-success) !important}
4057cart-drawer-root.cdv2 .cdv2__slot-lb{display:block !important; margin-top:3px !important; font-size:0.5rem !important; letter-spacing:0.4px !important; text-transform:uppercase !important; color:#6d6d6d !important; white-space:nowrap !important; overflow:hidden !important; text-overflow:ellipsis !important; font-weight:400 !important}
4058cart-drawer-root.cdv2 .cdv2__exfol-note{margin:8px 0 0 !important; font-size:0.6875rem !important; color:var(--drawer-text-light) !important; background:#fff !important; border:1px solid var(--drawer-border) !important; border-radius:var(--drawer-radius-sm) !important; padding:4px 8px !important}
4059cart-drawer-root.cdv2 .cdv2__complete{margin:8px 0 4px !important; font-size:0.75rem !important; color:var(--drawer-success) !important; font-weight:500 !important}
4060cart-drawer-root.cdv2 .cdv2__sug{display:flex !important; align-items:flex-start !important; gap:10px !important; padding:8px 0 !important; margin:0 !important; border-top:1px dashed #e3e1db !important}
4061cart-drawer-root.cdv2 .cdv2__sug-img{flex-shrink:0 !important; width:48px !important; height:48px !important; border-radius:var(--drawer-radius-sm) !important; overflow:hidden !important; background:#fff !important; border:1px solid #eee !important}
4062cart-drawer-root.cdv2 .cdv2__sug-img img{width:100% !important; height:100% !important; object-fit:cover !important; display:block !important}
4063cart-drawer-root.cdv2 .cdv2__sug-info{flex:1 !important; min-width:0 !important; display:flex !important; flex-direction:column !important; gap:2px !important; padding-top:1px !important}
4064cart-drawer-root.cdv2 .cdv2__sug-top{display:flex !important; justify-content:flex-start !important;
4064 align-items:baseline !important; gap:8px !important}
4065cart-drawer-root.cdv2 .cdv2__sug-name{font-size:0.8125rem !important; font-weight:500 !important; color:var(--drawer-text) !important; line-height:1.2 !important; white-space:nowrap !important; overflow:hidden !important; text-overflow:ellipsis !important}
4066cart-drawer-root.cdv2 .cdv2__sug-price{font-size:0.6875rem !important; color:var(--drawer-text-light) !important; white-space:nowrap !important; font-weight:400 !important}
4067cart-drawer-root.cdv2 .cdv2__sug-why{margin:0 !important; font-size:0.6875rem !important; color:#6d6d6d !important; line-height:1.35 !important}
4068cart-drawer-root.cdv2 .cdv2__sug-why em{font-style:normal !important; color:var(--drawer-success) !important; font-weight:600 !important}
4069cart-drawer-root.cdv2 .cdv2__sug-swap{border:0 !important; background:none !important; padding:0 !important; margin:0 !important; font-size:0.6875rem !important; color:#6d6d6d !important; cursor:pointer !important; text-decoration:underline !important; text-decoration-style:dotted !important; text-underline-offset:2px !important; text-align:left !important; align-self:flex-start !important; font-weight:400 !important}
4070cart-drawer-root.cdv2 .cdv2__sug-swap:hover{color:var(--drawer-text) !important}
4071cart-drawer-root.cdv2 .cdv2__sug-add{flex-shrink:0 !important; background:var(--drawer-accent) !important; border:1px solid var(--drawer-accent) !important; border-radius:var(--drawer-radius) !important; padding:8px 14px !important; font-size:0.75rem !important; color:#fff !important; cursor:pointer !important; transition:background 0.2s, border-color 0.2s, opacity 0.2s !important; line-height:1 !important; font-weight:600 !important; white-space:nowrap !important}
4072cart-drawer-root.cdv2 .cdv2__sug-add:hover{background:var(--drawer-accent-hover) !important; border-color:var(--drawer-accent-hover) !important}
4073cart-drawer-root.cdv2 .cdv2__sug-add:disabled{opacity:0.5 !important; cursor:default !important}
4074cart-drawer-root.cdv2 .cdv2__sug--extra{margin-top:0 !important}
4075cart-drawer-root.cdv2 .cdv2__sug > .cdv2__sug-add{align-self:flex-start !important; margin-top:9px !important}
4076cart-drawer-root.cdv2 .cdv2__builder-link-row{margin:8px 0 0 !important; text-align:right !important}
4077cart-drawer-root.cdv2 .cdv2__builder-link{font-size:0.6875rem !important; color:#6d6d6d !important; text-decoration:underline !important; text-decoration-style:dotted !important; text-underline-offset:2px !important}
4078cart-drawer-root.cdv2 .cdv2__builder-link:hover{color:var(--drawer-text) !important}
4079cart-drawer-root.cdv2 .cdv2__adopt{display:block !important; width:100% !important; margin:10px 0 2px !important; padding:10px 12px !important; border:1px solid rgba(39,174,96,0.35) !important; background:rgba(39,174,96,0.1) !important; color:#17603a !important; border-radius:8px !important; font-size:13px !important; font-weight:400 !important; line-height:1.35 !important; text-align:left !important; cursor:pointer !important; text-transform:none !important; letter-spacing:0 !important}
4080cart-drawer-root.cdv2 .cdv2__adopt strong{font-weight:600 !important}
4081cart-drawer-root.cdv2 .cdv2__adopt:hover{background:rgba(39,174,96,0.16) !important}
4082
4083/* free shipping */
4084cart-drawer-root.cdv2 .cdv2__ship{margin:0.625rem 0 0 !important; font-size:0.75rem !important}
4085cart-drawer-root.cdv2 .cdv2__ship-row{display:flex !important; justify-content:space-between !important; color:var(--drawer-text-light) !important}
4086cart-drawer-root.cdv2 .cdv2__ship-row span{font-size:0.75rem !important; color:var(--drawer-text-light) !important; font-weight:400 !important}
4087cart-drawer-root.cdv2 .cdv2__ship-val.is-done{color:var(--drawer-success) !important; font-weight:600 !important}
4088cart-drawer-root.cdv2 .cdv2__ship-bar{margin-top:6px !important; height:6px !important; border-radius:3px !important; background:#e5e5e5 !important; overflow:hidden !important}
4089cart-drawer-root.cdv2 .cdv2__ship-fill{height:100% !important; background:linear-gradient(90deg, var(--drawer-accent), var(--drawer-accent-hover)) !important; border-radius:3px !important; transform-origin:left !important; transition:transform 0.4s ease !important}
4090
4091/* footer */
4092cart-drawer-root.cdv2 .cdv2__foot{flex-shrink:0 !important; padding:0.625rem var(--drawer-spacing) var(--drawer-spacing) !important; background:var(--drawer-bg) !important; width:100% !important; box-sizing:border-box !important; border-top:1px solid var(--drawer-border) !important}
4093cart-drawer-root.cdv2 .cdv2__discount{margin:0.75rem 0 1rem !important; padding:0 !important; border:0 !important; font-size:0.8125rem !important}
4094cart-drawer-root.cdv2 .cdv2__discount summary{cursor:pointer !important; color:var(--drawer-text-light) !important; font-weight:400 !important; font-size:0.8125rem !important; padding:0.5rem 0 !important; list-style:none !important; display:flex !important; align-items:center !important; gap:6px !important; min-height:44px !important; box-sizing:border-box !important}
4095cart-drawer-root.cdv2 .cdv2__discount summary::-webkit-details-marker{display:none !important}
4096cart-drawer-root.cdv2 .cdv2__discount summary::before{content:'' !important; width:6px !important; height:6px !important; border-right:1.5px solid currentColor !important; border-bottom:1.5px solid currentColor !important; transform:rotate(-45deg) !important; margin-right:2px !important; transition:transform 0.15s !important; flex-shrink:0 !important}
4097cart-drawer-root.cdv2 .cdv2__discount[open] summary::before{transform:rotate(45deg) !important}
4098cart-drawer-root.cdv2 .cdv2__discount-row{display:flex !important; gap:0.5rem !important; margin-top:0.125rem !important}
4099cart-drawer-root.cdv2 .cdv2__discount-input{flex:1 !important; min-width:0 !important; height:40px !important; padding:0 0.75rem !important; border:1px solid var(--drawer-border) !important; border-radius:var(--drawer-radius) !important; font-size:0.875rem !important; margin:0 !important; text-transform:none !important; background:#fff !important; color:var(--drawer-text) !important}
4100cart-drawer-root.cdv2 .cdv2__discount-input:focus-visible{outline:2px solid var(--drawer-text) !important; outline-offset:-2px !important; background:#fff !important}
4101cart-drawer-root.cdv2 .cdv2__discount-input::placeholder{color:#999 !important}
4102cart-drawer-root.cdv2 .cdv2__discount-btn{height:40px !important; padding:0 1rem !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; line-height:1 !important; background:#fff !important; color:var(--drawer-text) !important; border:1px solid var(--drawer-text) !important; border-radius:var(--drawer-radius) !important; font-size:0.8125rem !important; font-weight:600 !important; text-transform:none !important; letter-spacing:0 !important; cursor:pointer !important; transition:all 0.2s !important}
4103cart-drawer-root.cdv2 .cdv2__discount-btn:hover{background:var(--drawer-text) !important; color:#fff !important}
4104cart-drawer-root.cdv2 .cdv2__discount-msg{display:none; margin-top:0.5rem !important; font-size:0.75rem !important}
4105cart-drawer-root.cdv2 .cdv2__discount-msg.is-ok{display:block !important; color:var(--drawer-success) !important}
4106cart-drawer-root.cdv2 .cdv2__discount-msg.is-err{display:block !important; color:var(--drawer-error) !important}
4107cart-drawer-root.cdv2 .cdv2__discount-applied{margin-top:0.5rem !important; display:flex !important; flex-wrap:wrap !important; gap:0.375rem !important}
4108cart-drawer-root.cdv2 .cdv2__discount-tag{display:inline-flex !important; align-items:center !important; gap:0.25rem !important; padding:0.25rem 0.375rem 0.25rem 0.625rem !important; font-size:0.75rem !important; background:#f0efeb !important; border:0 !important; border-radius:999px !important; color:var(--drawer-text) !important; font-weight:600 !important}
4109cart-drawer-root.cdv2 .cdv2__discount-tag button{border:0 !important; background:none !important; width:24px !important; height:24px !important; border-radius:50% !important; font-size:0.9375rem !important; color:var(--drawer-text-light) !important; cursor:pointer !important; line-height:1 !important; padding:0 !important; margin:0 !important}
4110cart-drawer-root.cdv2 .cdv2__discount-tag button:hover{color:var(--drawer-text) !important; background:#e4e2dc !important}
4111cart-drawer-root.cdv2 .cdv2__note{margin-bottom:var(--drawer-spacing-sm) !important; font-size:0.75rem !important}
4112cart-drawer-root.cdv2 .cdv2__note summary{cursor:pointer !important; color:var(--drawer-text-light) !important; font-weight:500 !important; font-size:0.75rem !important}
4113cart-drawer-root.cdv2 .cdv2__note-text{width:100% !important; min-height:50px !important; margin-top:0.375rem !important; padding:0.5rem !important; border:1px solid var(--drawer-border) !important; border-radius:var(--drawer-radius-sm) !important; font-size:0.8125rem !important; resize:vertical !important; font-family:inherit !important}
4114cart-drawer-root.cdv2 .cdv2__totals{margin-bottom:0.625rem !important; display:flex !important; flex-direction:column !important; gap:0.25rem !important; font-variant-numeric:tabular-nums !important}
4115cart-drawer-root.cdv2 .cdv2__row{display:flex !important; justify-content:space-between !important;
4115 align-items:baseline !important; gap:0.75rem !important; font-size:0.8125rem !important; color:var(--drawer-text-light) !important}
4116cart-drawer-root.cdv2 .cdv2__row > span{font-size:inherit !important; color:inherit !important; font-weight:inherit !important}
4117cart-drawer-root.cdv2 .cdv2__row.is-disc{color:var(--drawer-success) !important}
4118cart-drawer-root.cdv2 .cdv2__row.is-total{color:var(--drawer-text) !important; font-size:1rem !important; font-weight:600 !important; margin-top:0.125rem !important}
4119cart-drawer-root.cdv2 .cdv2__row.is-total strong{font-weight:700 !important; font-size:1.0625rem !important; color:var(--drawer-text) !important}
4120cart-drawer-root.cdv2 .cdv2__tax-note{margin:0.125rem 0 0 !important; font-size:0.6875rem !important; color:#9a978f !important}
4121cart-drawer-root.cdv2 .cdv2__checkout{width:100% !important; height:48px !important; display:flex !important; align-items:center !important; justify-content:center !important; background:var(--drawer-accent) !important; color:#fff !important; border:none !important; border-radius:8px !important; font-size:0.8125rem !important; font-weight:800 !important; text-transform:uppercase !important; letter-spacing:0.1em !important; cursor:pointer !important; transition:all 0.2s !important; padding:0 !important}
4122cart-drawer-root.cdv2 .cdv2__checkout:hover{background:var(--drawer-accent-hover) !important; transform:translateY(-1px) !important; box-shadow:0 4px 12px rgba(0,0,0,0.15) !important}
4123cart-drawer-root.cdv2 .cdv2__checkout:active{transform:translateY(0) !important}
4124cart-drawer-root.cdv2 .cdv2__checkout:disabled{opacity:0.5 !important; cursor:default !important; transform:none !important; box-shadow:none !important}
4125cart-drawer-root.cdv2 .is-busy{opacity:0.55 !important; pointer-events:none !important}
4126cart-drawer-root.cdv2 button:focus-visible, cart-drawer-root.cdv2 input:focus-visible{outline:2px solid var(--drawer-text) !important; outline-offset:-2px !important}
4127cart-drawer-root.cdv2 .visually-hidden{position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important}
4128@keyframes cdv2-pulse{0%{transform:scale(1)}45%{transform:scale(1.08)}100%{transform:scale(1)}}
4129cart-drawer-root.cdv2 .cdv2__status.pulse{display:inline-block !important; animation:cdv2-pulse 0.55s ease !important}
4130
4131/* mobile */
4132@media screen and (max-width: 767px){
4133  cart-drawer-root.cdv2{--drawer-spacing:0.75rem; --drawer-spacing-sm:0.375rem}
4134  cart-drawer-root.cdv2 .cdv2__line{padding:0.625rem 0 !important}
4135  cart-drawer-root.cdv2 .cdv2__line-title{font-size:0.875rem !important}
4136  cart-drawer-root.cdv2 .cdv2__line-price strong{font-size:0.875rem !important}
4137  cart-drawer-root.cdv2 .cdv2__checkout{height:46px !important}
4138  cart-drawer-root.cdv2 .cdv2__bundle{padding:0.5rem !important}
4139  cart-drawer-root.cdv2 .cdv2__bundle-thumbs{width:60px !important; gap:3px !important}
4140  cart-drawer-root.cdv2 .cdv2__bundle-thumb{width:28px !important; height:28px !important; border-radius:3px !important}
4141  cart-drawer-root.cdv2 .cdv2__bundle-label{font-size:0.75rem !important}
4142  cart-drawer-root.cdv2 .cdv2__sug-img{width:40px !important; height:40px !important}
4143  cart-drawer-root.cdv2 .cdv2__sug{gap:8px !important}
4144  cart-drawer-root.cdv2 .cdv2__sug > .cdv2__sug-add{margin-top:5px !important}
4145}
4146
4147/* safe area for notched devices */
4148@supports (padding-bottom: env(safe-area-inset-bottom)){
4149  cart-drawer-root.cdv2 .cdv2__foot{padding-bottom:calc(var(--drawer-spacing) + env(safe-area-inset-bottom)) !important}
4150}
4151
4152@media (prefers-reduced-motion: reduce){
4153  cart-drawer-root.cdv2 *{transition:none !important; animation:none !important}
4154}
4155</style>
4156</div></div>
4157
4158  <div
4159    class="drawer--instance"
4160    data-side="left"
4161    aria-expanded="false"
4162  >
4163    <div
4164      class="drawer--container"
4165      data-view="y-menu"
4166      
4167    ><div class="mobile-nav">
4168  <div
4169    class="mobile-nav--header"
4170    
4171  >
4172    
4173      <div class="mobile-nav--search" data-item="nav-text" data-mq="small"></div>
4174    
4175
4176    
4177      <div class="mobile-nav--login" data-item="nav-text" data-mq="small"></div>
4178    
4179  </div>
4180
4181  <div class="mobile-nav--menu"></div>
4182  <div
4183    class="mobile-nav--localization"
4184    
4185  ></div>
4186</div></div>
4187  </div>
4188
4189  <div class="drawer--focus-trigger" tabindex="0"></div>
4190</drawer-root></div>
4191
4192
4193  
4193<script type="text/javascript">
4194	var _learnq = _learnq || [];
4195	if(document.getElementById("AddToCart") != null){
4196			document.getElementById("AddToCart").addEventListener('click',function (){
4197				_learnq.push(['track', 'Added to Cart', item]);
4198		});
4199	}
4200</script>
4200
4201<style>
4202    .klaviyo-close-form:focus,
4203    .klaviyo-close-form:focus-visible,
4204    .klaviyo-close-form:hover{background:transparent !important}
4205    html:not(.mh-kb) .klaviyo-close-form:focus,
4206    html:not(.mh-kb) .klaviyo-close-form:focus-visible{outline:none !important;box-shadow:none !important}
4207    html.mh-kb .klaviyo-close-form:focus-visible{outline:2px solid #fff !important;outline-offset:2px !important;box-shadow:0 0 0 4px rgba(0,0,0,.35) !important}
4208  </style>
4209  
4209<script>
4210    (function(){
4211      var d=document.documentElement;
4212      addEventListener('keydown',function(e){if(e.key==='Tab'||e.key==='Escape'||e.key==='Enter'||e.key===' ')d.classList.add('mh-kb')},true);
4213      addEventListener('pointerdown',function(){d.classList.remove('mh-kb')},true);
4214    })();
4215  </script>
4215<div class="modal--window">
4216  <div class="modal--mask"></div>
4217  <div class="modal--container"></div>
4218  <div class="modal--close" tabindex="0" role="button" aria-label="Close modal"><svg class="icon--root icon--cross" width="20" height="20" viewBox="0 0 20 20" xmlns="http://www.w3.org/2000/svg">
4219      <path d="M10 8.727 17.944.783l1.273 1.273L11.273 10l7.944 7.944-1.273 1.273L10 11.273l-7.944 7.944-1.273-1.273L8.727 10 .783 2.056 2.056.783 10 8.727Z" fill="#000" fill-rule="nonzero" />
4220    </svg></div>
4221  <div class="modal--prev" tabindex="0" role="button" aria-label="Previous image"><div class="icon--root icon--prev">
4222      <div></div>
4223      <div></div>
4224      <div></div>
4225    </div></div>
4226  <div class="modal--next" tabindex="0" role="button" aria-label="Next image"><div class="icon--root icon--next">
4227      <div></div>
4228      <div></div>
4229      <div></div>
4230    </div></div>
4231</div><feedback-bar-root
4232  class="feedback-bar--root"
4233  data-transition-item="viewport"
4234  data-transition-type="slide-in"
4235  data-transition-trigger="custom"
4236  aria-hidden="true"
4237>
4238  <div
4239    id="feedback"
4240    class="feedback-bar--message"
4241    data-item="accent-text"
4242  ></div>
4243  
4243<script type="application/json">
4244    {
4245      "copied": "Link copied to clipboard",
4246      "contact-form": "Thanks for contacting us! We&#39;ll get back to you as soon as possible.",
4247      "email-invalid": "Please enter a valid email address",
4248      "newsletter": "Thanks for subscribing",
4249      "product-form": "We will notify you when this becomes available",
4250      "product--no-items": "The max number of items have already been added",
4251      "product--one-item": "There is only one item left to add to the cart",
4252      "product--n-items": "There are only [num_items] items left to add to the cart"
4253    }
4254  </script>
4254
4255</feedback-bar-root><svg class="icon--root icon--defs">
4256      <defs>
4257        <radialGradient id="instagram-hover" r="150%" cx="30%" cy="107%">
4258          <stop offset="0%" stop-color="#fdf497" />
4259          <stop offset="5%" stop-color="#fdf497" />
4260          <stop offset="45%" stop-color="#fd5949" />
4261          <stop offset="60%" stop-color="#d6249f" />
4262          <stop offset="90%" stop-color="#285aeb" />
4263        </radialGradient>
4264        <symbol id="loading-spinner" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid">
4265          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13">
4266            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.8391608391608392s" repeatCount="indefinite" />
4267          </rect>
4268          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(27.692 50 50)">
4269            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.7692307692307692s" repeatCount="indefinite" />
4270          </rect>
4271          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(55.385 50 50)">
4272            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.6993006993006993s" repeatCount="indefinite" />
4273          </rect>
4274          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(83.077 50 50)">
4275            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.6293706293706294s" repeatCount="indefinite" />
4276          </rect>
4277          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(110.77 50 50)">
4278            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.5594405594405594s" repeatCount="indefinite" />
4279          </rect>
4280          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(138.462 50 50)">
4281            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.4895104895104895s" repeatCount="indefinite" />
4282          </rect>
4283          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(166.154 50 50)">
4284            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.4195804195804196s" repeatCount="indefinite" />
4285          </rect>
4286          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(193.846 50 50)">
4287            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.34965034965034963s" repeatCount="indefinite" />
4288          </rect>
4289          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(221.538 50 50)">
4290            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.2797202797202797s" repeatCount="indefinite" />
4291          </rect>
4292          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(249.23 50 50)">
4293            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.2097902097902098s" repeatCount="indefinite" />
4294          </rect>
4295          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(276.923 50 50)">
4296            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.13986013986013984s" repeatCount="indefinite" />
4297          </rect>
4298          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(304.615 50 50)">
4299            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="-0.06993006993006992s" repeatCount="indefinite" />
4300          </rect>
4301          <rect x="48" y="24.5" rx="0" ry="0" width="4" height="13" transform="rotate(332.308 50 50)">
4302            <animate attributeName="opacity" values="1;0" keyTimes="0;1" dur="0.9090909090909091s" begin="0s" repeatCount="indefinite" />
4303          </rect>
4304        </symbol>
4305      </defs>
4306    </svg>
4306<script src="//instant.page/5.2.0" type="module" integrity="sha384-jnZyxPjiipYXnSU0ygqeac2q7CVYMbh84q0uHVRRxEtvFPiQYbXWUorga2aqZJ0z"></script>
4306
4307<section id="shopify-section-promo-popup" class="shopify-section promo-popup-section">
4308
4309</section>
4310
4311
4312<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.7.1/jquery.min.js"></script>
4312
4313 <!-- Replace this section in your theme.liquid -->
4314<!-- Put this RIGHT BEFORE <style> body,h1,h2,h3,h4,h5,h6 {font-family: PP Mori, sans-serif !important; font-weight: 600 !important;} .x-menu {font-family: PP Mori, sans-serif !important; font-weight: 600 !important;} </style>
4315<div id="shopify-block-AQXVseTJmTnRYajVON__12741885996470144523" class="shopify-block shopify-app-block">
4315<script type="text/javascript" src="https://enormapps.com/gallery-v2/assets/frontend/js/embed.js" async="" defer="defer"></script>
vendor: 2 bytes, line 4315
4315
4316<script type="text/javascript" src="https://enormapps.com/gallery-v2/assets/frontend/js/enap-video.js" async defer></script>
4316
4317
4318</div></body> tag -->
4319
4320<script>
4321  // Defer heavy tracking scripts
4322  window.addEventListener('load', function() {
4323    setTimeout(function() {
4324      
4325      // 1. Microsoft Clarity
4326      (function(c,l,a,r,i,t,y){
4327        c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
4328        t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
4329        y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
4330      })(window, document, "clarity", "script", "d67i9zahlr");
4331      
4332      // 2. Roku Pixel
4333      !function(e,r){if(!e.rkp){var t=e.rkp=function(){
4334        var e=Array.prototype.slice.call(arguments);
4335        e.push(Date.now()),t.eventProcessor?t.eventProcessor.apply(t,e):t.queue.push(e)
4336      };t.initiatorVersion="1.0",t.queue=[],t.load=function(e){
4337        var t=r.createElement("script");t.async=!0,t.src=e;
4338        var n=r.getElementsByTagName("script")[0];
4339        (n?n.parentNode:r.body).insertBefore(t,n)
4340      },rkp.load("https://cdn.ravm.tv/ust/dist/rkp.loader.js")}}(window,document);
4341      rkp("init","Pacc26uDlt7N"),rkp('event', 'PAGE_VIEW');
4342      
4343      // 3. Vibe.co
4344      !function(v,i,b,e,c,o){if(!v[c]){var s=v[c]=function(){s.process?s.process.apply(s,arguments):s.queue.push(arguments)};s.queue=[],s.b=1*new Date;var t=i.createElement(b);t.async=!0,t.src=e;var n=i.getElementsByTagName(b)[0];n.parentNode.insertBefore(t,n)}}(window,document,"script","https://s.vibe.co/vbpx.js","vbpx");
4345      vbpx('init','LJ5S5e');
4346      vbpx('event', 'page_view');
4347      
4348    }, 2500); // 2.5 second delay
4349  });
4350</script>
4350
4351  
4351<script>
4352    document.addEventListener('DOMContentLoaded', function() {
4353      if (new URLSearchParams(window.location.search).has('cart')) {
4354        theme.drawer.open('right', 'cart-drawer');
4355      }
4356    });
4357  </script>
4357
4358
4359  
4359<script>
4360    /* A11y: honor prefers-reduced-motion for autoplay video (WCAG 2.2.2 / 2.3.1).
4361       Only runs for users who set "reduce motion" at the OS level, so it is invisible to everyone else.
4362       Pauses autoplay videos (incl. ones built dynamically by sections) → static first frame instead of looping motion. */
4363    (function () {
4364      var mq = window.matchMedia('(prefers-reduced-motion: reduce)');
4365      if (!mq.matches) return;
4366      function tame(v) {
4367        if (v.dataset.rmTamed) return;
4368        v.dataset.rmTamed = '1';
4369        v.removeAttribute('autoplay');
4370        v.autoplay = false;
4371        try { v.pause(); } catch (e) {}
4372        v.addEventListener('play', function () { if (mq.matches) { try { v.pause(); } catch (e) {} } });
4373      }
4374      function scan() { document.querySelectorAll('video').forEach(tame); }
4375      if (document.readyState !== 'loading') scan(); else document.addEventListener('DOMContentLoaded', scan);
4376      new MutationObserver(function (muts) {
4377        muts.forEach(function (m) {
4378          m.addedNodes && m.addedNodes.forEach(function (n) {
4379            if (n.nodeType !== 1) return;
4380            if (n.tagName === 'VIDEO') tame(n);
4381            else if (n.querySelectorAll) n.querySelectorAll('video').forEach(tame);
4382          });
4383        });
4384      }).observe(document.documentElement, { childList: true, subtree: true });
4385    })();
4386  </script>
4386
4387
4388<style> body,h1,h2,h3,h4,h5,h6 {font-family: PP Mori, sans-serif !important; font-weight: 600 !important;} .x-menu {font-family: PP Mori, sans-serif !important; font-weight: 600 !important;} </style>
4389<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
4389
4390</body>
4391  </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.