PageSourceSearch

https://bondandmason.com/

html bondandmason.com collected 2026-10-06 14:04:25 UTC 453,270 bytes, 3,072 lines download raw bytes

1<!doctype html>
2<html class="no-js" lang="en" dir="ltr">
3
4  <head>
5<!-- Start of Shoplift scripts -->
6<!-- 2026-09-30T12:18:03.6103032Z -->
7<style>.shoplift-hide { opacity: 0 !important; }</style>
8<style id="sl-preview-bar-hide">#preview-bar-iframe, #PBarNextFrameWrapper { display: none !important; }</style>
9<script type="text/javascript">(function(rootPath, template, themeRole, themeId, isThemePreview){ /* Generated on 2026-10-06T13:45:59.0184323Z */(function(){"use strict";var se=document.createElement("style");se.textContent=`#shoplift-preview-control{position:fixed;max-width:332px;height:56px;background-color:#141414;z-index:9999;bottom:20px;display:flex;border-radius:8px;box-shadow:13px 22px 7px #0000,9px 14px 7px #00000003,5px 8px 6px #0000000d,2px 4px 4px #00000017,1px 1px 2px #0000001a,0 0 #0000001a;align-items:center;margin:0 auto;left:16px;right:16px;opacity:0;transform:translateY(20px);visibility:hidden;transition:opacity .4s ease-in-out,transform .4s ease-in-out,visibility 0s .4s}#shoplift-preview-control.visible{opacity:1;transform:translateY(0);visibility:visible;transition:opacity .4s ease-in-out,transform .4s ease-in-out,visibility 0s 0s}#shoplift-preview-control *{font-family:Inter,sans-serif;color:#fff;box-sizing:border-box;font-size:16px}#shoplift-preview-variant-title{font-weight:400;line-height:140%;font-size:16px;text-align:start;letter-spacing:-.16px;flex-grow:1;text-wrap:nowrap;overflow:hidden;text-overflow:ellipsis}#shoplift-preview-variant-selector{position:relative;display:block;padding:6px 0;height:100%;min-width:0;flex:1 1 auto}#shoplift-preview-variant-menu-trigger{border:none;cursor:pointer;width:100%;background-color:transparent;padding:0 16px;border-left:1px solid #333;border-right:1px solid #333;height:100%;display:flex;align-items:center;justify-content:start;gap:8px}#shoplift-preview-variant-selector .menu-variant-label{width:24px;height:24px;border-radius:50%;padding:6px;display:flex;justify-content:center;align-items:center;font-size:12px;font-style:normal;font-weight:600;line-height:100%;letter-spacing:-.12px;flex-shrink:0}#shoplift-preview-variant-selector .preview-variant-menu{position:absolute;bottom:110%;transform:translate3d(0,20px,0);visibility:hidden;pointer-events:none;opacity:0;cursor:pointer;background-color:#141414;border:1px solid #141414;border-radius:6px;width:100%;max-height:156px;overflow-y:auto;box-shadow:0 8px 16px #0003;z-index:1;transition:opacity .3s ease-in-out,transform .3s ease-in-out,visibility 0s .3s}#shoplift-preview-variant-selector .preview-variant-menu.preview-variant-menu__visible{visibility:visible;pointer-events:auto;opacity:100;transform:translateZ(0);transition:opacity .3s ease-in-out,transform .3s ease-in-out,visibility 0s 0s}@media screen and (max-width:400px){#shoplift-preview-variant-selector .preview-variant-menu{position:fixed;left:0;right:0;width:auto;bottom:110%}}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item{padding:12px 16px;display:flex;overflow:hidden}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item .menu-variant-label{margin-right:6px}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item span{overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap;white-space:nowrap;color:#f6f6f6;font-size:14px;font-style:normal;font-weight:500}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:hover{background-color:#545454}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:last-of-type{border-bottom-left-radius:6px;border-bottom-right-radius:6px}#shoplift-preview-variant-selector .preview-variant-menu .preview-variant-menu--item:first-of-type{border-top-left-radius:6px;border-top-right-radius:6px}#shoplift-preview-control div:has(#shoplift-exit-preview-button){padding:0 16px}#shoplift-exit-preview-button{padding:6px 8px;font-weight:500;line-height:75%;border-radius:4px;background-color:transparent;border:none;text-decoration:none}#shoplift-exit-preview-button:hover{cursor:pointer;background-color:#333}#shoplift-preview-subscription-warning{position:relative;display:flex;align-items:center;gap:6px;padding:6px 10px;margin:0 4px;border-left:1px solid #333;cursor:help;outline:none}#shoplift-preview-subscription-warning__icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background-color:#f59e0b;color:#141414!important;font-weight:700;font-size:12px!important;line-height:1;flex-shrink:0}#shoplift-preview-subscription-warning__label{font-size:13px!important;font-weight:500;color:#fbbf24!important;text-wrap:nowrap;white-space:nowrap}#shoplift-preview-subscription-warning__tooltip{position:absolute;bottom:calc(100% + 8px);right:0;max-width:320px;width:max-content;padding:10px 12px;border-radius:6px;background-color:#1f1f1f;color:#fff!important;font-size:12px!important;line-height:1.4!important;box-shadow:0 8px 16px #0000004d;z-index:10000;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .2s ease-in-out,transform .2s ease-in-out,visibility 0s .2s;pointer-events:none}#shoplift-preview-subscription-warning__tooltip.shoplift-preview-subscription-warning__tooltip--visible{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .2s ease-in-out,transform .2s ease-in-out,visibility 0s 0s}#shoplift-preview-subscription-warning:focus-visible{box-shadow:inset 0 0 0 2px #f59e0b;border-radius:4px}#shoplift-preview-control:has(#shoplift-preview-subscription-warning){max-width:480px}/*$vite$:1*/`,document.head.appendChild(se);var ge=" daum[ /]| deusu/|(?:^|[^g])news(?!sapphire)|(?<! channel/|google/)google(?!(?:wv|app|/google| pixel))|(?<! cu)bots?(?:\\b|_)|(?<!cam)scan|(?<!lib)http|24x
97|;\\s\\w+;$|@[a-z][\\w-]+\\.|\\(\\)|\\.com\\b|\\b\\w+/1\\.0;|\\bbw/|\\bdlc\\b|\\bort/|\\bperl\\b|\\btime/|\\||^[<\\(;]|^[\\w \\.\\-\\(?:\\):%]+(?:/v?\\d+(?:\\.\\d+)?(?:\\.\\d{1,10})*?)?(?:,|$)|^[\\w\\-]+/[\\w]+$|^[^ ]{50,}$|^\\d+\\b|^\\w*search\\b|^\\w+/[\\w\\(\\)]*$|^\\w+/\\d\\.\\d\\s\\([\\w@]+\\)$|^active|^ad muncher|^amaya|^apache/|^avsdevicesdk/|^azure|^biglotron|^blackbox exporter|^bot|^clamav[ /]|^claude-code/|^client/|^cobweb/|^custom|^ddg[_-]android|^discourse|^dispatch/\\d|^downcast/|^duckduckgo|^email|^exodusmovement|^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+\\.\\d+)?\\)$|^navermailapp|^netsurf|^offline|^openai/|^owler|^php|^postman|^ps_daily/|^python|^rank|^read|^reed|^remove\\.bg/|^rest|^rss|^snapchat|^sora |^space bison|^stape/|^svn|^swcd |^taringa|^thumbor/|^track|^w3c|^webbandit/|^webcopier|^wget|^whatsapp|^wordpress|^xenu link sleuth|^yahoo|^yandex|^zdm/\\d|^zoom marketplace/|abuse|advisor|agent\\b|analyzer|archive|ask jeeves/teoma|attracta|audit|bluecoat drtr|browsex|burpcollaborator|capture|catch|check\\b|checker|chrome-lighthouse|chromeframe|classifier|cloudflare|collapsify\\b|convertify|cookiehubverify/|crawl|cursor/|cypress/|dareboost|datanyze|dejaclick|detect|discovery|dmbrowser|download|exaleadcloudview|feed|firephp|foregenix|functionize|grab|hardenize\\b|headless|hotjar|httrack|hubspot marketing grader|ibisbrowser|infrawatch|insight|inspect|iplabel|java(?!;)|library|linkcheck|linktiger|mail\\.ru/|manager|manus-user/|marketgoo/|measure|monitor\\b|neustar wpm|node\\b|nutch|offbyone|openvas|optimize|pageburst|pagespeed|parser|phantomjs|pingdom|playwright|powermarks|preview|productfinder|prospectingstudio|proxy|ptst[ /]\\d|radar|readable/|retriever|rexx;|rigor|rss\\b|scrape|securityheaders|selenium|server|silktide|sindup/|sogou|sparkler/|speedcurve|spider|splash|statuscake|supercleaner|synapse|synthetic|testlocally|tools|torrent|transcoder|url|validator|virtuoso|wappalyzer|watchtowr|webglance|webkit2png|whatcms/|xtate/",me=/bot|crawl|http|lighthouse|scan|search|spider/i,z;function ye(){if(z instanceof RegExp)return z;try{z=new RegExp(ge,"i")}catch{z=me}return z}var ve=a=>typeof a=="string"&&a!=="";function we(a){return ve(a)&&ye().test(a)}var be=we;class ee{timestamp;constructor(){this.timestamp=new Date}}class Se extends ee{type;testId;hypothesisId;constructor(e,t,i){super(),this.type=3,this.testId=e,this.hypothesisId=t,this.timestamp=i}}class Ce extends ee{type;path;constructor(e){super(),this.type=4,this.path=e}}class Te extends ee{type;cart;constructor(e){super(),this.type=5,this.cart=e}}class G extends Error{isBot;constructor(){super(),this.isBot=!0}}function Ie(a,e,t){for(const i of e.selectors){const s=a.querySelectorAll(i.cssSelector);for(let r=0;r<s.length;r++)t(e.testId,e.hypothesisId)}ne(a,e,(i,s,r,n,o)=>o(s,r),t)}function U(a,e,t){for(const i of e.selectors)oe(a,e.testId,e.hypothesisId,i,t??(()=>{}));ne(a,e,oe,t??(()=>{}))}function re(a){return a.urlPatterns.reduce((e,t)=>{switch(t.operator){case"contains":return e+`.*${t}.*`;case"endsWith":return e+`.*${t}`;case"startsWith":return e+`${t}.*`}},"")}function ne(a,e,t,i){new MutationObserver(()=>{for(const r of e.selectors)t(a,e.testId,e.hypothesisId,r,i)}).observe(a.documentElement,{childList:!0,subtree:!0})}function oe(a,e,t,i,s){const r=a.querySelectorAll(i.cssSelector);for(let n=0;n<r.length;n++){let o=r.item(n);if(o instanceof HTMLElement&&o.dataset.shoplift!==""){o.dataset.shoplift="";for(const l of i.actions.sort(De))o=Pe(a,i.cssSelector,o,l)}}return r.length>0&&s?(s(e,t),!0):!1}function Pe(a,e,t,i){switch(i.type){case"innerHtml":t.innerHTML=i.value;break;case"attribute":Ae(t,i.scope,i.value);break;case"css":ke(a,e,i.value);break;case"js":Ee(a,t,i);break;case"copy":return xe(t);case"remove":_e(t);break;case"move":Re(t,parseInt(i.value));break}return t}function Ae(a,e,t){a.setAttribute(e,t)}function ke(a,e,t){const i=a.createElement("style");i.innerHTML=`${e} { ${t} }`,a.getElementsByTagName("head")[0]?.appendChild(i)}function Ee(a,e,t){Function("document","element",`"use strict"; ${t.value}`)(a,e)}function xe(a){const e=a.cloneNode(!0);if(!a.parentNode)throw"Can't copy node outside of DOM";return a.parentNode.insertBefore(e,a.nextSibling),e}function _e(a){a.remove()}function Re(a,e){if(e===0)return;const t=Array.prototype.slice.call(a.parentElement.children).indexOf(a),i=Math.min(Math.max(t+e,0),a.parentElement.children.length-1);a.parentElement.children.item(i).insertAdjacentElement(e>0?"afterend":"beforebegin",a)}function De(a,e){return ae(a)-ae(e)}function ae(a){return a.type==="copy"||a.type==="remove"?0:1}
9const M={Template:0,UrlRedirect:2,Script:3,Price:5},Oe="data:image/svg+xml,%3csvg%20width='12'%20height='12'%20viewBox='0%200%2012%2012'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.96001%207.90004C9.86501%207.90004%209.77001%207.86504%209.69501%207.79004L6.43501%204.53004C6.19501%204.29004%205.80501%204.29004%205.56501%204.53004L2.30501%207.79004C2.16001%207.93504%201.92001%207.93504%201.77501%207.79004C1.63001%207.64504%201.63001%207.40504%201.77501%207.26004L5.03501%204.00004C5.56501%203.47004%206.43001%203.47004%206.96501%204.00004L10.225%207.26004C10.37%207.40504%2010.37%207.64504%2010.225%207.79004C10.15%207.86004%2010.055%207.90004%209.96001%207.90004Z'%20fill='white'/%3e%3c/svg%3e",Ve="data:image/svg+xml,%3csvg%20width='14'%20height='24'%20viewBox='0%200%2014%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M12.3976%2014.5255C12.2833%2013.8788%2012.0498%2013.3024%2011.6952%2012.7961C11.3416%2012.2898%2010.9209%2011.8353%2010.4353%2011.4317C9.94868%2011.0291%209.43546%2010.6488%208.89565%2010.292C8.48487%2010.049%208.09577%209.78565%207.72637%209.50402C7.35697%209.2224%207.08016%208.89503%206.89694%208.51987C6.71273%208.14471%206.67826%207.69533%206.79055%207.1697C6.86345%206.83216%206.97476%206.54647%207.12351%206.31162C7.27324%206.07778%207.47124%205.89986%207.7175%205.77684C7.96377%205.65483%208.21989%205.59383%208.48389%205.59383C8.88087%205.59383%209.17639%205.7016%209.3734%205.91714C9.56943%206.13268%209.68271%206.42345%209.71424%206.78946C9.74576%207.15547%209.72015%207.55401%209.63839%207.98509C9.55663%208.41617%209.43645%208.84724%209.27687%209.27934L13.5127%208.80149C13.9638%207.52656%2014.1017%206.42447%2013.9264%205.49725C13.751%204.56901%2013.2664%203.85122%2012.4724%203.34491C12.239%203.19648%2011.9779%203.07041%2011.6893%202.96569L12.0026%201.50979L9.86397%200L7.3875%201.50979L7.11169%202.78878C6.65166%202.8874%206.21724%203.01957%205.8114%203.19038C4.85292%203.594%204.06684%204.15115%203.45117%204.86385C2.83452%205.57655%202.42571%206.40108%202.22378%207.33847C2.06616%208.06947%202.04942%208.70796%202.17551%209.25087C2.30061%209.7948%202.52028%2010.2828%202.8355%2010.7139C3.14974%2011.145%203.51816%2011.5344%203.93977%2011.881C4.36039%2012.2288%204.782%2012.5521%205.20164%2012.851C5.68334%2013.1702%206.13844%2013.5169%206.56497%2013.8921C6.99052%2014.2672%207.31954%2014.7125%207.55004%2015.228C7.78055%2015.7445%207.81502%2016.3769%207.65347%2017.1262C7.56482%2017.5389%207.43676%2017.8765%207.27028%2018.1388C7.10381%2018.4011%206.89596%2018.5983%206.64772%2018.7295C6.3985%2018.8606%206.12071%2018.9267%205.8114%2018.9267C5.21641%2018.9267%204.79776%2018.6034%204.62833%2018.1632C4.4589%2017.7229%204.47367%2017.2583%204.60075%2016.5639C4.72782%2015.8705%205.05092%2015.1395%205.37107%2014.3699H1.17665C1.17665%2014.3699%200.207341%2016.1115%200.0310135%2017.6762C-0.0655232%2018.5302%200.0635208%2019.2653%200.41519%2019.8844C0.76686%2020.5036%201.33032%2020.9814%202.10655%2021.319C2.39222%2021.443%202.7104%2021.5447%203.05813%2021.623L2.54589%2024H7.17473L7.7047%2021.5386C8.08493%2021.442%208.43857%2021.3231%208.76562%2021.1787C9.73985%2020.7476%2010.52%2020.1427%2011.1071%2019.3649C11.6932%2018.5871%2012.0873%2017.7291%2012.2892%2016.7917C12.4744%2015.9295%2012.5099%2015.1741%2012.3966%2014.5275L12.3976%2014.5255Z'%20fill='white'/%3e%3c/svg%3e";async function Le(a){let e=a.replace(/-/g,"+").replace(/_/g,"/");for(;e.length%4;)e+="=";const t=atob(e),i=Uint8Array.from(t,n=>n.charCodeAt(0)),s=new Blob([i]).stream().pipeThrough(new DecompressionStream("gzip")),r=await new Response(s).text();return JSON.parse(r)}function F(a,e){return typeof e=="string"&&/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d+(?:Z|[+-]\d+)/.test(e)?new Date(e):e}function te(a,e){return e}function q(a,e=!1,t=!1,i=","){const s=a/100;if(t){const n=Math.round(s).toLocaleString("en-US");return i!==","?n.replace(/,/g,i):n}else{const r=e?",":".",n=s.toFixed(2).split("."),o=parseInt(n[0],10),l=n[1]??"00",c=o.toLocaleString("en-US");return i!==","?`${c.replace(/,/g,i)}${r}${l}`:e?`${c.replace(/,/g,".")}${r}${l}`:`${c}${r}${l}`}}function H(a,e,t,i){const s=e.replace("{{amount}}",q(a,!1,!1)).replace("{{amount_no_decimals}}",q(a,!1,!0)).replace("{{amount_with_comma_separator}}",q(a,!0,!1)).replace("{{amount_no_decimals_with_comma_separator}}",q(a,!0,!0)).replace("{{amount_with_space_separator}}",q(a,!1,!1," ")).replace("{{amount_no_decimals_with_space_separator}}",q(a,!1,!0," ")).replace("{{amount_with_apostrophe_separator}}",q(a,!1,!1,"'")).replace("{{amount_no_decimals_with_apostrophe_separator}}",q(a,!1,!0,"'")).replace("{{amount_with_period_and_space_separator}}",q(a,!1,!1,". ")).replace("{{amount_no_decimals_with_period_and_space_separator}}",q(a,!1,!0,". "));return i?`${s} ${t}`:s}function le(a){return a.replace(/[^\d.,\s-]/g,"").trim()}function j(a){const e=new Map;for(const[t,i,s]of a.variants)e.set(t,{priceInCents:i,compareAtPriceInCents:s});return e}function $e(a,e,t,i){const{priceInCents:s,compareAtPriceInCents:r}=t,{moneyFormat:n,currency:o,currencyCodeEnabled:l}=i;if(a.getAttribute("data-sl-attribute-p")===e)a.innerHTML=H(s,n,o,l);else if(a.getAttribute("data-sl-attribute-cap")===e)r<=0||r<=s?a.remove():a.innerHTML=H(r,n,o,l);else if(a.getAttribute("data-sl-attribute-discount")===e&&!(r<=0||r<=s)){const d=Math.round((r-s)/r*100),p=le(H(r-s,n,o,!1)),h=a.getAttribute("data-sl-format")||"percent";h==="percent"?a.textContent=`-${d}%`:h==="amount"?a.textContent=`-${p}`:h==="both"&&(a.textContent=`-${d}% (-${p})`)}}function Me(a){const e=[],t={id:"url-pattern",operator:"contains",value:"/"};for(const[i,s,r]of a.variants){e.push({id:`p-${i}`,cssSelector:`[data-sl-attribute-p="${i}"]`,urlPatterns:[t],actions:[{id:`p-action-${i}`,type:"innerHtml",scope:"price",value:H(s,a.moneyFormat,a.currency,a.currencyCodeEnabled)}]});const n=r<=0||r<=s;
9if(e.push({id:`cap-${i}`,cssSelector:`[data-sl-attribute-cap="${i}"]`,urlPatterns:[t],actions:[{id:`cap-action-${i}`,type:n?"remove":"innerHtml",scope:"compare-at-price",value:n?"":H(r,a.moneyFormat,a.currency,a.currencyCodeEnabled)}]}),!n&&r>s){const o=Math.round((r-s)/r*100),l=le(H(r-s,a.moneyFormat,a.currency,!1));e.push({id:`d-${i}`,cssSelector:`[data-sl-attribute-discount="${i}"]`,urlPatterns:[t],actions:[{id:`d-action-${i}`,type:"js",scope:null,value:`var format = element.getAttribute('data-sl-format') || 'percent';                    if (format === 'percent') {                      element.textContent = '-${o}%';                    } else if (format === 'amount') {                      element.textContent = '-${l}';                    } else if (format === 'both') {                      element.textContent = '-${o}% (-${l})';                    }`}]})}}return e}const qe=a=>{let e=5381;for(let t=0;t<a.length;t++)e=(e*33^a.charCodeAt(t))>>>0;return e.toString(36)},He=()=>Math.random().toString(36).slice(2,10)+Date.now().toString(36).slice(-4),Ne=a=>btoa(JSON.stringify(a)).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,""),J=a=>a.replace(/#slr-[a-z0-9]+$/,""),Ue=/^[A-Za-z0-9._=~+/-]{1,256}$/,ie=a=>typeof a=="string"&&Ue.test(a)?a:null,Fe=a=>{if(!a)return null;try{const t=JSON.parse(atob(decodeURIComponent(a)))?.$exchange_id;return typeof t=="string"&&t.length>0?t:null}catch{return null}},rt="modulepreload",nt=function(a){return"/"+a},ot={},Be=function(e,t,i){let s=Promise.resolve();function r(n){const o=new Event("vite:preloadError",{cancelable:!0});if(o.payload=n,window.dispatchEvent(o),!o.defaultPrevented)throw n}return s.then(n=>{for(const o of n||[])o.status==="rejected"&&r(o.reason);return e().catch(r)})};function ce(a,e,t){const i=t?a.plans.filter(c=>!c.variantId||c.variantId===t):a.plans,s=[],r=[];for(const c of i)c.direction==="decrease"?(s.push(c.existingShopifyPlanId),r.push(c.createdShopifyPlanId)):(s.push(c.createdShopifyPlanId),r.push(c.existingShopifyPlanId));const n=e?s:r,o=e?r:s;if(t)for(const c of a.plans)for(const d of[c.existingShopifyPlanId,c.createdShopifyPlanId])d&&!n.includes(d)&&!o.includes(d)&&o.push(d);const l={};for(let c=0;c<o.length;c++){const d=o[c],p=n[c];d&&p&&(l[d]=p)}return{showPlanIds:n,hidePlanIds:o,swapMap:l}}function de(a,e,t){const i=e?a.plans.find(r=>r.variantId===e):void 0;if(i)return i.direction;if(t){const r=a.plans.find(n=>n.productId===t);if(r)return r.direction}return a.plans.find(r=>!r.variantId)?.direction??null}function Y(a,e){const t=e?a.plans.filter(r=>!r.productId||r.productId===e):a.plans,i={};for(const r of t)i[r.existingShopifyPlanId]=r.existingDiscountAmount,i[r.createdShopifyPlanId]=r.existingDiscountAmount;const s=Math.max(...Object.values(i),0);return{discountMap:i,maxDiscount:s}}function W(a){const e=document.querySelector('form[action*="/cart/add"] input[name="product-id"]')?.value;if(e)return e;if(a){for(const r of Array.from(document.querySelectorAll("[data-sl-attribute-p]"))){const n=r.getAttribute("data-sl-attribute-p");if(!n)continue;const o=a.variants.find(l=>l[0]===n);if(o?.[3])return o[3]}const s=document.querySelector('form[action*="/cart/add"] input[name="id"]')?.value;if(s){const r=a.variants.find(n=>n[0]===s);if(r?.[3])return r[3]}}const t=window,i=t.ShopifyAnalytics?.meta?.product?.id??t.meta?.product?.id;return i!=null?String(i):null}function D(a,e){return a.widget.selectors[e]??[]}function N(a,e){return a.replace(/[\d.]+%/,`${e}%`)}function $(a,e){const t=document.createTreeWalker(a,NodeFilter.SHOW_TEXT);let i=t.nextNode();for(;i;){if(i.nodeValue!==null){const s=e(i.nodeValue);if(s!==i.nodeValue){i.nodeValue=s;return}}i=t.nextNode()}}function pe(a,e){return a===null?!1:a==="decrease"?!e:e}async function ze(a){if(a.subscriptionSwapDone)return;const e=a.getActiveAssignment();if(!e)return;const t=a.getHypothesis(e.hypothesisId);if(!t?.subscriptionData)return;a.subscriptionSwapDone=!0;const i=t.subscriptionData,s=t.isControl,r=[...new Set(i.plans.map(d=>d.direction))].join(",");a.log(`[SUB-SWAP] ${s?"A":"B"} side, directions=${r}`);const n=i.plans.some(d=>d.variantId);let o=!1,l=!1;function c(){if(!l){l=!0;try{const d=n?document.querySelector("select[name='id'], input[name='id']")?.value:void 0,{showPlanIds:p,hidePlanIds:h,swapMap:u}=ce(i,s,d);a.swapMap=u;const b=D(i,"widgetParent"),E=D(i,"subscriptionPlans"),S=D(i,"subscriptionInput");if(!b.length||!E.length||!S.length)return;const C=document.querySelector(b[0].selector);if(!C?.shadowRoot)return;const _=C.shadowRoot.querySelector(E[0].selector);if(!_?.shadowRoot)return;const T=S[0].selector;let m=null;if(i.widget.widgetType==="buttons"||i.widget.widgetType==="radio"){const y=Array.from(_.shadowRoot.querySelectorAll(T));if(!y.length)return;for(const v of y){const g=v.closest("label");g&&(p.includes(v.value)?g.style.display="":h.includes(v.value)&&(g.style.display="none"))}const w=y.some(v=>p.includes(v.value)&&v.checked),I=y.some(v=>h.includes(v.value)&&v.checked);if((w||I)&&(o=!1),!w&&!o){o=!0;for(const v of y)if(p.includes(v.value)){v.closest("label")?.click(),v.dispatchEvent(new Event("change",{bubbles:!0}));break}}const f=y.find(v=>v.checked);m=f&&p.includes(f.value)?f.value:p[0]??null}else if(i.widget.widgetType==="dropdown"){const y=_.shadowRoot.querySelector("select");if(!y)return;for(const w of Array.from(y.options))h.includes(w.value)&&(w.style.display="none",w.disabled=!0);if(h.includes(y.value)){const w=Array.from(y.options).find(I=>p.includes(I.value));w&&(y.value=w.value,y.dispatchEvent(new Event("change",{bubbles:!0})))}m=p.includes(y.value)?y.value:p[0]??null}if(m){const y=Array.from(document.querySelectorAll('input[name="selling_plan"]'));for(const w of y)w.value!==m&&(w.value=m)}}finally{l=!1}}}
9if(a.subscriptionHideWrongPlans=c,a.swapMap=ce(i,s).swapMap,c(),n){const d=document.querySelector("select[name='id'], input[name='id']");d&&d.addEventListener("change",c)}}function B(a){const e=D(a,"widgetParent");return e.length?document.querySelector(e[0].selector)?.shadowRoot??null:null}function Z(a,e){const t=D(a,"subscriptionPlans");return t.length?e.querySelector(t[0].selector)?.shadowRoot??null:null}function X(a,e){const t=new URLSearchParams(window.location.search).get("variant");if(t)return t;{const i=document.querySelector('form[action*="/cart/add"] input[name="id"]')?.value;if(i)return i}return a.size>0?[...a.keys()][0]:void 0}function K(a,e){return H(a,e.moneyFormat,e.currency,e.currencyCodeEnabled)}function We({originalFetch:a,swapMap:e,slptValue:t,getSelectedPlanId:i,log:s}){if(window.fetch.__shoplift_intercepted)return s("[SUB-INTERCEPT] already installed — skipping"),()=>{};function r(o){if(i){const l=i();if(l)return e[l]??l}return e[o]??o}const n=function(o,l){if((typeof o=="string"?o:o instanceof URL?o.href:o.url).includes("/cart/add")&&l?.body)try{if(l.body instanceof FormData){const d=l.body.get("selling_plan");d?l.body.set("selling_plan",r(String(d))):(!d||d==="")&&t&&l.body.set("properties[_slpt]",t)}else if(typeof l.body=="string"){const d=JSON.parse(l.body);if(d.items)for(const p of d.items){const h=String(p.selling_plan??"");h?p.selling_plan=r(h):!p.selling_plan&&t&&(p.properties||(p.properties={}),p.properties._slpt=t)}else if(d.id){const p=String(d.selling_plan??"");p?d.selling_plan=r(p):!d.selling_plan&&t&&(d.properties||(d.properties={}),d.properties._slpt=t)}l.body=JSON.stringify(d)}}catch(d){s("[SUB-INTERCEPT] body parse failed; cart-add proceeds with un-swapped plan",d)}return a.call(window,o,l)};return n.__shoplift_intercepted=!0,window.fetch=n,function(){window.fetch===n&&(window.fetch=a)}}function Ke({log:a}){if(window.fetch.__shoplift_intercepted)return a("[SUB-PREVIEW-BLOCK] already installed — skipping"),()=>{};const e=window.fetch,t=function(i,s){const r=typeof i=="string"?i:i instanceof URL?i.href:i.url;return r.includes("/cart/add")?(a("[SUB-PREVIEW-BLOCK] cart-add blocked in preview mode",{url:r}),Promise.resolve(new Response(JSON.stringify({id:0,properties:{},quantity:0,variant_id:0,key:"preview",title:"Preview — cart-add blocked",price:0,original_price:0,line_price:0,original_line_price:0,total_discount:0,discounts:[],preview:!0}),{status:200,headers:{"Content-Type":"application/json"}}))):e.call(window,i,s)};return t.__shoplift_intercepted=!0,window.fetch=t,function(){window.fetch===t&&(window.fetch=e)}}function ue({data:a,runUpdates:e,debounceMs:t=150}){let i=null;function s(){i&&clearTimeout(i),e(),i=setTimeout(e,t)}let r=null;const n=[],o={childList:!0,subtree:!0,characterData:!0,attributes:!0};function l(h){for(const u of n)u.disconnect();n.length=0;for(const u of Array.from(h.querySelectorAll("*")))if(u.shadowRoot){const b=new MutationObserver(s);b.observe(u.shadowRoot,o),n.push(b)}}function c(){const h=B(a);return h?(r&&r.disconnect(),l(h),r=new MutationObserver(u=>{u.some(b=>b.type==="childList"&&b.addedNodes.length>0)&&l(h),s()}),r.observe(h,o),!0):!1}const d=document.body||document.documentElement,p=new MutationObserver(()=>{c()&&s()});return p.observe(d,{childList:!0,subtree:!0}),c()&&s(),e(),function(){i&&(clearTimeout(i),i=null),p.disconnect(),r&&(r.disconnect(),r=null);for(const u of n)u.disconnect();n.length=0}}async function Ge(a){if(a.subscriptionPriceDone)return;const e=a.getActiveAssignment(),t=e?a.getHypothesis(e.hypothesisId):void 0,i=t?.subscriptionData?null:a.findActiveSubscriptionTestControl(),s=t?.subscriptionData?t:i?.hypothesis;if(!s?.subscriptionData)return;const r=t?.subscriptionData?e.testId:i.testId;a.subscriptionPriceDone=!0;const n=s.subscriptionData,o=s.isControl,l=s.priceData,c=n.widget.widgetType;let d=W(l),p=Y(n,d),h=p.discountMap,u=p.maxDiscount;function b(){const g=W(l);g!==d&&(d=g,p=Y(n,d),h=p.discountMap,u=p.maxDiscount,a.log(`[SUB-PRICE] scope refreshed side=${o?"A":"B"}, currentProductId=${d??"n/a"}, maxDiscount=${u}`))}a.log(`[SUB-PRICE] side=${o?"A":"B"}, currentProductId=${d??"n/a"}, maxDiscount=${u}
9`),a.updatePriceTestHiddenInputs(r,o?"control":"variant",!1);function E(){if(!l)return null;const g=j(l),P=X(g),A=de(n,P,d);if(!pe(A,o))return null;const k=P?g.get(P):void 0;return k?{formattedVariantPrice:K(k.priceInCents,l),formattedDiscounted:K(k.priceInCents*(1-u/100),l)}:null}We({originalFetch:a.fetch,swapMap:a.swapMap??{},slptValue:a.slptValue??void 0,log:a.log,getSelectedPlanId:()=>{const g=B(n);if(!g)return null;const P=Z(n,g);if(!P)return null;const A=D(n,"subscriptionInput"),k=A.length?A[0].selector:'input[name="rc_plan"]';return P.querySelector(`${k}:checked`)?.value??null}});function S(g){const P=D(n,"subscriptionDiscount");for(const A of P)if(A.selector.includes("badge")||A.selector.includes("__badge")){const k=g.querySelector(A.selector);k?.textContent&&!k.textContent.includes(`${u}%`)&&$(k,x=>N(x,u))}}function C(g){const P=E();if(!P)return;const A=D(n,"subscriptionCompareAt");for(const k of A){const x=g.querySelector(k.selector)||g.querySelector(`[part~="${k.selector}"]`);x?.textContent&&!x.textContent.includes(P.formattedVariantPrice)&&$(x,R=>/\d/.test(R)?P.formattedVariantPrice:R)}}function _(g,P){const A=D(n,"subscriptionCompareAt"),k=P===0?"none":"";for(const x of A){const R=g.querySelector(x.selector)||g.querySelector(`[part~="${x.selector}"]`);R&&(k==="none"?R.style.display!=="none"&&(R.style.display="none"):R.style.display==="none"&&(R.style.display=""))}}function T(g){const P=D(n,"subscriptionInput"),A=P.length?P[0].selector:'input[name="rc_plan"]',k=D(n,"subscriptionPlanDiscount"),x=k.length?k[0].selector:".rc-plans-button__discount";for(const R of Array.from(g.querySelectorAll("label"))){const V=R.querySelector(A),O=R.querySelector(x);if(V&&O){const L=h[V.value];if(L!==void 0){if(L===0)O.style.display!=="none"&&(O.style.display="none");else if(O.style.display==="none"&&(O.style.display=""),O.textContent){const Q=O.textContent.match(/[\d.]+%/)?.[0];Q&&Q!==`${L}%`&&$(O,st=>N(st,L))}}}}}function m(g){const P=g.querySelector("select");if(P)for(const A of Array.from(P.options)){const k=h[A.value];if(k!==void 0&&A.textContent){const x=A.textContent.match(/[\d.]+%/)?.[0];x&&x!==`${k}%`&&(A.textContent=N(A.textContent,k))}}}function y(g,P){const k=D(n,"subscriptionDiscount").filter(x=>x.selector.includes("benefit")||x.selector==="rc-benefits");for(const x of k){const R=g.querySelector(x.selector);if(R?.shadowRoot){for(const V of Array.from(R.shadowRoot.querySelectorAll("li")))if(V.textContent?.includes("Save")){const O=V;if(P===0)O.style.display!=="none"&&(O.style.display="none");else{O.style.display==="none"&&(O.style.display="");const L=V.textContent.match(/[\d.]+%/)?.[0];L&&L!==`${P}%`&&$(V,Q=>N(Q,P))}}}}}let w=!1;function I(){if(!w){w=!0;try{if(b(),d!==null&&Object.keys(h).length===0)return;const g=B(n);if(!g)return;S(g),l&&C(g);const P=Z(n,g);let A=u;if(P){const k=D(n,"subscriptionInput"),x=k.length?k[0].selector:'input[name="rc_plan"]',R=P.querySelector(`${x}:checked`);if(R){const V=h[R.value];V!==void 0&&(A=V)}c==="buttons"||c==="radio"?T(P):m(P)}_(g,A),y(g,A)}finally{w=!1}}}function f(){const g=E();if(!g)return;const P=B(n);if(!P)return;const A=D(n,"onetimeToggle"),k=A.length?A[0].selector:'input[value="onetime"]';if(!P.querySelector(k)?.checked)return;const R=D(n,"subscriptionPrice");for(const V of R){const O=P.querySelector(V.selector)||P.querySelector(`[part~="${V.selector}"]`);O?.textContent&&!O.textContent.includes(g.formattedDiscounted)&&$(O,L=>/\d/.test(L)?g.formattedDiscounted:L)}}function v(){a.subscriptionHideWrongPlans&&a.subscriptionHideWrongPlans(),I(),a.subscriptionUpdateOneTime&&a.subscriptionUpdateOneTime(),f()}ue({data:n,runUpdates:v})}async function je(a){if(a.subscriptionOneTimeDone)return;const e=a.getActiveAssignment(),t=e?a.getHypothesis(e.hypothesisId):void 0,i=!!(t?.subscriptionData&&t.priceData),s=i?null:a.findActiveSubscriptionTestControl(),r=i?t:s?.hypothesis;if(!r?.subscriptionData||!r.priceData)return;const n=i?e.testId:s.testId;a.subscriptionOneTimeDone=!0;const o=r.subscriptionData,l=r.priceData,c=j(l),d=r.isControl,p=d?"control":"variant";a.slptValue=`${n}:${p}
9:f`,a.updatePriceTestHiddenInputs(n,p,!1);function h(){const u=B(o);if(!u)return;const b=X(c);if(!b)return;const E=W(l),S=de(o,b,E);if(!pe(S,d))return;const C=c.get(b);if(!C)return;const _=H(C.priceInCents,l.moneyFormat,l.currency,l.currencyCodeEnabled),T=D(o,"onetimePrice");if(!T.length)return;const m=D(o,"onetimeContainer"),y=m.length?m[0].selector:'[part~="rc-purchase-option__onetime"]',I=u.querySelector(y)??u;for(const f of T){let v=null;try{v=I.querySelector(f.selector)}catch{v=null}v??=I.querySelector(`[part~="${f.selector}"]`),v&&v.textContent&&!v.textContent.includes(_)&&$(v,g=>/\d/.test(g)?_:g)}}a.subscriptionUpdateOneTime=h,h()}async function Je(a,e){const{subscriptionPreviewRender:t}=await Be(async()=>{const{subscriptionPreviewRender:i}=await Promise.resolve().then(()=>it);return{subscriptionPreviewRender:i}},void 0);return t(a.subscriptionData,a.priceData,a.isControl,e)}function Ye(a,e){const t=a.widget.selectors.widgetParent??[],i=a.widget.selectors.subscriptionPlans??[],s=a.widget.selectors.subscriptionInput??[];if(!t.length||!i.length||!s.length){e("[SUB-GLOBAL-HIDE] Missing required selectors — skipping");return}const r=t[0].selector,n=i[0].selector,o=s[0].selector;let l=!1,c=null,d=!1;function p(){if(!d){d=!0;try{h()}finally{d=!1}}}function h(){const C=document.querySelector(r);if(!C?.shadowRoot)return;const _=C.shadowRoot.querySelector(n);if(!_?.shadowRoot)return;_.shadowRoot!==c&&(c=_.shadowRoot,l=!1);let T=0;if(a.widget.widgetType==="buttons"||a.widget.widgetType==="radio"){const m=Array.from(_.shadowRoot.querySelectorAll(o));for(const f of m)if(a.planIds.includes(f.value)){f.disabled||(f.disabled=!0);const v=f.closest("label");v&&v.style.display!=="none"&&(v.style.display="none",T++)}const y=m.filter(f=>!a.planIds.includes(f.value));if(!y.some(f=>f.checked)&&!l&&y.length>0){l=!0;const f=y[0];f.closest("label")?.click(),f.dispatchEvent(new Event("change",{bubbles:!0})),e(`[SUB-GLOBAL-HIDE] Preselected first visible plan input=${f.value}`)}const I=y.find(f=>f.checked)??y[0];if(I){const f=Array.from(document.querySelectorAll('input[name="selling_plan"]'));for(const v of f)v.value!==I.value&&(v.value=I.value,e(`[SUB-GLOBAL-HIDE] Mirrored plan id ${I.value} to form selling_plan input`))}}else if(a.widget.widgetType==="dropdown"){const m=_.shadowRoot.querySelector("select");if(!m)return;for(const I of Array.from(m.options))a.planIds.includes(I.value)&&(I.style.display!=="none"&&(I.style.display="none"),I.disabled||(I.disabled=!0),T++);const y=Array.from(m.options).filter(I=>!a.planIds.includes(I.value)),w=y.some(I=>I.value===m.value);y.length>0&&!w&&!l&&(l=!0,m.value=y[0].value,m.dispatchEvent(new Event("change",{bubbles:!0})),e(`[SUB-GLOBAL-HIDE] Preselected first visible option=${y[0].value}`))}T>0&&e(`[SUB-GLOBAL-HIDE] Hidden ${T} B-side plan buttons`)}const u={childList:!0,subtree:!0,characterData:!0};let b=null;function E(C){b?.disconnect(),b=new MutationObserver(()=>p()),b.observe(C,u)}function S(){const C=document.querySelector(r);if(!C?.shadowRoot)return!1;p(),new MutationObserver(()=>{p();const m=C.shadowRoot.querySelector(n);m?.shadowRoot&&E(m.shadowRoot)}).observe(C.shadowRoot,u);const T=C.shadowRoot.querySelector(n);return T?.shadowRoot&&E(T.shadowRoot),!0}if(!S()){e("[SUB-GLOBAL-HIDE] Widget not in DOM yet — waiting via MutationObserver");const C=new MutationObserver(()=>{S()&&C.disconnect()});C.observe(document.body??document.documentElement,{childList:!0,subtree:!0})}}const he="Limited preview",Ze="Add-to-cart and checkout prices won't reflect this test until it launches — test selling plans are not created in your subscription app until after a test is launched.",Xe=5e3;function Qe(){const a=document.createElement("div");a.id="shoplift-preview-subscription-warning";const e=document.createElement("span");e.id="shoplift-preview-subscription-warning__icon",e.setAttribute("aria-hidden","true"),e.textContent="!";const t=document.createElement("span");t.id="shoplift-preview-subscription-warning__label",t.textContent=he;const i=document.createElement("div");i.id="shoplift-preview-subscription-warning__tooltip",i.setAttribute("role","tooltip"),i.textContent=Ze,a.appendChild(e),a.appendChild(t),a.appendChild(i),a.setAttribute("tabindex","0"),a.setAttribute("aria-describedby",i.id),a.setAttribute("aria-label",he);let s=null;function r(){s!==null&&(clearTimeout(s),s=null)}function n(){i.classList.add("shoplift-preview-subscription-warning__tooltip--visible")}function o(){i.classList.remove("shoplift-preview-subscription-warning__tooltip--visible")}function l(){n(),r(),s=setTimeout(()=>{o(),s=null},Xe)}function c(){r(),n()}function d(){s===null&&o()}a.addEventListener("mouseenter",c),a.addEventListener("mouseleave",d),a.addEventListener("focus",c),a.addEventListener("blur",d);function p(u){try{const b=u.target;if(!(b instanceof Element))return;(b.closest('form[action*="/cart/add"] button[type="submit"], form[action*="/cart/add"] input[type="submit"]')!==null||b.closest('[name="add"], button[name="add"], [data-add-to-cart], button[data-add-to-cart]')!==null)&&l()}catch{}}
9document.addEventListener("click",p,!0);function h(){r(),document.removeEventListener("click",p,!0),a.removeEventListener("mouseenter",c),a.removeEventListener("mouseleave",d),a.removeEventListener("focus",c),a.removeEventListener("blur",d),a.remove()}return{root:a,tooltip:i,cleanup:h}}let fe=!1;class et{DATA_SL_ATTRIBUTE_P="data-sl-attribute-p";DATA_SL_TEST_ID="data-sl-test-id";VIEWPORT_TRACK_THRESHOLD=.5;temporarySessionKey="Shoplift_Session";essentialSessionKey="Shoplift_Essential";analyticsSessionKey="Shoplift_Analytics";priceSelectorsSessionKey="Shoplift_PriceSelectors_v2";shop;host;eventHost;disableReferrerOverride;legacySessionKey;cssHideClass;testConfigs;inactiveTestConfigs;hiddenSubscriptionPlans;testsFilteredByAudience;sendPageView;shopliftDebug;gaConfig;telemetryEnabled;getCountryTimeout;klaviyoGateTimeout=1e3;geoViaShopify;resolvedRegion=null;klaviyoMembership=null;state;subscriptionPreviewWarningCleanup=null;shopifyAnalyticsId;cookie=document.cookie;isSyncing=!1;isSyncingGA=!1;fetch;localStorageSet;localStorageGet;sessionStorageSet=window.sessionStorage.setItem.bind(window.sessionStorage);sessionStorageGet=window.sessionStorage.getItem.bind(window.sessionStorage);urlParams=new URLSearchParams(window.location.search);device;logHistory;activeViewportObservers=new Map;clientIdRetryCount=0;constructor(e,t,i,s,r,n,o,l,c,d,p,h,u,b=!1){this.shop=e,this.host=t,this.eventHost=i,this.disableReferrerOverride=l,this.logHistory=[],this.legacySessionKey=`SHOPLIFT_SESSION_${this.shop}`,this.cssHideClass=s?"shoplift-hide":"",this.testConfigs=p.map(S=>({...S,startAt:new Date(S.startAt),statusHistory:S.statusHistory.map(C=>({...C,createdAt:new Date(C.createdAt)}))})),this.inactiveTestConfigs=h,this.hiddenSubscriptionPlans=u,this.sendPageView=!!r,this.shopliftDebug=n===!0,this.telemetryEnabled=c===!0,this.geoViaShopify=b===!0,this.gaConfig=o!=={"sendEvents":false,"mode":"gtag"}?o:{sendEvents:!1},this.fetch=window.fetch.bind(window),this.localStorageSet=window.localStorage.setItem.bind(window.localStorage),this.localStorageGet=window.localStorage.getItem.bind(window.localStorage);const E=this.getDeviceType();this.device=E!=="tablet"?E:"mobile",this.state=this.loadState(),this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.testsFilteredByAudience=p.filter(S=>
9S.status=="active"),this.getCountryTimeout=d===1000?1e3:d,window.__slReadCookie=S=>{const C=this.getCookie(S);if(C===null)return null;try{return decodeURIComponent(C)}catch{return C}},this.log("State Loaded",JSON.stringify(this.state))}deriveCategoryFromExistingTests(){if(!this.state.temporary.testCategory&&this.state.essential.visitorTests.length>0){const e=this.state.essential.visitorTests.some(t=>{if(!t.hypothesisId)return!1;const i=this.getHypothesis(t.hypothesisId);return i&&["theme","basicScript","price"].includes(i.type)});this.state.temporary.testCategory=e?"global":"conditional",this.persistTemporaryState(),this.log("Derived test category from existing visitorTests: %s",this.state.temporary.testCategory)}}async init(){try{if(this.log("Shoplift script initializing"),window.Shopify&&window.Shopify.designMode){this.log("Skipping script for design mode");return}if(window.location.href.includes("slScreenshot=true")){this.log("Skipping script for screenshot");return}if(window.location.hostname.endsWith(".edgemesh.com")){this.log("Skipping script for preview");return}if(window.location.href.includes("isShopliftMerchant")){const n=this.urlParams.get("isShopliftMerchant")==="true";this.log("Setting merchant session to %s",n),this.state.temporary.isMerchant=n,this.persistTemporaryState()}if(this.state.temporary.isMerchant){this.log("Setting up preview for merchant"),typeof window.shoplift!="object"&&this.setShopliftStub(),this.state.temporary.previewConfig||this.hidePage(),await this.initPreview(),document.querySelector("#sl-preview-bar-hide")?.remove();return}if(this.state.temporary.previewConfig=void 0,be(navigator.userAgent))return;const e=Date.now(),t=!this.state.temporary.lastSeen||e-this.state.temporary.lastSeen>1800*1e3;(!this.state.temporary.entryPage||t)&&(this.state.temporary.entryPage=J(window.location.href)),this.state.temporary.lastSeen=e,this.persistTemporaryState(),window.__slEntryPage=this.state.temporary.entryPage??"";const i=this.state.essential.visitorTests.filter(n=>n.hypothesisId&&+n.createdAt>Date.now()-6e4);if(i.length===0)this.sendDiagnosticTelemetry("page-landed",null);else for(const n of i)this.sendDiagnosticTelemetry("page-landed",n.testId,{hypothesisId:n.hypothesisId,isControl:n.assignedTo==="control",testType:n.testType??"unknown"});if(navigator.userAgent.includes("Chrome/118")){this.log("Random: %o",[Math.random(),Math.random(),Math.random()]);const n=await this.makeRequest({url:`${this.eventHost}/api/v0/events/ip`,method:"get"}).then(o=>o?.json());this.log(`IP: ${n}`),this.makeRequest({url:`${this.eventHost}/api/v0/logs`,method:"post",data:JSON.stringify(this.debugState(),te)}).catch()}if(this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.monitorConsentChange(),this.checkForThemePreview())return;if(!this.disableReferrerOverride&&this.state.temporary.originalReferrer!=null){this.log(`Overriding referrer from '${document.referrer}' to '${this.state.temporary.originalReferrer}'`);const n=this.state.temporary.originalReferrer;delete this.state.temporary.originalReferrer,this.persistTemporaryState(),Object.defineProperty(document,"referrer",{get:()=>n,enumerable:!0,configurable:!0})}if(this.needsKlaviyo(this.testConfigs,this.state.essential.visitorTests,this.state.analytics.visitor??this.buildBaseVisitor())&&this.ensureKlaviyoMembership(),await this.refreshVisitor(this.shopifyAnalyticsId),await this.handleVisitorTest()){this.log("Redirecting for visitor test");return}this.setShoplift(),this.showPage(),this.ensureCartAttributesForExistingPriceTests(!1);const r=this.state.essential.visitorTests.some(n=>(n.hypothesisId?this.getHypothesis(n.hypothesisId):void 0)?.subscriptionData!=null)||Object.values(this.state.temporary.testReservations??{}).some(n=>this.getHypothesis(n.hypothesisId)?.subscriptionData!=null);this.hiddenSubscriptionPlans&&!r&&(this.log(`[SUB-GLOBAL] Visitor not in subscription test — hiding ${this.hiddenSubscriptionPlans.planIds.length} B-side plans`),Ye(this.hiddenSubscriptionPlans,n=>this.log(n))),await this.subscriptionSwap(),await this.subscriptionOneTimePrice(),await this.subscriptionPriceChange(),await this.finalize(),console.log("SHOPLIFT SCRIPT INITIALIZED!")}catch(e){if(e instanceof G)return;throw e}finally{typeof window.shoplift!="object"&&this.setShopliftStub()}}getVariantColor(e){switch(e){case"a":return{text:"#141414",bg:"#E2E2E2"};case"b":return{text:"rgba(255, 255, 255, 1)",bg:"rgba(37, 99, 235, 1)"}}}getDefaultVariantTitle(e){return e.title?e.title:e.type==="price"?e.isControl?"Original prices":"Variant prices":e.isControl?"Original":"Untitled variant "+e.label.toUpperCase()}
9async initPreview(){const e=this.urlParams.get("previewConfig");if(e){this.state.temporary.previewConfig=void 0,this.log("Setting up the preview"),this.log("Found preview config, writing to temporary state");const t=await Le(e);if(this.state.temporary.previewConfig=t,this.state.temporary.previewConfig.testTypeCategory===M.Price){this.hidePage(!0);const s=this.state.temporary.previewConfig;let r=`${this.host}/api/dom-selectors/${s.storeId}/${s.testId}/${s.isDraft||!1}`;s.shopifyProductId&&(r+=`?productId=${s.shopifyProductId}`);const n=await this.makeJsonRequest({method:"get",url:r}).catch(o=>(this.log("Error getting domSelectors",o),null));if(s.variants.forEach(o=>o.domSelectors=n[o.id]?.domSelectors),s.isDraft){const o=`${this.host}/api/dom-selectors/${s.storeId}/${s.testId}/subscription-preview`,l=await this.makeJsonRequest({method:"get",url:o}).catch(c=>(this.log("No subscription preview data for draft (test may not have a subscription widget)",c),null));l?.subscriptionData&&s.variants.forEach(c=>{c.subscriptionData=l.subscriptionData,c.priceData=l.priceData})}}this.persistTemporaryState();const i=new URL(window.location.toString());i.searchParams.delete("previewConfig"),this.queueRedirect(i)}else if(this.state.temporary.previewConfig){this.showPage();const t=this.state.temporary.previewConfig;if(t.testTypeCategory===M.Template&&this.handleTemplatePreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.UrlRedirect&&this.handleUrlPreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.Script&&this.handleScriptPreview(t)&&this.initPreviewControls(t),t.testTypeCategory===M.Price){const i=await this.handlePricePreview(t);t.isDraft?await this.handleSubscriptionPricePreview(t):await this.handleSubscriptionLivePreview(t),i&&this.initPreviewControls(t)}}}initPreviewControls(e){document.addEventListener("DOMContentLoaded",()=>{const t=e.variants.find(b=>b.id===e.currentVariant),i=t?.label||"a",s=e.variants,r=document.createElement("div");r.id="shoplift-preview-control";const n=document.createElement("div"),o=document.createElement("img");o.src=Ve,o.height=24,o.width=14,n.style.padding="0 16px",n.style.lineHeight="100%",n.appendChild(o),r.appendChild(n);const l=document.createElement("div");l.id="shoplift-preview-variant-selector";const c=document.createElement("button");c.id="shoplift-preview-variant-menu-trigger";const d=document.createElement("div");d.className="menu-variant-label",d.style.backgroundColor=this.getVariantColor(i).bg,d.style.color=this.getVariantColor(i).text,d.innerText=i.toUpperCase(),c.appendChild(d);const p=document.createElement("span");if(p.id="shoplift-preview-variant-title",p.innerText=t?this.getDefaultVariantTitle(t):"Untitled variant "+i.toUpperCase(),c.appendChild(p),s.length>1){const b=document.createElement("img");b.src=Oe,b.width=12,b.height=12,b.style.height="12px",b.style.width="12px",c.appendChild(b);const E=document.createElement("div");E.className="preview-variant-menu";for(const S of e.variants.filter(C=>C.id!==e.currentVariant)){const C=document.createElement("div");C.className="preview-variant-menu--item";const _=document.createElement("div");_.className="menu-variant-label",_.style.backgroundColor=this.getVariantColor(S.label).bg,_.style.color=this.getVariantColor(S.label).text,_.style.flexShrink="0",_.innerText=S.label.toUpperCase(),C.appendChild(_);const T=document.createElement("span");T.innerText=this.getDefaultVariantTitle(S),C.appendChild(T),C.addEventListener("click",()=>{this.pickVariant(S.id)}),E.appendChild(C)}l.appendChild(E),c.addEventListener("click",()=>{E.className!=="preview-variant-menu preview-variant-menu__visible"?E.classList.add("preview-variant-menu__visible"):E.classList.remove("preview-variant-menu__visible")}),document.addEventListener("click",S=>{S.target instanceof Element&&!c.contains(S.target)&&E.className==="preview-variant-menu preview-variant-menu__visible"&&E.classList.remove("preview-variant-menu__visible")})}else c.style.pointerEvents="none",d.style.margin="0";if(l.appendChild(c),r.appendChild(l),e.hasSubscription){this.subscriptionPreviewWarningCleanup?.();const b=Qe();r.appendChild(b.root),this.subscriptionPreviewWarningCleanup=b.cleanup}const h=document.createElement("div"),u=document.createElement("button");u.id="shoplift-exit-preview-button",u.innerText="Exit",h.appendChild(u),u.addEventListener("click",()=>{this.exitPreview()}),r.appendChild(h),document.body.appendChild(r),requestAnimationFrame(()=>{r.classList.add("visible")})}),this.ensureCartAttributesForExistingPriceTests(!0)}pickVariant(e){if(this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig,i=new URL(window.location.toString());if(t.testTypeCategory===M.UrlRedirect){const s=t.variants.find(r=>r.id===t.currentVariant)?.redirectUrl;if(i.pathname===s){const r=t.variants.find(n=>n.id===e)?.redirectUrl;r&&(i.pathname=r)}}if(t.testTypeCategory===M.Template){const s=t.variants.find(r=>r.id===t.currentVariant)?.pathName;if(s&&i.pathname===s){const r=t.variants.find(n=>n.id===e)?.pathName;r&&r!==s&&(i.pathname=r)}}t.currentVariant=e,this.persistTemporaryState(),this.queueRedirect(i)}}exitPreview(){const e=new URL(window.location.toString());if(this.state.temporary.previewConfig?.testTypeCategory===M.Template&&e.searchParams.delete("view"),this.state.temporary.previewConfig?.testTypeCategory===M.Script&&e.searchParams.delete("slVariant"),this.state.temporary.previewConfig?.testTypeCategory===M.UrlRedirect){const i=this.state.temporary.previewConfig.variants.filter(r=>!r.isControl&&r.redirectUrl!==null).map(r=>r.redirectUrl),s=this.state.temporary.previewConfig.variants.find(r=>r.label==="a")?.redirectUrl;i.includes(e.pathname)&&s&&(e.pathname=s)}this.state.temporary.isMerchant=!1,e.searchParams.delete("isShopliftMerchant"),this.state.temporary.previewConfig=void 0,this.persistTemporaryState(),this.subscriptionPreviewWarningCleanup?.(),this.subscriptionPreviewWarningCleanup=null,this.hidePage(),this.queueRedirect(e)}handleTemplatePreview(e){const t=e.currentVariant,i=e.variants.find(l=>l.id===t);if(!i)return!1;const s=e.variants.find(l=>l.isControl);if(!s)return!1;this.log("Setting up template preview for type",s.type);
9const r=new URL(window.location.toString()),n=r.searchParams.get("view"),o=i.type===s.type;return!o&&!i.isControl&&template.suffix===s.affix&&this.typeFromTemplate()===s.type&&i.pathName!==null?(this.log("Hit control template type, redirecting to the variant url"),this.hidePage(),r.pathname=i.pathName,this.queueRedirect(r),!0):(!i.isControl&&this.typeFromTemplate()==i.type&&template.suffix===s.affix&&o&&n!==(i.affix||"__DEFAULT__")&&(this.log("Template type and affix match control, updating the view param"),r.searchParams.delete("view"),this.log("Setting the new viewParam to",i.affix||"__DEFAULT__"),this.hidePage(),r.searchParams.set("view",i.affix||"__DEFAULT__"),this.queueRedirect(r)),n!==null&&n!==(i.affix||"__DEFAULT__")&&(r.searchParams.delete("view"),this.hidePage(),this.queueRedirect(r)),!0)}handleUrlPreview(e){const t=e.currentVariant,i=e.variants.find(n=>n.id===t),s=e.variants.find(n=>n.isControl)?.redirectUrl;if(!i)return!1;this.log("Setting up URL redirect preview");const r=new URL(window.location.toString());return r.pathname===s&&!i.isControl&&i.redirectUrl!==null&&(this.log("Url matches control, redirecting"),this.hidePage(),r.pathname=i.redirectUrl,this.queueRedirect(r)),!0}handleScriptPreview(e){const t=e.currentVariant,i=e.variants.find(n=>n.id===t);if(!i)return!1;this.log("Setting up script preview");const s=new URL(window.location.toString());return s.searchParams.get("slVariant")!==i.id&&(this.log("current id doesn't match the variant, redirecting"),s.searchParams.delete("slVariant"),this.log("Setting the new slVariantParam"),this.hidePage(),s.searchParams.set("slVariant",i.id),this.queueRedirect(s)),!0}async handlePricePreview(e){const t=e.currentVariant,i=e.variants.find(s=>s.id===t);return i?(this.log("Setting up price preview"),i.domSelectors&&i.domSelectors.length>0&&(U(document,{testId:e.testId,hypothesisId:i.id,selectors:i.domSelectors}),this.ensureCartAttributesForExistingPriceTests(!0)),!0):!1}async handleSubscriptionPricePreview(e){const t=e.variants.find(i=>i.id===e.currentVariant);t?.subscriptionData&&(this.log("Setting up subscription price preview"),await Je({id:t.id,isControl:t.isControl,subscriptionData:t.subscriptionData,priceData:t.priceData},(i,...s)=>this.log(i,...s)))}async handleSubscriptionLivePreview(e){this.testConfigs.find(s=>s.id===e.testId)?.hypotheses.find(s=>s.id===e.currentVariant)?.subscriptionData&&(this.log("Setting up subscription live preview"),this.subscriptionSwapDone=!1,this.subscriptionOneTimeDone=!1,this.subscriptionPriceDone=!1,await this.subscriptionSwap(),await this.subscriptionOneTimePrice(),await this.subscriptionPriceChange())}async finalize(){const e=await this.getCartState();e!==null&&this.queueCartUpdate(e),this.pruneStateAndSave(),await this.syncAllEvents()}setShoplift(){this.log("Setting up public API");const t=this.urlParams.get("slVariant")==="true",i=t?null:this.urlParams.get("slVariant");window.shoplift={isHypothesisActive:async s=>{if(this.log("Script checking variant for hypothesis '%s'",s),t)return this.log("Forcing variant for hypothesis '%s'",s),!0;if(i!==null)return this.log("Forcing hypothesis '%s'",i),s===i;const r=this.testConfigs.find(o=>o.hypotheses.some(l=>l.id===s));if(!r)return this.log("No test found for hypothesis '%s'",s),!1;const n=this.state.essential.visitorTests.find(o=>o.testId===r.id);return n?(this.log("Active visitor test found",s),n.hypothesisId===s):(await this.manuallySplitVisitor(r),this.testConfigs.some(o=>o.hypotheses.some(l=>l.id===s&&this.state.essential.visitorTests.some(c=>c.hypothesisId===l.id))))},setAnalyticsConsent:async s=>{await this.onConsentChange(s,!0)},getVisitorData:()=>({visitor:this.state.analytics.visitor,visitorTests:this.state.essential.visitorTests.filter(s=>!s.isInvalid).map(s=>{const{shouldSendToGa:r,savedAt:n,...o}=s;return o})})}}setShopliftStub(){this.log("Setting up stubbed public API");const t=this.urlParams.get("slVariant")==="true",i=t?null:this.urlParams.get("slVariant");window.shoplift={isHypothesisActive:s=>Promise.resolve(t||s===i),setAnalyticsConsent:()=>Promise.resolve(),getVisitorData:()=>({visitor:null,visitorTests:[]})}}async manuallySplitVisitor(e){this.log("Starting manual split for test '%s'",e.id),await this.handleVisitorTest([e])||this.showPage();const i=this.getReservationForTest(e.id);i&&!i.isRealized&&i.entryCriteriaKey&&(this.log("Realizing manual API reservation for test '%s'",e.id),this.realizeReservationForCriteria(i.entryCriteriaKey)),this.saveState(),this.syncAllEvents()}async handleVisitorTest(e){await this.filterTestsByAudience(this.testConfigs,this.state.analytics.visitor??this.buildBaseVisitor(),this.state.essential.visitorTests),this.pruneStaleVisitorTests(),this.deriveC
9ategoryFromExistingTests(),this.clearStaleReservations();let t=e?e.filter(i=>this.testsFilteredByAudience.some(s=>s.id===i.id)):[...this.testsForUrl(this.testsFilteredByAudience),...this.domTestsForUrl(this.testsFilteredByAudience)];try{if(t.length===0)return this.log("No tests found"),!1;this.log("Checking for existing visitor test on page");const i=this.getCurrentVisitorHypothesis(t);if(i){this.log("Found current visitor test");const l=this.considerRedirect(i);return l&&(this.log("Redirecting for current visitor test"),this.redirect(i)),l}const s=this.getReservationForCurrentPage();if(s){this.log("Found matching reservation for current page: %s",s.testId);const l=this.getHypothesis(s.hypothesisId);if(l){l.type!=="price"&&this.realizeReservationForCriteria(s.entryCriteriaKey);const c=this.considerRedirect(l);return c&&this.redirect(l),c}}this.log("No active test relation for test page");const r=this.testsForUrl(this.inactiveTestConfigs.filter(l=>this.testIsPaused(l)&&l.hypotheses.some(c=>this.state.essential.visitorTests.some(d=>d.hypothesisId===c.id)))).map(l=>l.id);if(r.length>0)return this.log("Visitor has paused tests for test page, skipping test assignment: %o",r),!1;if(!this.state.temporary.testCategory){const l=this.testsFilteredByAudience.filter(d=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(d))),c=this.testsFilteredByAudience.filter(d=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(d)));if(this.log("Category dice roll - global tests: %o, conditional tests: %o",l.map(d=>({id:d.id,title:d.title,criteria:this.getEntryCriteriaKey(d)})),c.map(d=>({id:d.id,title:d.title,criteria:this.getEntryCriteriaKey(d)}))),l.length>0&&c.length>0){const d=l.length,p=c.length,h=d+p,u=Math.random()*h;this.state.temporary.testCategory=u<d?"global":"conditional",this.log("Category dice roll: rolled %.2f of %d (global weight: %d, conditional weight: %d), selected '%s'",u,h,d,p,this.state.temporary.testCategory)}else l.length>0?(this.state.temporary.testCategory="global",this.log("Only global tests available, setting category to global")):(this.state.temporary.testCategory="conditional",this.log("Only conditional tests available, setting category to conditional"));this.persistTemporaryState()}const n=this.state.temporary.testCategory;if(this.log("Visitor test category: %s",n),n==="global"){const l=this.testsFilteredByAudience.filter(c=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)));for(const c of l)this.markTestAsBlocked(c,"category:global");t=t.filter(c=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)))}else{const l=this.testsFilteredByAudience.filter(c=>this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)));for(const c of l)this.markTestAsBlocked(c,"category:conditional");t=t.filter(c=>!this.isGlobalEntryCriteria(this.getEntryCriteriaKey(c)))}if(t.length===0)return this.log("No tests remaining after category filter"),!1;this.createReservations(t);const o=this.getReservationForCurrentPage();if(o&&!o.isRealized){const l=this.getHypothesis(o.hypothesisId);if(l){l.type!=="price"&&this.realizeReservationForCriteria(o.entryCriteriaKey);const c=this.considerRedirect(l);return c&&(this.log("Redirecting for new test"),this.redirect(l)),c}}return!1}finally{this.includeInDomTests(),this.saveState()}}includeInDomTests(){this.applyControlForAudienceFilteredPriceTests();const e=this.getDomTestsForCurrentUrl(),t=this.getVisitorDomHypothesis(e);for(const i of e){this.log("Evaluating dom test '%s'",i.id);const s=i.hypotheses.some(u=>u.type==="price");if(this.state.essential.visitorTests.find(u=>u.testId===i.id&&u.isInvalid&&!u.hypothesisId)){if(this.log("Visitor is blocked from test '%s', applying control prices if price test",i.id),s){const u=i.hypotheses.find(b=>b.isControl);u?.priceData&&(this.applyPriceTestWithMapLookup(i.id,u,[u],()=>{this.log("Control prices applied for blocked visitor, no metrics tracked")}),this.updatePriceTestHiddenInputs(i.id,"control",!1))}continue}const n=this.getReservationForTest(i.id);let o=null,l=!1;const c=t.find(u=>i.hypotheses.some(b=>u.id===b.id));if(n)o=this.getHypothesis(n.hypothesisId)??null,this.log("Using reserved hypothesis '%s' for test '%s'",n.hypothesisId,i.id);else if(c)o=c,this.log("Using existing hypothesis assignment for test '%s'",i.id);else if(s){const u=this.visitorActiveTestTypeWithReservations();u?(l=!0,this.log("Visitor already in test type '%s', treating as non-test for price test '%s'",u,i.id)):o=this.pickHypothesis(i)}else o=this.pickHypothesis(i);if(l&&s){const u=i.hypotheses.find(b=>b.isControl);u?.priceData&&(this.log("Applying control prices for non-test visitor on price test '%s' (Map-based)",i.id),this.applyPriceTestWithMapLookup(i.id,u,[u],()=>{this.log("Control prices applied for non-test visitor, no metrics tracked")}
9),this.updatePriceTestHiddenInputs(i.id,"control",!1));continue}if(!o){this.log("Failed to pick hypothesis for test");continue}this.sendDiagnosticTelemetry("assignment",i.id,{hypothesisId:o.id,isControl:o.isControl,testType:o.type});const d=i.bayesianRevision??4,p=o.type==="price",h=d>=5;if(p&&h){if(this.log(`Price test with Map-based lookup (v${d}): ${i.id}`),!o.priceData){this.log("No price data for hypothesis '%s', skipping",o.id);continue}const u=o.isControl?"control":"variant";this.log(`Setting up Map-based price test for ${u} (test: ${i.id})`),this.applyPriceTestWithMapLookup(i.id,o,i.hypotheses,b=>{const E=this.getReservationForTest(b);E&&!E.isRealized&&E.entryCriteriaKey?this.realizeReservationForCriteria(E.entryCriteriaKey):this.queueAddVisitorToTest(b,o),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()});continue}if(p&&!h){this.log(`Price test without viewport tracking (v${d}): ${i.id}`);const u=this.getDomSelectorsForHypothesis(o);if(u.length===0)continue;U(document,{testId:i.id,hypothesisId:o.id,selectors:u},b=>{this.queueAddVisitorToTest(b,o),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()});continue}if(!o.domSelectors||o.domSelectors.length===0){this.log("No selectors found, skipping hypothesis");continue}U(document,{testId:i.id,hypothesisId:o.id,selectors:o.domSelectors},u=>{this.queueAddVisitorToTest(u,o),this.saveState(),this.queuePageView(window.location.pathname),this.syncAllEvents()})}}considerRedirect(e){if(this.log("Considering redirect for hypothesis '%s'",e.id),e.isControl)return this.log("Skipping redirect for control"),!1;if(e.type==="basicScript"||e.type==="manualScript")return this.log("Skipping redirect for script test"),!1;const t=this.state.essential.visitorTests.find(n=>n.hypothesisId===e.id),i=new URL(window.location.toString()),r=new URLSearchParams(window.location.search).get("view");if(e.type==="theme"){if(!(e.themeId===themeId)){if(this.log("Theme id '%s' is not hypothesis theme ID '%s'",e.themeId,themeId),this.isAppProxyPath())return this.log("On App Proxy path, skipping theme redirect to avoid infinite loop"),!1;if(t&&t.themeId!==e.themeId&&(t.themeId===themeId||!this.isThemePreview()))this.log("On old theme, redirecting and updating local visitor"),t.themeId=e.themeId;else if(this.isThemePreview())return this.log("On non-test theme, skipping redirect"),!1;return this.log("Hiding page to redirect for theme test"),this.hidePage(),!0}return!1}else if(e.type!=="dom"&&e.type!=="price"&&e.affix!==template.suffix&&e.affix!==r||e.redirectPath&&!i.pathname.endsWith(e.redirectPath))return this.log("Hiding page to redirect for template test"),this.hidePage(),!0;return this.log("Not redirecting"),!1}redirect(e){if(this.log("Redirecting to hypothesis '%s'",e.id),e.isControl)return;const t=new URL(window.location.toString());if(t.searchParams.delete("view"),e.redirectPath){const o=RegExp("^(/w{2}-w{2})/").exec(t.pathname);if(o&&o.length>1){const l=o[1];t.pathname=`${l}${e.redirectPath}`}else t.pathname=e.redirectPath}else e.type==="theme"?(t.searchParams.set("_ab","0"),t.searchParams.set("_fd","0"),t.searchParams.set("_sc","1"),t.searchParams.set("preview_theme_id",e.themeId.toString())):e.type!=="urlRedirect"&&t.searchParams.set("view",e.affix);const i=this.state.essential.visitorTests.find(o=>o.hypothesisId===e.id)?.testId,s=t.pathname+t.search,r=window.location.pathname+window.location.search,n=J(t.hash);if(i&&s!==r&&!n){const o=He(),l=Ne({v:2,t:i,n:o,fh:qe(window.location.pathname+window.location.search)});t.hash=`slr-${o}`;const c=new Date(Date.now()+3e4).toUTCString();document.cookie=`shoplift_redirect=${l};domain=.${window.location.hostname};path=/;SameSite=Strict;expires=${c}`}s===r&&this.showPage(),this.queueRedirect(t)}async refreshVisitor(e){if(e===null||!this.state.essential.isFirstLoad||!this.testConfigs.some(i=>i.visitorOption!=="all"))return;this.log("Refreshing visitor"),this.hidePage();const t=await this.getVisitor(e);t&&t.id&&this.updateLocalVisitor(t)}buildBaseVisitor(){return{shopifyAnalyticsId:this.shopifyAnalyticsId,device:this.device,country:null,...this.state.essential.initialState}}getInitialState(){const e=this.getUTMValue("utm_source")??"",t=this.getUTMValue("utm_medium")??"",i=this.getUTMValue("utm_campaign")??"",s=this.getUTMValue("utm_content")??"",r=window.document.referrer,n=this.device;return{createdAt:new Date,utmSource:e,utmMedium:t,utmCampaign:i,utmContent:s,referrer:r,device:n}}checkForThemePreview(){return this.log("Checking for theme preview"),window.location.hostname.endsWith(".shopifypreview.com")?(this.log("on shopify preview domain"),this.clearThemeBar(!0,!1,this.state),document.querySelector("#sl-preview-bar-hide")?.remove(),!1):this.isThemePreview()?this.state.essential.visitorTests.some(e=>e.isThemeTest&&e.hypothesisId!=null&&this.getHypothesis(e.hypothesisId)&&e.themeId===themeId)?(this.log("On active theme test, remov
9ing theme bar"),this.clearThemeBar(!1,!0,this.state),!1):this.state.essential.visitorTests.some(e=>e.isThemeTest&&e.hypothesisId!=null&&!this.getHypothesis(e.hypothesisId)&&e.themeId===themeId)?(this.log("Visitor is on an inactive theme test, redirecting to main theme"),this.redirectToMainTheme(),!0):this.state.essential.isFirstLoad?(this.log("No visitor found on theme preview, redirecting to main theme"),this.redirectToMainTheme(),!0):this.inactiveTestConfigs.some(e=>e.hypotheses.some(t=>t.themeId===themeId))?(this.log("Current theme is an inactive theme test, redirecting to main theme"),this.redirectToMainTheme(),!0):this.testConfigs.some(e=>e.hypotheses.some(t=>t.themeId===themeId))?(this.log("Falling back to clearing theme bar"),this.clearThemeBar(!1,!0,this.state),!1):(this.log("No tests on current theme, skipping script"),this.clearThemeBar(!0,!1,this.state),document.querySelector("#sl-preview-bar-hide")?.remove(),!0):(this.log("Not on theme preview"),this.clearThemeBar(!0,!1,this.state),!1)}redirectToMainTheme(){this.hidePage();const e=new URL(window.location.toString());e.searchParams.set("preview_theme_id",""),this.queueRedirect(e)}testsForUrl(e){const t=new URL(window.location.href),i=this.typeFromTemplate();return e.filter(s=>s.hypotheses.some(r=>r.type!=="dom"&&r.type!=="price"&&(r.isControl&&r.type===i&&r.affix===template.suffix||r.type==="theme"||r.isControl&&r.type==="urlRedirect"&&r.redirectPath&&t.pathname.endsWith(r.redirectPath)||r.type==="basicScript"))&&(s.ignoreTestViewParameterEnforcement||!t.searchParams.has("view")||s.hypotheses.map(r=>r.affix).includes(t.searchParams.get("view")??"")))}domTestsForUrl(e){const t=new URL(window.location.href);return e.filter(i=>i.hypotheses.some(s=>s.type!=="dom"&&s.type!=="price"?!1:s.type==="price"&&s.priceData&&s.priceData.variants.length>0?!0:s.domSelectors&&s.domSelectors.some(r=>new RegExp(re(r)).test(J(t.toString())))))}needsKlaviyo(e,t,i){return e.some(s=>s.requiresKlaviyo&&!t.some(r=>r.testId===s.id)&&this.matchesTestSettings(s,i,this.visitorCreatedDuringTestActive(s.statusHistory)
9))}getKlaviyoIdentity(){const e=ie(Fe(this.getCookie("__kla_id",document.cookie)));return{kx:ie(this.urlParams.get("_kx"))??(e?null:ie(new URL(this.state.temporary.entryPage??"",window.location.href).searchParams.get("_kx"))),exchangeId:e}}ensureKlaviyoMembership(){return this.klaviyoMembership??=this.resolveKlaviyoMembership().catch(e=>(this.log("Error resolving Klaviyo membership",e),{groups:[],known:!1})),this.klaviyoMembership}async resolveKlaviyoMembership(){const{kx:e,exchangeId:t}=this.getKlaviyoIdentity();if(!(e??t))return{groups:[],known:!1};this.log("Hiding page to resolve Klaviyo membership"),this.hidePage();const s=new URLSearchParams;e&&s.append("kx",e),t&&s.append("exchangeId",t);let r={groups:[],known:!1};try{const n=await this.makeJsonRequest({method:"get",url:`${this.host}/api/v1/storefront/klaviyo-groups/${encodeURIComponent(this.shop)}?${s}`,signal:AbortSignal.timeout(this.klaviyoGateTimeout)});r={groups:n?.groups??[],known:n?.known===!0}}catch(n){if(n instanceof G)return n;this.log("Error getting Klaviyo groups",n)}return r}async filterTestsByAudience(e,t,i){const s=[],r=e.some(l=>(l.requiresRegion||this.geoViaShopify&&l.requiresCountry)&&!i.some(c=>c.testId===l.id));this.resolvedRegion===null&&r&&(this.log("Hiding page to wait for Shopify region resolution"),this.hidePage(),await this.waitForResolvedRegion()),window.__slRegion=this.resolvedRegion??"";let n=t.country;this.geoViaShopify?n=this.resolvedRegion?this.resolvedRegion.slice(0,2):n:!n&&e.some(l=>l.requiresCountry&&!i.some(c=>c.testId===l.id))&&(this.log("Hiding page to check geoip"),this.hidePage(),n=await this.makeJsonRequest({method:"get",url:`${this.eventHost}/api/v0/visitors/get-country`,signal:AbortSignal.timeout(this.getCountryTimeout)}).catch(l=>(this.log("Error getting country",l),null)));let o={groups:[],known:!1};if(this.needsKlaviyo(e,i,t)){const l=await this.ensureKlaviyoMembership();if(l instanceof G)throw l;o=l}window.__slKlaviyoGroups=o.groups,window.__slKlaviyoKnown=o.known;for(const l of e){if(this.log("Checking audience for test '%s'",l.id),this.state.essential.visitorTests.some(p=>p.testId===l.id&&p.hypothesisId==null)){console.log(`Skipping blocked test '${l.id}'`);continue}const c=this.visitorCreatedDuringTestActive(l.statusHistory);(i.some(p=>p.testId===l.id&&(l.device==="all"||l.device===t.device&&l.device===this.device))||this.isTargetAudience(l,t,c,n))&&(this.log("Visitor is in audience for test '%s'",l.id),s.push(l))}this.testsFilteredByAudience=s}async waitForResolvedRegion(e=1500,t=50){const i=Date.now();for(;this.resolvedRegion===null&&Date.now()-i<e;)await new Promise(s=>window.setTimeout(s,t))}isTargetAudience(e,t,i,s){const r=this.getChannel(t);return this.matchesTestSettings(e,t,i)&&(e.targetAudiences.length===0||e.targetAudiences.reduce((n,o)=>n||o.reduce((l,c)=>l&&c(t,i,r,s),!0),!1))}matchesTestSettings(e,t,i){return(e.device==="all"||e.device===t.device&&e.device===this.device)&&(e.visitorOption==="all"||e.visitorOption==="new"&&i||e.visitorOption==="returning"&&!i)}visitorCreatedDuringTestActive(e){let t="";for(const i of e){if(this.state.analytics.visitor!==null&&this.state.analytics.visitor.createdAt<i.createdAt||this.state.essential.initialState.createdAt<i.createdAt)break;t=i.status}return t==="active"}getDomTestsForCurrentUrl(){return this.domTestsForUrl(this.testsFilteredByAudience)}getCurrentVisitorHypothesis(e){return e.flatMap(t=>t.hypotheses).find(t=>t.type!=="dom"&&t.type!=="price"&&this.state.essential.visitorTests.some(i=>i.hypothesisId===t.id))}getVisitorDomHypothesis(e){return e.flatMap(t=>t.hypotheses).filter(t=>(t.type==="dom"||t.type==="price")&&this.state.essential.visitorTests.some(i=>i.hypothesisId===t.id))}getHypothesis(e){return this.testConfigs.filter(t=>t.hypotheses.some(i=>i.id===e)).map(t=>t.hypotheses.find(i=>i.id===e))[0]}getActiveAssignment(){if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig;return t.currentVariant&&t.testId?{testId:t.testId,hypothesisId:t.currentVariant}:null}const e=this.state.essential.visitorTests.find(t=>t.hypothesisId);return e?.hypothesisId?{testId:e.testId,hypothesisId:e.hypothesisId}:null}findActiveSubscriptionTestControl(){for(const e of this.testConfigs){const t=e.hypotheses.find(i=>i.isControl);if(t?.subscriptionData)return{testId:e.id,hypothesis:t}}return null}getDomSelectorsForHypothesis(e){if(!e)return[];if(e.domSelectors&&e.domSelectors.length>0)return e.domSelectors;if(e.priceData){const t=`${this.priceSelectorsSessionKey}_${e.id}`;try{const s=sessionStorage.getItem(t);if(s){const r=JSON.parse(s);return e.domSelectors=r,this.log("Loaded %d price selectors from cache for hypothesis '%s'",r.length,e.id),r}}catch{}const i=Me(e.priceData);e.domSelectors=i;try{sessionStorage.setItem(t,JSON.stringify(i)),this.log("Generated and cached %d price selectors for hypothesis '%s'",i.length,e.id)}catch{this.log("Generated %d price selectors for hypothesis '%s' (cache unavailable)",i.length,e.id)}return i}return[]}hasThemeTest(e){return e.some(t=>t.hypotheses.some(i=>i.type==="theme"))}hasTestThatIsNotThemeTest(e){return e.some(t=>t.hypotheses.some(i=>i.type!=="theme"&&i.type!=="dom"&&i.type!=="price"))}hasThemeAndOtherTestTypes(e){return this.hasThemeTest(e)&&this.hasTestThatIsNotThemeTest(e)}testIsPaused(e){return e.status==="paused"||e.status==="incompatible"||e.status==="suspended"}visitorActiveTestType(){const e=this.state.essential.visitorTests.filter(t=>this.testConfigs.some(i=>i.hypotheses.some(s=>s.id==t.hypothesisId)));return e.length===0?null:e.some(t=>t.isThemeTest)?"theme":"templateOrUrlRedirect"}getReservationType(e){return e==="price"||this.isTemplateTestType(e)?"deferred":"immediate"}isTemplateTestType(e){return["product","collection","landing","index","cart","search","blog","article","collectionList"].includes(e)}getEntryCriteriaKey(e){const t=e.hypotheses.find(i=>i.isControl);if(!t)return`unknown:${e.id}`;switch(t.type){case"theme":return"global:theme";case"basicScript":return"global:autoApi";case"price":return"global:price";case"manualScript":return`conditional:manualApi:${e.id}`;case"urlRedirect":return`conditional:url:${t.redirectPath||"unknown"}`;default:return`conditional:template:${t.type}`}}isGlobalEntryCriteria(e){return e.startsWith("global:")}groupTestsByEntryCriteria(e){const t=new Map;for(const i of e){const s=this.getEntryCriteriaKey(i),r=t.get(s)||[];r.push(i),t.set(s,r)}return t}doesCurrentPageMatchEntryCriteria(e){if(this.isGlobalEntryCriteria(e))return!0;
9if(e==="conditional:manualApi")return!1;if(e.startsWith("conditional:url:")){const t=e.replace("conditional:url:","");return window.location.pathname.endsWith(t)}if(e.startsWith("conditional:template:")){const t=e.replace("conditional:template:","");return this.typeFromTemplate()===t}return!1}hasActiveReservation(){const e=this.getActiveReservations();return Object.values(e).some(t=>!t.isRealized)}getActiveReservation(){const e=this.getActiveReservations();return Object.values(e).find(t=>!t.isRealized)??null}clearStaleReservations(){const e=this.state.temporary.testReservations;if(!e)return;let t=!1;for(const[i,s]of Object.entries(e)){const r=this.testConfigs.find(o=>o.id===s.testId);if(!r){this.log("Test '%s' no longer in config, clearing reservation for criteria '%s'",s.testId,i),delete e[i],t=!0;continue}if(r.status!=="active"){this.log("Test '%s' status is '%s', clearing reservation for criteria '%s'",s.testId,r.status,i),delete e[i],t=!0;continue}this.testsFilteredByAudience.some(o=>o.id===s.testId)||(this.log("Visitor no longer passes audience for test '%s', clearing reservation for criteria '%s'",s.testId,i),delete e[i],t=!0)}t&&this.persistTemporaryState()}createReservations(e){if(this.state.temporary.testReservations||(this.state.temporary.testReservations={}),this.state.temporary.rolledEntryCriteria||(this.state.temporary.rolledEntryCriteria=[]),this.state.temporary.testCategory==="global"){this.createSingleReservation(e,"global");return}const i=e.filter(o=>this.doesCurrentPageMatchEntryCriteria(this.getEntryCriteriaKey(o))),s=e.filter(o=>!this.doesCurrentPageMatchEntryCriteria(this.getEntryCriteriaKey(o)));this.log("Conditional tests split - matching current page: %d, not matching: %d",i.length,s.length),i.length>0&&this.log("Tests matching current page (same pool): %o",i.map(o=>({id:o.id,title:o.title,criteria:this.getEntryCriteriaKey(o)})));const r=`conditional:current-page:${this.typeFromTemplate()}`;if(i.length>0&&!this.state.temporary.rolledEntryCriteria.includes(r)){this.createSingleReservation(i,r);for(const o of i){const l=this.getEntryCriteriaKey(o);this.state.temporary.rolledEntryCriteria.includes(l)||this.state.temporary.rolledEntryCriteria.push(l)}}const n=this.groupTestsByEntryCriteria(s);for(const[o,l]of n){if(this.state.temporary.rolledEntryCriteria.includes(o)){this.log("Already rolled for criteria '%s', skipping",o);continue}if(l.some(S=>this.state.essential.visitorTests.some(C=>C.testId===S.id))){this.log("Visitor already has VT for criteria '%s', skipping",o),this.state.temporary.rolledEntryCriteria.push(o);continue}const d=[...l].sort((S,C)=>S.id.localeCompare(C.id));this.log("Test dice roll for criteria '%s' - available tests: %o",o,d.map(S=>({id:S.id,title:S.title})));const p=Math.floor(Math.random()*d.length),h=d[p];this.log("Test dice roll: picked index %d of %d, selected test '%s' (%s)",p+1,l.length,h.id,h.title);const u=this.pickHypothesis(h);if(!u){this.log("No hypothesis picked for test '%s'",h.id);continue}this.sendDiagnosticTelemetry("assignment",h.id,{hypothesisId:u.id,isControl:u.isControl,testType:u.type});const b=this.getReservationType(u.type),E={testId:h.id,hypothesisId:u.id,testType:u.type,reservationType:b,isThemeTest:u.type==="theme",themeId:u.themeId,createdAt:new Date,isRealized:!1,entryCriteriaKey:o};this.state.temporary.testReservations[o]=E,this.state.temporary.rolledEntryCriteria.push(o),this.log("Created %s reservation for test '%s' (criteria: %s)",b,h.id,o);for(const S of l)S.id!==h.id&&this.markTestAsBlocked(S,o)}this.persistTemporaryState()}createSingleReservation(e,t){if(this.state.temporary.rolledEntryCriteria.includes(t)){this.log("Already rolled for pool '%s', skipping",t);return}if(e.some(p=>this.state.essential.visitorTests.some(h=>h.testId===p.id&&!h.isInvalid))){this.log("Visitor already has VT for pool '%s', skipping",t),this.state.temporary.rolledEntryCriteria.push(t);return}if(e.length===0){this.log("No tests in pool '%s'",t);return}const s=[...e].sort((p,h)=>p.id.localeCompare(h.id));this.log("Test dice roll for pool '%s' - available tests: %o",t,s.map(p=>({id:p.id,title:p.title,criteria:this.getEntryCriteriaKey(p)})));const r=Math.floor(Math.random()*s.length),n=s[r];this.log("Test dice roll: picked index %d of %d, selected test '%s' (%s)",r,e.length,n.id,n.title);const o=this.pickHypothesis(n);if(!o){this.log("No hypothesis picked for test '%s'",n.id);return}this.sendDiagnosticTelemetry("assignment",n.id,{hypothesisId:o.id,isControl:o.isControl,testType:o.type});const l=this.getReservationType(o.type),c=this.getEntryCriteriaKey(n),d={testId:n.id,hypothesisId:o.id,testType:o.type,reservationType:l,isThemeTest:o.type==="theme",themeId:o.themeId,createdAt:new Date,isRealized:!1,entryCriteriaKey:c};this.state.temporary.testReservations[c]=d,this.state.temporary.rolledEntryCriteria.push(t),this.log("Created %s reservation for test '%s' from pool '%s' (criteria: %s)",l,n.id,t,c);for(const p of e)p.id!==n.id&&this.markTestAsBlocked(p,`pool:${t}`);this.persistTemporaryState()}markTestAsBlocked(e,t){this.state.essential.visitorTests.some(i=>i.testId===e.id)||(this.log("Blocking visitor from test '%s' (reason: %s)",e.id,t),this.state.essential.visitorTests.push({createdAt:new Date,testId:e.id,hypothesisId:null,isThemeTest:e.hypotheses.some(i=>
9i.type==="theme"),shouldSendToGa:!1,isSaved:!0,isInvalid:!0,themeId:void 0}))}realizeReservationForCriteria(e){const t=this.state.temporary.testReservations?.[e];if(!t)return this.log("No reservation found for criteria '%s'",e),!1;if(t.isRealized)return this.log("Reservation already realized for criteria '%s'",e),!1;if(this.state.essential.visitorTests.some(s=>s.testId===t.testId&&!s.isInvalid))return this.log("Visitor already assigned to test '%s'",t.testId),!1;const i=this.getHypothesis(t.hypothesisId);return i?(t.isRealized=!0,this.persistTemporaryState(),this.queueAddVisitorToTest(t.testId,i),this.saveState(),this.log("Realized reservation for test '%s' (criteria: %s)",t.testId,e),!0):(this.log("Hypothesis '%s' not found",t.hypothesisId),!1)}getActiveReservations(){return this.state.temporary.testReservations??{}}getReservationForCurrentPage(){const e=this.getActiveReservations();for(const[t,i]of Object.entries(e)){if(i.isRealized)continue;const s=this.testConfigs.find(r=>r.id===i.testId);if(!(!s||s.status!=="active")&&this.doesCurrentPageMatchEntryCriteria(t))return i}return null}getReservationForTest(e){const t=this.getActiveReservations();return Object.values(t).find(i=>i.testId===e)??null}getReservationTestType(){const e=this.getActiveReservations(),t=Object.values(e);if(t.length===0)return null;for(const i of t)if(i.isThemeTest)return"theme";for(const i of t)if(i.testType==="price")return"price";return t.some(i=>!i.isRealized)?"templateOrUrlRedirect":null}hasPriceTests(e){return e.some(t=>t.hypotheses.some(i=>i.type==="price"))}_priceTestProductIds=null;getPriceTestProductIds(){if(this._priceTestProductIds)return this._priceTestProductIds;const e=new Set;for(const t of this.testConfigs)for(const i of t.hypotheses)if(i.type==="price"){for(const s of i.domSelectors||[]){const r=s.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);r?.[1]&&e.add(r[1])}if(i.priceData?.variants)for(const[s]of i.priceData.variants)e.add(s)}return this._priceTestProductIds=e,this.log("Built price test product ID cache with %d products",e.size),e}isProductInAnyPriceTest(e){return this.getPriceTestProductIds().has(e)}visitorActiveTestTypeWithReservations(){const e=this.getActiveReservations();for(const r of Object.values(e)){if(r.isThemeTest)return"theme";if(r.testType==="price")return"price"}if(Object.values(e).some(r=>!r.isRealized)){if(this.state.temporary.testCategory==="global")for(const n of Object.values(e)){if(n.testType==="theme")return"theme";if(n.testType==="price")return"price";if(n.testType==="basicScript")return"theme"}return"templateOrUrlRedirect"}const i=this.state.essential.visitorTests.filter(r=>!r.isInvalid&&this.testConfigs.some(n=>n.hypotheses.some(o=>o.id===r.hypothesisId)));return i.length===0?null:i.some(r=>this.getHypothesis(r.hypothesisId)?.type==="price")?"price":i.some(r=>r.isThemeTest)?"theme":"templateOrUrlRedirect"}applyControlForAudienceFilteredPriceTests(){const e=this.testConfigs.filter(s=>s.status==="active"&&s.hypotheses.some(r=>r.type==="price"));if(e.length===0)return;const t=this.testsFilteredByAudience.filter(s=>s.hypotheses.some(r=>r.type==="price")),i=e.filter(s=>!t.some(r=>r.id===s.id));if(i.length!==0){this.log("Found %d price tests filtered by audience, applying control selectors",i.length);for(const s of i){const r=s.hypotheses.find(c=>c.isControl),n=this.getDomSelectorsForHypothesis(r);if(n.length===0){this.log("No control selectors for audience-filtered price test '%s'",s.id);continue}const o=new URL(window.location.href);n.some(c=>{try{return new RegExp(re(c)).test(J(o.toString()))}catch{return!1}})&&(this.log("Applying control selectors for audience-filtered price test '%s'",s.id),U(document,{testId:s.id,hypothesisId:r.id,selectors:n},()=>{}),this.updatePriceTestHiddenInputs(s.id,"control",!1))}}}pickHypothesis(e){let t=Math.random();const i=e.hypotheses.reduce((r,n)=>r+n.visitorCount,0);return e.hypotheses.sort((r,n)=>r.isControl?n.isControl?0:-1:n.isControl?1:0).reduce((r,n)=>{if(r!==null)return r;const l=e.hypotheses.reduce((c,d)=>c&&d.visitorCount>20,!0)?n.visitorCount/i-n.trafficPercentage:0;return t<=n.trafficPercentage-l?n:(t-=n.trafficPercentage-l,null)},null)}typeFromTemplate(){switch(template.type){case"list-collections":return"collectionList";case"page":return"landing";case"article":case"blog":case"cart":case"collection":case"index":case"product":case"search":return template.type;default:return null}}queueRedirect(e){this.saveState(),this.disableReferrerOverride||(this.log(`Saving temporary referrer override '${document.referrer}'`),this.state.temporary.originalReferrer=document.referrer,this.persistTemporaryState()),window.setTimeout(()=>window.location.assign(e),0),window.setTimeout(()=>{this.syncAllEvents()},2e3)}scheduleRetrySync(){this.clientIdRetryCount>=5||(this.clientIdRetryCount++,window.setTimeout(()=>{this.syncAllEvents()},500))}async syncAllEvents(){const e=async()=>
9{if(this.isSyncing){window.setTimeout(()=>{(async()=>await e())()},500);return}try{if(this.isSyncing=!0,this.syncGAEvents(),this.shopifyAnalyticsId||(this.shopifyAnalyticsId=this.getShopifyAnalyticsId()),!this.shopifyAnalyticsId){this.scheduleRetrySync();return}await this.syncEvents()}finally{this.isSyncing=!1}};await e()}async syncEvents(){if(!this.state.essential.consentApproved||!this.shopifyAnalyticsId||this.state.analytics.queue.length===0)return;const e=this.state.analytics.queue.length,t=this.state.analytics.queue.splice(0,e);this.log("Syncing %s events",e);try{const i={shop:this.shop,visitorDetails:{shopifyAnalyticsId:this.shopifyAnalyticsId,device:this.state.analytics.visitor?.device??this.device,country:this.state.analytics.visitor?.country??null,...this.state.essential.initialState},events:this.state.essential.visitorTests.filter(r=>!r.isInvalid&&!r.isSaved&&r.hypothesisId!=null).map(r=>new Se(r.testId,r.hypothesisId,r.createdAt)).concat(t)};await this.sendEvents(i);for(const r of this.state.essential.visitorTests.filter(n=>!n.isInvalid&&!n.isSaved&&n.hypothesisId!=null))this.sendDiagnosticTelemetry("event-delivered",r.testId,{hypothesisId:r.hypothesisId,isControl:r.assignedTo==="control",testType:r.testType??"unknown"});const s=await this.getVisitor(this.shopifyAnalyticsId);s!==null&&this.updateLocalVisitor(s);for(const r of this.state.essential.visitorTests.filter(n=>!n.isInvalid&&!n.isSaved))r.isSaved=!0,r.savedAt=Date.now()}catch{this.state.analytics.queue.splice(0,0,...t)}finally{this.saveState()}}syncGAEvents(){if(!this.gaConfig.sendEvents){if(fe)return;fe=!0,this.log("UseGtag is false — skipping GA Events");return}if(this.isSyncingGA){this.log("Already syncing GA - skipping GA events");return}const e=this.state.essential.visitorTests.filter(t=>t.shouldSendToGa);e.length!==0&&(this.isSyncingGA=!0,this.log("Syncing %s GA Events",e.length),Promise.allSettled(e.map(t=>this.sendGAEvent(t))).then(()=>this.log("All gtag events sent")).finally(()=>this.isSyncingGA=!1))}sendGAEvent(e){return new Promise(t=>{this.log("Sending GA Event for test %s, hypothesis %s",e.testId,e.hypothesisId);const i=()=>{this.log("GA acknowledged event for hypothesis %s",e.hypothesisId),e.shouldSendToGa=!1,this.persistEssentialState(),t()},s={exp_variant_string:`SL-${e.testId}-${e.hypothesisId}`};
9this.shopliftDebug&&Object.assign(s,{debug_mode:!0});function r(n,o,l){window.dataLayer=window.dataLayer||[],window.dataLayer.push(arguments)}this.gaConfig.mode==="gtag"?r("event","experience_impression",{...s,event_callback:i}):(window.dataLayer=window.dataLayer||[],window.dataLayer.push({event:"experience_impression",...s,eventCallback:i}))})}updateLocalVisitor(e){let t;({visitorTests:t,...this.state.analytics.visitor}=e),this.log("updateLocalVisitor - server returned %d tests: %o",t.length,t.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isInvalid:s.isInvalid}))),this.log("updateLocalVisitor - local has %d tests: %o",this.state.essential.visitorTests.length,this.state.essential.visitorTests.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isSaved:s.isSaved,isInvalid:s.isInvalid})));const i=300*1e3;for(const s of this.state.essential.visitorTests.filter(r=>r.isSaved&&(!r.savedAt||Date.now()-r.savedAt>i)&&!t.some(n=>n.testId===r.testId)))this.log("updateLocalVisitor - marking LOCAL test as INVALID (isSaved && not in server): testId=%s, hypothesisId=%s",s.testId,s.hypothesisId),s.isInvalid=!0;for(const s of t){const r=this.state.essential.visitorTests.findIndex(o=>o.testId===s.testId);if(!(r!==-1))this.log("updateLocalVisitor - ADDING server test (not found locally): testId=%s, hypothesisId=%s",s.testId,s.hypothesisId),this.state.essential.visitorTests.push(s);else{const o=this.state.essential.visitorTests.at(r);this.log("updateLocalVisitor - REPLACING local test with server test: testId=%s, local hypothesisId=%s -> server hypothesisId=%s, local isInvalid=%s -> false",s.testId,o?.hypothesisId,s.hypothesisId,o?.isInvalid),s.isInvalid=!1,s.shouldSendToGa=o?.shouldSendToGa??!1,s.testType=o?.testType,s.assignedTo=o?.assignedTo,s.testTitle=o?.testTitle,this.state.essential.visitorTests.splice(r,1,s)}}this.log("updateLocalVisitor - FINAL local tests: %o",this.state.essential.visitorTests.map(s=>({testId:s.testId,hypothesisId:s.hypothesisId,isSaved:s.isSaved,isInvalid:s.isInvalid}))),this.state.analytics.visitor.storedAt=new Date}async getVisitor(e){try{return await this.makeJsonRequest({method:"get",url:`${this.eventHost}/api/v0/visitors/by-key/${this.shop}/${e}`})}catch{return null}}async sendEvents(e){await this.makeRequest({method:"post",url:`${this.eventHost}/api/v0/events`,data:JSON.stringify(e)})}sendDiagnosticTelemetry(e,t,i){if(!this.telemetryEnabled||!navigator.sendBeacon)return;const s=this.state.essential.consentApproved,r=JSON.stringify({shop:this.shop,testId:t,checkpoint:e,device:this.device,...s?{visitorId:this.shopifyAnalyticsId??"unknown"}:{},clientTimestamp:Date.now(),consentApproved:s,hasConsentInteraction:this.state.essential.hasConsentInteraction,...i});navigator.sendBeacon(`${this.eventHost}/api/v0/telemetry`,new Blob([r],{type:"text/plain"}))}getUTMValue(e){return new URLSearchParams(window.location.search).get(e)||null}hidePage(e){this.log("Hiding page"),this.cssHideClass&&!window.document.documentElement.classList.contains(this.cssHideClass)&&(window.document.documentElement.classList.add(this.cssHideClass),e||setTimeout(this.removeAsyncHide(this.cssHideClass),2e3))}showPage(){this.cssHideClass&&this.removeAsyncHide(this.cssHideClass)()}getDeviceType(){function e(){let i=!1;return(function(s){(/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(s)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|
9sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(s.substr(0,4)))&&(i=!0)})(navigator.userAgent||navigator.vendor),i}function t(){let i=!1;return(function(s){(/android|ipad|playbook|silk/i.test(s)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(s.substr(0,4)))&&(i=!0)})(navigator.userAgent||navigator.vendor),i}return e()?"mobile":t()?"tablet":"desktop"}removeAsyncHide(e){return()=>{e&&window.document.documentElement.classList.remove(e)}}async getCartState(){try{let e=await this.makeJsonRequest({method:"get",url:`${window.location.origin}/cart.js`});return e===null||(e.note===null&&(e=await this.makeJsonRequest({method:"post",url:`${window.location.origin}/cart/update.js`,data:JSON.stringify({note:""})})),e==null)?null:{token:e.token,total_price:e.total_price,total_discount:e.total_discount,currency:e.currency,items_subtotal_price:e.items_subtotal_price,items:e.items.map(t=>({quantity:t.quantity,variant_id:t.variant_id,key:t.key,price:t.price,final_line_price:t.final_line_price,sku:t.sku,product_id:t.product_id}))}}catch(e){return this.log("Error sending cart info",e),null}}ensureCartAttributesForExistingPriceTests(e){try{if(this.log("Checking visitor assignments for active price tests"),e&&this.state.temporary.previewConfig){const t=this.state.temporary.previewConfig;this.log("Using preview config for merchant:",t.testId);let i="variant";if(t.variants&&t.variants.length>0){const s=t.variants.find(r=>r.id===t.currentVariant);s&&s.isControl&&(i="control")}this.log("Merchant preview - updating hidden inputs:",t.testId,i),this.updatePriceTestHiddenInputs(t.testId,i,!0);return}for(const t of this.state.essential.visitorTests){const i=this.testConfigs.find(n=>n.id===t.testId);if(!i){this.log("Test config not found:",t.testId);continue}const s=i.hypotheses.find(n=>n.id===t.hypothesisId);if(!s||s.type!=="price")continue;const r=s.isControl?"control":"variant";this.log("Updating hidden inputs for price test:",t.testId,r),this.updatePriceTestHiddenInputs(t.testId,r,e)}}catch(t){this.log("Error ensuring cart attributes for existing price tests:",t)}}subscriptionSwapDone=!1;subscriptionHideWrongPlans=null;subscriptionPriceDone=!1;subscriptionUpdateOneTime=null;subscriptionOneTimeDone=!1;swapMap=null;slptValue=null;async subscriptionSwap(){await ze(this)}async subscriptionPriceChange(){await Ge(this)}async subscriptionOneTimePrice(){await je(this)}
9updatePriceTestHiddenInputs(e,t,i){try{this.cleanupPriceTestObservers();const s=`${e}:${t}:${i?"t":"f"}`,r=T=>{const m=T.getAttribute("data-sl-pid");if(!m)return!0;if(i&&this.state.temporary.previewConfig){const w=this.state.temporary.previewConfig,I=t==="control"?"a":"b",f=w.variants.find(v=>v.label===I);if(!f)return!1;for(const v of f.domSelectors||[]){const g=v.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);if(g){const P=g[1];if(this.log(`Extracted ID from selector: ${P}, comparing to: ${m}`),P===m)return this.log("Product ID match found in preview config:",m,"variant:",f.label),!0}else this.log(`Could not extract ID from selector: ${v.cssSelector}`)}return this.log("No product ID match in preview config for:",m,"variant:",I),!1}const y=this.testConfigs.find(w=>w.id===e);if(!y)return this.log("Test config not found for testId:",e),!1;for(const w of y.hypotheses||[]){for(const I of w.domSelectors||[]){const f=I.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);if(f&&f[1]===m)return this.log("Product ID match found in domSelectors:",m,"for test:",e),!0}if(w.priceData?.variants){for(const I of w.priceData.variants)if(I[0]===m)return this.log("Product ID match found in priceData:",m,"for test:",e),!0}}return this.log("No product ID match for:",m,"in test:",e),!1},n=new Set;let o=!1,l=null;const c=(T,m)=>{if(document.querySelectorAll("[data-sl-attribute-p]").forEach(w=>{if(w instanceof Element&&w.nodeType===Node.ELEMENT_NODE&&w.isConnected&&document.contains(w))try{T.observe(w,{childList:!0,subtree:!0,characterData:!0,characterDataOldValue:!0,attributes:!1})}catch(I){this.log(`Failed to observe element (${m}):`,I)}}),document.body&&document.body.isConnected)try{T.observe(document.body,{childList:!0,subtree:!0,characterData:!0,characterDataOldValue:!0,attributes:!1})}catch(w){this.log(`Failed to observe document.body (${m}):`,w)}},d=(T,m,y,w)=>{const I=T.filter(f=>{const v=f.cssSelector.match(/data-sl-attribute-(?:p|cap)="(\d+)"/);return v&&v[1]===w});this.log(`Applying ${y} DOM selectors, total: ${T.length}, filtered: ${I.length}`),I.length>0&&U(document,{testId:e,hypothesisId:m,selectors:I})},p=(T,m)=>{this.log(`Applying DOM selector changes for product ID: ${T}`),m.disconnect(),o=!0;try{if(i&&this.state.temporary.previewConfig){const y=t==="control"?"a":"b",w=this.state.temporary.previewConfig.variants.find(I=>I.label===y);if(!w?.domSelectors){this.log(`No DOM selectors found for preview variant: ${y}`);return}d(w.domSelectors,w.id,"preview config",T)}else{const y=this.testConfigs.find(I=>I.id===e);if(!y){this.log(`No test config found for testId: ${e}`);return}const w=y.hypotheses.find(I=>t==="control"?I.isControl:!I.isControl);if(!w?.domSelectors){this.log(`No DOM selectors found for assignment: ${t}`);return}d(w.domSelectors,w.id,"live config",T)}}finally{l!==null&&clearTimeout(l),l=window.setTimeout(()=>{o=!1,l=null,c(m,"reconnection"),this.log("Re-established innerHTML observer after DOM changes")},50)}},h=new MutationObserver(T=>{if(!o)for(const m of T){if(m.type!=="childList"&&m.type!=="characterData")continue;let y=m.target;m.type==="characterData"&&(y=m.target.parentElement||m.target.parentNode);let w=y,I=w.getAttribute("data-sl-attribute-p");for(;!I&&w.parentElement;)w=w.parentElement,I=w.getAttribute("data-sl-attribute-p");if(!I)continue;const f=w.innerHTML||w.textContent||"";let v="";m.type==="characterData"&&m.oldValue!==null&&(v=m.oldValue),this.log(`innerHTML changed on element with data-sl-attribute-p="${I}"`),v&&this.log(`Previous content: "${v}"`),this.log(`Current content: "${f}"`),p(I,h)}});c(h,"initial setup"),n.add(h);const u=new MutationObserver(T=>{T.forEach(m=>{m.addedNodes.forEach(y=>{if(y.nodeType===Node.ELEMENT_NODE){const w=y;E(w);const I=w.matches('input[name="properties[_slpt]"]')?[w]:w.querySelectorAll('input[name="properties[_slpt]"]');I.length>0&&this.log(`MutationObserver found ${I.length} new hidden input(s)`),I.forEach(f=>{const v=f.getAttribute("data-sl-pid");if(this.log(`MutationObserver checking new input with data-sl-pid="${v}"`),r(f))f.value!==s&&(f.value=s,this.log("Updated newly added hidden input:",s)),S(f);else{const g=f.getAttribute("data-sl-pid");g&&this.isProductInAnyPriceTest(g)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",g):(f.remove(),this.log("Removed newly added non-matching hidden input for product ID:",g))}})}})})});n.add(u);const b=new MutationObserver(T=>{T.forEach(m=>{if(m.type==="attributes"&&m.attributeName==="data-sl-pid"){const y=m.target;if(this.log("AttributeObserver detected data-sl-pid attribute change on:",y.tagName),y.matches('input[name="properties[_slpt]"]')){const w=y,I=m.oldValue,f=w.getAttribute("data-sl-pid");this.log(`data-sl-pid changed from "${I}" to "${f}" - triggering payment placement updates`),r(w)?(w.value!==s&&(w.value=s,this.log("Updated hidden input after data-sl-pid change:",s)),f&&p(f,h),this.log("Re-running payment placement updates after variant change"),E(document.body)):f&&this.isProductInAnyPriceTest(f)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",f):(w.remove(),this.log("Removed non-matching hidden input after data-sl-pid change:",f))}}})});n.add(b);const E=T=>{T.tagName==="SHOPIFY-PAYMENT-TERMS"&&(this.log("MutationObserver found new shopify-payment-terms element"),this.updateShopifyPaymentTerms(e,t));const m=T.querySelectorAll("shopify-payment-terms");m.length>0&&(this.log(`MutationObserver found ${m.length}
9 shopify-payment-terms in added node`),this.updateShopifyPaymentTerms(e,t)),T.tagName==="AFTERPAY-PLACEMENT"&&(this.log("MutationObserver found new afterpay-placement element"),this.updateAfterpayPlacements(e,t,"afterpay"));const y=T.querySelectorAll("afterpay-placement");y.length>0&&(this.log(`MutationObserver found ${y.length} afterpay-placement in added node`),this.updateAfterpayPlacements(e,t,"afterpay")),T.tagName==="SQUARE-PLACEMENT"&&(this.log("MutationObserver found new square-placement element"),this.updateAfterpayPlacements(e,t,"square"));const w=T.querySelectorAll("square-placement");w.length>0&&(this.log(`MutationObserver found ${w.length} square-placement in added node`),this.updateAfterpayPlacements(e,t,"square")),T.tagName==="KLARNA-PLACEMENT"&&(this.log("MutationObserver found new klarna-placement element"),this.updateKlarnaPlacements(e,t));const I=T.querySelectorAll("klarna-placement");I.length>0&&(this.log(`MutationObserver found ${I.length} klarna-placement in added node`),this.updateKlarnaPlacements(e,t))},S=T=>{b.observe(T,{attributes:!0,attributeFilter:["data-sl-pid"],attributeOldValue:!0,subtree:!1});const m=T.getAttribute("data-sl-pid");this.log(`Started AttributeObserver on specific input with data-sl-pid="${m}"`)},C=()=>{const T=document.querySelectorAll('input[name="properties[_slpt]"]');this.log(`Found ${T.length} existing hidden inputs to check`),T.forEach(m=>{const y=m.getAttribute("data-sl-pid");this.log(`Checking existing input with data-sl-pid="${y}"`),r(m)?(m.value=s,this.log("Updated existing hidden input:",s),y&&(this.log("Applying initial DOM selector changes for existing product"),p(y,h)),S(m)):y&&this.isProductInAnyPriceTest(y)?this.log("Preserving hidden input for product ID '%s' - belongs to a different price test",y):(m.remove(),this.log("Removed non-matching hidden input for product ID:",y))})},_=()=>{document.body?(u.observe(document.body,{childList:!0,subtree:!0}),this.log("Started MutationObserver on document.body"),C(),E(document.body)):document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>{document.body&&(u.observe(document.body,{childList:!0,subtree:!0}),this.log("Started MutationObserver after DOMContentLoaded"),C(),E(document.body))}):(this.log("Set timeout on observer"),setTimeout(_,10))};_(),window.__shopliftPriceTestObservers=n,window.__shopliftPriceTestValue=s,this.log("Set up DOM observer for price test hidden inputs")}catch(s){this.log("Error updating price test hidden inputs:",s)}}updateKlarnaPlacements(e,t){this.updatePlacementElements(e,t,"klarna-placement",(i,s)=>{i.setAttribute("data-purchase-amount",s.toString())})}cleanupPriceTestObservers(){const e=window.__shopliftPriceTestObservers;e&&(e.forEach(t=>{t.disconnect()}),e.clear(),this.log("Cleaned up existing price test observers")),delete window.__shopliftPriceTestObservers,delete window.__shopliftPriceTestValue}updateAfterpayPlacements(e,t,i="afterpay"){const s=i==="square"?"square-placement":"afterpay-placement";if(document.querySelectorAll(s).length===0){this.log(`No ${s} elements found on page - early return`);return}this.updatePlacementElements(e,t,s,(n,o)=>{if(i==="afterpay"){const l=(o/100).toFixed(2);n.setAttribute("data-amount",l)}else n.setAttribute("data-amount",o.toString())}),this.log("updateAfterpayPlacements completed")}updatePlacementElements(e,t,i,s){const r=document.querySelectorAll(i);if(r.length===0){this.log(`No ${i} elements found - early return`);return}let n;if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const l=t==="control"?"a":"b",c=this.state.temporary.previewConfig.variants.find(d=>d.label===l);if(!c?.domSelectors){this.log(`No variant found for label ${l} in preview config for ${i}`);return}n=c.domSelectors,this.log(`Using preview config for ${i} in merchant mode, variant: ${l}`)}else{const l=this.testConfigs.find(d=>d.id===e);if(!l){this.log(`No testConfig found for id: ${e} - early return`);return}
9const c=l.hypotheses.find(d=>t==="control"?d.isControl:!d.isControl);if(!c?.domSelectors){this.log(`No hypothesis or domSelectors found for assignment: ${t} - early return`);return}n=c.domSelectors}const o=new RegExp(`${this.DATA_SL_ATTRIBUTE_P}=["'](\\d+)["']`);r.forEach(l=>{let c=null;const d=l.parentElement;if(d&&(c=d.querySelector('input[name="properties[_slpt]"]')),c||(c=l.querySelector('input[name="properties[_slpt]"]')),!c){this.log(`No hidden input found for ${i} element`);return}const p=c.getAttribute("data-sl-pid");if(!p){this.log("Hidden input has no data-sl-pid attribute - skipping");return}const h=n.find(S=>{const C=S.cssSelector.match(o);return C&&C[1]===p});if(!h){this.log(`No matching selector found for productId: ${p} - skipping element`);return}const u=h.actions.find(S=>S.scope==="price");if(!u?.value){this.log("No price action or value found - skipping element");return}const b=parseFloat(u.value.replace(/[^0-9.]/g,""));if(Number.isNaN(b)){this.log(`Invalid price "${u.value}" for product ${p} - skipping`);return}const E=Math.round(b*100);s(l,E)}),this.log(`updatePlacementElements completed for ${i}`)}updateShopifyPaymentTerms(e,t){const i=document.querySelectorAll("shopify-payment-terms");if(i.length===0)return;this.log("Store using shopify payments");let s;if(this.state.temporary.isMerchant&&this.state.temporary.previewConfig){const n=t==="control"?"a":"b",o=this.state.temporary.previewConfig.variants.find(l=>l.label===n);if(!o||!o.domSelectors){this.log(`No variant found for label ${n} in preview config`);return}s=o.domSelectors,this.log(`Using preview config for shopify-payment-terms in merchant mode, variant: ${n}`)}else{const n=this.testConfigs.find(l=>l.id===e);if(!n)return;const o=n.hypotheses.find(l=>t==="control"?l.isControl===!0:l.isControl===!1);if(!o||!o.domSelectors)return;s=o.domSelectors}const r=new RegExp(`${this.DATA_SL_ATTRIBUTE_P}=["'](\\d+)["']`);i.forEach(n=>{const o=n.getAttribute("variant-id");if(!o)return;const l=s.find(c=>{const d=c.cssSelector.match(r);return d&&d[1]===o});if(l){const c=l.actions.find(d=>d.scope==="price");if(c&&c.value){const d=n.getAttribute("shopify-meta");if(d)try{const p=JSON.parse(d);if(p.variants&&Array.isArray(p.variants)){const h=p.variants.find(u=>u.id?.toString()===o);if(h){h.full_price=c.value;const u=parseFloat(c.value.replace(/[^0-9.]/g,""));if(h.number_of_payment_terms&&h.number_of_payment_terms>1){const b=u/h.number_of_payment_terms;h.price_per_term=`$${b.toFixed(2)}`}n.setAttribute("shopify-meta",JSON.stringify(p))}}}catch(p){this.log("Error parsing/updating shoplift-meta:",p)}}}})}async makeJsonRequest(e){const t=await this.makeRequest(e);return t===null?null:JSON.parse(await t.text(),F)}async makeRequest(e){const{url:t,method:i,headers:s,data:r,signal:n}=e,o=new Headers;if(s)for(const c in s)o.append(c,s[c]);(!s||!s.Accept)&&o.append("Accept","application/json"),r!==void 0&&(!s||!s["Content-Type"])&&o.append("Content-Type","application/json"),(this.eventHost.includes("ngrok.io")||this.eventHost.includes("ngrok-free.app"))&&o.append("ngrok-skip-browser-warning","1234");const l=await this.fetch(t,{method:i,headers:o,body:r,signal:n});if(!l.ok){if(l.status===204)return null;if(l.status===422){const c=await l.json();if(typeof c<"u"&&c.isBot)throw new G}throw new Error(`Error sending shoplift request ${l.status}`)}return l}queueAddVisitorToTest(e,t){if(this.state.essential.visitorTests.some(s=>s.testId===e))return;const i=this.testConfigs.find(s=>s.id===e);if(this.state.essential.visitorTests.push({createdAt:new Date,testId:e,hypothesisId:t.id,isThemeTest:t.type==="theme",themeId:t.themeId,isSaved:!1,isInvalid:!1,shouldSendToGa:!0,testType:t.type,assignedTo:t.isControl?"control":"variant",testTitle:i?.title}),t.type==="price"){const s=t.isControl?"control":"variant";this.log("Price test assignment detected, updating cart attributes:",e,s),this.updatePriceTestHiddenInputs(e,s,!1)}}queueCartUpdate(e){this.queueEvent(new Te(e))}queuePageView(e){this.queueEvent(new Ce(e))}queueEvent(e){!this.state.essential.consentApproved&&this.state.essential.hasConsentInteraction||this.state.analytics.queue.length>10||this.state.analytics.queue.push(e)}legacyGetLocalStorageVisitor(){const e=this.localStorageGet(this.legacySessionKey);if(e)try{return JSON.parse(e,F)}catch{}return null}pruneStaleVisitorTests(){this.state.essential.visitorTests=this.state.essential.visitorTests.filter(e=>this.testConfigs.some(t=>t.id==e.testId)||this.inactiveTestConfigs.filter(t=>this.testIsPaused(t)).some(t=>t.id===e.testId))}pruneStateAndSave(){this.pruneStaleVisitorTests(),this.saveState()}saveState(){this.persistEssentialState(),this.persistAnalyticsState()}loadState(){const e=this.loadAnalyticsState(),t={analytics:e,essential:this.loadEssentialState(e),temporary:this.loadTemporaryState()},i=this.legacyGetLocalStorageVisitor(),s=this.legacyGetCookieVisitor(),r=[i,s].filter(n=>n!==null).sort((n,o)=>+o.storedAt-+n.storedAt)[0];return t.analytics.visitor===null&&r&&({visitorTests:t.essential.visitorTests,...t.analytics.visitor}=r,t.essential.isFirstLoad=!1,t.essential.initialState={createdAt:r.createdAt,referrer:r.referrer,utmCampaign:r.utmCampaign,utmContent:r.utmContent,utmMedium:r.utmMedium,utmSource:r.utmSource,device:r.device},this.deleteCookie("SHOPLIFT"),this.deleteLocalStorage(this.legacySessionKey)),!t.essential.consentApproved&&t.essential.hasConsentInteraction&&this.deleteLocalStorage(this.analyticsSessionKey),t}loadEssentialState(e){const t=this.loadLocalStorage(this.essentialSessionKey),i=this.loadCookie(this.essentialSessionKey),s=this.getInitialState();e.visitor?.device&&(s.device=e.visitor.device);const r={timestamp:new Date,consentApproved:!1,hasConsentInteraction:!1,debugMode:!1,initialState:s,visitorTests:[],isFirstLoad:!0},n=[t,i].filter(o=>o!==null).sort((o,l)=>+l.timestamp-+o.timestamp)[0]??r;return n.initialState||(e.visitor!==null?n.initialState=e.visitor:(n.initialState=s,n.initialState.createdAt=n.timestamp)),n}loadAnalyticsState(){const e=this.loadLocalStorage(this.analyticsSessionKey),t=this.loadCookie(this.analyticsSessionKey),i={timestamp:new Date,visitor:null,queue:[]},s=[e,t].filter(r=>r!==null).sort((r,n)=>+n.timestamp-+r.timestamp)[0]??i;return s.queue.length===0&&e&&e.queue.length>1&&(s.queue=e.queue),s}loadTemporaryState(){const e=this.sessionStorageGet(this.temporarySessionKey),t=e?JSON.parse(e,F):null,i=this.loadCookie(this.temporarySessionKey);return t??i??{isMerchant:!1,timestamp:new Date}}persistEssentialState(){this.log("Persisting essential state"),this.state.essential.isFirstLoad=!1,this.state.essential.timestamp=new Date,this.persistLocalStorageState(this.essentialSessionKey,this.state.essential),this.persist
9CookieState(this.essentialSessionKey,this.state.essential)}persistAnalyticsState(){this.log("Persisting analytics state"),this.state.essential.consentApproved&&(this.state.analytics.timestamp=new Date,this.persistLocalStorageState(this.analyticsSessionKey,this.state.analytics),this.persistCookieState(this.analyticsSessionKey,{...this.state.analytics,queue:[]}))}persistTemporaryState(){this.log("Setting temporary session state"),this.state.temporary.timestamp=new Date,this.sessionStorageSet(this.temporarySessionKey,JSON.stringify(this.state.temporary)),this.persistCookieState(this.temporarySessionKey,this.state.temporary,!0)}loadLocalStorage(e){const t=this.localStorageGet(e);if(t===null)return null;try{return JSON.parse(t,F)}catch{return null}}loadCookie(e){const t=this.getCookie(e);if(t===null)return null;try{return JSON.parse(t,F)}catch{return null}}persistLocalStorageState(e,t){this.localStorageSet(e,JSON.stringify(t))}persistCookieState(e,t,i=!1){const s=JSON.stringify(t),r=i?"":`expires=${new Date(new Date().getTime()+864e5*365).toUTCString()};`;document.cookie=`${e}=${s};domain=.${window.location.hostname};path=/;SameSite=Strict;${r}`}deleteCookie(e){const t=new Date(0).toUTCString();document.cookie=`${e}=;domain=.${window.location.hostname};path=/;expires=${t};`}deleteLocalStorage(e){window.localStorage.removeItem(e)}getChannel(e){return[{"name":"cross-network","test":(v) => new RegExp(".*cross-network.*", "i").test(v.utmCampaign)},{"name":"direct","test":(v) => v.utmSource === "" && v.utmMedium === ""},{"name":"paid-shopping","test":(v) => (new RegExp("^(?:Google|IGShopping|aax-us-east\.amazon-adsystem\.com|aax\.amazon-adsystem\.com|alibaba|alibaba\.com|amazon|amazon\.co\.uk|amazon\.com|apps\.shopify\.com|checkout\.shopify\.com|checkout\.stripe\.com|cr\.shopping\.naver\.com|cr2\.shopping\.naver\.com|ebay|ebay\.co\.uk|ebay\.com|ebay\.com\.au|ebay\.de|etsy|etsy\.com|m\.alibaba\.com|m\.shopping\.naver\.com|mercadolibre|mercadolibre\.com|mercadolibre\.com\.ar|mercadolibre\.com\.mx|message\.alibaba\.com|msearch\.shopping\.naver\.com|nl\.shopping\.net|no\.shopping\.net|offer\.alibaba\.com|one\.walmart\.com|order\.shopping\.yahoo\.co\.jp|partners\.shopify\.com|s3\.amazonaws\.com|se\.shopping\.net|shop\.app|shopify|shopify\.com|shopping\.naver\.com|shopping\.yahoo\.co\.jp|shopping\.yahoo\.com|shopzilla|shopzilla\.com|simplycodes\.com|store\.shopping\.yahoo\.co\.jp|stripe|stripe\.com|uk\.shopping\.net|walmart|walmart\.com)$", "i").test(v.utmSource) || new RegExp("^(.*(([^a-df-z]|^)shop|shopping).*)$", "i").test(v.utmCampaign)) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-search","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|y
9andex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-social","test":(v) => new RegExp("^(?:43things|43things\.com|51\.com|5ch\.net|Hatena|ImageShack|academia\.edu|activerain|activerain\.com|activeworlds|activeworlds\.com|addthis|addthis\.com|airg\.ca|allnurses\.com|allrecipes\.com|alumniclass|alumniclass\.com|ameba\.jp|ameblo\.jp|americantowns|americantowns\.com|amp\.reddit\.com|ancestry\.com|anobii|anobii\.com|answerbag|answerbag\.com|answers\.yahoo\.com|aolanswers|aolanswers\.com|apps\.facebook\.com|ar\.pinterest\.com|artstation\.com|askubuntu|askubuntu\.com|asmallworld\.com|athlinks|athlinks\.com|away\.vk\.com|awe\.sm|b\.hatena\.ne\.jp|baby-gaga|baby-gaga\.com|babyblog\.ru|badoo|badoo\.com|bebo|bebo\.com|beforeitsnews|beforeitsnews\.com|bharatstudent|bharatstudent\.com|biip\.no|biswap\.org|bit\.ly|blackcareernetwork\.com|blackplanet|blackplanet\.com|blip\.fm|blog\.com|blog\.feedspot\.com|blog\.goo\.ne\.jp|blog\.naver\.com|blog\.yahoo\.co\.jp|blogg\.no|bloggang\.com|blogger|blogger\.com|blogher|blogher\.com|bloglines|bloglines\.com|blogs\.com|blogsome|blogsome\.com|blogspot|blogspot\.com|blogster|blogster\.com|blurtit|blurtit\.com|bookmarks\.yahoo\.co\.jp|bookmarks\.yahoo\.com|br\.pinterest\.com|brightkite|brightkite\.com|brizzly|brizzly\.com|business\.facebook\.com|buzzfeed|buzzfeed\.com|buzznet|buzznet\.com|cafe\.naver\.com|cafemom|cafemom\.com|camospace|camospace\.com|canalblog\.com|care\.com|care2|care2\.com|caringbridge\.org|catster|catster\.com|cbnt\.io|cellufun|cellufun\.com|centerblog\.net|chat\.zalo\.me|chegg\.com|chicagonow|chicagonow\.com|chiebukuro\.yahoo\.co\.jp|classmates|classmates\.com|classquest|classquest\.com|co\.pinterest\.com|cocolog-nifty|cocolog-nifty\.com|copainsdavant\.linternaute\.com|couchsurfing\.org|cozycot|cozycot\.com|cross\.tv|crunchyroll|crunchyroll\.com|cyworld|cyworld\.com|cz\.pinterest\.com|d\.hatena\.ne\.jp|dailystrength\.org|deluxe\.com|deviantart|deviantart\.com|dianping|dianping\.com|digg|digg\.com|diigo|diigo\.com|discover\.hubpages\.com|disqus|disqus\.com|dogster|dogster\.com|dol2day|dol2day\.com|doostang|doostang\.com|dopplr|dopplr\.com|douban|douban\.com|draft\.blogger\.com|draugiem\.lv|drugs-forum|drugs-forum\.com|dzone|dzone\.com|edublogs\.org|elftown|elftown\.com|epicurious\.com|everforo\.com|exblog\.jp|extole|extole\.com|facebook|facebook\.com|faceparty|faceparty\.com|fandom\.com|fanpop|fanpop\.com|fark|fark\.com|fb|fb\.me|fc2|fc2\.com|feedspot|feministing|feministing\.com|filmaffinity|filmaffinity\.com|flickr|flickr\.com|flipboard|flipboard\.com|folkdirect|folkdirect\.com|foodservice|foodservice\.com|forums\.androidcentral\.com|forums\.crackberry\.com|forums\.imore\.com|forums\.nexopia\.com|forums\.webosnation\.com|forums\.wpcentral\.com|fotki|fotki\.com|fotolog|fotolog\.com|foursquare|foursquare\.com|free\.facebook\.com|friendfeed|friendfeed\.com|fruehstueckstreff\.org|fubar|fubar\.com|gaiaonline|gaiaonline\.com|gamerdna|gamerdna\.com|gather\.com|geni\.com|getpocket\.com|glassboard|glassboard\.com|glassdoor|glassdoor\.com|godtube|godtube\.com|goldenline\.pl|goldstar|goldstar\.com|goo\.gl|gooblog|goodreads|goodreads\.com|google\+|googlegroups\.com|googleplus|govloop|govloop\.com|gowalla|gowalla\.com|gree\.jp|groups\.google\.com|gulli\.com|gutefrage\.net|habbo|habbo\.com|hi5|hi5\.com|hootsuite|hootsuite\.com|houzz|houzz\.com|hoverspot|hoverspot\.com|hr\.com|hu\.pinterest\.com|hubculture|hubculture\.com|hubpages\.com|hyves\.net|hyves\.nl|ibibo|ibibo\.com|id\.pinterest\.com|identi\.ca|ig|imageshack\.com|imageshack\.us|imvu|imvu\.com|in\.pinterest\.com|insanejournal|insanejournal\.com|instagram|instagram\.com|instapaper|instapaper\.com|internations\.org|interpals\.net|intherooms|intherooms\.com|irc-galleria\.net|is\.gd|italki|italki\.com|jammerdirect|jammerdirect\.com|jappy\.com|jappy\.de|kaboodle\.com|kakao|kakao\.com|kakaocorp\.com|kaneva|kaneva\.com|kin\.naver\.com|l\.facebook\.com|l\.instagram\.com|l\.messenger\.com|last\.fm|librarything|librarything\.com|lifestream\.aol\.com|line|line\.me|linkedin|linkedin\.com|listal|listal\.com|listography|listography\.com|livedoor\.com|livedoorblog|livejournal|livejournal\.com|lm\.facebook\.com|lnkd\.in|m\.blog\.naver\.com|m\.cafe\.naver\.com|m\.facebook\.com|m\.kin\.naver\.com|m\.vk\.com|m\.yelp\.com|mbga\.jp|medium\.com|meetin\.org|meetup|meetup\.com|meinvz\.net|meneame\.net|menuism\.com|messages\.google\.com|messages\.yahoo\.co\.jp|messenger|messenger\.com|mix\.com|mixi\.jp|mobile\.facebook\.com|mocospace|mocospace\.com|mouthshut|mouthshut\.com|movabletype|movabletype\.com|mubi|mubi\.com|my\.o
9pera\.com|myanimelist\.net|myheritage|myheritage\.com|mylife|mylife\.com|mymodernmet|mymodernmet\.com|myspace|myspace\.com|netvibes|netvibes\.com|news\.ycombinator\.com|newsshowcase|nexopia|ngopost\.org|niconico|nicovideo\.jp|nightlifelink|nightlifelink\.com|ning|ning\.com|nl\.pinterest\.com|odnoklassniki\.ru|odnoklassniki\.ua|okwave\.jp|old\.reddit\.com|oneworldgroup\.org|onstartups|onstartups\.com|opendiary|opendiary\.com|oshiete\.goo\.ne\.jp|out\.reddit\.com|over-blog\.com|overblog\.com|paper\.li|partyflock\.nl|photobucket|photobucket\.com|pinboard|pinboard\.in|pingsta|pingsta\.com|pinterest|pinterest\.at|pinterest\.ca|pinterest\.ch|pinterest\.cl|pinterest\.co\.kr|pinterest\.co\.uk|pinterest\.com|pinterest\.com\.au|pinterest\.com\.mx|pinterest\.de|pinterest\.es|pinterest\.fr|pinterest\.it|pinterest\.jp|pinterest\.nz|pinterest\.ph|pinterest\.pt|pinterest\.ru|pinterest\.se|pixiv\.net|pl\.pinterest\.com|playahead\.se|plurk|plurk\.com|plus\.google\.com|plus\.url\.google\.com|pocket\.co|posterous|posterous\.com|pro\.homeadvisor\.com|pulse\.yahoo\.com|qapacity|qapacity\.com|quechup|quechup\.com|quora|quora\.com|qzone\.qq\.com|ravelry|ravelry\.com|reddit|reddit\.com|redux|redux\.com|renren|renren\.com|researchgate\.net|reunion|reunion\.com|reverbnation|reverbnation\.com|rtl\.de|ryze|ryze\.com|salespider|salespider\.com|scoop\.it|screenrant|screenrant\.com|scribd|scribd\.com|scvngr|scvngr\.com|secondlife|secondlife\.com|serverfault|serverfault\.com|shareit|sharethis|sharethis\.com|shvoong\.com|sites\.google\.com|skype|skyrock|skyrock\.com|slashdot\.org|slideshare\.net|smartnews\.com|snapchat|snapchat\.com|social|sociallife\.com\.br|socialvibe|socialvibe\.com|spaces\.live\.com|spoke|spoke\.com|spruz|spruz\.com|ssense\.com|stackapps|stackapps\.com|stackexchange|stackexchange\.com|stackoverflow|stackoverflow\.com|stardoll\.com|stickam|stickam\.com|studivz\.net|suomi24\.fi|superuser|superuser\.com|sweeva|sweeva\.com|t\.co|t\.me|tagged|tagged\.com|taggedmail|taggedmail\.com|talkbiznow|talkbiznow\.com|taringa\.net|techmeme|techmeme\.com|tencent|tencent\.com|tiktok|tiktok\.com|tinyurl|tinyurl\.com|toolbox|toolbox\.com|touch\.facebook\.com|tr\.pinterest\.com|travellerspoint|travellerspoint\.com|tripadvisor|tripadvisor\.com|trombi|trombi\.com|trustpilot|tudou|tudou\.com|tuenti|tuenti\.com|tumblr|tumblr\.com|tweetdeck|tweetdeck\.com|twitter|twitter\.com|twoo\.com|typepad|typepad\.com|unblog\.fr|urbanspoon\.com|ushareit\.com|ushi\.cn|vampirefreaks|vampirefreaks\.com|vampirerave|vampirerave\.com|vg\.no|video\.ibm\.com|vk\.com|vkontakte\.ru|wakoopa|wakoopa\.com|wattpad|wattpad\.com|web\.facebook\.com|web\.skype\.com|webshots|webshots\.com|wechat|wechat\.com|weebly|weebly\.com|weibo|weibo\.com|wer-weiss-was\.de|weread|weread\.com|whatsapp|whatsapp\.com|wiki\.answers\.com|wikihow\.com|wikitravel\.org|woot\.com|wordpress|wordpress\.com|wordpress\.org|xanga|xanga\.com|xing|xing\.com|yahoo-mbga\.jp|yammer|yammer\.com|yelp|yelp\.co\.uk|yelp\.com|youroom\.in|za\.pinterest\.com|zalo|zoo\.gr|zooppa|zooppa\.com)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"paid-video","test":(v) => new RegExp("^(?:blog\.twitch\.tv|crackle|crackle\.com|curiositystream|curiositystream\.com|d\.tube|dailymotion|dailymotion\.com|dashboard\.twitch\.tv|disneyplus|disneyplus\.com|fast\.wistia\.net|help\.hulu\.com|help\.netflix\.com|hulu|hulu\.com|id\.twitch\.tv|iq\.com|iqiyi|iqiyi\.com|jobs\.netflix\.com|justin\.tv|m\.twitch\.tv|m\.youtube\.com|music\.youtube\.com|netflix|netflix\.com|player\.twitch\.tv|player\.vimeo\.com|ted|ted\.com|twitch|twitch\.tv|utreon|utreon\.com|veoh|veoh\.com|viadeo\.journaldunet\.com|vimeo|vimeo\.com|wistia|wistia\.com|youku|youku\.com|youtube|youtube\.com)$", "i").test(v.utmSource) && new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)},{"name":"display","test":(v) => new RegExp("^(?:display|banner|expandable|interstitial|cpm)$", "i").test(v.utmMedium)},{"name":"paid-other","test":(v) => new RegExp("^(.*cp.*|ppc|retargeting|paid.*)$", "i").test(v.utmMedium)}
9,{"name":"organic-shopping","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|yandex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) || new RegExp("^(.*(([^a-df-z]|^)shop|shopping).*)$", "i").test(v.utmCampaign)},{"name":"organic-social","test":(v) => new RegExp("^(?:43things|43things\.com|51\.com|5ch\.net|Hatena|ImageShack|academia\.edu|activerain|activerain\.com|activeworlds|activeworlds\.com|addthis|addthis\.com|airg\.ca|allnurses\.com|allrecipes\.com|alumniclass|alumniclass\.com|ameba\.jp|ameblo\.jp|americantowns|americantowns\.com|amp\.reddit\.com|ancestry\.com|anobii|anobii\.com|answerbag|answerbag\.com|answers\.yahoo\.com|aolanswers|aolanswers\.com|apps\.facebook\.com|ar\.pinterest\.com|artstation\.com|askubuntu|askubuntu\.com|asmallworld\.com|athlinks|athlinks\.com|away\.vk\.com|awe\.sm|b\.hatena\.ne\.jp|baby-gaga|baby-gaga\.com|babyblog\.ru|badoo|badoo\.com|bebo|bebo\.com|beforeitsnews|beforeitsnews\.com|bharatstudent|bharatstudent\.com|biip\.no|biswap\.org|bit\.ly|blackcareernetwork\.com|blackplanet|blackplanet\.com|blip\.fm|blog\.com|blog\.feedspot\.com|blog\.goo\.ne\.jp|blog\.naver\.com|blog\.yahoo\.co\.jp|blogg\.no|bloggang\.com|blogger|blogger\.com|blogher|blogher\.com|bloglines|bloglines\.com|blogs\.com|blogsome|blogsome\.com|blogspot|blogspot\.com|blogster|blogster\.com|blurtit|blurtit\.com|bookmarks\.yahoo\.co\.jp|bookmarks\.yahoo\.com|br\.pinterest\.com|brightkite|brightkite\.com|brizzly|brizzly\.com|business\.facebook\.com|buzzfeed|buzzfeed\.com|buzznet|buzznet\.com|cafe\.naver\.com|cafemom|cafemom\.com|camospace|camospace\.com|canalblog\.com|care\.com|care2|care2\.com|caringbridge\.org|catster|catster\.com|cbnt\.io|cellufun|cellufun\.com|centerblog\.net|chat\.zalo\.me|chegg\.com|chicagonow|chicagonow\.com|chiebukuro\.yahoo\.co\.jp|classmates|classmates\.com|classquest|classquest\.com|co\.pinterest\.com|cocolog-nifty|cocolog-nifty\.com|copainsdavant\.linternaute\.com|couchsurfing\.org|cozycot|cozycot\.com|cross\.tv|crunchyroll|crunchyroll\.com|cyworld|cyworld\.com|cz\.pinterest\.com|d\.hatena\.ne\.jp|dailystrength\.org|deluxe\.com|deviantart|deviantart\.com|dianping|dianping\.com|digg|digg\.com|diigo|diigo\.com|discover\.hubpages\.com|disqus|disqus\.com|dogster|dogster\.com|dol2day|dol2day\.com|doostang|doostang\.com|dopplr|dopplr\.com|douban|douban\.com|draft\.blogger\.com|draugiem\.lv|drugs-forum|drugs-forum\.com|dzone|dzone\.com|edublogs\.org|elftown|elftown\.com|epicurious\.com|everforo\.com|exblog\.jp|extole|extole\.com|facebook|facebook\.com|faceparty|faceparty\.com|fandom\.com|fanpop|fanpop\.com|fark|fark\.com|fb|fb\.me|fc2|fc2\.com|feedspot|feministing|feministing\.com|filmaffinity|filmaffinity\.com|flickr|flickr\.com|flipboard|flipboard\.com|folkdirect|folkdirect\.com|foodservice|foodservice\.com|forums\.androidcentral\.com|forums\.crackberry\.com|forums\.imore\.com|forums\.nexopia\.com|forums\.webosnation\.com|forums\.wpcentral\.com|fotki|fotki\.com|fotolog|fotolog\.com|foursquare|foursquare\.com|free\.facebook\.com|friendfeed|friendfeed\.com|fruehstueckstreff\.org|fubar|fubar\.com|gaiaonline|gaiaonline\.com|gamerdna|gamerdna\.com|gather\.com|geni\.com|getpocket\.com|glassboard|glassboard\.com|glassdoor|glassdoor\.com|godtube|godtube\.com|goldenline\.pl|goldstar|goldstar\.com|goo\.gl|gooblog|goodreads|goodreads\.com|google\+|googlegroups\.com|googleplus|govloop|govloop\.com|gowalla|gowalla\.com|gree\.jp|groups\.google\.com|gulli\.com|gutefrage\.net|habbo|habbo\.com|hi5|hi5\.com|hootsuite|hootsuite\.com|houzz|houzz\.com|hoverspot|hoverspot\.com|hr\.com|hu\.pinterest\.com|hubculture|hubculture\.com|hubpages\.com|hyves\.net|hyves\.nl|ibibo|ibibo\.com|id\.pinterest\.com|identi\.ca|ig|imageshack\.com|imageshack\.us|imvu|imvu\.com|in\.pinterest\.com|insanejournal|insanejournal\.com|instagram|instagram\.com|instapaper|instapaper\.com|internations\.org|interpals\.net|intherooms|intherooms\.com|irc-galleria\.net|is\.gd|italki|italki\.com|jammerdirect|jammerdirect\.com|jappy\.com|jappy\.de|kaboodle\.com|k
9akao|kakao\.com|kakaocorp\.com|kaneva|kaneva\.com|kin\.naver\.com|l\.facebook\.com|l\.instagram\.com|l\.messenger\.com|last\.fm|librarything|librarything\.com|lifestream\.aol\.com|line|line\.me|linkedin|linkedin\.com|listal|listal\.com|listography|listography\.com|livedoor\.com|livedoorblog|livejournal|livejournal\.com|lm\.facebook\.com|lnkd\.in|m\.blog\.naver\.com|m\.cafe\.naver\.com|m\.facebook\.com|m\.kin\.naver\.com|m\.vk\.com|m\.yelp\.com|mbga\.jp|medium\.com|meetin\.org|meetup|meetup\.com|meinvz\.net|meneame\.net|menuism\.com|messages\.google\.com|messages\.yahoo\.co\.jp|messenger|messenger\.com|mix\.com|mixi\.jp|mobile\.facebook\.com|mocospace|mocospace\.com|mouthshut|mouthshut\.com|movabletype|movabletype\.com|mubi|mubi\.com|my\.opera\.com|myanimelist\.net|myheritage|myheritage\.com|mylife|mylife\.com|mymodernmet|mymodernmet\.com|myspace|myspace\.com|netvibes|netvibes\.com|news\.ycombinator\.com|newsshowcase|nexopia|ngopost\.org|niconico|nicovideo\.jp|nightlifelink|nightlifelink\.com|ning|ning\.com|nl\.pinterest\.com|odnoklassniki\.ru|odnoklassniki\.ua|okwave\.jp|old\.reddit\.com|oneworldgroup\.org|onstartups|onstartups\.com|opendiary|opendiary\.com|oshiete\.goo\.ne\.jp|out\.reddit\.com|over-blog\.com|overblog\.com|paper\.li|partyflock\.nl|photobucket|photobucket\.com|pinboard|pinboard\.in|pingsta|pingsta\.com|pinterest|pinterest\.at|pinterest\.ca|pinterest\.ch|pinterest\.cl|pinterest\.co\.kr|pinterest\.co\.uk|pinterest\.com|pinterest\.com\.au|pinterest\.com\.mx|pinterest\.de|pinterest\.es|pinterest\.fr|pinterest\.it|pinterest\.jp|pinterest\.nz|pinterest\.ph|pinterest\.pt|pinterest\.ru|pinterest\.se|pixiv\.net|pl\.pinterest\.com|playahead\.se|plurk|plurk\.com|plus\.google\.com|plus\.url\.google\.com|pocket\.co|posterous|posterous\.com|pro\.homeadvisor\.com|pulse\.yahoo\.com|qapacity|qapacity\.com|quechup|quechup\.com|quora|quora\.com|qzone\.qq\.com|ravelry|ravelry\.com|reddit|reddit\.com|redux|redux\.com|renren|renren\.com|researchgate\.net|reunion|reunion\.com|reverbnation|reverbnation\.com|rtl\.de|ryze|ryze\.com|salespider|salespider\.com|scoop\.it|screenrant|screenrant\.com|scribd|scribd\.com|scvngr|scvngr\.com|secondlife|secondlife\.com|serverfault|serverfault\.com|shareit|sharethis|sharethis\.com|shvoong\.com|sites\.google\.com|skype|skyrock|skyrock\.com|slashdot\.org|slideshare\.net|smartnews\.com|snapchat|snapchat\.com|social|sociallife\.com\.br|socialvibe|socialvibe\.com|spaces\.live\.com|spoke|spoke\.com|spruz|spruz\.com|ssense\.com|stackapps|stackapps\.com|stackexchange|stackexchange\.com|stackoverflow|stackoverflow\.com|stardoll\.com|stickam|stickam\.com|studivz\.net|suomi24\.fi|superuser|superuser\.com|sweeva|sweeva\.com|t\.co|t\.me|tagged|tagged\.com|taggedmail|taggedmail\.com|talkbiznow|talkbiznow\.com|taringa\.net|techmeme|techmeme\.com|tencent|tencent\.com|tiktok|tiktok\.com|tinyurl|tinyurl\.com|toolbox|toolbox\.com|touch\.facebook\.com|tr\.pinterest\.com|travellerspoint|travellerspoint\.com|tripadvisor|tripadvisor\.com|trombi|trombi\.com|trustpilot|tudou|tudou\.com|tuenti|tuenti\.com|tumblr|tumblr\.com|tweetdeck|tweetdeck\.com|twitter|twitter\.com|twoo\.com|typepad|typepad\.com|unblog\.fr|urbanspoon\.com|ushareit\.com|ushi\.cn|vampirefreaks|vampirefreaks\.com|vampirerave|vampirerave\.com|vg\.no|video\.ibm\.com|vk\.com|vkontakte\.ru|wakoopa|wakoopa\.com|wattpad|wattpad\.com|web\.facebook\.com|web\.skype\.com|webshots|webshots\.com|wechat|wechat\.com|weebly|weebly\.com|weibo|weibo\.com|wer-weiss-was\.de|weread|weread\.com|whatsapp|whatsapp\.com|wiki\.answers\.com|wikihow\.com|wikitravel\.org|woot\.com|wordpress|wordpress\.com|wordpress\.org|xanga|xanga\.com|xing|xing\.com|yahoo-mbga\.jp|yammer|yammer\.com|yelp|yelp\.co\.uk|yelp\.com|youroom\.in|za\.pinterest\.com|zalo|zoo\.gr|zooppa|zooppa\.com)$", "i").test(v.utmSource) || new RegExp("^(?:social|social-network|social-media|sm|social network|social media)$", "i").test(v.utmMedium)},{"name":"organic-video","test":(v) => new RegExp("^(?:blog\.twitch\.tv|crackle|crackle\.com|curiositystream|curiositystream\.com|d\.tube|dailymotion|dailymotion\.com|dashboard\.twitch\.tv|disneyplus|disneyplus\.com|fast\.wistia\.net|help\.hulu\.com|help\.netflix\.com|hulu|hulu\.com|id\.twitch\.tv|iq\.com|iqiyi|iqiyi\.com|jobs\.netflix\.com|justin\.tv|m\.twitch\.tv|m\.youtube\.com|music\.youtube\.com|netflix|netflix\.com|player\.twitch\.tv|player\.vimeo\.com|ted|ted\.com|twitch|twitch\.tv|utreon|utreon\.com|veoh|veoh\.com|viadeo\.journaldunet\.com|vimeo|vimeo\.com|wistia|wistia\.com|youku|youku\.com|youtube|youtube\.com)$", "i").test(v.utmSource) || new RegExp("^(.*video.*)$", "i").test(v.utmMedium)},{"name":"organic-search","test":(v) => new RegExp("^(?:360\.cn|alice|aol|ar\.search\.yahoo\.com|ask|at\.search\.yahoo\.com|au\.search\.yahoo\.com|auone|avg|babylon|baidu|biglobe|biglobe\.co\.jp|biglobe\.ne\.jp|bing|br\.search\.yahoo\.com|ca\.search\.yahoo\.com|centrum\.cz|ch\.search\.yahoo\.com|cl\.search\.yahoo\.com|cn\.bing\.com|cnn|co\.search\.yahoo\.com|comcast|conduit|daum|daum\.net|de\.search\.yahoo\.com|dk\.search\.yahoo\.com|dogpile|dogpile\.com|duckduckgo|ecosia\.org|email\.seznam\.cz|eniro|es\.search\.yahoo\.com|espanol\.search\.yahoo\.com|exalead\.com|excite\.com|fi\.search\.yahoo\.com|firmy\.cz|fr\.search\.yahoo\.com|globo|go\.mail\.ru|google|google-play|hk\.search\.yahoo\.com|id\.search\.yahoo\.com|in\.search\.yahoo\.com|incredimail|it\.search\.yahoo\.com|kvasir|lens\.google\.com|lite\.qwant\.com|lycos|m\.baidu\.com|m\.naver\.com|m\.search\.naver\.com|m\.sogou\.com|mail\.rambler\.ru|mail\.yandex\.ru|malaysia\.search\.yahoo\.com|msn|msn\.com|mx\.search\.yahoo\.com|najdi|naver|naver\.com|news\.google\.com|nl\.search\.yahoo\.com|no\.search\.yahoo\.com|ntp\.msn\.com|nz\.search\.yahoo\.com|onet|onet\.pl|pe\.search\.yahoo\.com|ph\.search\.yahoo\.com|pl\.search\.yahoo\.com|play\.google\.com|qwant|qwant\.com|rakuten|rakuten\.co\.jp|rambler|rambler\.ru|se\.search\.yahoo\.com|search-results|search\.aol\.co\.uk|search\.aol\.com|search\.google\.com|search\.smt\.docomo\.ne\.jp|search\.ukr\.net|secureurl\.ukr\.net|seznam|seznam\.cz|sg\.search\.yahoo\.com|so\.com|sogou|sogou\.com|sp-web\.search\.auone\.jp|startsiden|startsiden\.no|suche\.aol\.de|terra|th\.search\.yahoo\.com|tr\.search\.yahoo\.com|tut\.by|tw\.search\.yahoo\.com|uk\.search\.yahoo\.com|ukr|us\.search\.yahoo\.com|virgilio|vn\.search\.yahoo\.com|wap\.sogou\.com|webmaster\.yandex\.ru|websearch\.rakuten\.co\.jp|yahoo|yahoo\.co\.jp|yahoo\.com|yandex|yandex\.by|yandex\.com|yandex\.com\.tr|yandex\.fr|yandex\.kz|yandex\.ru|yandex\.ua|y
9andex\.uz|zen\.yandex\.ru)$", "i").test(v.utmSource) || v.utmMedium.toLowerCase() === "organic"},{"name":"referral","test":(v) => new RegExp("^(?:referral|app|link)$", "i").test(v.utmMedium)},{"name":"email","test":(v) => new RegExp("^(?:email|e-mail|e_mail|e mail)$", "i").test(v.utmMedium) || new RegExp("^(?:email|e-mail|e_mail|e mail)$", "i").test(v.utmSource)},{"name":"affiliate","test":(v) => v.utmMedium.toLowerCase() === "affiliate"},{"name":"audio","test":(v) => v.utmMedium.toLowerCase() === "audio"},{"name":"sms","test":(v) => v.utmSource.toLowerCase() === "sms" || v.utmMedium.toLowerCase() === "sms"},{"name":"mobile-push-notification","test":(v) => v.utmSource.toLowerCase() === "firebase" || new RegExp("(?:.*mobile.*|.*notification.*|push$)", "i").test(v.utmMedium)}].find(i=>i.test(e))?.name??"other"}getShopifyAnalyticsId(){const e=this.getCookie("_shopify_y");if(e)return e;try{const t=this.localStorageGet("Shoplift_ClientId");if(t)return t}catch{}return null}legacyGetCookieVisitor(){const e=this.getCookie("SHOPLIFT");return e===null?null:JSON.parse(e,F)}getCookie(e,t=this.cookie){const i=t.split("; ").filter(s=>s.split("=").at(0)===e).at(0);return i===void 0?null:i.split("=").slice(1).join("=")}monitorConsentChange(){document.addEventListener("visitorConsentCollected",e=>{(async()=>await this.onConsentChange(e.detail.analyticsAllowed,!0))()}),document.readyState==="loading"?document.addEventListener("DOMContentLoaded",()=>this.loadShopifyConsentApiWithRetry()):this.loadShopifyConsentApiWithRetry()}loadShopifyConsentApiWithRetry(){let e=0;const t=()=>{this.loadShopifyConsentApi()||e++<10&&window.setTimeout(t,100)};t()}loadShopifyConsentApi(){if(window.Shopify){this.log("Loading Shopify features");const e=async()=>{if(!window.Shopify){this.log("Shopify object missing... suddenly?");return}if(window.Shopify.customerPrivacy===void 0){this.log("Shopify CustomerPrivacy api still missing, trying again in 1000ms"),t=window.setTimeout(()=>{(async()=>await e())()},1e3);return}if(this.geoViaShopify){const s=window.Shopify.customerPrivacy.getRegion?.();this.resolvedRegion=typeof s=="string"?s.replace(/-/g,""):""}const i=window.Shopify.customerPrivacy.getTrackingConsent();await this.onConsentChange(window.Shopify.customerPrivacy.analyticsProcessingAllowed(),i==="yes")};let t=window.setTimeout(()=>{(async()=>await e())()},5e3);return window.Shopify.loadFeatures([{name:"consent-tracking-api",version:"0.1"}],i=>{(async()=>{if(window.clearTimeout(t),i){this.log("Error loading consent tracking",i);return}await e()})()}),!0}return!1}async onConsentChange(e,t){try{if(this.log("Consent change detected",e,t),this.state.essential.consentApproved=e,this.state.essential.hasConsentInteraction=t,!this.state.essential.consentApproved){this.state.essential.hasConsentInteraction&&(this.state.analytics.queue.length=0),this.saveState();return}this.cookie=document.cookie,this.shopifyAnalyticsId=this.getShopifyAnalyticsId(),this.saveState(),await this.syncAllEvents()}catch(i){this.log("Error syncing on consent change",i)}}isThemePreview(){return isThemePreview||themeRole!=="main"}isAppProxyPath(){const e=["/apps/","/tools/","/a/"],t=window.location.pathname;return e.some(i=>t.startsWith(i))}clearThemeBar(e,t,i){const s=structuredClone(i);this.log("Looking for theme bar"),this.waitForElement(null,"body").then(r=>this.waitForElement(r,"#preview-bar-iframe, #PBarNextFrameWrapper").then(n=>(this.log("Found theme bar"),t&&(this.log("Removing theme bar"),n.remove()),e?this.makeRequest({url:`${this.eventHost}/api/v0/logs`,method:"post",data:JSON.stringify({...this.debugState(),stateAtEvaluation:s},te)}):Promise.resolve(null)))).catch(r=>console.error(r))}waitForElement(e,t){return new Promise(i=>{const s=document.querySelector(t);if(s){i(s);return}const r=new MutationObserver(n=>{const o=document.querySelector(t);if(o){r.disconnect(),i(o);return}});r.observe(e??document.documentElement,{childList:!0})})}setDebug(e){this.state.essential.debugMode=e,this.saveState()}log(e,...t){let i=0;const s=e.replace(/%[sdoOfF]/g,r=>{if(i>=t.length)return r;const n=t[i++];return r==="%o"||r==="%O"?JSON.stringify(n):String(n)});this.logHistory.push(`[${new Date().toISOString()}][SL] ${s}`),!(!this.state.essential.debugMode&&!this.shopliftDebug)&&console.debug(`[SL] ${e}`,...t)}debugState(){return{state:this.state,storage:{essential:this.loadLocalStorage(this.essentialSessionKey),analytics:this.loadLocalStorage(this.analyticsSessionKey)},params:{shop:this.shop,host:this.host,eventHost:this.eventHost,cssHideClass:this.cssHideClass,testConfigs:this.testConfigs,inactiveTestConfigs:this.inactiveTestConfigs,sendPageView:this.sendPageView,isShopifyMerchantCookie
9:this.getCookie("is_shopify_merchant"),themeId,url:window.location.href,isThemePreview,themeRole,gaConfig:this.gaConfig},logHistory:this.logHistory}}createViewportObserver(e,t={}){const{threshold:i=this.VIEWPORT_TRACK_THRESHOLD,triggerOnce:s=!0}=t,r=new Set;return new IntersectionObserver(n=>{n.forEach(o=>{if(o.isIntersecting&&!r.has(o.target)){const l=o.target,c=l.getAttribute(this.DATA_SL_TEST_ID);c&&(e(c,l),s&&r.add(l))}})},{threshold:i})}applyChangesWithViewport(e,t,i,s){const r=t.selectorsForViewportTracking??t.selectors,n=o=>{if(this.state.essential.visitorTests.some(h=>h.testId===o)||this.activeViewportObservers.has(o))return;const l=[];if(r.forEach(h=>{e.querySelectorAll(h.cssSelector).forEach(b=>l.push(b))}),l.length===0)return;let c=!1;const d=()=>{c||(c=!0,i(o),p.disconnect(),this.activeViewportObservers.delete(o))},p=this.createViewportObserver(()=>{d()},{triggerOnce:!0,...s});this.activeViewportObservers.set(o,p),this.log(`Created viewport observer for test ${o}, observing ${l.length} elements`),l.forEach(h=>{h.setAttribute(this.DATA_SL_TEST_ID,String(o)),p.observe(h)}),setTimeout(()=>{c||l.forEach(h=>{const u=h.getBoundingClientRect(),b=s?.threshold??this.VIEWPORT_TRACK_THRESHOLD,E=Math.min(u.bottom,window.innerHeight)-Math.max(u.top,0),S=Math.min(u.right,window.innerWidth)-Math.max(u.left,0);u.top<window.innerHeight&&u.bottom>0&&u.left<window.innerWidth&&u.right>0&&E>0&&S>0&&E>=u.height*b&&(this.log(`Price element already visible in viewport for test ${o}:`,h),d())})},100)};t.selectors.length>0&&U(e,t,()=>{}),Ie(e,{testId:t.testId,hypothesisId:t.hypothesisId,selectors:r},o=>{n(o)})}applyPriceTestWithMapLookup(e,t,i,s){if(!t.priceData){this.log("No price data for hypothesis '%s'",t.id);return}this.log("Hypothesis '%s' isControl=%s, priceData has %d variants",t.id,t.isControl,t.priceData.variants.length);const r=t.priceData.variants.slice(0,3);for(const[S,C,_]of r)this.log("  Sample priceData: variant=%s, price=%d, compareAt=%d",S,C,_);const n=j(t.priceData),o=new Set;for(const S of i)if(S.priceData)for(const[C]of S.priceData.variants)o.add(C);this.log("Price test Map lookup: %d products in hypothesis, %d total products to track",n.size,o.size);const l=t.priceData,c=new WeakSet;let d=!1;const p="[data-sl-attribute-p], [data-sl-attribute-cap], [data-sl-attribute-discount]",h=S=>{if(c.has(S))return;const C=S.getAttribute("data-sl-attribute-p"),_=S.getAttribute("data-sl-attribute-cap"),T=S.getAttribute("data-sl-attribute-discount"),m=C||_||T;if(!m||!o.has(m))return;c.add(S);const y=n.get(m);y&&(this.log("Applying price for product %s: %d cents (compare at: %d cents)",m,y.priceInCents,y.compareAtPriceInCents),$e(S,m,y,l),this.log("Applied price to element for product %s",m)),!d&&!this.state.essential.visitorTests.some(w=>w.testId===e)&&(S.setAttribute(this.DATA_SL_TEST_ID,String(e)),this.setupElementViewportTracking(S,e,()=>{d||(d=!0,s(e))}))},u=()=>{const S=document.querySelectorAll(p);this.log("Scanning for price elements, found: %d",S.length),S.forEach(h)},b=new MutationObserver(S=>{for(const C of S)C.type==="childList"&&C.addedNodes.forEach(_=>{if(_.nodeType===Node.ELEMENT_NODE){const T=_;(T.hasAttribute("data-sl-attribute-p")||T.hasAttribute("data-sl-attribute-cap")||T.hasAttribute("data-sl-attribute-discount"))&&h(T),T.querySelectorAll(p).forEach(h)}}),C.type==="attributes"&&C.target instanceof Element&&h(C.target)}),E=document.body||document.documentElement;b.observe(E,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-sl-attribute-p","data-sl-attribute-cap","data-sl-attribute-discount"]}),this.log("MutationObserver started for price elements"),u(),document.readyState==="loading"&&document.addEventListener("DOMContentLoaded",()=>{this.log("DOMContentLoaded - rescanning for price elements"),u()}),setTimeout(()=>{this.log("Delayed rescan for price elements"),u()},100),setTimeout(()=>{this.log("Final rescan for price elements"),u()},500)}setupElementViewportTracking(e,t,i){const s=this.VIEWPORT_TRACK_THRESHOLD,r=e.getBoundingClientRect(),n=Math.min(r.bottom,window.innerHeight)-Math.max(r.top,0),o=Math.min(r.right,window.innerWidth)-Math.max(r.left,0);if(r.top<window.innerHeight&&r.bottom>0&&r.left<window.innerWidth&&r.right>0&&n>0&&o>0&&n>=r.height*s){this.log("Price element already visible for test %s",t),i();return}const c=new IntersectionObserver(d=>{for(const p of d)if(p.isIntersecting&&p.intersectionRatio>=s){this.log("Price element entered viewport for test %s",t),c.disconnect(),i();break}},{threshold:s});c.observe(e)}debug(){const e=this.debugState();console.log(JSON.stringify(e,te,2))}}(async function(){window.shopliftInstance||(window.shopliftInstance=new et("orgonitely.myshopify.com","https://app.shoplift.ai","https://events.shoplift.ai",true,true,false,{"sendEvents":false,"mode":"gtag"},false,false,1000,[{"id":"01a11124-f5e1-7c8f-8802-c395dea927c3","startAt":"2026-10-06T12:16:37.344868Z","requiresCountry":false,"requiresRegion":false,"requiresKlaviyo":false,"bayesianRevision":5,"device":"all","status":"active","visitorOption":"all","ignoreTestViewParameterEnforcement":false,"statusHistory":[{"status":"active","createdAt":"2026-10-06T12:16:37.361495Z"}
9],"hypotheses":[{"visitorCount":148,"trafficPercentage":0.41336996336996334,"title":"Original","domSelectors":[],"id":"01a11123-e106-797e-b397-94bd39a95d07","type":"theme","themeId":194454913370,"affix":"","isControl":true},{"visitorCount":209,"trafficPercentage":0.5866300366300367,"title":"Untitled variant","domSelectors":[],"id":"01a11124-0254-7a9a-a5a7-7b5e53af9658","type":"theme","themeId":194455470426,"affix":"","isControl":false}],"targetAudiences":[],"title":"V3 CR test theme adjustments"}],[{"id":"01a10305-06a4-71d6-9466-a81c8fccce4e","bayesianRevision":5,"status":"cancelled","hypotheses":[{"id":"01a10300-14cf-71ad-a095-2f3d6f930ad3","type":"theme","themeId":194454913370,"affix":"","isControl":true,"redirectPath":null},{"id":"01a10300-57dc-7b2d-8333-4a9de9f1a2d1","type":"theme","themeId":194455470426,"affix":"","isControl":false,"redirectPath":null}],"ignoreTestViewParameterEnforcement":false},{"id":"01a106f7-c4d4-75ff-a554-cdcb5a6a4456","bayesianRevision":5,"status":"cancelled","hypotheses":[{"id":"01a106f5-ec2d-7685-89a8-d4133b03db75","type":"theme","themeId":194454913370,"affix":"","isControl":true,"redirectPath":null},{"id":"01a106f5-ec3b-7e83-b039-d3ded72b6fe4","type":"theme","themeId":194455470426,"affix":"","isControl":false,"redirectPath":null}],"ignoreTestViewParameterEnforcement":false}],null,false),await window.shopliftInstance.init())})();async function tt(a,e,t,i){const s=Ke({log:i});if(t)return i("[SUB-PREVIEW] A side — no overlay applied; widget renders naturally"),s;const r=a.widget.widgetType,n=e?j(e):null;let o=W(e),l=Y(a,o),c=l.discountMap,d=l.maxDiscount;function p(){const f=W(e);f!==o&&(o=f,l=Y(a,o),c=l.discountMap,d=l.maxDiscount,i(`[SUB-PREVIEW] scope refreshed currentProductId=${o??"n/a"}, maxDiscount=${d}`))}i(`[SUB-PREVIEW] side=B, currentProductId=${o??"n/a"}, maxDiscount=${d}`);function h(f){if(!e||!n)return null;const v=X(n),g=v?n.get(v):void 0;return g?{formattedVariantPrice:K(g.priceInCents,e),formattedDiscounted:K(g.priceInCents*(1-f/100),e)}:null}function u(f){const v=Z(a,f);if(!v)return d;const g=D(a,"subscriptionInput"),P=g.length?g[0].selector:'input[name="rc_plan"]',A=v.querySelector(`${P}:checked`);if(A){const k=c[A.value];if(k!==void 0)return k}return d}function b(f){const v=D(a,"subscriptionDiscount");for(const g of v)if(g.selector.includes("badge")||g.selector.includes("__badge")){const P=f.querySelector(g.selector);P?.textContent&&!P.textContent.includes(`${d}%`)&&$(P,A=>N(A,d))}}function E(f,v){const g=h(v);if(!g)return;const P=D(a,"subscriptionCompareAt");for(const A of P){const k=f.querySelector(A.selector)||f.querySelector(`[part~="${A.selector}"]`);k?.textContent&&!k.textContent.includes(g.formattedVariantPrice)&&$(k,x=>/\d/.test(x)?g.formattedVariantPrice:x)}}function S(f,v){const g=h(v);if(!g)return;const P=D(a,"subscriptionPrice");for(const A of P){const k=f.querySelector(A.selector)||f.querySelector(`[part~="${A.selector}"]`);k?.textContent&&!k.textContent.includes(g.formattedDiscounted)&&$(k,x=>/\d/.test(x)?g.formattedDiscounted:x)}}function C(f){const v=D(a,"subscriptionInput"),g=v.length?v[0].selector:'input[name="rc_plan"]',P=D(a,"subscriptionPlanDiscount"),A=P.length?P[0].selector:".rc-plans-button__discount";for(const k of Array.from(f.querySelectorAll("label"))){const x=k.querySelector(g),R=k.querySelector(A);if(x&&R?.textContent){const V=c[x.value];if(V!==void 0){const O=R.textContent.match(/[\d.]+%/)?.[0];O&&O!==`${V}%`&&$(R,L=>N(L,V))}}}}function _(f){const v=f.querySelector("select");if(v)for(const g of Array.from(v.options)){const P=c[g.value];if(P!==void 0&&g.textContent){const A=g.textContent.match(/[\d.]+%/)?.[0];A&&A!==`${P}%`&&(g.textContent=N(g.textContent,P))}}}function T(f){const v=D(a,"onetimePrice");if(!v.length||!e||!n)return;const g=X(n),P=g?n.get(g):void 0;if(!P)return;const A=K(P.priceInCents,e),k=D(a,"onetimeContainer"),x=k.length?k[0].selector:'[part~="rc-purchase-option__onetime"]',R=f.querySelector(x);if(R)for(const V of v){const O=R.querySelector(`[part~="${V.selector}"]`);O?.textContent&&!O.textContent.includes(A)&&$(O,L=>/\d/.test(L)?A:L)}}function m(f,v){const P=D(a,"subscriptionDiscount").filter(A=>A.selector.includes("benefit")||A.selector==="rc-benefits");for(const A of P){const k=f.querySelector(A.selector);if(k?.shadowRoot){for(const x of Array.from(k.shadowRoot.querySelectorAll("li")))if(x.textContent?.includes("Save")){const R=x.textContent.match(/[\d.]+%/)?.[0];R&&R!==`${v}%`&&$(x,V=>N(V,v))}}}}let y=!1;function w(){if(!y){y=!0;try{p();const f=B(a);if(!f)return;const v=u(f);b(f),E(f,v),S(f,v),T(f);const g=Z(a,f);g&&(r==="buttons"||r==="radio"?C(g):_(g)),m(f,v)}finally{y=!1}}}const I=ue({data:a,runUpdates:w});return function(){I(),s()}}const it=Object.freeze(Object.defineProperty({__proto__:null,subscriptionPreviewRender:tt},Symbol.toStringTag,{value:"Module"}))})(); })("/", { suffix: "", type: "index" }, "main", 194454913370, false)</script>
9
10<!-- End of Shoplift scripts -->
11
12  <meta charset="utf-8">
13  <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
14  <meta name="viewport" content="width=device-width,initial-scale=1">
15  <meta name="theme-color" content="#111111">
16  <link rel="canonical" href="https://bondandmason.com/">
17  <link rel="preconnect" href="https://cdn.shopify.com" crossorigin>
18  <link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin>
19  <link rel="dns-prefetch" href="https://productreviews.shopifycdn.com">
20  <link rel="dns-prefetch" href="https://ajax.googleapis.com">
21  <link rel="dns-prefetch" href="https://maps.googleapis.com">
22  <link rel="dns-prefetch" href="https://maps.gstatic.com"><title>Bond &amp; Mason
23</title>
24<meta name="description" content="Your One Stop Shop For Beautiful Bags. Free Shipping On All orders. 30 Day Money Back Guarantee, 24/7 Customer Support &amp; Hassle-Free Returns."><meta property="og:site_name" content="Bond &amp; Mason">
25  <meta property="og:url" content="https://bondandmason.com/">
26  <meta property="og:title" content="Bond &amp; Mason">
27  <meta property="og:type" content="website">
28  <meta property="og:description" content="Your One Stop Shop For Beautiful Bags. Free Shipping On All orders. 30 Day Money Back Guarantee, 24/7 Customer Support &amp; Hassle-Free Returns."><meta name="twitter:site" content="@">
29  <meta name="twitter:card" content="summary_large_image">
30  <meta name="twitter:title" content="Bond &amp; Mason">
31  <meta name="twitter:description" content="Your One Stop Shop For Beautiful Bags. Free Shipping On All orders. 30 Day Money Back Guarantee, 24/7 Customer Support &amp; Hassle-Free Returns.">
32<script async crossorigin fetchpriority="high" src="/cdn/shopifycloud/importmap-polyfill/es-modules-shim.2.4.0.js"></script>
vendor: 1 bytes, line 32
32
33<script type="importmap">
34{
35  "imports": {
36    "element.base-media": "//bondandmason.com/cdn/shop/t/106/assets/element.base-media.js?v=26937513282965691261790770637",
37    "element.image.parallax": "//bondandmason.com/cdn/shop/t/106/assets/element.image.parallax.js?v=59188309605188605141790770638",
38    "element.model": "//bondandmason.com/cdn/shop/t/106/assets/element.model.js?v=104979259955732717291790770638",
39    "element.quantity-selector": "//bondandmason.com/cdn/shop/t/106/assets/element.quantity-selector.js?v=68208048201360514121790770638",
40    "element.text.rte": "//bondandmason.com/cdn/shop/t/106/assets/element.text.rte.js?v=28194737298593644281790770639",
41    "element.video": "//bondandmason.com/cdn/shop/t/106/assets/element.video.js?v=48637889212850594141790770640",
42    "is-land": "//bondandmason.com/cdn/shop/t/106/assets/is-land.min.js?v=92343381495565747271790770679",
43    "util.misc": "//bondandmason.com/cdn/shop/t/106/assets/util.misc.js?v=117964846174238173191790770697",
44    "util.product-loader": "//bondandmason.com/cdn/shop/t/106/assets/util.product-loader.js?v=71947287259713254281790770697",
45    "util.resource-loader": "//bondandmason.com/cdn/shop/t/106/assets/util.resource-loader.js?v=81301169148003274841790770697",
46    "vendor.in-view": "//bondandmason.com/cdn/shop/t/106/assets/vendor.in-view.js?v=126891093837844970591790770699"
47  }
48}
49</script>
49<script type="module" src="//bondandmason.com/cdn/shop/t/106/assets/is-land.min.js?v=92343381495565747271790770679"></script>
49
50<style data-shopify>@font-face {
51  font-family: Poppins;
52  font-weight: 700;
53  font-style: normal;
54  font-display: swap;
55  src: url("//bondandmason.com/cdn/fonts/poppins/poppins_n7.56758dcf284489feb014a026f3727f2f20a54626.woff2") format("woff2"),
56       url("//bondandmason.com/cdn/fonts/poppins/poppins_n7.f34f55d9b3d3205d2cd6f64955ff4b36f0cfd8da.woff") format("woff");
57}
58
59  @font-face {
60  font-family: Jost;
61  font-weight: 400;
62  font-style: normal;
63  font-display: swap;
64  src: url("//bondandmason.com/cdn/fonts/jost/jost_n4.d47a1b6347ce4a4c9f437608011273009d91f2b7.woff2") format("woff2"),
65       url("//bondandmason.com/cdn/fonts/jost/jost_n4.791c46290e672b3f85c3d1c651ef2efa3819eadd.woff") format("woff");
66}
67
68
69  @font-face {
70  font-family: Jost;
71  font-weight: 600;
72  font-style: normal;
73  font-display: swap;
74  src: url("//bondandmason.com/cdn/fonts/jost/jost_n6.ec1178db7a7515114a2d84e3dd680832b7af8b99.woff2") format("woff2"),
75       url("//bondandmason.com/cdn/fonts/jost/jost_n6.b1178bb6bdd3979fef38e103a3816f6980aeaff9.woff") format("woff");
76}
77
78  @font-face {
79  font-family: Jost;
80  font-weight: 400;
81  font-style: italic;
82  font-display: swap;
83  src: url("//bondandmason.com/cdn/fonts/jost/jost_i4.b690098389649750ada222b9763d55796c5283a5.woff2") format("woff2"),
84       url("//bondandmason.com/cdn/fonts/jost/jost_i4.fd766415a47e50b9e391ae7ec04e2ae25e7e28b0.woff") format("woff");
85}
86
87  @font-face {
88  font-family: Jost;
89  font-weight: 600;
90  font-style: italic;
91  font-display: swap;
92  src: url("//bondandmason.com/cdn/fonts/jost/jost_i6.9af7e5f39e3a108c08f24047a4276332d9d7b85e.woff2") format("woff2"),
93       url("//bondandmason.com/cdn/fonts/jost/jost_i6.2bf310262638f998ed206777ce0b9a3b98b6fe92.woff") format("woff");
94}
95
96</style><link href="//bondandmason.com/cdn/shop/t/106/assets/theme.css?v=20402520207408498331790770738" rel="stylesheet" type="text/css" media="all" />
97<style data-shopify>:root {
98    --typeHeaderPrimary: Poppins;
99    --typeHeaderFallback: sans-serif;
100    --typeHeaderSize: 29px;
101    --typeHeaderWeight: 700;
102    --typeHeaderLineHeight: 1.2;
103    --typeHeaderSpacing: 0.0em;
104
105    --typeBasePrimary:Jost;
106    --typeBaseFallback:sans-serif;
107    --typeBaseSize: 17px;
108    --typeBaseWeight: 400;
109    --typeBaseLineHeight: 1.6;
110    --typeBaseSpacing: 0.025em;
111
112    --iconWeight: 3px;
113    --iconLinecaps: miter;
114
115    --animateImagesStyle: zoom-fade;
116    --animateImagesStyleSmall: zoom-fade-small;
117    --animateSectionsBackgroundStyle: zoom-fade;
118    --animateSectionsTextStyle: rise-up;
119    --animateSectionsTextStyleAppendOut: rise-up-out;
120
121    --colorAnnouncement: #1c1d1d;
122    --colorAnnouncementText: #ffffff;
123
124    --colorBody: #ffffff;
125    --colorBodyAlpha05: rgba(255, 255, 255, 0.05);
126    --colorBodyDim: #f2f2f2;
127    --colorBodyLightDim: #fafafa;
128    --colorBodyMediumDim: #f5f5f5;
129
130    --colorBorder: #e8e8e1;
131
132    --colorBtnPrimary: #111111;
133    --colorBtnPrimaryDim: #040404;
134    --colorBtnPrimaryText: #ffffff;
135
136    --colorCartDot: #000000;
137
138    --colorDrawers: #ffffff;
139    --colorDrawersDim: #f2f2f2;
140    --colorDrawerBorder: #e8e8e1;
141    --colorDrawerText: #000000;
142    --colorDrawerTextDarken: #000000;
143    --colorDrawerButton: #111111;
144    --colorDrawerButtonText: #ffffff;
145
146    --colorFooter: #111111;
147    --colorFooterText: #ffffff;
148    --colorFooterTextAlpha01: rgba(255, 255, 255, 0.1);
149    --colorFooterTextAlpha012: rgba(255, 255, 255, 0.12);
150    --colorFooterTextAlpha06: rgba(255, 255, 255, 0.6);
151
152    --colorHeroText: #ffffff;
153
154    --colorInputBg: #ffffff;
155    --colorInputBgDim: #f2f2f2;
156    --colorInputBgDark: #e6e6e6;
157    --colorInputText: #1c1d1d;
158
159    --colorLink: #1c1d1d;
160
161    --colorModalBg: rgba(0, 0, 0, 0.6);
162
163    --colorNav: #ffffff;
164    --colorNavText: #1c1d1d;
165
166    --colorSalePrice: #1c1d1d;
167    --colorSaleTag: #1c1d1d;
168    --colorSaleTagText: #ffffff;
169
170    --colorTextBody: #1c1d1d;
171    --colorTextBodyAlpha0025: rgba(28, 29, 29, 0.03);
172    --colorTextBodyAlpha005: rgba(28, 29, 29, 0.05);
173    --colorTextBodyAlpha008: rgba(28, 29, 29, 0.08);
174    --colorTextBodyAlpha01: rgba(28, 29, 29, 0.1);
175    --colorTextBodyAlpha035: rgba(28, 29, 29, 0.35);
176
177    --colorSmallImageBg: #ffffff;
178    --colorLargeImageBg: #111111;
179
180    --urlIcoSelect: url(//bondandmason.com/cdn/shop/t/106/assets/ico-select.svg);
181    --urlIcoSelectFooter: url(//bondandmason.com/cdn/shop/t/106/assets/ico-select-footer.svg);
182    --urlIcoSelectWhite: url(//bondandmason.com/cdn/shop/t/106/assets/ico-select-white.svg);
183
184    --urlButtonArrowPng: url(//bondandmason.com/cdn/shop/t/106/assets/button-arrow.png);
185    --urlButtonArrow2xPng: url(//bondandmason.com/cdn/shop/t/106/assets/button-arrow-2x.png);
186    --urlButtonArrowBlackPng: url(//bondandmason.com/cdn/shop/t/106/assets/button-arrow-black.png);
187    --urlButtonArrowBlack2xPng: url(//bondandmason.com/cdn/shop/t/106/assets/button-arrow-black-2x.png);
188
189    --sizeChartMargin: 25px 0;
190    --sizeChartIconMargin: 5px;
191
192    --newsletterReminderPadding: 30px 35px;
193
194    /*Shop Pay Installments*/
195    --color-body-text: #1c1d1d;
196    --color-body: #ffffff;
197    --color-bg: #ffffff;
198  }
199
200  
201  .collection-hero__content:before,
202  .hero__image-wrapper:before,
203  .hero__media:before,
204  .skrim__item-content .skrim__overlay:after {
205    background: linear-gradient(180deg, rgba(255,254,217,0) 0%, rgba(0,0,0,0.5) 100%);
206  }
207
208  .placeholder-content {
209    background-image: linear-gradient(100deg, #ffffff 40%, #f7f7f7 63%, #ffffff 79%);
210  }</style>
210<script>
211    document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
212
213    window.theme = window.theme || {};
214    theme.routes = {
215      home: "/",
216      cart: "/cart.js",
217      cartPage: "/cart",
218      cartAdd: "/cart/add.js",
219      cartChange: "/cart/change.js",
220      search: "/search",
221      predictiveSearch: "/search/suggest"
222    };
223    theme.strings = {
224      soldOut: "Sold Out",
225      unavailable: "Unavailable",
226      inStockLabel: "In stock, ready to ship",
227      oneStockLabel: "Low stock - [count] item left",
228      otherStockLabel: "Low stock - [count] items left",
229      willNotShipUntil: "Ready to ship [date]",
230      willBeInStockAfter: "Back in stock [date]",
231      waitingForStock: "Backordered, shipping soon",
232      cartSavings: "You're saving [savings]",
233      cartEmpty: "Your cart is currently empty.",
234      cartTermsConfirmation: "You must agree with the terms and conditions of sales to check out",
235      searchCollections: "Collections",
236      searchPages: "Pages",
237      searchArticles: "Articles",
238      maxQuantity: "You can only have [quantity] of [title] in your cart."
239    };
240    theme.settings = {
241      cartType: "drawer",
242      isCustomerTemplate: false,
243      moneyFormat: "€{{amount_with_comma_separator}}",
244      predictiveSearch: true,
245      predictiveSearchType: null,
246      quickView: false,
247      themeName: 'Motion',
248      themeVersion: "12.0.0"
249    };
250  </script>
250
251
252  
252<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
252<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/32830685320/digital_wallets/dialog">
253<meta id="in-context-paypal-metadata" data-shop-id="32830685320" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="EUR">
254<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" hreflang="x-default" href="https://bondandmason.com/">
255<link rel="alternate" hreflang="en" href="https://bondandmason.com/">
256<link rel="alternate" hreflang="it" href="https://bondandmason.com/it">
257<link rel="alternate" hreflang="es" href="https://bondandmason.com/es">
258<link rel="alternate" hreflang="fr" href="https://bondandmason.com/fr">
259<link rel="alternate" hreflang="nl" href="https://bondandmason.com/nl">
260<link rel="alternate" hreflang="de" href="https://bondandmason.com/de">
261<script async="async" src="/checkouts/internal/preloads.js?locale=en-NL&default_configuration_id=336986458"></script>
261
262<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
263<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-NL&default_configuration_id=336986458&shop_id=32830685320" crossorigin="anonymous"></script>
vendor: 1 bytes, line 263
263
264<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":32830685320,"countryCode":"HK","currencyCode":"EUR","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/32830685320","merchantName":"Bond \u0026 Mason","requiredBillingContactFields":["postalAddress","email"],"requiredShippingContactFields":["postalAddress","email"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex"],"total":{"type":"pending","label":"Bond \u0026 Mason","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 264
264
265<script id="shopify-features" type="application/json">{"accessToken":"394ddef9f88e45770fc12383f9017796","betas":["rich-media-storefront-analytics"],"domain":"bondandmason.com","predictiveSearch":true,"shopId":32830685320,"locale":"en"}</script>
vendor: 1 bytes, line 265
265
266<script>var Shopify = Shopify || {};
267Shopify.shop = "orgonitely.myshopify.com";
268Shopify.locale = "en";
269Shopify.currency = {"active":"EUR","rate":"1.0"};
270Shopify.country = "NL";
271Shopify.theme = {"name":"Updated theme pre-changes for CR increase 30-09(A)","id":194454913370,"schema_name":"Motion","schema_version":"12.0.0","theme_store_id":847,"role":"main"};
272Shopify.theme.handle = "null";
273Shopify.theme.style = {"id":null,"handle":null};
274Shopify.cdnHost = "bondandmason.com/cdn";
275Shopify.routes = Shopify.routes || {};
276Shopify.routes.root = "/";
277Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
278Shopify.SignInWithShop = Shopify.SignInWithShop || {};
279Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
280Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 280
280
281<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 281
281
282<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 282
282
283<script>
284  window.ShopifyPay = window.ShopifyPay || {};
285  window.ShopifyPay.apiHost = "shop.app\/pay";
286  window.ShopifyPay.redirectState = null;
287</script>
vendor: 1 bytes, line 287
287
288<script>
289  window.Shopify = window.Shopify || {};
290  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
291  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
292  window.Shopify.SignInWithShop.eligible = true;
293</script>
vendor: 1 bytes, line 293
293
294<script id="shop-js-analytics" type="application/json">{"pageType":"index"}</script>
vendor: 1 bytes, line 294
294
295<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 295
295
296<script type="module">
297  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
298
299  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
300
301</script>
vendor: 1 bytes, line 301
301
302<script>
303  window.Shopify = window.Shopify || {};
304  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
305  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"]};
306</script>
vendor: 1 bytes, line 306
306
307<script>(function() {
308  var isLoaded = false;
309  function asyncLoad() {
310    if (isLoaded) return;
311    isLoaded = true;
312    var urls = ["https:\/\/cdn.rebuyengine.com\/onsite\/js\/rebuy.js?shop=orgonitely.myshopify.com","https:\/\/cdn.rebuyengine.com\/onsite\/js\/rebuy.js?shop=orgonitely.myshopify.com","https:\/\/cdn.rebuyengine.com\/onsite\/js\/rebuy.js?shop=orgonitely.myshopify.com","https:\/\/widgets.automizely.com\/returns\/main.js?shop=orgonitely.myshopify.com","https:\/\/cdn.rebuyengine.com\/onsite\/js\/rebuy.js?shop=orgonitely.myshopify.com"];
313    for (var i = 0; i < urls.length; i++) {
314      var s = document.createElement('script');
315      s.type = 'text/javascript';
316      s.async = true;
317      s.src = urls[i];
318      var x = document.getElementsByTagName('script')[0];
319      x.parentNode.insertBefore(s, x);
320    }
321  };
322  if(window.attachEvent) {
323    window.attachEvent('onload', asyncLoad);
324  } else {
325    window.addEventListener('load', asyncLoad, false);
326  }
327})();</script>
vendor: 1 bytes, line 327
327
328<script id="__st">var __st={"a":32830685320,"offset":7200,"reqid":"203dc651-1d06-4b9b-8dfa-68f814e2885e-1791295465","pageurl":"bondandmason.com\/","u":"1da6e5eec892","p":"home"};</script>
vendor: 1 bytes, line 328
328
329<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 329
329
330<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 330
330
331<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//bondandmason.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 331
331
332<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 = "//bondandmason.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>
332<script crossorigin="anonymous" defer="defer" src="//bondandmason.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 332
332
333<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 333
333
334<script>
335  window.Shopify = window.Shopify || {};
336  window.Shopify.MCP = window.Shopify.MCP || {};
337  window.Shopify.MCP.enabled = true;
338  window.Shopify.MCP.shop = "orgonitely.myshopify.com";
339  window.Shopify.MCP.mcpEndpoint = "https:\/\/bondandmason.com\/api\/mcp";
340  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?\"\nSet policy_types to also get the store's written policies (full text and URL).\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."},"policy_types":{"type":"array","items":{"type":"string","enum":["refund","shipping","privacy","terms_of_service","terms_of_sale","subscription","legal_notice","contact"]},"description":"Policy kinds to fetch, chosen from the user's question — e.g. [\"refund\"] for returns\/exchanges\/damaged items, [\"contact\"] for phone\/hours\/address. Include every kind the question touches. Omit it to get only FAQ answers."}},"required":["query"]}}];
341</script>
vendor: 1 bytes, line 341
341
342<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("\/\/bondandmason.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
343</script>
vendor: 1 bytes, line 343
343
344<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://bondandmason.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
345</script>
vendor: 1 bytes, line 345
345
346<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
347  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);
348</script>
vendor: 1 bytes, line 348
348
349<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})}}));
350</script>
350
351<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://bondandmason.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
352<style id="shopify-accelerated-checkout-cart">
353        #shopify-buyer-consent {
354  margin-top: 1em;
355  display: inline-block;
356  width: 100%;
357}
358
359#shopify-buyer-consent.hidden {
360  display: none;
361}
362
363#shopify-subscription-policy-button {
364  background: none;
365  border: none;
366  padding: 0;
367  text-decoration: underline;
368  font-size: inherit;
369  cursor: pointer;
370}
371
372#shopify-subscription-policy-button::before {
373  box-shadow: none;
374}
375
376      </style>
377<link rel="compression-dictionary" href="//bondandmason.com/cdn/shop/t/106/compiled_assets/styles.css?v=154731161377400854721790770740" crossorigin="anonymous">
378<link rel="stylesheet" media="screen" href="//bondandmason.com/cdn/shop/t/106/compiled_assets/styles.css?v=154731161377400854721790770740&subset=AAAAAAAAAAAAAAE" crossorigin="anonymous">
379<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
379
380
381  <style data-shopify>
382    :root {
383      --element-button-color-primary: red;
384      --element-button-color-secondary: blue;
385    }
386  </style>
387
388  
388<script src="//bondandmason.com/cdn/shop/t/106/assets/vendor-scripts-v14.js" defer="defer"></script>
388<link rel="stylesheet" href="//bondandmason.com/cdn/shop/t/106/assets/country-flags.css">
388<script src="//bondandmason.com/cdn/shop/t/106/assets/theme.js?v=89587206179388652511790770696" defer="defer"></script>
388
389
390  <style data-shopify>
391    :root {
392      /* Root Variables */
393      /* ========================= */
394      --root-color-primary: #1c1d1d;
395      --color-primary: #1c1d1d;
396      --root-color-secondary: #ffffff;
397      --color-secondary: #ffffff;
398      --color-sale-tag: #1c1d1d;
399      --color-sale-tag-text: #ffffff;
400      --color-sale-price: #1c1d1d;
401      --layout-section-padding-block: 3rem;
402      --layout-section-max-inline-size: 1220px;
403
404      /* Text */
405      /* ========================= */
406      
407      /* Body Font Styles */
408      --element-text-font-family--body: Jost;
409      --element-text-font-family-fallback--body: sans-serif;
410      --element-text-font-weight--body: 400;
411      --element-text-letter-spacing--body: 0.025em;
412      --element-text-text-transform--body: none;
413
414      /* Body Font Sizes */
415      --element-text-font-size--body: initial;
416      --element-text-font-size--body-xs: 13px;
417      --element-text-font-size--body-sm: 15px;
418      --element-text-font-size--body-md: 17px;
419      --element-text-font-size--body-lg: 19px;
420      
421      /* Body Line Heights */
422      --element-text-line-height--body: 1.6;
423
424      /* Heading Font Styles */
425      --element-text-font-family--heading: Poppins;
426      --element-text-font-family-fallback--heading: sans-serif;
427      --element-text-font-weight--heading: 700;
428      --element-text-letter-spacing--heading: 0.0em;
429      
430       
431      
432      
433      /* Heading Font Sizes */
434      --element-text-font-size--heading-2xl: 45px;
435      --element-text-font-size--heading-xl: 29px;
436      --element-text-font-size--heading-lg: 23px;
437      --element-text-font-size--heading-md: 21px;
438      --element-text-font-size--heading-sm: 15px;
439      --element-text-font-size--heading-xs: 13px;
440      
441      /* Heading Line Heights */
442      --element-text-line-height--heading: 1.2;
443
444      /* Buttons */
445      /* ========================= */
446      
447          --element-button-radius: 0;
448      
449
450      --element-button-font-family: Poppins;
451      --element-button-font-family-fallback: sans-serif;
452      --element-button-font-weight: 700;
453      --element-button-letter-spacing: 0.0em;
454
455       
456
457      /* Base Color Variables */
458      --element-button-color-primary: #111111;
459      --element-button-color-secondary: #ffffff;
460      --element-button-box-shadow: inset 0 0 0 1px #e8e8e1;
461      --element-button-shade-border: 100%;
462
463      /* Hover State Variables */
464      --element-button-shade-background--hover: 0%;
465
466      /* Focus State Variables */
467      --element-button-color-focus: var(--color-focus);
468    }
469
470    .element-input {
471      box-shadow: inset 0 0 0 1px #e8e8e1;
472      background-color: #ffffff;
473    }
474
475    .element-input:hover {
476      box-shadow: inset 0 0 0 1px #1c1d1d;
477    }
478
479    .element-input:focus {
480      border: none;
481      box-shadow: inset 0 0 0 1px #1c1d1d;
482    }
483
484    .element-input:focus-visible {
485      border: none;
486      box-shadow: inset 0 0 0 2px var(--color-focus, #4a9afc);
487    }
488
489    .element-button:hover {
490      --element-button-box-shadow: inset 0 0 0 1px #1c1d1d;
491    }
492
493    product-form label.element-text:is([class*=element-text])  {
494      font-family: var(--element-text-font-family--heading);
495    }
496
497    .element-radio .element-button {
498      --element-button-font-family: Jost;
499    }
500
501    .element-radio input:checked ~ .element-button {
502      --element-button-shade-background--active: 0%;
503      --element-button-box-shadow: inset 0 0 0 2px #1c1d1d;
504      --color-primary: #ffffff;
505      --color-secondary: #1c1d1d;
506    }
507
508    .element-button.element-quantity-selector__button {
509      --element-button-box-shadow: outset 0 0 0 1px transparent;
510    }
511
512    quantity-selector:hover .element-quantity-selector__input {
513      box-shadow: inset 0 0 0 1px #1c1d1d;
514    }
515
516    @media (max-width: 768px) {
517      :root {
518        /* Heading Font Sizes */
519        --element-text-font-size--heading-2xl: calc(45px * 0.8);
520        --element-text-font-size--heading-xl: calc(29px * 0.8);
521        --element-text-font-size--heading-lg: calc(23px * 0.8);
522        --element-text-font-size--heading-md: calc(21px * 0.8);
523        --element-text-font-size--heading-sm: calc(15px * 0.8);
524        --element-text-font-size--heading-xs: calc(13px * 0.8);
525      }
526    }
527  </style>
528<!-- BEGIN app block: shopify://apps/pandectes-gdpr/blocks/banner/58c0baa2-6cc1-480c-9ea6-38d6d559556a -->
529
530  
531    
532      <!-- TCF is active, scripts are loaded above -->
533      
534        
534<script>
535          if (!window.PandectesRulesSettings) {
536            window.PandectesRulesSettings = {"store":{"id":32830685320,"adminMode":false,"headless":false,"storefrontRootDomain":"","checkoutRootDomain":"","storefrontAccessToken":""},"banner":{"revokableTrigger":false,"cookiesBlockedByDefault":"7","hybridStrict":false,"isActive":true},"geolocation":{"brOnly":false,"caOnly":false,"chOnly":false,"euOnly":true,"jpOnly":false,"thOnly":false,"canadaOnly":false,"canadaLaw25":false,"canadaPipeda":false,"globalVisibility":false},"blocker":{"isActive":false,"googleConsentMode":{"isActive":false,"id":"","analyticsId":"G-8QMZYE0P59","onlyGtm":false,"adwordsId":"AW-529049582","adStorageCategory":4,"analyticsStorageCategory":2,"functionalityStorageCategory":1,"personalizationStorageCategory":1,"securityStorageCategory":0,"customEvent":true,"redactData":true,"urlPassthrough":false,"dataLayerProperty":"dataLayer","waitForUpdate":0,"useNativeChannel":true,"debugMode":false},"facebookPixel":{"isActive":false,"id":"","ldu":false},"microsoft":{"isActive":false,"uetTags":""},"clarity":{"isActive":false,"id":""},"amazon":{"enabled":false},"rakuten":{"isActive":false,"cmp":false,"ccpa":false},"gpcIsActive":true,"klaviyoIsActive":false,"defaultBlocked":7,"patterns":{"whiteList":[],"blackList":{"1":[],"2":[],"4":[],"8":[]},"iframesWhiteList":[],"iframesBlackList":{"1":[],"2":[],"4":[],"8":[]},"beaconsWhiteList":[],"beaconsBlackList":{"1":[],"2":[],"4":[],"8":[]}}}};
537            const rulesScript = document.createElement('script');
538            window.PandectesRulesSettings.auto = true;
539            rulesScript.src = "https://cdn.shopify.com/extensions/01a10580-fd2a-7a23-97ae-f050569f8f5d/gdpr-cookie-consent-414/assets/pandectes-rules.js";
540            const firstChild = document.head.firstChild;
541            document.head.insertBefore(rulesScript, firstChild);
542          }
543        </script>
543
544      
545      
545<script>
546        
547          window.PandectesSettings = {"store":{"id":32830685320,"plan":"plus","theme":"BU 10-11-25 + RC B2B 06-12-24 (sale change)","primaryLocale":"en","adminMode":false,"headless":false,"storefrontRootDomain":"","checkoutRootDomain":"","storefrontAccessToken":"","useGeolocation":false},"impressions":{"enabled":true,"timezone":"Europe/Amsterdam"},"tsPublished":1788884005,"declaration":{"showPurpose":false,"showProvider":false,"declIntroText":"We use cookies to optimize website functionality, analyze the performance, and provide personalized experience to you. Some cookies are essential to make the website operate and function correctly. Those cookies cannot be disabled. In this window you can manage your preference of cookies.","showDateGenerated":true},"language":{"unpublished":[],"languageMode":"Multilingual","fallbackLanguage":"en","languageDetection":"browser","languagesSupported":["nl","de","it","es","fr"]},"texts":{"managed":{"headerText":{"de":"Wir respektieren Ihre Privatsphäre.","en":"We respect your privacy","es":"Respetamos tu privacidad","fr":"Nous respectons votre vie privée","it":"Rispettiamo la tua privacy","nl":"Wij respecteren uw privacy."},"consentText":{"de":"Diese Website verwendet Cookies, um Ihnen das beste Nutzererlebnis zu bieten. Die Erhebung und Nutzung personenbezogener Daten kann zur Personalisierung unserer Website und Werbung verwendet werden.","en":"This website uses cookies to ensure you get the best experience. The collection, and use of personal data can be used for personalization of our website and ads.","es":"Este sitio web utiliza cookies para garantizar que obtenga la mejor experiencia. La recopilación y el uso de datos personales pueden emplearse para personalizar nuestro sitio web y los anuncios.","fr":"Ce site web utilise des cookies pour vous garantir la meilleure expérience possible. La collecte et l’utilisation des données personnelles peuvent être employées pour la personnalisation de notre site web et des publicités.","it":"Questo sito web utilizza i cookie per assicurarti la migliore esperienza. La raccolta e l’utilizzo dei dati personali possono essere impiegati per la personalizzazione del nostro sito web e degli annunci pubblicitari.","nl":"Deze website gebruikt cookies om ervoor te zorgen dat u de beste ervaring krijgt. Het verzamelen en gebruiken van deze gegevens kan worden ingezet voor de personalisatie van onze website en advertenties."},"linkText":{"de":"Mehr erfahren","en":"Learn more","es":"Más información","fr":"Apprendre encore plus","it":"Saperne di più","nl":"Meer informatie"},"imprintText":{"de":"Impressum","en":"Imprint","es":"Imprimir","fr":"Imprimer","it":"Impronta","nl":"Impressum"},"googleLinkText":{"de":"Googles Datenschutzbestimmungen","en":"Google's Privacy Terms","es":"Condiciones de privacidad de Google","fr":"Conditions de confidentialité de Google","it":"Termini sulla privacy di Google","nl":"De privacyvoorwaarden van Google"},"allowButtonText":{"de":"Akzeptieren","en":"Accept","es":"Aceptar","fr":"Accepter","it":"Accettare","nl":"Accepteren"},"denyButtonText":{"de":"Ablehnen","en":"Decline","es":"Rechazar","fr":"Déclin","it":"Declino","nl":"Afwijzen"},"dismissButtonText":{"de":"OK","en":"Ok","es":"De acuerdo","fr":"D&#39;accord","it":"OK","nl":"OK"},"leaveSiteButtonText":{"de":"Verlassen Sie diese Seite","en":"Leave this site","es":"Salir de este sitio","fr":"Quittez ce site","it":"Lascia questo sito","nl":"Verlaat deze site"},"preferencesButtonText":{"de":"Präferenzen","en":"Preferences","es":"Preferencias","fr":"Préférences","it":"Preferenze","nl":"Voorkeuren"},"cookiePolicyText":{"de":"Cookie-Einstellungen","en":"Cookie policy","es":"Configuración de cookies","fr":"Paramètres des cookies","it":"Impostazioni dei cookie","nl":"Cookie-instellingen"},"preferencesPopupTitleText":{"de":"Einwilligungseinstellungen verwalten","en":"Manage consent preferences","es":"Gestionar las preferencias de consentimiento","fr":"Gérer les préférences de consentement","it":"Gestisci le preferenze di consenso","nl":"Beheer uw toestemmingsvoorkeuren"},"preferencesPopupIntroText":{"de":"Wir verwenden Cookies, um die Funktionalität unserer Website zu optimieren, ihre Leistung zu analysieren und Ihnen ein personalisiertes Nutzererlebnis zu bieten. Einige Cookies sind für den korrekten Betrieb der Website unerlässlich. Diese Cookies können nicht deaktiviert werden. In diesem Fenster können Sie Ihre Cookie-Einstellungen verwalten.","en":"We use cookies to optimize website functionality, analyze the performance, and provide personalized experience to you. Some cookies are essential to make the website operate and function correctly. Those cookies cannot be disabled. In this window you can manage your preference of cookies.","es":"Utilizamos cookies para optimizar la funcionalidad del sitio web, analizar el rendimiento y ofrecerte una experiencia personalizada. Algunas cookies son esenciales para el correcto funcionamiento del sitio web. Estas cookies no se pueden desactivar. En esta ventana puedes configurar tus preferencias de cookies.","fr":"Nous utilisons de
547s cookies pour optimiser le fonctionnement du site web, analyser ses performances et vous offrir une expérience personnalisée. Certains cookies sont indispensables au bon fonctionnement du site et ne peuvent être désactivés. Vous pouvez gérer vos préférences en matière de cookies dans cette fenêtre.","it":"Utilizziamo i cookie per ottimizzare la funzionalità del sito web, analizzarne le prestazioni e offrirti un&#39;esperienza personalizzata. Alcuni cookie sono essenziali per il corretto funzionamento del sito web. Questi cookie non possono essere disattivati. In questa finestra puoi gestire le tue preferenze sui cookie.","nl":"We gebruiken cookies om de functionaliteit van de website te optimaliseren, de prestaties te analyseren en u een gepersonaliseerde ervaring te bieden. Sommige cookies zijn essentieel voor de correcte werking van de website. Deze cookies kunnen niet worden uitgeschakeld. In dit venster kunt u uw cookievoorkeuren beheren."},"preferencesPopupSaveButtonText":{"de":"Einstellungen speichern","en":"Save preferences","es":"Guardar preferencias","fr":"Enregistrer les préférences","it":"Salva le preferenze","nl":"Voorkeuren opslaan"},"preferencesPopupCloseButtonText":{"de":"Schließen","en":"Close","es":"Cerca","fr":"Fermer","it":"Vicino","nl":"Dichtbij"},"preferencesPopupAcceptAllButtonText":{"de":"Alle akzeptieren","en":"Accept all","es":"Aceptar todo","fr":"Accepter tout","it":"Accetta tutto","nl":"Alles accepteren"},"preferencesPopupRejectAllButtonText":{"de":"Alle ablehnen","en":"Reject all","es":"Negar todo","fr":"Tout refuser","it":"Nega tutto","nl":"Alles ontkennen"},"cookiesDetailsText":{"de":"Cookie-Details","en":"Cookies details","es":"Detalles de las cookies","fr":"Détails des cookies","it":"Dettagli sui cookie","nl":"Cookiegegevens"},"preferencesPopupAlwaysAllowedText":{"de":"Immer erlaubt","en":"Always allowed","es":"Siempre permitido","fr":"Toujours autorisé","it":"Sempre consentito","nl":"Altijd toegestaan"},"accessSectionParagraphText":{"de":"Sie haben das Recht, jederzeit auf Ihre Daten zuzugreifen.","en":"You have the right to request access to your data at any time.","es":"Tiene derecho a poder acceder a sus datos en cualquier momento.","fr":"Vous avez le droit de pouvoir accéder à vos données à tout moment.","it":"Hai il diritto di poter accedere ai tuoi dati in qualsiasi momento.","nl":"U heeft te allen tijde het recht om uw gegevens in te zien."},"accessSectionTitleText":{"de":"Datenübertragbarkeit","en":"Data portability","es":"Portabilidad de datos","fr":"Portabilité des données","it":"Portabilità dei dati","nl":"Gegevensportabiliteit"},"accessSectionAccountInfoActionText":{"de":"persönliche Daten","en":"Personal data","es":"Información personal","fr":"Données personnelles","it":"Dati personali","nl":"Persoonlijke gegevens"},"accessSectionDownloadReportActionText":{"de":"Alle Daten anfordern","en":"Request export","es":"Descargar todo","fr":"Tout télécharger","it":"Scarica tutto","nl":"Download alles"},"accessSectionGDPRRequestsActionText":{"de":"Anfragen betroffener Personen","en":"Data subject requests","es":"Solicitudes de sujetos de datos","fr":"Demandes des personnes concernées","it":"Richieste dell'interessato","nl":"Verzoeken van betrokkenen"},"accessSectionOrdersRecordsActionText":{"de":"Aufträge","en":"Orders","es":"Pedidos","fr":"Ordres","it":"Ordini","nl":"Bestellingen"},"rectificationSectionParagraphText":{"de":"Sie haben das Recht, die Aktualisierung Ihrer Daten zu verlangen, wann immer Sie dies für angemessen halten.","en":"You have the right to request your data to be updated whenever you think it is appropriate.","es":"Tienes derecho a solicitar la actualización de tus datos siempre que lo creas oportuno.","fr":"Vous avez le droit de demander la mise à jour de vos données chaque fois que vous le jugez approprié.","it":"Hai il diritto di richiedere l'aggiornamento dei tuoi dati ogni volta che lo ritieni opportuno.","nl":"U hebt het recht om te vragen dat uw gegevens worden bijgewerkt wanneer u dat nodig acht."},"rectificationSectionTitleText":{"de":"Datenberichtigung","en":"Data Rectification","es":"Rectificación de datos","fr":"Rectification des données","it":"Rettifica dei dati","nl":"Gegevens rectificatie"},"rectificationCommentPlaceholder":{"de":"Beschreiben Sie, was Sie aktualisieren möchten","en":"Describe what you want to be updated","es":"Describe lo que quieres que se actualice","fr":"Décrivez ce que vous souhaitez mettre à jour","it":"Descrivi cosa vuoi che venga aggiornato","nl":"Beschrijf wat u wilt bijwerken"},"rectificationCommentValidationError":{"de":"Kommentar ist erforderlich","en":"Comment is required","es":"Se requiere comentario","fr":"Un commentaire est requis","it":"Il commento è obbligatorio","nl":"Commentaar is verplicht"},"rectificationSectionEditAccountActionText":{"de":"Aktualisierung anfordern","en":"Request an update","es":"Solicita una actualización","fr":"Demander une mise à jour","it":"Richiedi un aggiornamento","nl":"Vraag een update aan"},"erasureSectionTitleText":{"de":"Recht auf Löschung","en":"Right to be forgotten","es":"Derecho al olvido","fr":"Droit à l'oubli","it":"Diritto all'oblio","nl":"Recht om vergeten te worden"},"erasureSectionParagraphText":{"de":"Sie haben das Recht, die Löschung aller Ihrer Daten zu verlangen. Danach können Sie nicht mehr auf Ihr Konto zugreifen.","en":"You have the right to ask all your data to be erased. After that, you will no longer be able to access your account.","es":"Tiene derecho a solicitar la eliminación de todos sus datos. Después de eso, ya no podrá acceder a su cuenta.","fr":"Vous avez le droit de demander que toutes vos données soient effacées. Après cela, vous ne pourrez plus accéder à votre compte.","it":"Hai il diritto di chiedere la cancellazione di tutti i tuoi dati. Dopodiché, non sarai più in grado di accedere al tuo account.","nl":"U heeft het recht om al uw gegevens te laten wissen. Daarna heeft u geen toegang meer tot uw account."}
547,"erasureSectionRequestDeletionActionText":{"de":"Löschung personenbezogener Daten anfordern","en":"Request personal data deletion","es":"Solicitar la eliminación de datos personales","fr":"Demander la suppression des données personnelles","it":"Richiedi la cancellazione dei dati personali","nl":"Verzoek om verwijdering van persoonlijke gegevens"},"consentDate":{"de":"Zustimmungsdatum","en":"Consent date","es":"fecha de consentimiento","fr":"Date de consentement","it":"Data del consenso","nl":"Toestemmingsdatum"},"consentId":{"de":"Einwilligungs-ID","en":"Consent ID","es":"ID de consentimiento","fr":"ID de consentement","it":"ID di consenso","nl":"Toestemmings-ID"},"consentSectionChangeConsentActionText":{"de":"Einwilligungspräferenz ändern","en":"Change consent preference","es":"Cambiar la preferencia de consentimiento","fr":"Modifier la préférence de consentement","it":"Modifica la preferenza per il consenso","nl":"Wijzig de toestemmingsvoorkeur"},"consentSectionConsentedText":{"de":"Sie haben der Cookie-Richtlinie dieser Website zugestimmt am","en":"You consented to the cookies policy of this website on","es":"Usted dio su consentimiento a la política de cookies de este sitio web en","fr":"Vous avez consenti à la politique de cookies de ce site Web sur","it":"Hai acconsentito alla politica sui cookie di questo sito web su","nl":"U heeft ingestemd met het cookiebeleid van deze website op:"},"consentSectionNoConsentText":{"de":"Sie haben der Cookie-Richtlinie dieser Website nicht zugestimmt.","en":"You have not consented to the cookies policy of this website.","es":"No ha dado su consentimiento a la política de cookies de este sitio web.","fr":"Vous n'avez pas consenti à la politique de cookies de ce site Web.","it":"Non hai acconsentito alla politica sui cookie di questo sito.","nl":"U heeft niet ingestemd met het cookiebeleid van deze website."},"consentSectionTitleText":{"de":"Ihre Cookie-Einwilligung","en":"Your cookie consent","es":"Su consentimiento de cookies","fr":"Votre consentement aux cookies","it":"Il tuo consenso ai cookie","nl":"Uw toestemming voor cookies"},"consentStatus":{"de":"Einwilligungspräferenz","en":"Consent preference","es":"Preferencia de consentimiento","fr":"Préférence de consentement","it":"Preferenza di consenso","nl":"Toestemmingsvoorkeur"},"confirmationFailureMessage":{"de":"Ihre Anfrage wurde nicht bestätigt. Bitte versuchen Sie es erneut und wenn das Problem weiterhin besteht, wenden Sie sich an den Ladenbesitzer, um Hilfe zu erhalten","en":"Your request was not verified. Please try again and if problem persists, contact store owner for assistance","es":"Su solicitud no fue verificada. Vuelva a intentarlo y, si el problema persiste, comuníquese con el propietario de la tienda para obtener ayuda.","fr":"Votre demande n'a pas été vérifiée. Veuillez réessayer et si le problème persiste, contactez le propriétaire du magasin pour obtenir de l'aide","it":"La tua richiesta non è stata verificata. Riprova e se il problema persiste, contatta il proprietario del negozio per assistenza","nl":"Uw verzoek is niet geverifieerd. Probeer het opnieuw en als het probleem aanhoudt, neem dan contact op met de winkeleigenaar voor hulp"},"confirmationFailureTitle":{"de":"Ein Problem ist aufgetreten","en":"A problem occurred","es":"Ocurrió un problema","fr":"Un problème est survenu","it":"Si è verificato un problema","nl":"Er is een probleem opgetreden"},"confirmationSuccessMessage":{"de":"Wir werden uns in Kürze zu Ihrem Anliegen bei Ihnen melden.","en":"We will soon get back to you as to your request.","es":"Pronto nos comunicaremos con usted en cuanto a su solicitud.","fr":"Nous reviendrons rapidement vers vous quant à votre demande.","it":"Ti risponderemo presto in merito alla tua richiesta.","nl":"We zullen spoedig contact met u opnemen over uw verzoek."},"confirmationSuccessTitle":{"de":"Ihre Anfrage wurde bestätigt","en":"Your request is verified","es":"Tu solicitud está verificada","fr":"Votre demande est vérifiée","it":"La tua richiesta è verificata","nl":"Uw verzoek is geverifieerd"},"guestsSupportEmailFailureMessage":{"de":"Ihre Anfrage wurde nicht übermittelt. Bitte versuchen Sie es erneut und wenn das Problem weiterhin besteht, wenden Sie sich an den Shop-Inhaber, um Hilfe zu erhalten.","en":"Your request was not submitted. Please try again and if problem persists, contact store owner for assistance.","es":"Su solicitud no fue enviada. Vuelva a intentarlo y, si el problema persiste, comuníquese con el propietario de la tienda para obtener ayuda.","fr":"Votre demande n'a pas été soumise. Veuillez réessayer et si le problème persiste, contactez le propriétaire du magasin pour obtenir de l'aide.","it":"La tua ric
547hiesta non è stata inviata. Riprova e se il problema persiste, contatta il proprietario del negozio per assistenza.","nl":"Uw verzoek is niet ingediend. Probeer het opnieuw en als het probleem aanhoudt, neem dan contact op met de winkeleigenaar voor hulp."},"guestsSupportEmailFailureTitle":{"de":"Ein Problem ist aufgetreten","en":"A problem occurred","es":"Ocurrió un problema","fr":"Un problème est survenu","it":"Si è verificato un problema","nl":"Er is een probleem opgetreden"},"guestsSupportEmailPlaceholder":{"de":"E-Mail-Addresse","en":"E-mail address","es":"Dirección de correo electrónico","fr":"Adresse e-mail","it":"Indirizzo email","nl":"E-mailadres"},"guestsSupportEmailSuccessMessage":{"de":"Wenn Sie als Kunde dieses Shops registriert sind, erhalten Sie in Kürze eine E-Mail mit Anweisungen zum weiteren Vorgehen.","en":"If you are registered as a customer of this store, you will soon receive an email with instructions on how to proceed.","es":"Si está registrado como cliente de esta tienda, pronto recibirá un correo electrónico con instrucciones sobre cómo proceder.","fr":"Si vous êtes inscrit en tant que client de ce magasin, vous recevrez bientôt un e-mail avec des instructions sur la marche à suivre.","it":"Se sei registrato come cliente di questo negozio, riceverai presto un'e-mail con le istruzioni su come procedere.","nl":"Als je bent geregistreerd als klant van deze winkel, ontvang je binnenkort een e-mail met instructies over hoe je verder kunt gaan."},"guestsSupportEmailSuccessTitle":{"de":"Vielen Dank für die Anfrage","en":"Thank you for your request","es":"gracias por tu solicitud","fr":"Merci pour votre requête","it":"Grazie per la vostra richiesta","nl":"dankjewel voor je aanvraag"},"guestsSupportEmailValidationError":{"de":"Email ist ungültig","en":"Email is not valid","es":"El correo no es válido","fr":"L'email n'est pas valide","it":"L'email non è valida","nl":"E-mail is niet geldig"},"guestsSupportInfoText":{"de":"Bitte loggen Sie sich mit Ihrem Kundenkonto ein, um fortzufahren.","en":"Please login with your customer account to further proceed.","es":"Inicie sesión con su cuenta de cliente para continuar.","fr":"Veuillez vous connecter avec votre compte client pour continuer.","it":"Effettua il login con il tuo account cliente per procedere ulteriormente.","nl":"Log in met uw klantaccount om verder te gaan."},"submitButton":{"de":"einreichen","en":"Submit","es":"Enviar","fr":"Soumettre","it":"Invia","nl":"Indienen"},"submittingButton":{"de":"Senden...","en":"Submitting...","es":"Sumisión...","fr":"Soumission...","it":"Invio in corso...","nl":"Verzenden..."},"cancelButton":{"de":"Abbrechen","en":"Cancel","es":"Cancelar","fr":"Annuler","it":"Annulla","nl":"Annuleren"},"declIntroText":{"de":"Wir verwenden Cookies, um die Funktionalität der Website zu optimieren, die Leistung zu analysieren und Ihnen ein personalisiertes Erlebnis zu bieten. Einige Cookies sind für den ordnungsgemäßen Betrieb der Website unerlässlich. Diese Cookies können nicht deaktiviert werden. In diesem Fenster können Sie Ihre Präferenzen für Cookies verwalten.","en":"We use cookies to optimize website functionality, analyze the performance, and provide personalized experience to you. Some cookies are essential to make the website operate and function correctly. Those cookies cannot be disabled. In this window you can manage your preference of cookies.","es":"Usamos cookies para optimizar la funcionalidad del sitio web, analizar el rendimiento y brindarle una experiencia personalizada. Algunas cookies son esenciales para que el sitio web funcione y funcione correctamente. Esas cookies no se pueden deshabilitar. En esta ventana puede gestionar su preferencia de cookies.","fr":"Nous utilisons des cookies pour optimiser les fonctionnalités du site Web, analyser les performances et vous offrir une expérience personnalisée. Certains cookies sont indispensables au bon fonctionnement et au bon fonctionnement du site Web. Ces cookies ne peuvent pas être désactivés. Dans cette fenêtre, vous pouvez gérer vos préférences en matière de cookies.","it":"Utilizziamo i cookie per ottimizzare la funzionalità del sito Web, analizzare le prestazioni e fornire un&#39;esperienza personalizzata all&#39;utente. Alcuni cookie sono essenziali per far funzionare e funzionare correttamente il sito web. Questi cookie non possono essere disabilitati. In questa finestra puoi gestire le tue preferenze sui cookie.","nl":"We gebruiken cookies om de functionaliteit van de website te optimaliseren, de prestaties te analyseren en u een gepersonaliseerde ervaring te bieden. Sommige cookies zijn essentieel om de website goed te laten werken en correct te laten functioneren. Die cookies kunnen niet worden uitgeschakeld. In dit venster kunt u uw voorkeur voor cookies beheren."},"declDateGenerated":{"de":"Datum generiert von","en":"Date generated by","es":"Fecha de generación por","fr":"Date de génération par","it":"Data di generazione da parte di","nl":"Datum gegenereerd door"},"declName":{"de":"Name","en":"Name","es":"Nombre","fr":"Nom","it":"Nome","nl":"Naam"},"declPurpose":{"de":"Zweck","en":"Purpose","es":"Objetivo","fr":"But","it":"Scopo","nl":"Doel"},"declType":{"de":"Typ","en":"Type","es":"Escribe","fr":"Type","it":"Tipo","nl":"Type"},"declRetention":{"de":"Speicherdauer","en":"Retention","es":"Retencion","fr":"Rétention","it":"Ritenzione","nl":"Behoud"},"declProvider":{"de":"Anbieter","en":"Provider","es":"Proveedor","fr":"Fournisseur","it":"Fornitore","nl":"Aanbieder"},"declFirstParty":{"de":"Erstanbieter","en":"First-party","es":"Origen","fr":"Première partie","it":"Prima parte","nl":"Directe"},"declThirdParty":{"de":"Drittanbieter","en":"Third-party","es":"Tercero","fr":"Tierce partie","it":"Terzo","nl":"Derde partij"},"declSeconds":{"de":"Sekunden","en":"seconds","es":"segundos","fr":"secondes","it":"secondi","nl":"seconden"},"declMinutes":{"de":"Minuten","en":"minutes","es":"minutos","fr":"minutes","it":"minuti","nl":"minuten"},"declHours":{"de":"Std.","en":"hours","es":"horas","fr":"heures","it":"ore","nl":"uur"},"declWeeks":{"de":"Woche(n)","en":"week(s)","es":"semana(s)","fr":"semaine(s)","it":"settimana(e)","nl":"week(en)"},"declDays":{"de":"Tage","en":"days","es":"días","fr":"jours","it":"giorni","nl":"dagen"},"declMonths":{"de":"Monate","en":"months","es":"meses","fr":"mois","it":"mesi","nl":"maanden"},"declYears":{"de":"Jahre","en":"years","es":"años","fr":"années","it":"anni","nl":"jaren"},"declSession":{"de":"Sitzung","en":"Session","es":"Sesión","fr":"Session","it":"Sessione","nl":"Sessie"},"declDomain":{"de":"Domain","en":"Domain","es":"Dominio","fr":"Domaine","it":"Dominio","nl":"Domein"},"declPath":{"de":"Weg","en":"Path","es":"Sendero","fr":"Chemin","it":"Il percorso","nl":"Pad"}}
547,"categories":{"strictlyNecessaryCookiesTitleText":{"de":"Unbedingt erforderlich","en":"Strictly necessary cookies","es":"Cookies estrictamente necesarias","fr":"Cookies strictement nécessaires","it":"Cookie strettamente necessari","nl":"Strikt noodzakelijke cookies"},"strictlyNecessaryCookiesDescriptionText":{"de":"Diese Cookies sind unerlässlich, damit Sie sich auf der Website bewegen und ihre Funktionen nutzen können, z. B. den Zugriff auf sichere Bereiche der Website. Ohne diese Cookies kann die Website nicht richtig funktionieren.","en":"These cookies are essential in order to enable you to move around the website and use its features, such as accessing secure areas of the website. The website cannot function properly without these cookies.","es":"Estas cookies son esenciales para permitirle moverse por el sitio web y utilizar sus funciones, como acceder a áreas seguras del sitio web. El sitio web no puede funcionar correctamente sin estas cookies.","fr":"Ces cookies sont essentiels pour vous permettre de vous déplacer sur le site Web et d'utiliser ses fonctionnalités, telles que l'accès aux zones sécurisées du site Web. Le site Web ne peut pas fonctionner correctement sans ces cookies.","it":"Questi cookie sono essenziali per consentirti di spostarti all'interno del sito Web e utilizzare le sue funzionalità, come l'accesso alle aree sicure del sito Web. Il sito web non può funzionare correttamente senza questi cookie.","nl":"Deze cookies zijn essentieel om u in staat te stellen door de website te navigeren en de functies ervan te gebruiken, zoals toegang tot beveiligde delen van de website. Zonder deze cookies kan de website niet goed functioneren."},"functionalityCookiesTitleText":{"de":"Funktionale Cookies","en":"Functional cookies","es":"Cookies funcionales","fr":"Cookies fonctionnels","it":"Cookie funzionali","nl":"Functionele cookies"},"functionalityCookiesDescriptionText":{"de":"Diese Cookies ermöglichen es der Website, verbesserte Funktionalität und Personalisierung bereitzustellen. Sie können von uns oder von Drittanbietern gesetzt werden, deren Dienste wir auf unseren Seiten hinzugefügt haben. Wenn Sie diese Cookies nicht zulassen, funktionieren einige oder alle dieser Dienste möglicherweise nicht richtig.","en":"These cookies enable the site to provide enhanced functionality and personalisation. They may be set by us or by third party providers whose services we have added to our pages. If you do not allow these cookies then some or all of these services may not function properly.","es":"Estas cookies permiten que el sitio proporcione una funcionalidad y personalización mejoradas. Pueden ser establecidos por nosotros o por proveedores externos cuyos servicios hemos agregado a nuestras páginas. Si no permite estas cookies, es posible que algunos o todos estos servicios no funcionen correctamente.","fr":"Ces cookies permettent au site de fournir des fonctionnalités et une personnalisation améliorées. Ils peuvent être définis par nous ou par des fournisseurs tiers dont nous avons ajouté les services à nos pages. Si vous n'autorisez pas ces cookies, certains ou tous ces services peuvent ne pas fonctionner correctement.","it":"Questi cookie consentono al sito di fornire funzionalità e personalizzazione avanzate. Possono essere impostati da noi o da fornitori di terze parti i cui servizi abbiamo aggiunto alle nostre pagine. Se non consenti questi cookie, alcuni o tutti questi servizi potrebbero non funzionare correttamente.","nl":"Deze cookies stellen de site in staat om verbeterde functionaliteit en personalisatie te bieden. Ze kunnen worden ingesteld door ons of door externe providers wiens diensten we aan onze pagina's hebben toegevoegd. Als u deze cookies niet toestaat, werken sommige of al deze diensten mogelijk niet correct."},"performanceCookiesTitleText":{"de":"Performance-Cookies","en":"Performance cookies","es":"Cookies de rendimiento","fr":"Cookies de performances","it":"Cookie di prestazione","nl":"Prestatiecookies"},"performanceCookiesDescriptionText":{"de":"Diese Cookies ermöglichen es uns, die Leistung unserer Website zu überwachen und zu verbessern. Sie ermöglichen es uns beispielsweise, Besuche zu zählen, Verkehrsquellen zu identifizieren und zu sehen, welche Teile der Website am beliebtesten sind.","en":"These 
547cookies enable us to monitor and improve the performance of our website. For example, they allow us to count visits, identify traffic sources and see which parts of the site are most popular.","es":"Estas cookies nos permiten monitorear y mejorar el rendimiento de nuestro sitio web. Por ejemplo, nos permiten contar las visitas, identificar las fuentes de tráfico y ver qué partes del sitio son más populares.","fr":"Ces cookies nous permettent de surveiller et d'améliorer les performances de notre site Web. Par exemple, ils nous permettent de compter les visites, d'identifier les sources de trafic et de voir quelles parties du site sont les plus populaires.","it":"Questi cookie ci consentono di monitorare e migliorare le prestazioni del nostro sito web. Ad esempio, ci consentono di contare le visite, identificare le sorgenti di traffico e vedere quali parti del sito sono più popolari.","nl":"Deze cookies stellen ons in staat om de prestaties van onze website te monitoren en te verbeteren. Ze stellen ons bijvoorbeeld in staat om bezoeken te tellen, verkeersbronnen te identificeren en te zien welke delen van de site het populairst zijn."},"targetingCookiesTitleText":{"de":"Targeting-Cookies","en":"Targeting cookies","es":"Orientación de cookies","fr":"Ciblage des cookies","it":"Cookie mirati","nl":"Targeting-cookies"},"targetingCookiesDescriptionText":{"de":"Diese Cookies können von unseren Werbepartnern über unsere Website gesetzt werden. Sie können von diesen Unternehmen verwendet werden, um ein Profil Ihrer Interessen zu erstellen und Ihnen relevante Werbung auf anderen Websites anzuzeigen. Sie speichern keine direkten personenbezogenen Daten, sondern basieren auf der eindeutigen Identifizierung Ihres Browsers und Ihres Internetgeräts. Wenn Sie diese Cookies nicht zulassen, erleben Sie weniger zielgerichtete Werbung.","en":"These cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites.    They do not store directly personal information, but are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising.","es":"Nuestros socios publicitarios pueden establecer estas cookies a través de nuestro sitio. Estas empresas pueden utilizarlos para crear un perfil de sus intereses y mostrarle anuncios relevantes en otros sitios. No almacenan directamente información personal, sino que se basan en la identificación única de su navegador y dispositivo de Internet. Si no permite estas cookies, experimentará publicidad menos dirigida.","fr":"Ces cookies peuvent être installés via notre site par nos partenaires publicitaires. Ils peuvent être utilisés par ces sociétés pour établir un profil de vos intérêts et vous montrer des publicités pertinentes sur d'autres sites. Ils ne stockent pas directement d'informations personnelles, mais sont basés sur l'identification unique de votre navigateur et de votre appareil Internet. Si vous n'autorisez pas ces cookies, vous bénéficierez d'une publicité moins ciblée.","it":"Questi cookie possono essere impostati attraverso il nostro sito dai nostri partner pubblicitari. Possono essere utilizzati da tali società per creare un profilo dei tuoi interessi e mostrarti annunci pertinenti su altri siti. Non memorizzano direttamente informazioni personali, ma si basano sull'identificazione univoca del browser e del dispositivo Internet. Se non consenti questi cookie, sperimenterai pubblicità meno mirata.","nl":"Deze cookies kunnen via onze site worden geplaatst door onze advertentiepartners. Ze kunnen door die bedrijven worden gebruikt om een profiel van uw interesses op te bouwen en u relevante advertenties op andere sites te tonen. Ze slaan geen directe persoonlijke informatie op, maar zijn gebaseerd op de unieke identificatie van uw browser en internetapparaat. Als je deze cookies niet toestaat, krijg je minder gerichte advertenties te zien."},"unclassifiedCookiesTitleText":{"de":"Unklassifizierte Cookies","en":"Unclassified cookies","es":"Cookies sin clasificar","fr":"Cookies non classés","it":"Cookie non classificati","nl":"Niet-geclassificeerde cookies"},"unclassifiedCookiesDescriptionText":{"de":"Unklassifizierte Cookies sind Cookies, die wir gerade zusammen mit den Anbietern einzelner Cookies klassifizieren.","en":"Unclassified cookies are cookies that we are in the process of classifying, together with the providers of individual cookies.","es":"Las cookies no clasificadas son cookies que estamos en proceso de clasificar, junto con los proveedores de cookies individuales.","fr":"Les cookies non classés sont des cookies que nous sommes en train de classer avec les fournisseurs de cookies individuels.","it":"I cookie non classificati sono cookie che stiamo classificando insieme ai fornitori di cookie individuali.","nl":"Niet-geclassificeerde cookies zijn cookies die we aan het classificeren zijn, samen met de aanbieders van individuele cookies."}},"auto":{}},"library":{"previewMode":false,"fadeInTimeout":0,"defaultBlocked":7,"showLink":true,"showImprintLink":false,"showGoogleLink":true,"enabled":true,"cookie":{"expiryDays":365,"secure":true,"domain":""},"dismissOnScroll":false,"dismissOnWindowClick":false,"dismissOnTimeout":false,"palette":{"popup":{"background":"#FFFFFF","backgroundForCalculations":{"a":1,"b":255,"g":255,"r":255},"text":"#000000"},"button":{"background":"transparent","backgroundForCalculations":{"a":1,"b":255,"g":255,"r":255},"text":"#000000","textForCalculation":{"a":1,"b":0,"g":0,"r":0},"border":"#000000"}},"content":{"href":"https://bondandmason.com/policies/privacy-policy","imprintHref":"/","close"
547:"&#10005;","target":"","logo":""},"window":"<div role=\"dialog\" aria-label=\"{{header}}\" aria-describedby=\"cookieconsent:desc\" id=\"pandectes-banner\" class=\"cc-window-wrapper cc-bottom-wrapper\"><div class=\"pd-cookie-banner-window cc-window {{classes}}\">{{children}}</div></div>","compliance":{"custom":"<div class=\"cc-compliance cc-highlight\">{{preferences}}{{allow}}</div>"},"type":"custom","layouts":{"basic":"{{messagelink}}{{compliance}}"},"position":"bottom","theme":"wired","revokable":false,"animateRevokable":false,"revokableReset":false,"revokableLogoUrl":"https://orgonitely.myshopify.com/cdn/shop/files/pandectes-reopen-logo.png","revokablePlacement":"bottom-left","revokableMarginHorizontal":15,"revokableMarginVertical":15,"static":false,"autoAttach":true,"hasTransition":true,"blacklistPage":[""],"elements":{"close":"<button aria-label=\"Close\" type=\"button\" class=\"cc-close\">{{close}}</button>","dismiss":"<button type=\"button\" class=\"cc-btn cc-btn-decision cc-dismiss\">{{dismiss}}</button>","allow":"<button type=\"button\" class=\"cc-btn cc-btn-decision cc-allow\">{{allow}}</button>","deny":"<button type=\"button\" class=\"cc-btn cc-btn-decision cc-deny\">{{deny}}</button>","preferences":"<button type=\"button\" class=\"cc-btn cc-settings\" aria-controls=\"pd-cp-preferences\" onclick=\"Pandectes.fn.openPreferences()\">{{preferences}}</button>"}},"geolocation":{"brOnly":false,"caOnly":false,"chOnly":false,"euOnly":true,"jpOnly":false,"thOnly":false,"canadaOnly":false,"canadaLaw25":false,"canadaPipeda":false,"globalVisibility":false},"dsr":{"guestsSupport":false,"accessSectionDownloadReportAuto":false},"banner":{"resetTs":1707394662,"extraCss":"        .cc-banner-logo {max-width: 24em!important;}    @media(min-width: 768px) {.cc-window.cc-floating{max-width: 24em!important;width: 24em!important;}}    .cc-message, .pd-cookie-banner-window .cc-header, .cc-logo {text-align: center}    .cc-window-wrapper{z-index: 2147483647;}    .cc-window{z-index: 2147483647;font-size: 10px!important;font-family: inherit;}    .pd-cookie-banner-window .cc-header{font-size: 10px!important;font-family: inherit;}    .pd-cp-ui{font-family: inherit; background-color: #FFFFFF;color:#000000;}    button.pd-cp-btn, a.pd-cp-btn{}    input + .pd-cp-preferences-slider{background-color: rgba(0, 0, 0, 0.3)}    .pd-cp-scrolling-section::-webkit-scrollbar{background-color: rgba(0, 0, 0, 0.3)}    input:checked + .pd-cp-preferences-slider{background-color: rgba(0, 0, 0, 1)}    .pd-cp-scrolling-section::-webkit-scrollbar-thumb {background-color: rgba(0, 0, 0, 1)}    .pd-cp-ui-close{color:#000000;}    .pd-cp-preferences-slider:before{background-color: #FFFFFF}    .pd-cp-title:before {border-color: #000000!important}    .pd-cp-preferences-slider{background-color:#000000}    .pd-cp-toggle{color:#000000!important}    @media(max-width:699px) {.pd-cp-ui-close-top svg {fill: #000000}}    .pd-cp-toggle:hover,.pd-cp-toggle:visited,.pd-cp-toggle:active{color:#000000!important}    .pd-cookie-banner-window {box-shadow: 0 0 18px rgb(0 0 0 / 20%);}  ","customJavascript":{},"showPoweredBy":false,"logoHeight":40,"revokableTrigger":false,"hybridStrict":false,"cookiesBlockedByDefault":"7","isActive":true,"implicitSavePreferences":true,"cookieIcon":false,"blockBots":false,"showCookiesDetails":true,"hasTransition":true,"blockingPage":false,"showOnlyLandingPage":false,"leaveSiteUrl":"https://www.google.com","linkRespectStoreLang":true},"cookies":{"0":[{"name":"secure_customer_sig","type":"http","domain":"bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"nl":"Bewaar uw klantensessie veilig tijdens het aankoopproces.","de":"Speichern Sie Ihre Kundensitzung beim Kauf sicher.","it":"Salva in modo sicuro la sessione cliente al momento dell&#39;acquisto.","es":"Guarda de forma segura la sesión de tu cliente al realizar la compra.","fr":"Sauvegardez en toute sécurité votre session client lors de vos achats.","en":"Used in connection with customer login."}},{"name":"localization","type":"http","domain":"bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"Shopify store localization","nl":"Wordt gebruikt om de winkelwagen naar het juiste land te lokaliseren.","de"
547:"Wird verwendet, um den Warenkorb im richtigen Land zu lokalisieren.","it":"Utilizzato per localizzare il carrello nel paese corretto.","es":"Se utiliza para localizar el carrito en el país correcto.","fr":"Utilisé pour localiser le panier dans le bon pays."}},{"name":"cart_currency","type":"http","domain":"bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"2 ","session":false,"expires":2,"unit":"declSession","purpose":{"en":"The cookie is necessary for the secure checkout and payment function on the website. This function is provided by shopify.com.","nl":"Wordt gebruikt nadat het afrekenen is voltooid om een ​​nieuw leeg winkelwagentje te initialiseren met dezelfde valuta als het zojuist gebruikte winkelwagentje.","de":"Wird nach Abschluss eines Bezahlvorgangs verwendet, um einen neuen leeren Warenkorb mit derselben Währung wie der gerade verwendete zu initialisieren.","it":"Utilizzato dopo il completamento di un checkout per inizializzare un nuovo carrello vuoto con la stessa valuta di quello appena utilizzato.","es":"Se utiliza después de completar el pago para inicializar un nuevo carrito vacío con la misma moneda que el que se acaba de usar.","fr":"Utilisé une fois le paiement effectué pour initialiser un nouveau panier vide avec la même devise que celui qui vient d'être utilisé."}},{"name":"_cmp_a","type":"http","domain":".bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"1 day(s)","session":false,"expires":1,"unit":"declDays","purpose":{"en":"Used for managing customer privacy settings."}},{"name":"_tracking_consent","type":"http","domain":".bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"Tracking preferences.","nl":"Wordt gebruikt om de voorkeuren van een gebruiker op te slaan als een handelaar privacyregels heeft ingesteld in de regio van de bezoeker.","de":"Wird zum Speichern der Präferenzen eines Benutzers verwendet, wenn ein Händler Datenschutzregeln in der Region des Besuchers eingerichtet hat.","it":"Utilizzato per memorizzare le preferenze di un utente se un commerciante ha impostato regole sulla privacy nella regione del visitatore.","es":"Se utiliza para almacenar las preferencias de un usuario si un comerciante ha configurado reglas de privacidad en la región del visitante.","fr":"Utilisé pour stocker les préférences d'un utilisateur si un commerçant a mis en place des règles de confidentialité dans la région du visiteur."}},{"name":"keep_alive","type":"http","domain":"bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"30 minute(s)","session":false,"expires":30,"unit":"declMinutes","purpose":{"en":"Used in connection with buyer localization.","nl":"Wordt gebruikt wanneer internationale domeinomleiding is ingeschakeld om te bepalen of een verzoek de eerste van een sessie is.","de":"Wird verwendet, wenn die internationale Domänenumleitung aktiviert ist, um festzustellen, ob eine Anfrage die erste einer Sitzung ist.","it":"Utilizzato quando è abilitato il reindirizzamento del dominio internazionale per determinare se una richiesta è la prima di una sessione.","es":"Se utiliza cuando la redirección de dominio internacional está habilitada para determinar si una solicitud es la primera de una sesión.","fr":"Utilisé lorsque la redirection de domaine international est activée pour déterminer si une demande est la première d'une session."}},{"name":"_secure_session_id","type":"http","domain":"bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"1 month(s)","session":false,"expires":1,"unit":"declMonths","purpose":{"nl":"Shopify biedt doorgaans deze cookie aan. Deze wordt gebruikt om de sessie van een gebruiker te volgen tijdens het afrekenproces en om de bestel-, betalings- en verzendgegevens aan elkaar te koppelen.","de":"Shopify stellt diesen Cookie üblicherweise bereit. Er dient dazu, die Sitzung eines Nutzers während des mehrstufigen Bestellvorgangs zu verfolgen und seine Bestell-, Zahlungs- und Versanddetails miteinander zu verknüpfen.","it":"Shopify in genere fornisce questo cookie e viene utilizzato per tracciare la sessione di un utente durante il processo di acquisto in più fasi e per mantenere collegati i dettagli dell&#39;ordine, del pagamento e della spedizione.","es":"Shopify suele proporcionar esta cookie, que se utiliza para realizar un seguimiento de la sesión del usuario a lo largo del proceso de pago en varios pasos y para mantener conectados los detalles de su pedido, pago y envío.","fr":"Shopify fournit généralement ce cookie, qui sert à suivre la session d&#39;un utilisateur tout au long du processus de paiement en plusieurs étapes et à conserver la connexion entre ses informations de commande, de paiement et de livraison.","en":"Used in connection with navigation through a storefront."}}],"1":[{"name":"_pinterest_ct_ua","type":"http","domain":".ct.pinterest.com","path":"/","provider":"Pinterest","firstParty":false,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"Used to group actions across pages.","nl":"Wordt gebruikt om acties op pagina's te groeperen.","de"
547:"Wird verwendet, um Aktionen seitenübergreifend zu gruppieren.","it":"Utilizzato per raggruppare le azioni su più pagine.","es":"Se utiliza para agrupar acciones entre páginas.","fr":"Utilisé pour regrouper les actions sur plusieurs pages."}},{"name":"wpm-domain-test","type":"http","domain":"com","path":"/","provider":"Shopify","firstParty":false,"retention":"Session","session":true,"expires":1,"unit":"declSeconds","purpose":{"en":"Used to test the storage of parameters about products added to the cart or payment currency"}}],"2":[{"name":"_shopify_y","type":"http","domain":".bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"Shopify analytics.","nl":"Shopify-analyses.","de":"Shopify-Analysen.","it":"Analisi di Shopify.","es":"Análisis de Shopify.","fr":"Analyses Shopify."}},{"name":"_orig_referrer","type":"http","domain":".bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"2 ","session":false,"expires":2,"unit":"declSession","purpose":{"en":"Tracks landing pages.","nl":"Hiermee kan de verkoper identificeren waar mensen vandaan komen.","de"
547:"Ermöglicht dem Händler zu erkennen, von wo aus die Leute ihn besuchen.","it":"Consente al commerciante di identificare da dove le persone lo visitano.","es":"Permite al comerciante identificar desde dónde lo visitan las personas.","fr":"Permet au commerçant d'identifier d'où les gens le visitent."}},{"name":"_landing_page","type":"http","domain":".bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"2 ","session":false,"expires":2,"unit":"declSession","purpose":{"en":"Tracks landing pages.","nl":"Leg de landingspagina van bezoekers vast wanneer deze van andere sites komen.","de":"Erfassen Sie die Zielseite des Besuchers, wenn dieser von anderen Websites kommt.","it":"Cattura la pagina di destinazione dei visitatori quando provengono da altri siti.","es":"Capture la página de destino del visitante cuando provenga de otros sitios.","fr":"Capturez la page de destination du visiteur lorsqu'il provient d'autres sites."}},{"name":"_shopify_s","type":"http","domain":".bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"30 minute(s)","session":false,"expires":30,"unit":"declMinutes","purpose":{"en":"Shopify analytics.","nl":"Wordt gebruikt om een ​​bepaalde browsersessie/winkelcombinatie te identificeren. De duur is 30 minuten, totdat het laatste gebruik is verstreken.","de":"Wird zur Identifizierung einer bestimmten Kombination aus Browsersitzung und Shop verwendet. Die Dauer beträgt 30 Minuten nach Ablauf der letzten Nutzung.","it":"Utilizzato per identificare una determinata combinazione sessione del browser/negozio. La durata è di 30 minuti consecutivi alla scadenza dell'ultimo utilizzo.","es":"Se utiliza para identificar una determinada combinación de sesión de navegador/tienda. La duración es de 30 minutos consecutivos desde el último uso.","fr":"Utilisé pour identifier une combinaison session de navigateur/boutique donnée. La durée est de 30 minutes glissantes après la dernière utilisation."}},{"name":"_shopify_sa_t","type":"http","domain":".bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"30 minute(s)","session":false,"expires":30,"unit":"declMinutes","purpose":{"en":"Shopify analytics relating to marketing & referrals.","nl":"Slaat conversies op en houdt deze bij.","de":"Speichert und verfolgt Conversions.","it":"Memorizza e tiene traccia delle conversioni.","es":"Almacena y realiza un seguimiento de las conversiones.","fr":"Stocke et suit les conversions."}},{"name":"_shopify_sa_p","type":"http","domain":".bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"30 minute(s)","session":false,"expires":30,"unit":"declMinutes","purpose":{"en":"Shopify analytics relating to marketing & referrals.","nl":"Slaat conversies op en houdt deze bij.","de":"Speichert und verfolgt Conversions.","it":"Memorizza e tiene traccia delle conversioni.","es":"Almacena y realiza un seguimiento de las conversiones.","fr":"Stocke et suit les conversions."}},{"name":"_gat","type":"http","domain":".bondandmason.com","path":"/","provider":"Google","firstParty":true,"retention":"1 minute(s)","session":false,"expires":1,"unit":"declMinutes","purpose":{"en":"Cookie is placed by Google Analytics to filter requests from bots.","nl":"Controleert het aantal Google Analytics-serververzoeken.","de":"Überwacht die Anzahl der Google Analytics-Serveranfragen.","it":"Monitora il numero di richieste del server di Google Analytics.","es":"Supervisa el número de solicitudes del servidor de Google Analytics.","fr":"Surveille le nombre de requêtes du serveur Google Analytics."}},{"name":"_gid","type":"http","domain":".bondandmason.com","path":"/","provider":"Google","firstParty":true,"retention":"1 day(s)","session":false,"expires":1,"unit":"declDays","purpose":{"en":"Cookie is placed by Google Analytics to count and track pageviews.","nl":"Er wordt een cookie geplaatst door Google Analytics om paginaweergaven te tellen en bij te houden.","de":"Cookies werden von Google Analytics platziert, um Seitenaufrufe zu zählen und zu verfolgen.","it":"Il cookie viene inserito da Google Analytics per contare e monitorare le visualizzazioni di pagina.","es":"Google Analytics coloca la cookie para contar y realizar un seguimiento de las páginas vistas.","fr":"Un cookie est placé par Google Analytics pour compter et suivre les pages vues."}},{"name":"epb_previous_pathname","type":"http","domain":"bondandmason.com","path":"/","provider":"Hextom","firstParty":true,"retention":"Session","session":true,"expires":-54,"unit":"declYears","purpose":{"en":"Used by Hextom promotion bar.","nl":"Gebruikt door Hextom-promotiebalk.","de"
547:"Wird von der Hextom-Werbeleiste verwendet.","it":"Utilizzato dalla barra promozionale Hextom.","es":"Utilizado por la barra de promoción de Hextom.","fr":"Utilisé par la barre de promotion Hextom."}},{"name":"_ga","type":"http","domain":".bondandmason.com","path":"/","provider":"Google","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"Cookie is set by Google Analytics with unknown functionality","nl":"Cookie wordt geplaatst door Google Analytics met onbekende functionaliteit","de":"Cookie wird von Google Analytics mit unbekannter Funktionalität gesetzt","it":"Il cookie è impostato da Google Analytics con funzionalità sconosciuta","es":"La cookie la establece Google Analytics con una funcionalidad desconocida","fr":"Le cookie est défini par Google Analytics avec une fonctionnalité inconnue"}},{"name":"_shopify_s","type":"http","domain":"com","path":"/","provider":"Shopify","firstParty":false,"retention":"Session","session":true,"expires":1,"unit":"declSeconds","purpose":{"en":"Shopify analytics.","nl":"Wordt gebruikt om een ​​bepaalde browsersessie/winkelcombinatie te identificeren. De duur is 30 minuten, totdat het laatste gebruik is verstreken.","de":"Wird zur Identifizierung einer bestimmten Kombination aus Browsersitzung und Shop verwendet. Die Dauer beträgt 30 Minuten nach Ablauf der letzten Nutzung.","it":"Utilizzato per identificare una determinata combinazione sessione del browser/negozio. La durata è di 30 minuti consecutivi alla scadenza dell'ultimo utilizzo.","es":"Se utiliza para identificar una determinada combinación de sesión de navegador/tienda. La duración es de 30 minutos consecutivos desde el último uso.","fr":"Utilisé pour identifier une combinaison session de navigateur/boutique donnée. La durée est de 30 minutes glissantes après la dernière utilisation."}},{"name":"_ga_8QMZYE0P59","type":"http","domain":".bondandmason.com","path":"/","provider":"Google","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":""}},{"name":"_gat_gtag_UA_205929692_1","type":"http","domain":".bondandmason.com","path":"/","provider":"Google","firstParty":true,"retention":"1 minute(s)","session":false,"expires":1,"unit":"declMinutes","purpose":{"en":""}}],"4":[{"name":"__kla_id","type":"http","domain":"bondandmason.com","path":"/","provider":"Klaviyo","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"Tracks when someone clicks through a Klaviyo email to your website.","nl":"Houdt bij wanneer iemand via een Klaviyo-e-mail naar uw website klikt","de":"Verfolgt, wenn jemand durch eine Klaviyo-E-Mail auf Ihre Website klickt","it":"Tiene traccia di quando qualcuno fa clic su un'e-mail di Klaviyo sul tuo sito web","es":"Realiza un seguimiento cuando alguien hace clic en un correo electrónico de Klaviyo en su sitio web","fr":"Suit quand quelqu'un clique via un e-mail Klaviyo vers votre site Web"}},{"name":"_ttp","type":"http","domain":".tiktok.com","path":"/","provider":"TikTok","firstParty":false,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"To measure and improve the performance of your advertising campaigns and to personalize the user's experience (including ads) on TikTok.","nl":"Om de prestaties van uw advertentiecampagnes te meten en te verbeteren en om de gebruikerservaring (inclusief advertenties) op TikTok te personaliseren.","de":"Um die Leistung Ihrer Werbekampagnen zu messen und zu verbessern und das Benutzererlebnis (einschließlich Anzeigen) auf TikTok zu personalisieren.","it":"Per misurare e migliorare le prestazioni delle tue campagne pubblicitarie e personalizzare l'esperienza dell'utente (compresi gli annunci) su TikTok.","es":"Medir y mejorar el rendimiento de sus campañas publicitarias y personalizar la experiencia del usuario (incluidos los anuncios) en TikTok.","fr":"Pour mesurer et améliorer les performances de vos campagnes publicitaires et personnaliser l'expérience utilisateur (y compris les publicités) sur TikTok."}},{"name":"_fbp","type":"http","domain":".bondandmason.com","path":"/","provider":"Facebook","firstParty":true,"retention":"3 month(s)","session":false,"expires":3,"unit":"declMonths","purpose":{"en":"Cookie is placed by Facebook to track visits across websites.","nl":"Cookie wordt door Facebook geplaatst om bezoeken aan websites bij te houden.","de"
547:"Ein Cookie wird von Facebook platziert, um Besuche auf verschiedenen Websites zu verfolgen.","it":"Il cookie viene inserito da Facebook per tracciare le visite sui siti web.","es":"Facebook coloca cookies para realizar un seguimiento de las visitas a los sitios web.","fr":"Le cookie est placé par Facebook pour suivre les visites sur les sites Web."}},{"name":"_pin_unauth","type":"http","domain":".bondandmason.com","path":"/","provider":"Pinterest","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"Used to group actions for users who cannot be identified by Pinterest.","nl":"Wordt gebruikt om acties te groeperen voor gebruikers die niet door Pinterest kunnen worden geïdentificeerd.","de":"Wird verwendet, um Aktionen für Benutzer zu gruppieren, die von Pinterest nicht identifiziert werden können.","it":"Utilizzato per raggruppare azioni per utenti che non possono essere identificati da Pinterest.","es":"Se utiliza para agrupar acciones para usuarios que Pinterest no puede identificar.","fr":"Utilisé pour regrouper les actions des utilisateurs qui ne peuvent pas être identifiés par Pinterest."}},{"name":"_ttp","type":"http","domain":".bondandmason.com","path":"/","provider":"TikTok","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"To measure and improve the performance of your advertising campaigns and to personalize the user's experience (including ads) on TikTok.","nl":"Om de prestaties van uw advertentiecampagnes te meten en te verbeteren en om de gebruikerservaring (inclusief advertenties) op TikTok te personaliseren.","de":"Um die Leistung Ihrer Werbekampagnen zu messen und zu verbessern und das Benutzererlebnis (einschließlich Anzeigen) auf TikTok zu personalisieren.","it":"Per misurare e migliorare le prestazioni delle tue campagne pubblicitarie e personalizzare l'esperienza dell'utente (compresi gli annunci) su TikTok.","es":"Medir y mejorar el rendimiento de sus campañas publicitarias y personalizar la experiencia del usuario (incluidos los anuncios) en TikTok.","fr":"Pour mesurer et améliorer les performances de vos campagnes publicitaires et personnaliser l'expérience utilisateur (y compris les publicités) sur TikTok."}},{"name":"_tt_enable_cookie","type":"http","domain":".bondandmason.com","path":"/","provider":"TikTok","firstParty":true,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"Used to identify a visitor.","nl":"Wordt gebruikt om een ​​bezoeker te identificeren.","de":"Wird zur Identifizierung eines Besuchers verwendet.","it":"Utilizzato per identificare un visitatore.","es":"Se utiliza para identificar a un visitante.","fr":"Utilisé pour identifier un visiteur."}},{"name":"_gcl_au","type":"http","domain":".bondandmason.com","path":"/","provider":"Google","firstParty":true,"retention":"3 month(s)","session":false,"expires":3,"unit":"declMonths","purpose":{"en":"Cookie is placed by Google Tag Manager to track conversions.","nl":"Er wordt een cookie geplaatst door Google Tag Manager om conversies bij te houden.","de":"Cookie wird vom Google Tag Manager platziert, um Conversions zu verfolgen.","it":"Il cookie viene inserito da Google Tag Manager per monitorare le conversioni.","es":"Google Tag Manager coloca la cookie para realizar un seguimiento de las conversiones.","fr":"Le cookie est placé par Google Tag Manager pour suivre les conversions."}},{"name":"test_cookie","type":"http","domain":".doubleclick.net","path":"/","provider":"Google","firstParty":false,"retention":"15 minute(s)","session":false,"expires":15,"unit":"declMinutes","purpose":{"en":"To measure the visitors’ actions after they click through from an advert. Expires after each visit.","nl":"Om de acties van bezoekers te meten nadat ze doorklikken vanuit een advertentie. Vervalt na elk bezoek.","de":"Um die Aktionen der Besucher zu messen, nachdem sie auf eine Anzeige geklickt haben. Verfällt nach jedem Besuch.","it":"Per misurare le azioni dei visitatori dopo che hanno cliccato su un annuncio. Scade dopo ogni visita.","es":"Medir las acciones de los visitantes después de hacer clic en un anuncio. Caduca después de cada visita.","fr":"Pour mesurer les actions des visiteurs après avoir cliqué sur une annonce. Expire après chaque visite."}},{"name":"IDE","type":"http","domain":".doubleclick.net","path":"/","provider":"Google","firstParty":false,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"To measure the visitors’ actions after they click through from an advert. Expires after 1 year.","nl":"Om de acties van bezoekers te meten nadat ze doorklikken vanuit een advertentie. Verloopt na 1 jaar.","de":"Um die Aktionen der Besucher zu messen, nachdem sie auf eine Anzeige geklickt haben. Läuft nach 1 Jahr ab.","it":"Per misurare le azioni dei visitatori dopo che hanno cliccato su un annuncio. Scade dopo 1 anno.","es":"Medir las acciones de los visitantes después de hacer clic en un anuncio. Caduca después de 1 año.","fr":"Pour mesurer les actions des visiteurs après avoir cliqué sur une annonce. Expire après 1 an."}},{"name":"wpm-domain-test","type":"http","domain":"bondandmason.com","path":"/","provider":"Shopify","firstParty":true,"retention":"Session","session":true,"expires":1,"unit":"declSeconds","purpose":{"en":"Used to test the storage of parameters about products added to the cart or payment currency"}},{"name":"ar_debug","type":"http","domain":".pinterest.com","path":"/","provider":"Teads","firstParty":false,"retention":"1 year(s)","session":false,"expires":1,"unit":"declYears","purpose":{"en":"","nl":"Controleert of er een technische debugger-cookie aanwezig is.","de":"Überprüft, ob ein technisches Debugger-Cookie vorhanden ist.","it":"Controlla se è presente un cookie debugger tecnico.","es":"Comprueba si hay presente una cookie de depuración técnica.","fr":"Vérifie si un cookie de débogueur technique est présent."}}],"8":[]},"blocker":{"isActive":false,"googleConsentMode":{"id":"","onlyGtm":false,"analyticsId":"G-8QMZYE0P59","adwordsId":"AW-529049582","isActive":false,"adStorageCategory":4,"analyticsStorageCategory":2,"personalizationStorageCategory":1,"functionalityStorageCategory":1,"customEvent":true,"securityStorageCategory":0,"redactData":true,"urlPassthrough":false,"dataLayerProperty":"dataLayer","waitForUpdate":0,"useNativeChannel":true,"debugMode":false},"facebookPixel":{"id":"","isActive":false,"ldu":false},"amazon":{"enabled":false},"microsoft":{"isActive":false,"uetTags":""},"rakuten":{"isActive":false,"cmp":false,"ccpa":false},"klaviyoIsActive":false,"gpcIsActive":true,"clarity":{"isActive":false,"id":""},"defaultBlocked":7,"patterns":{"whiteList":[],"blackList":{"1":[],"2":[],"4":[],"8":[]},"iframesWhiteList":[],"iframesBlackList":{"1":[],"2":[],"4":[],"8":[]},"beaconsWhiteList":[],"beaconsBlackList":{"1":[],"2":[],"4":[],"8":[]}}}};
548        
549        window.addEventListener('DOMContentLoaded', function(){
550          const script = document.createElement('script');
551          
552            script.src = "https://cdn.shopify.com/extensions/01a10580-fd2a-7a23-97ae-f050569f8f5d/gdpr-cookie-consent-414/assets/pandectes-core.js";
553          
554          script.defer = true;
555          document.body.appendChild(script);
556        })
557      </script>
557
558    
559  
560
561
562
563
564
565<!-- END app block --><!-- BEGIN app block: shopify://apps/currency-converter/blocks/app-embed-block/a56d6bd1-e9df-4a4a-b98e-e9bb5c43a042 -->
565<script>
566    window.codeblackbelt = window.codeblackbelt || {};
567    window.codeblackbelt.shop = window.codeblackbelt.shop || 'orgonitely.myshopify.com';
568    </script>
568<script src="//cdn.codeblackbelt.com/widgets/currency-converter-plus/main.min.js?version=2026100616+0200" async></script>
568
569<!-- END app block --><!-- BEGIN app block: shopify://apps/klaviyo-email-marketing-sms/blocks/klaviyo-onsite-embed/2632fe16-c075-4321-a88b-50b567f42507 -->
570
571
572
573
574
575
576
577
578
579
580
581
582  
582<script async src="https://static.klaviyo.com/onsite/js/YcUrAp/klaviyo.js?company_id=YcUrAp"></script>
582
583  
583<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>
583
584
585  
586
587
588
589
590  
590<script>
591    window.klaviyoReviewsProductDesignMode = false
592  </script>
592
593
594
595
596
597
598
599
600
601
602<!-- END app block --><!-- BEGIN app block: shopify://apps/uppromote-affiliate/blocks/core-script/64c32457-930d-4cb9-9641-e24c0d9cf1f4 --><!-- BEGIN app snippet: core-metafields-setting --><!--suppress ES6ConvertVarToLetConst -->
603<script type="application/json" id="core-uppromote-settings">{"app_env":{"env":"production"},"message_bar_setting":{"referral_enable":0,"referral_content":"You're shopping with {affiliate_name}!","referral_font":"Poppins","referral_font_size":14,"referral_text_color":"#ffffff","referral_background_color":"#338FB1","not_referral_enable":0,"not_referral_content":"Enjoy your time.","not_referral_font":"Poppins","not_referral_font_size":14,"not_referral_text_color":"#ffffff","not_referral_background_color":"#338FB1"}}</script>
vendor: 1 bytes, line 603
603
604<script type="application/json" id="core-uppromote-cart">{"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"EUR","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0}</script>
604
605
606<script id="core-uppromote-quick-store-tracking-vars">
607    function getDocumentContext(){const{href:a,hash:b,host:c,hostname:d,origin:e,pathname:f,port:g,protocol:h,search:i}=window.location,j=document.referrer,k=document.characterSet,l=document.title;return{location:{href:a,hash:b,host:c,hostname:d,origin:e,pathname:f,port:g,protocol:h,search:i},referrer:j||document.location.href,characterSet:k,title:l}}function getNavigatorContext(){const{language:a,cookieEnabled:b,languages:c,userAgent:d}=navigator;return{language:a,cookieEnabled:b,languages:c,userAgent:d}}function getWindowContext(){const{innerHeight:a,innerWidth:b,outerHeight:c,outerWidth:d,origin:e,screen:{height:j,width:k},screenX:f,screenY:g,scrollX:h,scrollY:i}=window;return{innerHeight:a,innerWidth:b,outerHeight:c,outerWidth:d,origin:e,screen:{screenHeight:j,screenWidth:k},screenX:f,screenY:g,scrollX:h,scrollY:i,location:getDocumentContext().location}}function getContext(){return{document:getDocumentContext(),navigator:getNavigatorContext(),window:getWindowContext()}}
608    if (window.location.href.includes('?sca_ref=')) {
609        localStorage.setItem('__up_lastViewedPageContext', JSON.stringify({
610            context: getContext(),
611            timestamp: new Date().toISOString(),
612        }))
613    }
614</script>
614
615
616
617<script id="core-uppromote-setting-booster">
618    var UpPromoteCoreSettings = JSON.parse(document.getElementById('core-uppromote-settings').textContent)
619    UpPromoteCoreSettings.currentCart = JSON.parse(document.getElementById('core-uppromote-cart')?.textContent || '{}')
620    const idToClean = ['core-uppromote-settings', 'core-uppromote-cart', 'core-uppromote-setting-booster', 'core-uppromote-quick-store-tracking-vars']
621    idToClean.forEach(id => {
622        document.getElementById(id)?.remove()
623    })
624</script>
624
625<!-- END app snippet -->
626
627
628<!-- END app block --><!-- BEGIN app block: shopify://apps/simprosys-google-shopping-feed/blocks/core_settings_block/1f0b859e-9fa6-4007-97e8-4513aff5ff3b --><!-- BEGIN: GSF App Core Tags & Scripts by Simprosys Google Shopping Feed -->
629
630
631
632
633
634
635
636
637
638<!-- END: GSF App Core Tags & Scripts by Simprosys Google Shopping Feed -->
639<!-- END app block -->
639<script src="https://cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/floating-selector.js" type="text/javascript" defer="defer"></script>
vendor: 1 bytes, line 639
639
640<script src="https://cdn.shopify.com/extensions/01a10ad0-9f32-7eb2-a83e-3427bdf52ded/affliate-by-secomapp-129/assets/core.min.js" type="text/javascript" defer="defer"></script>
640
641<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
642<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: 32830685320,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "index"};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 642
642
643<script>
644  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
645</script>
vendor: 1 bytes, line 645
645
646<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}
646).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: 32830685320,storefrontBaseUrl: "https://bondandmason.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://bondandmason.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b"],webPixelsConfigList: [{"id":"4354736474","configuration":"{\"shopifyDomain\":\"orgonitely.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"14b26290829f755f27eefbf196eb8024","type":"APP","apiClientId":2935586817,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_email","read_customer_personal_data"],"dataSharingControls":["share_all_events"]}
646,"dataSharingState":"unrestricted"},{"id":"4247421274","configuration":"{\"shop\":\"orgonitely.myshopify.com\", \"shopliftUrl\":\"https:\/\/events.shoplift.ai\/api\/events\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"dabcda9558be25394b12ce3ce899568b","type":"APP","apiClientId":7521861633,"privacyPurposes":["ANALYTICS"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"3524100442","configuration":"{\"accountID\":\"YcUrAp\",\"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":"3352559962","configuration":"{\"pixelCode\":\"D4JEMI3C77UDL5036OC0\"}","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":"2751463770","configuration":"{\"account_ID\":\"171525\",\"google_analytics_tracking_tag\":\"1\",\"measurement_id\":\"2\",\"api_secret\":\"3\",\"shop_settings\":\"{\\\"custom_pixel_script\\\":\\\"https:\\\\\\\/\\\\\\\/storage.googleapis.com\\\\\\\/gsf-scripts\\\\\\\/custom-pixels\\\\\\\/orgonitely.js\\\",\\\"allow_tracking\\\":true,\\\"enable_post_purchase\\\":false,\\\"ga4_enabled\\\":\\\"1\\\",\\\"ga4_measurement_id\\\":\\\"G-8QMZYE0P59\\\",\\\"ga4_tag_id\\\":\\\"\\\",\\\"ga4_submit_subtotal\\\":\\\"0\\\",\\\"google_ads_enabled\\\":\\\"1\\\",\\\"ga_conversion_id\\\":\\\"AW-529049582\\\",\\\"ga_purchase_label\\\":\\\"xUC9CL6B_OIBEO7PovwB\\\",\\\"ga_add_to_cart_label\\\":\\\"nSuRCOaa8eIBEO7PovwB\\\",\\\"ga_begin_checkout_label\\\":\\\"qXH0CJeTjeMBEO7PovwB\\\",\\\"ga_tag_id\\\":\\\"\\\",\\\"ga_submit_subtotal\\\":\\\"0\\\",\\\"drm_enabled\\\":\\\"1\\\",\\\"prefixD\\\":\\\"NL\\\",\\\"google_merchant_id\\\":\\\"275951755\\\",\\\"target_country\\\":\\\"NL\\\",\\\"content_language\\\":\\\"en\\\",\\\"enhace_conversion_browser_side\\\":false,\\\"enhace_conversion_server_side\\\":\\\"1\\\",\\\"consent_mode\\\":1,\\\"ads_data_redaction\\\":0,\\\"url_passthrough\\\":1,\\\"sku_as_product_id\\\":\\\"0\\\",\\\"gtm_enabled\\\":0,\\\"gtm_container\\\":\\\"\\\",\\\"server_container_url\\\":\\\"\\\",\\\"shopify_store\\\":\\\"edb8f95632bc58757b38d79ee6b58def66b580e22731239c378d6de157279e6c994a3ecb2e9c5a9228bfecfa64c05e9edf0bb1fe9c1c0d04fb3ebbb438253764\\\"}\"}","eventPayloadVersion":"v1","runtimeContext":"LAX","scriptVersion":"dbf16afd37d7bda963909dd4e886232e","type":"APP","apiClientId":1558137,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"unrestricted"},{"id":"1822818650","configuration":"{\"shopDomain\":\"orgonitely.myshopify.com\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"1cc50c06a2fd060c142979e7a3df92db","type":"APP","apiClientId":2436932,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_personal_data"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"},{"id":"477036890","configuration":"{\"pixel_id\":\"221480865590869\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"bd2f978c17a94bbb8a74d43de2165dc5","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"373064026","configuration":"{\"shopId\":\"52828\",\"env\":\"production\",\"metaData\":\"[]\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"8323bee30e1ec3ae135ae5e0cef4ab6d","type":"APP","apiClientId":2773553,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]}
646,"dataSharingState":"unrestricted"},{"id":"150602074","configuration":"{\"tagID\":\"2613467406559\"}","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":"94896474","eventPayloadVersion":"1","runtimeContext":"LAX","scriptVersion":"2","type":"CUSTOM","privacyPurposes":["SALE_OF_DATA"],"name":"Simprosys custom pixel Google"},{"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":"Bond \u0026 Mason","paymentSettings":{"currencyCode":"EUR"},"myshopifyDomain":"orgonitely.myshopify.com","countryCode":"HK","storefrontUrl":"https:\/\/bondandmason.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"7646431052019","handle":"the-meghan-handbag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"47593036251482","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7998104568051","handle":"the-christy-handbag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"43707269939443","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7004949283009","handle":"the-sandra-handbag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"47593051685210","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7479475929331","handle":"the-amari-handbag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42172760031475","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8623303786842","handle":"the-scarlett-handbag-2","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"47593053159770","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"10278505382234","handle":"the-helena-handbag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"51594811310426","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7527747125491","handle":"the-ashley-crossbody-bag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"47592989262170","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8694843670874","handle":"the-zara-handbag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"47505475830106","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"6986208051393","handle":"the-alexandra-crossbody-bag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"47592978612570","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"10281687351642","handle":"the-leonora-handbag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"51613041131866","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}
646,{"id":"7510042345715","handle":"the-bridget-handbag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"42271994446067","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"10613197603162","handle":"the-mary-tote-bag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"53026914533722","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://bondandmason.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"true","themeId":"194454913370","themeStoreId":"847","themePublished":"true","eventMetadataId":"f3b1b46c-f13d-4b44-9d13-91d2df05fa58","pageType":"home","shopId":"32830685320","storefrontBaseUrl":"https:\/\/bondandmason.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
646<script>
647  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
648  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
649  window.ShopifyAnalytics.meta.currency = 'EUR';
650  var meta = {"page":{"pageType":"home","requestId":"203dc651-1d06-4b9b-8dfa-68f814e2885e-1791295465"}};
651  for (var attr in meta) {
652    window.ShopifyAnalytics.meta[attr] = meta[attr];
653  }
654</script>
vendor: 1 bytes, line 654
654
655<script class="analytics">
656  (function () {
657    var customDocumentWrite = function(content) {
658      var jquery = null;
659
660      if (window.jQuery) {
661        jquery = window.jQuery;
662      } else if (window.Checkout && window.Checkout.$) {
663        jquery = window.Checkout.$;
664      }
665
666      if (jquery) {
667        jquery('body').append(content);
668      }
669    };
670
671    var hasLoggedConversion = function(token) {
672      if (token) {
673        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
674      }
675      return false;
676    }
677
678    var setCookieIfConversion = function(token) {
679      if (token) {
680        var twoMonthsFromNow = new Date(Date.now());
681        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
682
683        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
684      }
685    }
686
687    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
688    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
689    if (trekkie.integrations) {
690      return;
691    }
692    trekkie.methods = [
693      'identify',
694      'page',
695      'ready',
696      'track',
697      'trackForm',
698      'trackLink'
699    ];
700    trekkie.factory = function(method) {
701      return function() {
702        var args = Array.prototype.slice.call(arguments);
703        args.unshift(method);
704        trekkie.push(args);
705        if (method == 'track' || method == 'page') {
706          var pageUrl;
707          try {
708            pageUrl = window.location.href;
709          } catch (e) {}
710          var pageReferrer;
711          try {
712            pageReferrer = document.referrer;
713          } catch (e) {}
714          try {
715            if (window.__TREKKIE_SHIM_QUEUE == null) {
716              window.__TREKKIE_SHIM_QUEUE = [];
717            }
718            window.__TREKKIE_SHIM_QUEUE.push({
719              from: 'trekkie-stub',
720              method: method,
721              args: args.slice(1),
722              pageContext: {
723                url: pageUrl,
724                referrer: pageReferrer
725              }
726            });
727          } catch (e) {
728            // no-op
729          }
730        }
731        return trekkie;
732      };
733    };
734    for (var i = 0; i < trekkie.methods.length; i++) {
735      var key = trekkie.methods[i];
736      trekkie[key] = trekkie.factory(key);
737    }
738    trekkie.load = function(config) {
739      trekkie.config = config || {};
740      trekkie.config.initialDocumentCookie = document.cookie;
741      var first = document.getElementsByTagName('script')[0];
742var script = document.createElement('script');
743script.type = 'text/javascript';
744script.onerror = function(e) {
745  var scriptFallback = document.createElement('script');
746  scriptFallback.type = 'text/javascript';
747  scriptFallback.onerror = function(error) {
748          var Monorail = {
749      produce: function produce(monorailDomain, schemaId, payload) {
750        var currentMs = new Date().getTime();
751        var event = {
752          schema_id: schemaId,
753          payload: payload,
754          metadata: {
755            event_created_at_ms: currentMs,
756            event_sent_at_ms: currentMs
757          }
758        };
759        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
760      },
761      sendRequest: function sendRequest(endpointUrl, payload) {
762        // Try the sendBeacon API
763        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
764          var blobData = new window.Blob([payload], {
765            type: 'text/plain'
766          });
767
768          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
769            return true;
770          } // sendBeacon was not successful
771
772        } // XHR beacon
773
774        var xhr = new XMLHttpRequest();
775
776        try {
777          xhr.open('POST', endpointUrl);
778          xhr.setRequestHeader('Content-Type', 'text/plain');
779          xhr.send(payload);
780        } catch (e) {
781          console.log(e);
782        }
783
784        return false;
785      },
786      isIos12: function isIos12() {
787        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
788      }
789    };
790    Monorail.produce('monorail-edge.shopifysvc.com',
791      'trekkie_storefront_load_errors/1.1',
792      {shop_id: 32830685320,
793      theme_id: 194454913370,
794      app_name: "storefront",
795      context_url: window.location.href,
796      source_url: "//bondandmason.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
797
798  };
799  scriptFallback.async = true;
800  scriptFallback.src = '//bondandmason.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
801  first.parentNode.insertBefore(scriptFallback, first);
802};
803script.async = true;
804script.src = '//bondandmason.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
805first.parentNode.insertBefore(script, first);
806
807    };
808    trekkie.load(
809      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":32830685320,"isMerchantRequest":null,"themeId":194454913370,"themeCityHash":"1697979970046549832","contentLanguage":"en","currency":"EUR","eventMetadataId":"f3b1b46c-f13d-4b44-9d13-91d2df05fa58"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":true,"source":"trekkie-storefront-renderer","apiClientId":580111}}
810    );
811
812    var loaded = false;
813    trekkie.ready(function() {
814      if (loaded) return;
815      loaded = true;
816
817      window.ShopifyAnalytics.lib = window.trekkie;
818
819      var originalDocumentWrite = document.write;
820      document.write = customDocumentWrite;
821      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
822      document.write = originalDocumentWrite;
823
824      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
825      var token = match? match[1]: undefined;
826      if (!hasLoggedConversion(token)) {
827        setCookieIfConversion(token);
828        
829      }
830    });
831
832    window.ShopifyAnalytics.lib.page(null,{"pageType":"home","requestId":"203dc651-1d06-4b9b-8dfa-68f814e2885e-1791295465","shopifyEmitted":true});
833
834    var eventsListenerScript = document.createElement('script');
835    eventsListenerScript.async = true;
836    eventsListenerScript.src = "//bondandmason.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
837    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
838})();</script>
vendor: 1 bytes, line 838
838
839<script
840  defer
841  src="https://bondandmason.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.5.min.js"
842  data-application="storefront-renderer"
843  data-shop-id="32830685320"
844  data-render-region="gcp-europe-west1"
845  data-page-type="index"
846  data-theme-instance-id="194454913370"
847  data-theme-name="Motion"
848  data-theme-version="12.0.0"
849  data-monorail-region="shop_domain"
850  data-resource-timing-sampling-rate="10"
851  data-shs="true"
852  data-shs-beacon="true"
853  data-shs-export-with-fetch="true"
854  data-shs-logs-sample-rate="1"
855  data-shs-beacon-endpoint="https://bondandmason.com/api/collect"
856></script>
vendor: 1 bytes, line 856
856
857<script src="https://cdn.shopify.com/storefront/web-components/account.js" type="module" crossorigin fetchpriority="low" async></script>
857<script id="shopify-customer-account-data" type="application/json">{"customer":null,"shop":{"id":"32830685320","customerAccountTranslations":[{"key":"account_menu.signed_out_state.sheet_title","value":"Sign in or create account"},{"key":"account_menu.signed_out_state.section_divider","value":"More ways to sign in"},{"key":"account_menu.signed_out_state.alternate_divider","value":"OR"},{"key":"account_menu.signed_out_state.email_field_label","value":"Email"},{"key":"account_menu.signed_out_state.orders_button","value":"Orders"},{"key":"account_menu.signed_out_state.profile_button","value":"Profile"},{"key":"account_menu.signed_out_state.shop_login_button","value":"Sign in with Shop"},{"key":"account_menu.signed_out_state.continue_with_google","value":"Continue with Google"},{"key":"account_menu.signed_out_state.continue_with_facebook","value":"Continue with Facebook"},{"key":"account_menu.signed_out_state.marketing_consent_label","value":"Email me with news and offers"},{"key":"account_menu.signed_in_state.greeting_with_name","value":"Hi, {{first_name}}"},{"key":"account_menu.signed_in_state.greeting_without_name","value":"Account"},{"key":"account_menu.signed_in_state.orders_button","value":"Orders"},{"key":"account_menu.signed_in_state.profile_button","value":"Profile"},{"key":"account_menu.location_picker.sheet_title","value":"Locations"},{"key":"account_menu.location_picker.search_field_placeholder","value":"Search"},{"key":"account_menu.aria_labels.close_menu","value":"Close menu"},{"key":"account_menu.aria_labels.back_to_main_menu","value":"Back to main menu from {{title}}"},{"key":"account_menu.aria_labels.open_submenu","value":"{{title}}, opens submenu"},{"key":"account_menu.aria_labels.loading_menu","value":"Loading menu"},{"key":"account_menu.aria_labels.account","value":"Account"},{"key":"account_menu.aria_labels.sign_in_with_email","value":"Sign in with email"},{"key":"account_menu.aria_labels.sign_in","value":"Sign in"}],"socialLoginProviders":[{"handle":"Shop"}],"legacyCustomerAccounts":false,"signInLinksVisible":true,"b2bEnabled":true,"marketingConsentSigninEnabled":true,"marketingConsentPreselected":false},"visitor":{"country":"NL","language":"en"}}</script>
857
858<meta name="shopify-y" content="3fd43b93-09e2-4252-96d1-59dd4f91900b" data-expiration="1822853065000"><meta name="shopify-s" content="d9b60aea-197c-4336-9c01-2c48ae66bbfe" data-expiration="1791297265000"><meta name="new-cookie-storage-activated" content="t">
859</head>
860
861<body class="template-index" data-transitions="true" data-type_header_capitalize="false" data-type_base_accent_transform="true" data-type_header_accent_transform="true" data-animate_sections="true" data-animate_underlines="true" data-animate_buttons="true" data-animate_images="true" data-animate_page_transition_style="page-slow-fade" data-type_header_text_alignment="true" data-animate_images_style="zoom-fade">
862
863  
864    
864<script type="text/javascript">window.setTimeout(function() { document.body.className += " loaded"; }, 25);</script>
864
865  
866
867  <a class="in-page-link visually-hidden skip-link" href="#MainContent">Skip to content</a>
868
869  <div id="PageContainer" class="page-container">
870    <div class="transition-body"><!-- BEGIN sections: header-group -->
871<div id="shopify-section-sections--28602505331034__announcement-bar" class="shopify-section shopify-section-group-header-group"><div class="announcement"><span class="announcement__text announcement__text--open" data-text="order-today-enjoy-up-to-70-off">
872      Order today & enjoy up to 70% OFF!
873    </span></div>
874
875
876</div><div id="shopify-section-sections--28602505331034__header" class="shopify-section shopify-section-group-header-group"><div id="NavDrawer" class="drawer drawer--right">
877  <div class="drawer__contents">
878    <div class="drawer__fixed-header">
879      <div class="drawer__header appear-animation appear-delay-2">
880        <div class="drawer__title"></div>
881        <div class="drawer__close">
882          <button type="button" class="drawer__close-button js-drawer-close">
883            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><title>icon-X</title><path d="m19 17.61 27.12 27.13m0-27.12L19 44.74"/></svg>
884            <span class="icon__fallback-text">Close menu</span>
885          </button>
886        </div>
887      </div>
888    </div>
889    <div class="drawer__scrollable">
890      <ul class="mobile-nav" role="navigation" aria-label="Primary"><li class="mobile-nav__item appear-animation appear-delay-3"><a href="/" class="mobile-nav__link">Home</a></li><li class="mobile-nav__item appear-animation appear-delay-4"><div class="mobile-nav__has-sublist"><button type="button" class="mobile-nav__link--button collapsible-trigger collapsible--auto-height" aria-controls="Linklist-collections-handbags2">
891                    <span class="mobile-nav__faux-link">All Categories</span>
892                    <div class="mobile-nav__toggle">
893                      <span><span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
894  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="m1.57 1.59 12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none"/></svg>
895</span>
896</span>
897                    </div>
898                  </button></div><div id="Linklist-collections-handbags2" class="mobile-nav__sublist collapsible-content collapsible-content--all">
899                <div class="collapsible-content__inner">
900                  <ul class="mobile-nav__sublist"><li class="mobile-nav__item">
901                        <div class="mobile-nav__child-item"><a href="/collections/handbags" class="mobile-nav__link" id="Sublabel-collections-handbags1">
902                              Handbags
903                            </a></div></li><li class="mobile-nav__item">
904                        <div class="mobile-nav__child-item"><a href="/collections/backpacks" class="mobile-nav__link" id="Sublabel-collections-backpacks2">
905                              Backpacks
906                            </a></div></li><li class="mobile-nav__item">
907                        <div class="mobile-nav__child-item"><a href="/collections/wallets-purses" class="mobile-nav__link" id="Sublabel-collections-wallets-purses3">
908                              Wallets &amp; Purses
909                            </a></div></li><li class="mobile-nav__item">
910                        <div class="mobile-nav__child-item"><a href="/collections/crossbody-bags" class="mobile-nav__link" id="Sublabel-collections-crossbody-bags4">
911                              Crossbody Bags
912                            </a></div></li><li class="mobile-nav__item">
913                        <div class="mobile-nav__child-item"><a href="/collections/tote-bags" class="mobile-nav__link" id="Sublabel-collections-tote-bags5">
914                              Tote Bags
915                            </a></div></li><li class="mobile-nav__item">
916                        <div class="mobile-nav__child-item"><a href="/collections/travel-bags" class="mobile-nav__link" id="Sublabel-collections-travel-bags6">
917                              Travel Bags
918                            </a></div></li><li class="mobile-nav__item">
919                        <div class="mobile-nav__child-item"><a href="/collections/new-arrivals" class="mobile-nav__link" id="Sublabel-collections-new-arrivals7">
920                              New Arrivals
921                            </a></div></li></ul></div>
922              </div></li><li class="mobile-nav__item appear-animation appear-delay-5"><a href="/collections/deals-sales" class="mobile-nav__link">Deals & Sales</a></li><li class="mobile-nav__item appear-animation appear-delay-6"><a href="/apps/track-order" class="mobile-nav__link">Order Tracking</a></li><li class="mobile-nav__item appear-animation appear-delay-7"><a href="https://bondandmason.returnscenter.com/" class="mobile-nav__link">Returns Center</a></li><li class="mobile-nav__item appear-animation appear-delay-8">
923            
924
925
926<shopify-store store-domain="https://bondandmason.com" country="NL" language="en"></shopify-store>
927<shopify-account
928  
929    menu="customer-account-main-menu"
930  
931>
932  <div slot="signed-out-avatar">
933    
934      <span class="mobile-nav__link" style="display: flex; align-items: center; gap: 8px;">
935        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-user" viewBox="0 0 64 64"><title>account</title><path d="M35 39.84v-2.53c3.3-1.91 6-6.66 6-11.41 0-7.63 0-13.82-9-13.82s-9 6.19-9 13.82c0 4.75 2.7 9.51 6 11.41v2.53c-10.18.85-18 6-18 12.16h42c0-6.19-7.82-11.31-18-12.16Z"/></svg>
936        Log in
937      </span>
938    
939  </div>
940</shopify-account>
941
942
943
944          </li><li class="mobile-nav__spacer"></li>
945      </ul>
946
947      <ul class="no-bullets social-icons mobile-nav__social"></ul>
948
949    </div>
950  </div>
951</div>
952
953  <div id="CartDrawer" class="drawer drawer--right">
954    <form id="CartDrawerForm" action="/cart" method="post" novalidate class="drawer__contents" data-location="cart-drawer">
955      <div class="drawer__fixed-header">
956        <div class="drawer__header appear-animation appear-delay-1">
957          <div class="drawer__title">Cart</div>
958          <div class="drawer__close">
959            <button type="button" class="drawer__close-button js-drawer-close">
960              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><title>icon-X</title><path d="m19 17.61 27.12 27.13m0-27.12L19 44.74"/></svg>
961              <span class="icon__fallback-text">Close cart</span>
962            </button>
963          </div>
964        </div>
965      </div>
966
967      <div class="drawer__inner">
968        <div class="drawer__scrollable">
969          <div data-products class="appear-animation appear-delay-2"></div>
970
971          
972        </div>
973
974        <div class="drawer__footer appear-animation appear-delay-4">
975          <div data-discounts>
976            
977          </div>
978
979          <div class="cart__item-sub cart__item-row">
980            <div class="cart__subtotal">Subtotal</div>
981            <div data-subtotal>€0,00</div>
982          </div>
983
984          <div class="cart__item-row cart__savings text-center hide" data-savings></div>
985
986          <div class="cart__item-row text-center ajaxcart__note">
987            <small>
988              Discount codes calculated at checkout. Order TODAY and enjoy up to 70% OFF.<br />
989            </small>
990          </div>
991
992          
993
994          <div class="cart__checkout-wrapper">
995            <button type="submit" name="checkout" data-terms-required="false" class="btn cart__checkout">
996              Check out
997            </button>
998
999            
1000          </div>
1001        </div>
1002      </div>
1003
1004      <div class="drawer__cart-empty appear-animation appear-delay-2">
1005        <div class="drawer__scrollable">
1006          Your cart is currently empty.
1007        </div>
1008      </div>
1009    </form>
1010  </div>
1011
1012<style data-shopify>.site-nav__link,
1013  .site-nav__dropdown-link {
1014    font-size: 18px;
1015  }.site-header {
1016      border-bottom: 1px solid;
1017      border-bottom-color: #e8e8e1;
1018    }</style><div data-section-id="sections--28602505331034__header" data-section-type="header">
1019  <div id="HeaderWrapper" class="header-wrapper header-wrapper--overlay is-light">
1020    <header
1021      id="SiteHeader"
1022      class="site-header"
1023      data-sticky="true"
1024      data-overlay="true">
1025      <div class="page-width">
1026        <div
1027          class="header-layout header-layout--left-center"
1028          data-logo-align="left"><div class="header-item header-item--logo"><style data-shopify>.header-item--logo,
1029  .header-layout--left-center .header-item--logo,
1030  .header-layout--left-center .header-item--icons {
1031    -webkit-box-flex: 0 1 200px;
1032    -ms-flex: 0 1 200px;
1033    flex: 0 1 200px;
1034  }
1035
1036  @media only screen and (min-width: 769px) {
1037    .header-item--logo,
1038    .header-layout--left-center .header-item--logo,
1039    .header-layout--left-center .header-item--icons {
1040      -webkit-box-flex: 0 0 200px;
1041      -ms-flex: 0 0 200px;
1042      flex: 0 0 200px;
1043    }
1044  }
1045
1046  .site-header__logo a {
1047    max-width: 200px;
1048  }
1049  .is-light .site-header__logo .logo--inverted {
1050    max-width: 200px;
1051  }
1052  @media only screen and (min-width: 769px) {
1053    .site-header__logo a {
1054      max-width: 200px;
1055    }
1056
1057    .is-light .site-header__logo .logo--inverted {
1058      max-width: 200px;
1059    }
1060  }</style><h1 id="LogoContainer" class="site-header__logo" itemscope itemtype="http://schema.org/Organization">
1061    <span class="visually-hidden">Bond &amp; Mason</span><a href="/" itemprop="url">Bond &amp; Mason</a></h1></div><div class="header-item header-item--navigation text-center" role="navigation" aria-label="Primary"><ul
1062  class="site-nav site-navigation medium-down--hide"
1063><li class="site-nav__item site-nav__expanded-item">
1064
1065      
1066        <a
1067          href="/"
1068          class="site-nav__link"
1069        >
1070          Home
1071</a>
1072      
1073
1074    </li><li class="site-nav__item site-nav__expanded-item site-nav--has-dropdown">
1075
1076      
1077        <details
1078          id="site-nav-item--2"
1079          class="site-nav__details"
1080          data-hover="false"
1081        >
1082          <summary
1083            data-link="/collections/handbags"
1084            aria-expanded="false"
1085            aria-controls="site-nav-item--2"
1086            class="site-nav__link site-nav__link--underline site-nav__link--has-dropdown"
1087          >
1088            All Categories <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewB
1088ox="0 0 28 16"><path d="m1.57 1.59 12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none"/></svg>
1089          </summary>
1090      
1091<ul class="site-nav__dropdown text-left"><li class="">
1092              
1093                <a href="/collections/handbags" class="site-nav__dropdown-link site-nav__dropdown-link--second-level">
1094                  Handbags
1095                </a>
1096              
1097
1098            </li><li class="">
1099              
1100                <a href="/collections/backpacks" class="site-nav__dropdown-link site-nav__dropdown-link--second-level">
1101                  Backpacks
1102                </a>
1103              
1104
1105            </li><li class="">
1106              
1107                <a href="/collections/wallets-purses" class="site-nav__dropdown-link site-nav__dropdown-link--second-level">
1108                  Wallets &amp; Purses
1109                </a>
1110              
1111
1112            </li><li class="">
1113              
1114                <a href="/collections/crossbody-bags" class="site-nav__dropdown-link site-nav__dropdown-link--second-level">
1115                  Crossbody Bags
1116                </a>
1117              
1118
1119            </li><li class="">
1120              
1121                <a href="/collections/tote-bags" class="site-nav__dropdown-link site-nav__dropdown-link--second-level">
1122                  Tote Bags
1123                </a>
1124              
1125
1126            </li><li class="">
1127              
1128                <a href="/collections/travel-bags" class="site-nav__dropdown-link site-nav__dropdown-link--second-level">
1129                  Travel Bags
1130                </a>
1131              
1132
1133            </li><li class="">
1134              
1135                <a href="/collections/new-arrivals" class="site-nav__dropdown-link site-nav__dropdown-link--second-level">
1136                  New Arrivals
1137                </a>
1138              
1139
1140            </li></ul>
1141        </details>
1142      
1143    </li><li class="site-nav__item site-nav__expanded-item">
1144
1145      
1146        <a
1147          href="/collections/deals-sales"
1148          class="site-nav__link"
1149        >
1150          Deals & Sales
1151</a>
1152      
1153
1154    </li><li class="site-nav__item site-nav__expanded-item">
1155
1156      
1157        <a
1158          href="/apps/track-order"
1159          class="site-nav__link"
1160        >
1161          Order Tracking
1162</a>
1163      
1164
1165    </li><li class="site-nav__item site-nav__expanded-item">
1166
1167      
1168        <a
1169          href="https://bondandmason.returnscenter.com/"
1170          class="site-nav__link"
1171        >
1172          Returns Center
1173</a>
1174      
1175
1176    </li></ul>
1177</div><div class="header-item header-item--icons"><div class="site-nav site-nav--icons">
1178  <div class="site-nav__icons">
1179    
1180      <span class="site-nav__link site-nav__link--icon medium-down--hide">
1181
1182<shopify-account
1183  
1184    menu="customer-account-main-menu"
1185  
1186>
1187  <div slot="signed-out-avatar">
1188    
1189      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-user" viewBox="0 0 64 64"><title>account</title><path d="M35 39.84v-2.53c3.3-1.91 6-6.66 6-11.41 0-7.63 0-13.82-9-13.82s-9 6.19-9 13.82c0 4.75 2.7 9.51 6 11.41v2.53c-10.18.85-18 6-18 12.16h42c0-6.19-7.82-11.31-18-12.16Z"/></svg>
1190      <span class="icon__fallback-text">
1191        Log in
1192      </span>
1193    
1194  </div>
1195</shopify-account>
1196
1197
1198</span>
1199    
1200
1201    
1202      <a href="/search" class="site-nav__link site-nav__link--icon js-search-header js-no-transition">
1203        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><title>icon-search</title><path d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58ZM54 54 41.94 42"/></svg>
1204        <span class="icon__fallback-text">Search</span>
1205      </a>
1206    
1207
1208    
1209      <button
1210        type="button"
1211        class="site-nav__link site-nav__link--icon js-drawer-open-nav large-up--hide"
1212        aria-controls="NavDrawer">
1213        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-hamburger" viewBox="0 0 64 64"><title>icon-hamburger</title><path d="M7 15h51M7 32h43M7 49h51"/></svg>
1214        <span class="icon__fallback-text">Site navigation</span>
1215      </button>
1216    
1217
1218    <a href="/cart" class="site-nav__link site-nav__link--icon js-drawer-open-cart js-no-transition" aria-controls="CartDrawer" data-icon="bag-minimal">
1219      <span class="cart-link"><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-bag-minimal" viewBox="0 0 64 64"><title>icon-bag-minimal</title><path stroke="null" fill-opacity="null" stroke-opacity="null" fill="null" d="M11.375 17.863h41.25v36.75h-41.25z"/><path stroke="null" d="M22.25 18c0-7.105 4.35-9 9.75-9s9.75 1.895 9.75 9"/></svg><span class="icon__fallback-text">Cart</span>
1220        <span class="cart-link__bubble"></span>
1221      </span>
1222    </a>
1223  </div>
1224</div>
1225</div>
1226        </div></div>
1227      <div class="site-header__search-container">
1228        <div class="site-header__search">
1229          <div class="page-width">
1230            <predictive-search data-context="header" data-enabled="true" data-dark="false">
1231  <div class="predictive__screen" data-screen></div>
1232  <form action="/search" method="get" role="search">
1233    <label for="Search" class="hidden-label">Search</label>
1234    <div class="search__input-wrap">
1235      <input
1236        class="search__input"
1237        id="Search"
1238        type="search"
1239        name="q"
1240        value=""
1241        role="combobox"
1242        aria-expanded="false"
1243        aria-owns="predictive-search-results"
1244        aria-controls="predictive-search-results"
1245        aria-haspopup="listbox"
1246        aria-autocomplete="list"
1247        autocorrect="off"
1248        autocomplete="off"
1249        autocapitalize="off"
1250        spellcheck="false"
1251        placeholder="Search"
1252        tabindex="0"
1253      >
1254      <input name="options[prefix]" type="hidden" value="last">
1255      <button class="btn--search" type="submit">
1256        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-search" viewBox="0 0 64 64"><defs><style>.cls-1{fill:none;stroke:#000;stroke-miterlimit:10;stroke-width:2px}</style></defs><path class="cls-1" d="M47.16 28.58A18.58 18.58 0 1 1 28.58 10a18.58 18.58 0 0 1 18.58 18.58zM54 54L41.94 42"/></svg>
1257        <span class="icon__fallback-text">Search</span>
1258      </button>
1259    </div>
1260
1261    <button class="btn--close-search">
1262      <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><defs><style>.cls-1{fill:none;stroke:#000;stroke-miterlimit:10;stroke-width:2px}</style></defs><path class="cls-1" d="M19 17.61l27.12 27.13m0-27.13L19 44.74"/></svg>
1263    </button>
1264    <div id="predictive-search" class="search__results" tabindex="-1"></div>
1265  </form>
1266</predictive-search>
1267
1268          </div>
1269        </div>
1270      </div>
1271    </header>
1272  </div>
1273</div><style data-shopify>/* Offset first hero's text to make room for overlaid navigation */
1274    .shopify-section:first-child .hero__text-content.vertical-center {
1275      padding-top: 110px;
1276    }
1277    @media screen and (max-width: 768px) {
1278      .shopify-section:first-child .hero__text-content.vertical-center {
1279        padding-top: 70px;
1280      }
1281    }</style>
1282</div>
1283<!-- END sections: header-group --><!-- BEGIN sections: popup-group -->
1284
1285<!-- END sections: popup-group --><main class="main-content" id="MainContent">
1286        <div id="shopify-section-template--28602504773978__hero-video" class="shopify-section index-section--hero"><style data-shopify>.hero--template--28602504773978__hero-video .hero__title {
1287    font-size: 40.0px;
1288  }
1289  @media only screen and (min-width: 769px) {
1290    .hero--template--28602504773978__hero-video .hero__title {
1291      font-size: 80px;
1292    }
1293  }
1294
1295  
1296</style><div
1297  data-section-id="template--28602504773978__hero-video"
1298  data-section-type="video-section"
1299  data-mobile-natural="false"
1300  class="video-parent-section hero hero--template--28602504773978__hero-video hero--650px hero--mobile--auto"
1301  data-aos="hero__animation">
1302
1303  <div class="hero__media hero__media--template--28602504773978__hero-video"><video
1304        id="Mp4Video-template--28602504773978__hero-video"
1305        class="video-div"
1306        src="https://cdn.shopify.com/videos/c/o/v/f979063d8b7248019275fc6a8dac5b85.mp4"
1307        data-type="mp4"
1308        loop muted playsinline></video></div>
1309
1310  <div class="hero__text-wrap">
1311    <div class="page-width">
1312      <div class="hero__text-content vertical-bottom horizontal-center"><h2 class="h1 hero__title">
1313            <div class="animation-cropper"><div class="animation-contents">
1314            Ready for a new kind of bag?
1315            </div></div>
1316          </h2><div class="hero__subtitle">
1317              <div class="animation-cropper"><div class="animation-contents">
1318                100% Durable Vegan Leather
1319              </div></div>
1320            </div></div>
1321    </div>
1322  </div>
1323
1324</div>
1325
1326
1327</div><div id="shopify-section-template--28602504773978__featured-collection-switcher" class="shopify-section index-section"><div
1328  id="CollectionSection-template--28602504773978__featured-collection-switcher"
1329  data-section-id="template--28602504773978__featured-collection-switcher"
1330  data-section-type="collection-switcher"
1331  data-per-row="4"><div class="page-width">
1332      <div class="section-header text-center">
1333        <div class="animation-cropper animation-cropper--full" data-aos="section-reveal">
1334          <div class="animation-contents">
1335            <div class="larger-text">
1336              <p class="subtitle">Most popular</p>
1337            </div>
1338          </div>
1339        </div><h3 class="collection-switcher__title">
1340            <a href="/collections/handbags"
1341              class="collection-switcher__trigger is-active js-no-transition"
1342              aria-controls="collection1-template--28602504773978__featured-collection-switcher">
1343              Handbags
1344            </a>
1345          </h3></div>
1346    </div>
1347  
1348<div class="page-width"><div id="collection1-template--28602504773978__featured-collection-switcher" class="collection-switcher__collection" data-index="0">
1349        <div
1350          id="CollectionSwitcher1-template--28602504773978__featured-collection-switcher"
1351          class="grid collection-switcher__collection-grid"
1352          data-per-row="4"><div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-meghan-handbag" data-product-id="7646431052019">
1353  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €90,00
1354          </div><a href="/products/the-meghan-handbag" class="grid-product__link">
1355      <div class="grid-product__image-mask"><div class="image-wrap"
1356            
1357              style="height: 0; padding-bottom: 100.0%;"
1358            
1359            >
1360
1361
1362
1363<image-element data-aos="image-fade-in" data-aos-offset="150">
1364
1365
1366  
1367<img src="//bondandmason.com/cdn/shop/files/DSC_5926.jpg?v=1772094070&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/DSC_5926.jpg?v=1772094070&amp;width=180 180w, //bondandmason.com/cdn/shop/files/DSC_5926.jpg?v=1772094070&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSC_5926.jpg?v=1772094070&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSC_5926.jpg?v=1772094070&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSC_5926.jpg?v=1772094070&amp;width=900 900w, //bondandmason.com/cdn/shop/files/DSC_5926.jpg?v=1772094070&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1368 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1369  
1370
1371
1372</image-element>
1373</div><div class="grid-product__secondary-image small--hide">
1374
1375
1376
1377<image-element data-aos="image-fade-in" data-aos-offset="150">
1378
1379
1380  
1381<img src="//bondandmason.com/cdn/shop/files/DSC_5924.jpg?v=1772094070&amp;width=1000" alt="The Meghan Handbag" srcset="//bondandmason.com/cdn/shop/files/DSC_5924.jpg?v=1772094070&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSC_5924.jpg?v=1772094070&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSC_5924.jpg?v=1772094070&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSC_5924.jpg?v=1772094070&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1382 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1383  
1384
1385
1386</image-element>
1387</div></div>
1388
1389      <div class="grid-product__meta">
1390        <div class="grid-product__title">The Meghan Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1391            <span class="grid-product__price--original">€128,00</span>
1392            <span class="visually-hidden">Sale price</span><span class="sale-price">
1393              €38,00
1394            </span></div></div>
1395    </a>
1396
1397    
1398
1399  </div></div>
1400<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-christy-handbag" data-product-id="7998104568051">
1401  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €80,00
1402          </div><a href="/products/the-christy-handbag" class="grid-product__link">
1403      <div class="grid-product__image-mask"><div class="image-wrap"
1404            
1405              style="height: 0; padding-bottom: 100.0%;"
1406            
1407            >
1408
1409
1410
1411<image-element data-aos="image-fade-in" data-aos-offset="150">
1412
1413
1414  
1415<img src="//bondandmason.com/cdn/shop/files/O1CN01TiHdwe1ggp8PfIlbS__2469574172-0-cib.jpg?v=1720577356&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/O1CN01TiHdwe1ggp8PfIlbS__2469574172-0-cib.jpg?v=1720577356&amp;width=180 180w, //bondandmason.com/cdn/shop/files/O1CN01TiHdwe1ggp8PfIlbS__2469574172-0-cib.jpg?v=1720577356&amp;width=360 360w, //bondandmason.com/cdn/shop/files/O1CN01TiHdwe1ggp8PfIlbS__2469574172-0-cib.jpg?v=1720577356&amp;width=540 540w, //bondandmason.com/cdn/shop/files/O1CN01TiHdwe1ggp8PfIlbS__2469574172-0-cib.jpg?v=1720577356&amp;width=720 720w, //bondandmason.com/cdn/shop/files/O1CN01TiHdwe1ggp8PfIlbS__2469574172-0-cib.jpg?v=1720577356&amp;width=900 900w, //bondandmason.com/cdn/shop/files/O1CN01TiHdwe1ggp8PfIlbS__2469574172-0-cib.jpg?v=1720577356&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1416 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1417  
1418
1419
1420</image-element>
1421</div><div class="grid-product__secondary-image small--hide">
1422
1423
1424
1425<image-element data-aos="image-fade-in" data-aos-offset="150">
1426
1427
1428  
1429<img src="//bondandmason.com/cdn/shop/files/O1CN01zFjTwZ1ggp8GYsK74__2469574172-0-cib.jpg?v=1720577443&amp;width=1000" alt="The Christy Handbag" srcset="//bondandmason.com/cdn/shop/files/O1CN01zFjTwZ1ggp8GYsK74__2469574172-0-cib.jpg?v=1720577443&amp;width=360 360w, //bondandmason.com/cdn/shop/files/O1CN01zFjTwZ1ggp8GYsK74__2469574172-0-cib.jpg?v=1720577443&amp;width=540 540w, //bondandmason.com/cdn/shop/files/O1CN01zFjTwZ1ggp8GYsK74__2469574172-0-cib.jpg?v=1720577443&amp;width=720 720w, //bondandmason.com/cdn/shop/files/O1CN01zFjTwZ1ggp8GYsK74__2469574172-0-cib.jpg?v=1720577443&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1430 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1431  
1432
1433
1434</image-element>
1435</div></div>
1436
1437      <div class="grid-product__meta">
1438        <div class="grid-product__title">The Christy Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1439            <span class="grid-product__price--original">€110,00</span>
1440            <span class="visually-hidden">Sale price</span><span class="sale-price">
1441              €30,00
1442            </span></div></div>
1443    </a>
1444
1445    
1446
1447  </div></div>
1448<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-sandra-handbag" data-product-id="7004949283009">
1449  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €79,00
1450          </div><a href="/products/the-sandra-handbag" class="grid-product__link">
1451      <div class="grid-product__image-mask"><div class="image-wrap"
1452            
1453              style="height: 0; padding-bottom: 100.0%;"
1454            
1455            >
1456
1457
1458
1459<image-element data-aos="image-fade-in" data-aos-offset="150">
1460
1461
1462  
1463<img src="//bondandmason.com/cdn/shop/files/1_TheSandraHandbagwhite.jpg?v=1772094309&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/1_TheSandraHandbagwhite.jpg?v=1772094309&amp;width=180 180w, //bondandmason.com/cdn/shop/files/1_TheSandraHandbagwhite.jpg?v=1772094309&amp;width=360 360w, //bondandmason.com/cdn/shop/files/1_TheSandraHandbagwhite.jpg?v=1772094309&amp;width=540 540w, //bondandmason.com/cdn/shop/files/1_TheSandraHandbagwhite.jpg?v=1772094309&amp;width=720 720w, //bondandmason.com/cdn/shop/files/1_TheSandraHandbagwhite.jpg?v=1772094309&amp;width=900 900w, //bondandmason.com/cdn/shop/files/1_TheSandraHandbagwhite.jpg?v=1772094309&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1464 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1465  
1466
1467
1468</image-element>
1469</div><div class="grid-product__secondary-image small--hide">
1470
1471
1472
1473<image-element data-aos="image-fade-in" data-aos-offset="150">
1474
1475
1476  
1477<img src="//bondandmason.com/cdn/shop/files/3_TheSandraHandbag.jpg?v=1772094309&amp;width=1000" alt="The Sandra Handbag" srcset="//bondandmason.com/cdn/shop/files/3_TheSandraHandbag.jpg?v=1772094309&amp;width=360 360w, //bondandmason.com/cdn/shop/files/3_TheSandraHandbag.jpg?v=1772094309&amp;width=540 540w, //bondandmason.com/cdn/shop/files/3_TheSandraHandbag.jpg?v=1772094309&amp;width=720 720w, //bondandmason.com/cdn/shop/files/3_TheSandraHandbag.jpg?v=1772094309&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1478 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1479  
1480
1481
1482</image-element>
1483</div></div>
1484
1485      <div class="grid-product__meta">
1486        <div class="grid-product__title">The Sandra Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1487            <span class="grid-product__price--original">€115,00</span>
1488            <span class="visually-hidden">Sale price</span><span class="sale-price">
1489              €36,00
1490            </span></div></div>
1491    </a>
1492
1493    
1494
1495  </div></div>
1496<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-amari-handbag" data-product-id="7479475929331">
1497  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €83,00
1498          </div><a href="/products/the-amari-handbag" class="grid-product__link">
1499      <div class="grid-product__image-mask"><div class="image-wrap"
1500            
1501              style="height: 0; padding-bottom: 100.0%;"
1502            
1503            >
1504
1505
1506
1507<image-element data-aos="image-fade-in" data-aos-offset="150">
1508
1509
1510  
1511<img src="//bondandmason.com/cdn/shop/files/h233e109cd00046109d76989104ffe.jpg?v=1720496244&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/h233e109cd00046109d76989104ffe.jpg?v=1720496244&amp;width=180 180w, //bondandmason.com/cdn/shop/files/h233e109cd00046109d76989104ffe.jpg?v=1720496244&amp;width=360 360w, //bondandmason.com/cdn/shop/files/h233e109cd00046109d76989104ffe.jpg?v=1720496244&amp;width=540 540w, //bondandmason.com/cdn/shop/files/h233e109cd00046109d76989104ffe.jpg?v=1720496244&amp;width=720 720w, //bondandmason.com/cdn/shop/files/h233e109cd00046109d76989104ffe.jpg?v=1720496244&amp;width=900 900w, //bondandmason.com/cdn/shop/files/h233e109cd00046109d76989104ffe.jpg?v=1720496244&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1512 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1513  
1514
1515
1516</image-element>
1517</div><div class="grid-product__secondary-image small--hide">
1518
1519
1520
1521<image-element data-aos="image-fade-in" data-aos-offset="150">
1522
1523
1524  
1525<img src="//bondandmason.com/cdn/shop/files/h21df461ad5fe48188087e2c7bba29.jpg?v=1720496265&amp;width=1000" alt="The Amari Handbag" srcset="//bondandmason.com/cdn/shop/files/h21df461ad5fe48188087e2c7bba29.jpg?v=1720496265&amp;width=360 360w, //bondandmason.com/cdn/shop/files/h21df461ad5fe48188087e2c7bba29.jpg?v=1720496265&amp;width=540 540w, //bondandmason.com/cdn/shop/files/h21df461ad5fe48188087e2c7bba29.jpg?v=1720496265&amp;width=720 720w, //bondandmason.com/cdn/shop/files/h21df461ad5fe48188087e2c7bba29.jpg?v=1720496265&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1526 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1527  
1528
1529
1530</image-element>
1531</div></div>
1532
1533      <div class="grid-product__meta">
1534        <div class="grid-product__title">The Amari Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1535            <span class="grid-product__price--original">€110,00</span>
1536            <span class="visually-hidden">Sale price</span><span class="sale-price">
1537              €27,00
1538            </span></div></div>
1539    </a>
1540
1541    
1542
1543  </div></div>
1544<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-scarlett-handbag-2" data-product-id="8623303786842">
1545  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €82,00
1546          </div><a href="/products/the-scarlett-handbag-2" class="grid-product__link">
1547      <div class="grid-product__image-mask"><div class="image-wrap"
1548            
1549              style="height: 0; padding-bottom: 100.0%;"
1550            
1551            >
1552
1553
1554
1555<image-element data-aos="image-fade-in" data-aos-offset="150">
1556
1557
1558  
1559<img src="//bondandmason.com/cdn/shop/files/IMG_1873_667e4015-cc35-495d-b608-4a9616e7d546.jpg?v=1726545933&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/IMG_1873_667e4015-cc35-495d-b608-4a9616e7d546.jpg?v=1726545933&amp;width=180 180w, //bondandmason.com/cdn/shop/files/IMG_1873_667e4015-cc35-495d-b608-4a9616e7d546.jpg?v=1726545933&amp;width=360 360w, //bondandmason.com/cdn/shop/files/IMG_1873_667e4015-cc35-495d-b608-4a9616e7d546.jpg?v=1726545933&amp;width=540 540w, //bondandmason.com/cdn/shop/files/IMG_1873_667e4015-cc35-495d-b608-4a9616e7d546.jpg?v=1726545933&amp;width=720 720w, //bondandmason.com/cdn/shop/files/IMG_1873_667e4015-cc35-495d-b608-4a9616e7d546.jpg?v=1726545933&amp;width=900 900w, //bondandmason.com/cdn/shop/files/IMG_1873_667e4015-cc35-495d-b608-4a9616e7d546.jpg?v=1726545933&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1560 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1561  
1562
1563
1564</image-element>
1565</div><div class="grid-product__secondary-image small--hide">
1566
1567
1568
1569<image-element data-aos="image-fade-in" data-aos-offset="150">
1570
1571
1572  
1573<img src="//bondandmason.com/cdn/shop/files/IMG_1885_113eb001-23d2-4b0e-b7d2-4369f47e7560.jpg?v=1726545966&amp;width=1000" alt="The Scarlett Handbag" srcset="//bondandmason.com/cdn/shop/files/IMG_1885_113eb001-23d2-4b0e-b7d2-4369f47e7560.jpg?v=1726545966&amp;width=360 360w, //bondandmason.com/cdn/shop/files/IMG_1885_113eb001-23d2-4b0e-b7d2-4369f47e7560.jpg?v=1726545966&amp;width=540 540w, //bondandmason.com/cdn/shop/files/IMG_1885_113eb001-23d2-4b0e-b7d2-4369f47e7560.jpg?v=1726545966&amp;width=720 720w, //bondandmason.com/cdn/shop/files/IMG_1885_113eb001-23d2-4b0e-b7d2-4369f47e7560.jpg?v=1726545966&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1574 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1575  
1576
1577
1578</image-element>
1579</div></div>
1580
1581      <div class="grid-product__meta">
1582        <div class="grid-product__title">The Scarlett Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1583            <span class="grid-product__price--original">€120,00</span>
1584            <span class="visually-hidden">Sale price</span><span class="sale-price">
1585              €38,00
1586            </span></div></div>
1587    </a>
1588
1589    
1590
1591  </div></div>
1592<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-helena-handbag" data-product-id="10278505382234">
1593  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €90,00
1594          </div><a href="/products/the-helena-handbag" class="grid-product__link">
1595      <div class="grid-product__image-mask"><div class="image-wrap"
1596            
1597              style="height: 0; padding-bottom: 100.0%;"
1598            
1599            >
1600
1601
1602
1603<image-element data-aos="image-fade-in" data-aos-offset="150">
1604
1605
1606  
1607<img src="//bondandmason.com/cdn/shop/files/DSC_7025.jpg?v=1772073547&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/DSC_7025.jpg?v=1772073547&amp;width=180 180w, //bondandmason.com/cdn/shop/files/DSC_7025.jpg?v=1772073547&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSC_7025.jpg?v=1772073547&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSC_7025.jpg?v=1772073547&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSC_7025.jpg?v=1772073547&amp;width=900 900w, //bondandmason.com/cdn/shop/files/DSC_7025.jpg?v=1772073547&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1608 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1609  
1610
1611
1612</image-element>
1613</div><div class="grid-product__secondary-image small--hide">
1614
1615
1616
1617<image-element data-aos="image-fade-in" data-aos-offset="150">
1618
1619
1620  
1621<img src="//bondandmason.com/cdn/shop/files/DSC_7027.jpg?v=1772073547&amp;width=1000" alt="The Helena Handbag" srcset="//bondandmason.com/cdn/shop/files/DSC_7027.jpg?v=1772073547&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSC_7027.jpg?v=1772073547&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSC_7027.jpg?v=1772073547&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSC_7027.jpg?v=1772073547&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1622 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1623  
1624
1625
1626</image-element>
1627</div></div>
1628
1629      <div class="grid-product__meta">
1630        <div class="grid-product__title">The Helena Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1631            <span class="grid-product__price--original">€128,00</span>
1632            <span class="visually-hidden">Sale price</span><span class="sale-price">
1633              €38,00
1634            </span></div></div>
1635    </a>
1636
1637    
1638
1639  </div></div>
1640<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-ashley-crossbody-bag" data-product-id="7527747125491">
1641  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €94,00
1642          </div><a href="/products/the-ashley-crossbody-bag" class="grid-product__link">
1643      <div class="grid-product__image-mask"><div class="image-wrap"
1644            
1645              style="height: 0; padding-bottom: 100.0%;"
1646            
1647            >
1648
1649
1650
1651<image-element data-aos="image-fade-in" data-aos-offset="150">
1652
1653
1654  
1655<img src="//bondandmason.com/cdn/shop/files/3_otherWHITEsmallercanva.jpg?v=1726211048&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/3_otherWHITEsmallercanva.jpg?v=1726211048&amp;width=180 180w, //bondandmason.com/cdn/shop/files/3_otherWHITEsmallercanva.jpg?v=1726211048&amp;width=360 360w, //bondandmason.com/cdn/shop/files/3_otherWHITEsmallercanva.jpg?v=1726211048&amp;width=540 540w, //bondandmason.com/cdn/shop/files/3_otherWHITEsmallercanva.jpg?v=1726211048&amp;width=720 720w, //bondandmason.com/cdn/shop/files/3_otherWHITEsmallercanva.jpg?v=1726211048&amp;width=900 900w, //bondandmason.com/cdn/shop/files/3_otherWHITEsmallercanva.jpg?v=1726211048&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1656 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1657  
1658
1659
1660</image-element>
1661</div><div class="grid-product__secondary-image small--hide">
1662
1663
1664
1665<image-element data-aos="image-fade-in" data-aos-offset="150">
1666
1667
1668  
1669<img src="//bondandmason.com/cdn/shop/files/DSCF1422_dd441403-5063-4cdd-a3fe-f416fe42d2c1.jpg?v=1726211067&amp;width=1000" alt="The Ashley Crossbody Bag" srcset="//bondandmason.com/cdn/shop/files/DSCF1422_dd441403-5063-4cdd-a3fe-f416fe42d2c1.jpg?v=1726211067&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSCF1422_dd441403-5063-4cdd-a3fe-f416fe42d2c1.jpg?v=1726211067&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSCF1422_dd441403-5063-4cdd-a3fe-f416fe42d2c1.jpg?v=1726211067&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSCF1422_dd441403-5063-4cdd-a3fe-f416fe42d2c1.jpg?v=1726211067&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1670 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1671  
1672
1673
1674</image-element>
1675</div></div>
1676
1677      <div class="grid-product__meta">
1678        <div class="grid-product__title">The Ashley Crossbody Bag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1679            <span class="grid-product__price--original">€128,00</span>
1680            <span class="visually-hidden">Sale price</span><span class="sale-price">
1681              €34,00
1682            </span></div></div>
1683    </a>
1684
1685    
1686
1687  </div></div>
1688<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-zara-handbag" data-product-id="8694843670874">
1689  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €80,00
1690          </div><a href="/products/the-zara-handbag" class="grid-product__link">
1691      <div class="grid-product__image-mask"><div class="image-wrap"
1692            
1693              style="height: 0; padding-bottom: 100.0%;"
1694            
1695            >
1696
1697
1698
1699<image-element data-aos="image-fade-in" data-aos-offset="150">
1700
1701
1702  
1703<img src="//bondandmason.com/cdn/shop/files/202401021801404_ba785e9a-93a7-4f87-a285-a00c11115cf0.jpg?v=1718943474&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/202401021801404_ba785e9a-93a7-4f87-a285-a00c11115cf0.jpg?v=1718943474&amp;width=180 180w, //bondandmason.com/cdn/shop/files/202401021801404_ba785e9a-93a7-4f87-a285-a00c11115cf0.jpg?v=1718943474&amp;width=360 360w, //bondandmason.com/cdn/shop/files/202401021801404_ba785e9a-93a7-4f87-a285-a00c11115cf0.jpg?v=1718943474&amp;width=540 540w, //bondandmason.com/cdn/shop/files/202401021801404_ba785e9a-93a7-4f87-a285-a00c11115cf0.jpg?v=1718943474&amp;width=720 720w, //bondandmason.com/cdn/shop/files/202401021801404_ba785e9a-93a7-4f87-a285-a00c11115cf0.jpg?v=1718943474&amp;width=900 900w, //bondandmason.com/cdn/shop/files/202401021801404_ba785e9a-93a7-4f87-a285-a00c11115cf0.jpg?v=1718943474&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1704 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1705  
1706
1707
1708</image-element>
1709</div><div class="grid-product__secondary-image small--hide">
1710
1711
1712
1713<image-element data-aos="image-fade-in" data-aos-offset="150">
1714
1715
1716  
1717<img src="//bondandmason.com/cdn/shop/files/202401021801403_5843910d-0035-48ba-8294-74aec42ab861.jpg?v=1718943502&amp;width=1000" alt="The Zara Handbag" srcset="//bondandmason.com/cdn/shop/files/202401021801403_5843910d-0035-48ba-8294-74aec42ab861.jpg?v=1718943502&amp;width=360 360w, //bondandmason.com/cdn/shop/files/202401021801403_5843910d-0035-48ba-8294-74aec42ab861.jpg?v=1718943502&amp;width=540 540w, //bondandmason.com/cdn/shop/files/202401021801403_5843910d-0035-48ba-8294-74aec42ab861.jpg?v=1718943502&amp;width=720 720w, //bondandmason.com/cdn/shop/files/202401021801403_5843910d-0035-48ba-8294-74aec42ab861.jpg?v=1718943502&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1718 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1719  
1720
1721
1722</image-element>
1723</div></div>
1724
1725      <div class="grid-product__meta">
1726        <div class="grid-product__title">The Zara Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1727            <span class="grid-product__price--original">€110,00</span>
1728            <span class="visually-hidden">Sale price</span><span class="sale-price">
1729              €30,00
1730            </span></div></div>
1731    </a>
1732
1733    
1734
1735  </div></div>
1736<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-alexandra-crossbody-bag" data-product-id="6986208051393">
1737  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €71,00
1738          </div><a href="/products/the-alexandra-crossbody-bag" class="grid-product__link">
1739      <div class="grid-product__image-mask"><div class="image-wrap"
1740            
1741              style="height: 0; padding-bottom: 100.0%;"
1742            
1743            >
1744
1745
1746
1747<image-element data-aos="image-fade-in" data-aos-offset="150">
1748
1749
1750  
1751<img src="//bondandmason.com/cdn/shop/files/19white-jpg_8ba11e2a-edbf-4bf7-b5bc-80ba6edb1d90.jpg?v=1774104240&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/19white-jpg_8ba11e2a-edbf-4bf7-b5bc-80ba6edb1d90.jpg?v=1774104240&amp;width=180 180w, //bondandmason.com/cdn/shop/files/19white-jpg_8ba11e2a-edbf-4bf7-b5bc-80ba6edb1d90.jpg?v=1774104240&amp;width=360 360w, //bondandmason.com/cdn/shop/files/19white-jpg_8ba11e2a-edbf-4bf7-b5bc-80ba6edb1d90.jpg?v=1774104240&amp;width=540 540w, //bondandmason.com/cdn/shop/files/19white-jpg_8ba11e2a-edbf-4bf7-b5bc-80ba6edb1d90.jpg?v=1774104240&amp;width=720 720w, //bondandmason.com/cdn/shop/files/19white-jpg_8ba11e2a-edbf-4bf7-b5bc-80ba6edb1d90.jpg?v=1774104240&amp;width=900 900w, //bondandmason.com/cdn/shop/files/19white-jpg_8ba11e2a-edbf-4bf7-b5bc-80ba6edb1d90.jpg?v=1774104240&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1752 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1753  
1754
1755
1756</image-element>
1757</div><div class="grid-product__secondary-image small--hide">
1758
1759
1760
1761<image-element data-aos="image-fade-in" data-aos-offset="150">
1762
1763
1764  
1765<img src="//bondandmason.com/cdn/shop/files/19.1_3bc7d92f-cbe2-485a-9bc7-0d3d64459286.jpg?v=1774104240&amp;width=1000" alt="The Alexandra Crossbody Bag" srcset="//bondandmason.com/cdn/shop/files/19.1_3bc7d92f-cbe2-485a-9bc7-0d3d64459286.jpg?v=1774104240&amp;width=360 360w, //bondandmason.com/cdn/shop/files/19.1_3bc7d92f-cbe2-485a-9bc7-0d3d64459286.jpg?v=1774104240&amp;width=540 540w, //bondandmason.com/cdn/shop/files/19.1_3bc7d92f-cbe2-485a-9bc7-0d3d64459286.jpg?v=1774104240&amp;width=720 720w, //bondandmason.com/cdn/shop/files/19.1_3bc7d92f-cbe2-485a-9bc7-0d3d64459286.jpg?v=1774104240&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1766 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1767  
1768
1769
1770</image-element>
1771</div></div>
1772
1773      <div class="grid-product__meta">
1774        <div class="grid-product__title">The Alexandra Crossbody Bag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1775            <span class="grid-product__price--original">€105,00</span>
1776            <span class="visually-hidden">Sale price</span><span class="sale-price">
1777              €34,00
1778            </span></div></div>
1779    </a>
1780
1781    
1782
1783  </div></div>
1784<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-leonora-handbag" data-product-id="10281687351642">
1785  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €92,00
1786          </div><a href="/products/the-leonora-handbag" class="grid-product__link">
1787      <div class="grid-product__image-mask"><div class="image-wrap"
1788            
1789              style="height: 0; padding-bottom: 100.0%;"
1790            
1791            >
1792
1793
1794
1795<image-element data-aos="image-fade-in" data-aos-offset="150">
1796
1797
1798  
1799<img src="//bondandmason.com/cdn/shop/files/DSC_7741.jpg?v=1772075028&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/DSC_7741.jpg?v=1772075028&amp;width=180 180w, //bondandmason.com/cdn/shop/files/DSC_7741.jpg?v=1772075028&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSC_7741.jpg?v=1772075028&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSC_7741.jpg?v=1772075028&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSC_7741.jpg?v=1772075028&amp;width=900 900w, //bondandmason.com/cdn/shop/files/DSC_7741.jpg?v=1772075028&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1800 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1801  
1802
1803
1804</image-element>
1805</div><div class="grid-product__secondary-image small--hide">
1806
1807
1808
1809<image-element data-aos="image-fade-in" data-aos-offset="150">
1810
1811
1812  
1813<img src="//bondandmason.com/cdn/shop/files/DSC_7739.jpg?v=1772075028&amp;width=1000" alt="The Leonora Handbag" srcset="//bondandmason.com/cdn/shop/files/DSC_7739.jpg?v=1772075028&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSC_7739.jpg?v=1772075028&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSC_7739.jpg?v=1772075028&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSC_7739.jpg?v=1772075028&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1814 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1815  
1816
1817
1818</image-element>
1819</div></div>
1820
1821      <div class="grid-product__meta">
1822        <div class="grid-product__title">The Leonora Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1823            <span class="grid-product__price--original">€128,00</span>
1824            <span class="visually-hidden">Sale price</span><span class="sale-price">
1825              €36,00
1826            </span></div></div>
1827    </a>
1828
1829    
1830
1831  </div></div>
1832<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-bridget-handbag" data-product-id="7510042345715">
1833  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €83,00
1834          </div><a href="/products/the-bridget-handbag" class="grid-product__link">
1835      <div class="grid-product__image-mask"><div class="image-wrap"
1836            
1837              style="height: 0; padding-bottom: 100.0%;"
1838            
1839            >
1840
1841
1842
1843<image-element data-aos="image-fade-in" data-aos-offset="150">
1844
1845
1846  
1847<img src="//bondandmason.com/cdn/shop/files/1-jpg-jpg_cd849e73-9dc4-458a-beb8-9255b3e2f8fa.jpg?v=1781834872&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/1-jpg-jpg_cd849e73-9dc4-458a-beb8-9255b3e2f8fa.jpg?v=1781834872&amp;width=180 180w, //bondandmason.com/cdn/shop/files/1-jpg-jpg_cd849e73-9dc4-458a-beb8-9255b3e2f8fa.jpg?v=1781834872&amp;width=360 360w, //bondandmason.com/cdn/shop/files/1-jpg-jpg_cd849e73-9dc4-458a-beb8-9255b3e2f8fa.jpg?v=1781834872&amp;width=540 540w, //bondandmason.com/cdn/shop/files/1-jpg-jpg_cd849e73-9dc4-458a-beb8-9255b3e2f8fa.jpg?v=1781834872&amp;width=720 720w, //bondandmason.com/cdn/shop/files/1-jpg-jpg_cd849e73-9dc4-458a-beb8-9255b3e2f8fa.jpg?v=1781834872&amp;width=900 900w, //bondandmason.com/cdn/shop/files/1-jpg-jpg_cd849e73-9dc4-458a-beb8-9255b3e2f8fa.jpg?v=1781834872&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1848 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1849  
1850
1851
1852</image-element>
1853</div><div class="grid-product__secondary-image small--hide">
1854
1855
1856
1857<image-element data-aos="image-fade-in" data-aos-offset="150">
1858
1859
1860  
1861<img src="//bondandmason.com/cdn/shop/files/hf8053232a9154944837fbdbc3fa90_d3172d7d-e3cf-4c83-b69d-02c039a7aed6.jpg?v=1781834872&amp;width=1000" alt="The Bridget Handbag" srcset="//bondandmason.com/cdn/shop/files/hf8053232a9154944837fbdbc3fa90_d3172d7d-e3cf-4c83-b69d-02c039a7aed6.jpg?v=1781834872&amp;width=360 360w, //bondandmason.com/cdn/shop/files/hf8053232a9154944837fbdbc3fa90_d3172d7d-e3cf-4c83-b69d-02c039a7aed6.jpg?v=1781834872&amp;width=540 540w, //bondandmason.com/cdn/shop/files/hf8053232a9154944837fbdbc3fa90_d3172d7d-e3cf-4c83-b69d-02c039a7aed6.jpg?v=1781834872&amp;width=720 720w, //bondandmason.com/cdn/shop/files/hf8053232a9154944837fbdbc3fa90_d3172d7d-e3cf-4c83-b69d-02c039a7aed6.jpg?v=1781834872&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1862 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1863  
1864
1865
1866</image-element>
1867</div></div>
1868
1869      <div class="grid-product__meta">
1870        <div class="grid-product__title">The Bridget Handbag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1871            <span class="grid-product__price--original">€110,00</span>
1872            <span class="visually-hidden">Sale price</span><span class="sale-price">
1873              €27,00
1874            </span></div></div>
1875    </a>
1876
1877    
1878
1879  </div></div>
1880<div class="grid__item grid-product small--one-half medium-up--one-quarter " data-aos="row-of-4" data-product-handle="the-mary-tote-bag" data-product-id="10613197603162">
1881  <div class="grid-product__content"><div class="grid-product__tag grid-product__tag--sale">Save €74,00
1882          </div><a href="/products/the-mary-tote-bag" class="grid-product__link">
1883      <div class="grid-product__image-mask"><div class="image-wrap"
1884            
1885              style="height: 0; padding-bottom: 100.0%;"
1886            
1887            >
1888
1889
1890
1891<image-element data-aos="image-fade-in" data-aos-offset="150">
1892
1893
1894  
1895<img src="//bondandmason.com/cdn/shop/files/DSC_0505.jpg?v=1765173101&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/DSC_0505.jpg?v=1765173101&amp;width=180 180w, //bondandmason.com/cdn/shop/files/DSC_0505.jpg?v=1765173101&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSC_0505.jpg?v=1765173101&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSC_0505.jpg?v=1765173101&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSC_0505.jpg?v=1765173101&amp;width=900 900w, //bondandmason.com/cdn/shop/files/DSC_0505.jpg?v=1765173101&amp;width=1080 1080w" width="1080" height="1080.0" loading="lazy" class="grid-product__image image-style--
1896 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1897  
1898
1899
1900</image-element>
1901</div><div class="grid-product__secondary-image small--hide">
1902
1903
1904
1905<image-element data-aos="image-fade-in" data-aos-offset="150">
1906
1907
1908  
1909<img src="//bondandmason.com/cdn/shop/files/DSC_0509.jpg?v=1765173101&amp;width=1000" alt="The Mary Tote Bag" srcset="//bondandmason.com/cdn/shop/files/DSC_0509.jpg?v=1765173101&amp;width=360 360w, //bondandmason.com/cdn/shop/files/DSC_0509.jpg?v=1765173101&amp;width=540 540w, //bondandmason.com/cdn/shop/files/DSC_0509.jpg?v=1765173101&amp;width=720 720w, //bondandmason.com/cdn/shop/files/DSC_0509.jpg?v=1765173101&amp;width=1000 1000w" width="1000" height="1000.0" loading="lazy" class="image-style--
1910 image-element" sizes="(min-width: 769px) 25vw, 50vw">
1911  
1912
1913
1914</image-element>
1915</div></div>
1916
1917      <div class="grid-product__meta">
1918        <div class="grid-product__title">The Mary Tote Bag</div><div class="grid-product__price"><span class="visually-hidden">Regular price</span>
1919            <span class="grid-product__price--original">€110,00</span>
1920            <span class="visually-hidden">Sale price</span><span class="sale-price">
1921              €36,00
1922            </span></div></div>
1923    </a>
1924
1925    
1926
1927  </div></div>
1928</div><p class="text-center">
1929            <a href="/collections/handbags" class="btn">View all</a>
1930          </p></div></div>
1931</div>
1932
1933
1934
1935</div><div id="shopify-section-template--28602504773978__1a329a51-f54d-4165-92ae-0246c2693fbf" class="shopify-section"><style data-shopify>
1936  
1937  
1938</style>
1939
1940<div class="index-section">
1941
1942  <div class="page-width feature-row-wrapper feature-row--66"><div class="feature-row"><div class="feature-row__item feature-row__text feature-row__text--right text-left"><div class="subheading">Every time</div><div class="animation-cropper animation-cropper--full" data-aos="section-reveal">
1943            <div class="animation-contents">
1944              <h2 class="h1">The Perfect Bag</h2>
1945            </div>
1946          </div><div class="rte"><p>Tailored for perfection every time. Countless samples have been re-measured and changed until we finally achieved the ultimate material blend of premium quality and durability.</p></div></div><div class="feature-row__item feature-row__images feature-row__item--overlap-images " data-aos><div class="feature-row__first-image"><div class="image-wrap " style="height: 0; padding-bottom: 150.00000000000003%;">
1947
1948
1949
1950<image-element data-aos="image-fade-in" data-aos-offset="150">
1951
1952
1953  
1954<img src="//bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00012_c16c967e-c4d9-4c9c-9f19-ada56ff8d87e.jpg?v=1651339911&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00012_c16c967e-c4d9-4c9c-9f19-ada56ff8d87e.jpg?v=1651339911&amp;width=180 180w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00012_c16c967e-c4d9-4c9c-9f19-ada56ff8d87e.jpg?v=1651339911&amp;width=360 360w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00012_c16c967e-c4d9-4c9c-9f19-ada56ff8d87e.jpg?v=1651339911&amp;width=540 540w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00012_c16c967e-c4d9-4c9c-9f19-ada56ff8d87e.jpg?v=1651339911&amp;width=750 750w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00012_c16c967e-c4d9-4c9c-9f19-ada56ff8d87e.jpg?v=1651339911&amp;width=900 900w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00012_c16c967e-c4d9-4c9c-9f19-ada56ff8d87e.jpg?v=1651339911&amp;width=1080 1080w" width="1080" height="1620.0000000000002" loading="lazy" class="feature-row__image image-element" sizes="(min-width: 769px) calc(0.4 * 50vw), 40vw">
1955  
1956
1957
1958</image-element>
1959</div></div><div class="feature-row__second-image"><div class="image-wrap " style="height: 0; padding-bottom: 150.00000000000003%;">
1960
1961
1962
1963<image-element data-aos="image-fade-in" data-aos-offset="150">
1964
1965
1966  
1967<img src="//bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00010_a0ddec94-4b86-4d9f-b69b-cfacb2a49cdc.jpg?v=1651339889&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00010_a0ddec94-4b86-4d9f-b69b-cfacb2a49cdc.jpg?v=1651339889&amp;width=180 180w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00010_a0ddec94-4b86-4d9f-b69b-cfacb2a49cdc.jpg?v=1651339889&amp;width=360 360w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00010_a0ddec94-4b86-4d9f-b69b-cfacb2a49cdc.jpg?v=1651339889&amp;width=540 540w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00010_a0ddec94-4b86-4d9f-b69b-cfacb2a49cdc.jpg?v=1651339889&amp;width=750 750w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00010_a0ddec94-4b86-4d9f-b69b-cfacb2a49cdc.jpg?v=1651339889&amp;width=900 900w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00010_a0ddec94-4b86-4d9f-b69b-cfacb2a49cdc.jpg?v=1651339889&amp;width=1080 1080w" width="1080" height="1620.0000000000002" loading="lazy" class="feature-row__image image-element" sizes="(min-width: 769px) calc(0.6 * 50vw), 60vw">
1968  
1969
1970
1971</image-element>
1972</div></div></div>
1973</div>
1974  </div>
1975
1976</div>
1977</div><div id="shopify-section-template--28602504773978__hero_video_VJBGRd" class="shopify-section index-section--hero"><style data-shopify>.hero--template--28602504773978__hero_video_VJBGRd .hero__title {
1978    font-size: 40.0px;
1979  }
1980  @media only screen and (min-width: 769px) {
1981    .hero--template--28602504773978__hero_video_VJBGRd .hero__title {
1982      font-size: 80px;
1983    }
1984  }
1985
1986  
1987</style><div
1988  data-section-id="template--28602504773978__hero_video_VJBGRd"
1989  data-section-type="video-section"
1990  data-mobile-natural="false"
1991  class="video-parent-section hero hero--template--28602504773978__hero_video_VJBGRd hero--650px hero--mobile--300px"
1992  data-aos="hero__animation">
1993
1994  <div class="hero__media hero__media--template--28602504773978__hero_video_VJBGRd"><video
1995        id="Mp4Video-template--28602504773978__hero_video_VJBGRd"
1996        class="video-div"
1997        src="https://cdn.shopify.com/videos/c/o/v/19259935d4474fadab983cfe974fc981.mp4"
1998        data-type="mp4"
1999        loop muted playsinline></video></div>
2000
2001  <div class="hero__text-wrap">
2002    <div class="page-width">
2003      <div class="hero__text-content vertical-center horizontal-center"></div>
2004    </div>
2005  </div>
2006
2007</div>
2008
2009
2010</div><div id="shopify-section-template--28602504773978__37155db3-c2a4-4d76-a732-e68e5ee88543" class="shopify-section"><style data-shopify>.testimonials-template--28602504773978__37155db3-c2a4-4d76-a732-e68e5ee88543 {
2011    background-color: #f9f9f9;
2012    color: #1c1d1d;
2013  }
2014}</style><div
2015  class="text-center testimonials-section testimonials-template--28602504773978__37155db3-c2a4-4d76-a732-e68e5ee88543"
2016  data-section-id="template--28602504773978__37155db3-c2a4-4d76-a732-e68e5ee88543"
2017  data-section-type="testimonials"
2018  data-aos><div class="page-width">
2019      <div class="section-header">
2020        <div class="animation-cropper animation-cropper--full" data-aos="section-reveal">
2021          <div class="animation-contents">
2022            <h2>Don&#39;t take our word for it</h2>
2023          </div>
2024        </div>
2025      </div>
2026    </div><div class="slideshow-wrapper">
2027      <div class="testimonials-slider" id="Testimonials-template--28602504773978__37155db3-c2a4-4d76-a732-e68e5ee88543" data-count="5"><div
2028            class="testimonials-slide testimonials-slide--template--18906169770330__37155db3-c2a4-4d76-a732-e68e5ee88543-1683372912abba715d-0"
2029            data-index="0"
2030            >
2031            <blockquote class="testimonials-slider__text"><span class="testimonial-stars">★★★★★</span><div class="rte-setting text-spacing"><p>Couldn't be happier, this bag fits perfectly with my new dress! Everyone asks where I bought it.</p></div><div class="testimonial-meta"><cite>Deborah</cite><p>Los Angeles, US</p></div></blockquote>
2032          </div><div
2033            class="testimonials-slide testimonials-slide--template--18906169770330__37155db3-c2a4-4d76-a732-e68e5ee88543-1683372912abba715d-1"
2034            data-index="1"
2035            >
2036            <blockquote class="testimonials-slider__text"><span class="testimonial-stars">★★★★★</span><div class="rte-setting text-spacing"><p>Thanks to Bond & Mason, Vegan Leather is here to stay! Just got the perfect bag for my fall wardrobe.</p></div><div class="testimonial-meta"><cite>Sandra</cite><p>Amsterdam, NL</p></div></blockquote>
2037          </div><div
2038            class="testimonials-slide testimonials-slide--template--18906169770330__37155db3-c2a4-4d76-a732-e68e5ee88543-1683372912abba715d-2"
2039            data-index="2"
2040            >
2041            <blockquote class="testimonials-slider__text"><span class="testimonial-stars">★★★★★</span><div class="rte-setting text-spacing"><p>You won't be disappointed. Arrived fast and love the handwritten note!</p></div><div class="testimonial-meta"><cite>Beth</cite><p>Bournemouth, UK</p></div></blockquote>
2042          </div><div
2043            class="testimonials-slide testimonials-slide--template--18906169770330__37155db3-c2a4-4d76-a732-e68e5ee88543-1683372912abba715d-3"
2044            data-index="3"
2045            >
2046            <blockquote class="testimonials-slider__text"><span class="testimonial-stars">★★★★★</span><div class="rte-setting text-spacing"><p>Their bags are amazing! Great look and feel.</p></div><div class="testimonial-meta"><cite>Brenda Cooper</cite><p>Toronto, CA</p></div></blockquote>
2047          </div><div
2048            class="testimonials-slide testimonials-slide--template--18906169770330__37155db3-c2a4-4d76-a732-e68e5ee88543-1683372912abba715d-4"
2049            data-index="4"
2050            >
2051            <blockquote class="testimonials-slider__text"><span class="testimonial-stars">★★★★★</span><div class="rte-setting text-spacing"><p>My second order this month, love the whole product line!</p></div><div class="testimonial-meta"><cite>Miranda</cite><p>Austin, US</p></div></blockquote>
2052          </div></div>
2053    </div></div>
2054
2055
2056</div><div id="shopify-section-template--28602504773978__57b4f318-c8ac-41e2-96cc-ae7a506a3b50" class="shopify-section"><style data-shopify>
2057  
2058  
2059</style>
2060
2061<div class="index-section">
2062
2063  <div class="page-width feature-row-wrapper feature-row--66"><div class="feature-row"><div class="feature-row__item feature-row__images feature-row__item--overlap-images " data-aos><div class="feature-row__first-image"><div class="image-wrap " style="height: 0; padding-bottom: 150.00000000000003%;">
2064
2065
2066
2067<image-element data-aos="image-fade-in" data-aos-offset="150">
2068
2069
2070  
2071<img src="//bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00013_e6afacbb-4a1a-4ce3-9d7a-acc492e34993.jpg?v=1651339969&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00013_e6afacbb-4a1a-4ce3-9d7a-acc492e34993.jpg?v=1651339969&amp;width=180 180w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00013_e6afacbb-4a1a-4ce3-9d7a-acc492e34993.jpg?v=1651339969&amp;width=360 360w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00013_e6afacbb-4a1a-4ce3-9d7a-acc492e34993.jpg?v=1651339969&amp;width=540 540w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00013_e6afacbb-4a1a-4ce3-9d7a-acc492e34993.jpg?v=1651339969&amp;width=750 750w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00013_e6afacbb-4a1a-4ce3-9d7a-acc492e34993.jpg?v=1651339969&amp;width=900 900w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00013_e6afacbb-4a1a-4ce3-9d7a-acc492e34993.jpg?v=1651339969&amp;width=1080 1080w" width="1080" height="1620.0000000000002" loading="lazy" class="feature-row__image image-element" sizes="(min-width: 769px) calc(0.4 * 50vw), 40vw">
2072  
2073
2074
2075</image-element>
2076</div></div><div class="feature-row__second-image"><div class="image-wrap " style="height: 0; padding-bottom: 150.00000000000003%;">
2077
2078
2079
2080<image-element data-aos="image-fade-in" data-aos-offset="150">
2081
2082
2083  
2084<img src="//bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00001_b0a91cd9-ade8-4f2d-9d6a-80287da28b1d.jpg?v=1651339993&amp;width=1080" alt="" srcset="//bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00001_b0a91cd9-ade8-4f2d-9d6a-80287da28b1d.jpg?v=1651339993&amp;width=180 180w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00001_b0a91cd9-ade8-4f2d-9d6a-80287da28b1d.jpg?v=1651339993&amp;width=360 360w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00001_b0a91cd9-ade8-4f2d-9d6a-80287da28b1d.jpg?v=1651339993&amp;width=540 540w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00001_b0a91cd9-ade8-4f2d-9d6a-80287da28b1d.jpg?v=1651339993&amp;width=750 750w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00001_b0a91cd9-ade8-4f2d-9d6a-80287da28b1d.jpg?v=1651339993&amp;width=900 900w, //bondandmason.com/cdn/shop/files/Bondmason-lifestyle-00001_b0a91cd9-ade8-4f2d-9d6a-80287da28b1d.jpg?v=1651339993&amp;width=1080 1080w" width="1080" height="1620.0000000000002" loading="lazy" class="feature-row__image image-element" sizes="(min-width: 769px) calc(0.6 * 50vw), 60vw">
2085  
2086
2087
2088</image-element>
2089</div></div></div>
2090<div class="feature-row__item feature-row__text feature-row__text--left text-left"><div class="subheading">Our Story</div><div class="animation-cropper animation-cropper--full" data-aos="section-reveal">
2091            <div class="animation-contents">
2092              <h2 class="h1">Fashion forward.</h2>
2093            </div>
2094          </div><div class="rte"><p>In just a few years, our label is now part of the global wardrobe and a leading destination for sustainable bags and accessories. </p><p></p></div></div></div>
2095  </div>
2096
2097</div>
2098</div><div id="shopify-section-template--28602504773978__hero_video_6KykM9" class="shopify-section index-section--hero"><style data-shopify>.hero--template--28602504773978__hero_video_6KykM9 .hero__title {
2099    font-size: 40.0px;
2100  }
2101  @media only screen and (min-width: 769px) {
2102    .hero--template--28602504773978__hero_video_6KykM9 .hero__title {
2103      font-size: 80px;
2104    }
2105  }
2106
2107  
2108</style><div
2109  data-section-id="template--28602504773978__hero_video_6KykM9"
2110  data-section-type="video-section"
2111  data-mobile-natural="false"
2112  class="video-parent-section hero hero--template--28602504773978__hero_video_6KykM9 hero--650px hero--mobile--auto"
2113  data-aos="hero__animation">
2114
2115  <div class="hero__media hero__media--template--28602504773978__hero_video_6KykM9"><video
2116        id="Mp4Video-template--28602504773978__hero_video_6KykM9"
2117        class="video-div"
2118        src="https://cdn.shopify.com/videos/c/o/v/c8a93ce9ae1049b7baa99b40302c01bb.mp4"
2119        data-type="mp4"
2120        loop muted playsinline></video></div>
2121
2122  <div class="hero__text-wrap">
2123    <div class="page-width">
2124      <div class="hero__text-content vertical-center horizontal-center"><h2 class="h1 hero__title">
2125            <div class="animation-cropper"><div class="animation-contents">
2126            Quality that lasts.
2127            </div></div>
2128          </h2><div class="hero__subtitle">
2129              <div class="animation-cropper"><div class="animation-contents">
2130   
2130             5 year guarantee on all our products
2131              </div></div>
2132            </div></div>
2133    </div>
2134  </div>
2135
2136</div>
2137
2138
2139</div>
2140      </main><!-- BEGIN sections: footer-group -->
2141<div id="shopify-section-sections--28602505298266__footer-promotions" class="shopify-section shopify-section-group-footer-group index-section--footer">
2142</div><div id="shopify-section-sections--28602505298266__footer" class="shopify-section shopify-section-group-footer-group"><footer class="site-footer" data-section-id="sections--28602505298266__footer" data-section-type="footer">
2143  <div class="page-width">
2144
2145    <div class="grid"><style data-shopify>@media only screen and (min-width: 769px) {
2146          .footer__item--footer-3 {
2147            width: 20%;
2148          }
2149        }</style><div  class="grid__item footer__item--footer-3">
2150  
2151    <h2 class="footer__title small--hide">
2152      Quick Links
2153    </h2>
2154    <button type="button" class="footer__title collapsible-trigger collapsible-trigger-btn medium-up--hide" aria-controls="Footer-footer-3">
2155      Quick Links
2156<span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
2157  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="m1.57 1.59 12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none"/></svg>
2158</span>
2159</button>
2160  
2161  <div
2162    
2163      id="Footer-footer-3" class="collapsible-content collapsible-content--small"
2164    >
2165    <div class="collapsible-content__inner">
2166      <div class="footer__collapsible">
2167        <ul class="no-bullets site-footer__linklist"><li><a href="/">Home</a></li><li><a href="/collections/handbags">Handbags</a></li><li><a href="/collections/deals-sales">Deals & Sales</a></li><li><a href="/blogs/news-blogs">News & Blogs</a></li><li><a href="https://af.uppromote.com/bondandmason/register">Affiliate Program</a></li></ul>
2168      </div>
2169    </div>
2170  </div>
2171
2172</div><style data-shopify>@media only screen and (min-width: 769px) {
2173          .footer__item--footer-1 {
2174            width: 20%;
2175          }
2176        }</style><div  class="grid__item footer__item--footer-1">
2177  
2178    <h2 class="footer__title small--hide">
2179      Customer service
2180    </h2>
2181    <button type="button" class="footer__title collapsible-trigger collapsible-trigger-btn medium-up--hide" aria-controls="Footer-footer-1">
2182      Customer service
2183<span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
2184  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewBox="0 0 28 16"><path d="m1.57 1.59 12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none"/></svg>
2185</span>
2186</button>
2187  
2188  <div
2189    
2190      id="Footer-footer-1" class="collapsible-content collapsible-content--small"
2191    >
2192    <div class="collapsible-content__inner">
2193      <div class="footer__collapsible">
2194        <ul class="no-bullets site-footer__linklist"><li><a href="/policies/privacy-policy">Privacy Policy</a></li><li><a href="/policies/refund-policy">Return/Refund Policy</a></li><li><a href="/policies/shipping-policy">Shipping Policy</a></li><li><a href="/policies/terms-of-service">Terms of Service</a></li><li><a href="https://bondandmason.returnscenter.com/">Returns Center</a></li><li><a href="/apps/track-order">Order Tracking</a></li><li><a href="/pages/contact-us">Contact us</a></li><li><a href="/pages/about-us">About us</a></li></ul>
2195      </div>
2196    </div>
2197  </div>
2198
2199</div><style data-shopify>@media only screen and (min-width: 769px) {
2200          .footer__item--footer-2 {
2201            width: 33%;
2202          }
2203        }</style><div  class="grid__item grid-newsletter footer__item--footer-2">
2204  <h2 class="footer__title small--hide">BECOME A VIP MEMBER</h2>
2205  <button type="button" class="footer__title collapsible-trigger collapsible-trigger-btn medium-up--hide" aria-controls="Footer-footer-2">
2206    BECOME A VIP MEMBER
2207<span class="collapsible-trigger__icon collapsible-trigger__icon--open" role="presentation">
2208  <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon--wide icon-chevron-down" viewB
2208ox="0 0 28 16"><path d="m1.57 1.59 12.76 12.77L27.1 1.59" stroke-width="2" stroke="#000" fill="none"/></svg>
2209</span>
2210</button>
2211
2212<div
2213  
2214    id="Footer-footer-2" class="collapsible-content collapsible-content--small is-open"
2215  >
2216  <div class="collapsible-content__inner">
2217    <div class="footer__collapsible footer_collapsible--disabled">
2218      
2219        <p>Get exclusive access to new product releases, special offers and restocks. Join the Bond & Mason VIP list.</p>
2220      
2221
2222      <form method="post" action="/contact#newsletter-footer" id="newsletter-footer" accept-charset="UTF-8" class="contact-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" />
2223        
2224        
2225
2226        <label for="Email-footer-2" class="hidden-label">Enter your email</label>
2227        <label for="newsletter-submit-footer-2" class="hidden-label">Subscribe</label>
2228        <input type="hidden" name="contact[tags]" value="prospect,newsletter">
2229        <input type="hidden" name="contact[context]" value="footer">
2230        <div class="footer__newsletter">
2231          <input type="email" value="" placeholder="Enter your email" name="contact[email]" id="Email-footer-2" class="footer__newsletter-input" autocorrect="off" autocapitalize="off" required>
2232          <button type="submit" id="newsletter-submit-footer-2" class="footer__newsletter-btn" name="commit">
2233            <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-email" viewBox="0 0 64 64"><title>icon-email</title><path d="M63 52H1V12h62ZM1 12l25.68 24h9.72L63 12M21.82 31.68 1.56 51.16m60.78.78L41.27 31.68"/></svg>
2234            <span class="icon__fallback-text">Subscribe</span>
2235          </button>
2236        </div>
2237      </form>
2238    </div>
2239  </div>
2240</div>
2241</div></div>
2242
2243    <div class="site-footer__bottom"><ul class="inline-list payment-icons site-footer__bottom-block text-center"><li class="icon--payment">
2244                <svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-american_express"><title id="pi-american_express">American Express</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#0071CE" style="fill:#0071CE;fill:color(display-p3 0.0000 0.4431 0.8078);fill-opacity:1;"/><path d="M3 0.5H35C36.3348 0.5 37.5 1.58692 37.5 3V21C37.5 22.4239 36.4239 23.5 35 23.5H3C1.66524 23.5 0.5 22.4131 0.5 21V3C0.5 1.57614 1.57614 0.5 3 0.5Z" stroke="black" stroke-opacity="0.07" style="stroke:black;stroke-opacity:0.07;"/><path d="M25.8662 6.33203V3H31L31.8662 5.5332L32.7334 3H37V14.2002H36.7998L34.8672 16.2656L36.7998 18.3594H37V21.2666H33.5996L31.9336 19.3994L30.2002 21.2666H19.4668V12.666H16L20.2666 3H24.4004L25.8662 6.33203ZM20.5996 20.2656H27V18.5322H22.666V17.3994H26.8662V15.666H22.666V14.5322H27V12.7988H20.5996V20.2656ZM30.5332 16.5322L27 20.2656H29.5996L31.8662 17.8662L34.0664 20.2656H36.7324L33.1992 16.4658L36.7324 12.7988H34.1328L31.8662 15.1992L29.7324 12.7988H27L30.5332 16.5322ZM17.666 11.7324H19.9326L20.5332 10.1992H23.999L24.666 11.7324H26.999L23.666 4.19922H20.999L17.666 11.7324ZM33.5996 4.19922L31.9326 8.86621L30.1992 4.19922H27V11.666H29.0664V6.39941L31 11.666H32.7998L34.7324 6.39941V11.666H36.7324V4.13281L33.5996 4.19922ZM23.2656 8.46582H21.2656L22.2656 5.99902L23.2656 8.46582Z" fill="white" style="fill:white;fill-opacity:1;"/></svg>
2245
2246              </li><li class="icon--payment">
2247                <svg version="1.1" xmlns="http://www.w3.org/2000/svg" role="img" x="0" y="0" width="38" height="24" viewBox="0 0 165.521 105.965" xml:space="preserve" aria-labelledby="pi-apple_pay"><title id="pi-apple_pay">Apple Pay</title><path fill="#000" d="M150.698 0H14.823c-.566 0-1.133 0-1.698.003-.477.004-.953.009-1.43.022-1.039.028-2.087.09-3.113.274a10.51 10.51 0 0 0-2.958.975 9.932 9.932 0 0 0-4.35 4.35 10.463 10.463 0 0 0-.975 2.96C.113 9.611.052 10.658.024 11.696a70.22 70.22 0 0 0-.022 1.43C0 13.69 0 14.256 0 14.823v76.318c0 .567 0 1.132.002 1.699.003.476.009.953.022 1.43.028 1.036.09 2.084.275 3.11a10.46 10.46 0 0 0 .974 2.96 9.897 9.897 0 0 0 1.83 2.52 9.874 9.874 0 0 0 2.52 1.83c.947.483 1.917.79 2.96.977 1.025.183 2.073.245 3.112.273.477.011.953.017 1.43.02.565.004 1.132.004 1.698.004h135.875c.565 0 1.132 0 1.697-.004.476-.002.952-.009 1.431-.02 1.037-.028 2.085-.09 3.113-.273a10.478 10.478 0 0 0 2.958-.977 9.955 9.955 0 0 0 4.35-4.35c.483-.947.789-1.917.974-2.96.186-1.026.246-2.074.274-3.11.013-.477.02-.954.022-1.43.004-.567.004-1.132.004-1.699V14.824c0-.567 0-1.133-.004-1.699a63.067 63.067 0 0 0-.022-1.429c-.028-1.038-.088-2.085-.274-3.112a10.4 10.4 0 0 0-.974-2.96 9.94 9.94 0 0 0-4.35-4.35A10.52 10.52 0 0 0 156.939.3c-1.028-.185-2.076-.246-3.113-.274a71.417 71.417 0 0 0-1.431-.022C151.83 0 151.263 0 150.698 0z" /><path fill="#FFF" d="M150.698 3.532l1.672.003c.452.003.905.008 1.36.02.793.022 1.719.065 2.583.22.75.135 1.38.34 1.984.648a6.392 6.392 0 0 1 2.804 2.807c.306.6.51 1.226.645 1.983.154.854.197 1.783.218 2.58.013.45.019.9.02 1.36.005.557.005 1.113.005 1.671v76.318c0 .558 
22470 1.114-.004 1.682-.002.45-.008.9-.02 1.35-.022.796-.065 1.725-.221 2.589a6.855 6.855 0 0 1-.645 1.975 6.397 6.397 0 0 1-2.808 2.807c-.6.306-1.228.511-1.971.645-.881.157-1.847.2-2.574.22-.457.01-.912.017-1.379.019-.555.004-1.113.004-1.669.004H14.801c-.55 0-1.1 0-1.66-.004a74.993 74.993 0 0 1-1.35-.018c-.744-.02-1.71-.064-2.584-.22a6.938 6.938 0 0 1-1.986-.65 6.337 6.337 0 0 1-1.622-1.18 6.355 6.355 0 0 1-1.178-1.623 6.935 6.935 0 0 1-.646-1.985c-.156-.863-.2-1.788-.22-2.578a66.088 66.088 0 0 1-.02-1.355l-.003-1.327V14.474l.002-1.325a66.7 66.7 0 0 1 .02-1.357c.022-.792.065-1.717.222-2.587a6.924 6.924 0 0 1 .646-1.981c.304-.598.7-1.144 1.18-1.623a6.386 6.386 0 0 1 1.624-1.18 6.96 6.96 0 0 1 1.98-.646c.865-.155 1.792-.198 2.586-.22.452-.012.905-.017 1.354-.02l1.677-.003h135.875" /><g><g><path fill="#000" d="M43.508 35.77c1.404-1.755 2.356-4.112 2.105-6.52-2.054.102-4.56 1.355-6.012 3.112-1.303 1.504-2.456 3.959-2.156 6.266 2.306.2 4.61-1.152 6.063-2.858" /><path fill="#000" d="M45.587 39.079c-3.35-.2-6.196 1.9-7.795 1.9-1.6 0-4.049-1.8-6.698-1.751-3.447.05-6.645 2-8.395 5.1-3.598 6.2-.95 15.4 2.55 20.45 1.699 2.5 3.747 5.25 6.445 5.151 2.55-.1 3.549-1.65 6.647-1.65 3.097 0 3.997 1.65 6.696 1.6 2.798-.05 4.548-2.5 6.247-5 1.95-2.85 2.747-5.6 2.797-5.75-.05-.05-5.396-2.101-5.446-8.251-.05-5.15 4.198-7.6 4.398-7.751-2.399-3.548-6.147-3.948-7.447-4.048" /></g><g><path fill="#000" d="M78.973 32.11c7.278 0 12.347 5.017 12.347 12.321 0 7.33-5.173 12.373-12.529 12.373h-8.058V69.62h-5.822V32.11h14.062zm-8.24 19.807h6.68c5.07 0 7.954-2.729 7.954-7.46 0-4.73-2.885-7.434-7.928-7.434h-6.706v14.894z" /><path fill="#000" d="M92.764 61.847c0-4.809 3.665-7.564 10.423-7.98l7.252-.442v-2.08c0-3.04-2.001-4.704-5.562-4.704-2.938 0-5.07 1.507-5.51 3.82h-5.252c.157-4.86 4.731-8.395 10.918-8.395 6.654 0 10.995 3.483 10.995 8.89v18.663h-5.38v-4.497h-.13c-1.534 2.937-4.914 4.782-8.579 4.782-5.406 0-9.175-3.222-9.175-8.057zm17.675-2.417v-2.106l-6.472.416c-3.64.234-5.536 1.585-5.536 3.95 0 2.288 1.975 3.77 5.068 3.77 3.95 0 6.94-2.522 6.94-6.03z" /><path fill="#000" d="M120.975 79.652v-4.496c.364.051 1.247.103 1.715.103 2.573 0 4.029-1.09 4.913-3.899l.52-1.663-9.852-27.293h6.082l6.863 22.146h.13l6.862-22.146h5.927l-10.216 28.67c-2.34 6.577-5.017 8.735-10.683 8.735-.442 0-1.872-.052-2.261-.157z" /></g></g></svg>
2248
2249              </li><li class="icon--payment">
2250                <svg xmlns="http://www.w3.org/2000/svg" aria-labelledby="pi-bancontact" role="img" viewBox="0 0 38 24" width="38" height="24"><title id="pi-bancontact">Bancontact</title><path fill="#000" opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path d="M4.703 3.077h28.594c.139 0 .276.023.405.068.128.045.244.11.343.194a.9.9 0 0 1 .229.29c.053.107.08.223.08.34V20.03a.829.829 0 0 1-.31.631 1.164 1.164 0 0 1-.747.262H4.703a1.23 1.23 0 0 1-.405-.068 1.09 1.09 0 0 1-.343-.194.9.9 0 0 1-.229-.29.773.773 0 0 1-.08-.34V3.97c0-.118.027-.234.08-.342a.899.899 0 0 1 .23-.29c.098-.082.214-.148.342-.193a1.23 1.23 0 0 1 .405-.068Z" fill="#fff"/><path d="M6.38 18.562v-3.077h1.125c.818 0 1.344.259 1.344.795 0 .304-.167.515-.401.638.338.132.536.387.536.734 0 .62-.536.91-1.37.91H6.38Zm.724-1.798h.537c.328 0 .468-.136.468-.387 0-.268-.255-.356-.599-.356h-.406v.743Zm0 1.262h.448c.438 0 .693-.093.693-.383 0-.286-.219-.404-.63-.404h-.51v.787Zm3.284.589c-.713 0-1.073-.295-1.073-.69 0-.436.422-.69 1.047-.695.156.002.31.014.464.035v-.105c0-.269-.183-.396-.531-.396a2.128 2.128 0 0 0-.688.105l-.13-.474a3.01 3.01 0 0 1 .9-.132c.767 0 1.147.343 1.147.936v1.222c-.214.093-.615.194-1.136.194Zm.438-.497v-.47a2.06 2.06 0 0 0-.37-.036c-.24 0-.427.08-.427.286 0 .185.156.281.432.281a.947.947 0 0 0 .365-.061Zm1.204.444v-2.106a3.699 3.699 0 0 1 1.177-.193c.76 0 1.198.316 1.198.9v1.399h-.719v-1.354c0-.303-.167-.444-.484-.444a1.267 1.267 0 0 0-.459.079v1.719h-.713Zm4.886-2.167-.135.479a1.834 1.834 0 0 0-.588-.11c-.422 0-.652.25-.652.664 0 .453.24.685.688.685.2-.004.397-.043.578-.114l.115.488a2.035 2.035 0 0 1-.75.128c-.865 0-1.365-.453-1.365-1.17 0-.712.495-1.182 1.323-1.182.27-.
2250001.538.043.787.132Zm1.553 2.22c-.802 0-1.302-.47-1.302-1.178 0-.704.5-1.174 1.302-1.174.807 0 1.297.47 1.297 1.173 0 .708-.49 1.179-1.297 1.179Zm0-.502c.37 0 .563-.259.563-.677 0-.413-.193-.672-.563-.672-.364 0-.568.26-.568.672 0 .418.204.677.568.677Zm1.713.449v-2.106a3.699 3.699 0 0 1 1.177-.193c.76 0 1.198.316 1.198.9v1.399h-.719v-1.354c0-.303-.166-.444-.484-.444a1.268 1.268 0 0 0-.459.079v1.719h-.713Zm3.996.053c-.62 0-.938-.286-.938-.866v-.95h-.354v-.484h.355v-.488l.718-.03v.518h.578v.484h-.578v.94c0 .256.125.374.36.374.093 0 .185-.008.276-.026l.036.488c-.149.028-.3.041-.453.04Zm1.814 0c-.713 0-1.073-.295-1.073-.69 0-.436.422-.69 1.047-.695.155.002.31.014.464.035v-.105c0-.269-.183-.396-.532-.396a2.128 2.128 0 0 0-.687.105l-.13-.474a3.01 3.01 0 0 1 .9-.132c.766 0 1.146.343 1.146.936v1.222c-.213.093-.614.194-1.135.194Zm.438-.497v-.47a2.06 2.06 0 0 0-.37-.036c-.24 0-.427.08-.427.286 0 .185.156.281.432.281a.946.946 0 0 0 .365-.061Zm3.157-1.723-.136.479a1.834 1.834 0 0 0-.588-.11c-.422 0-.651.25-.651.664 0 .453.24.685.687.685.2-.004.397-.043.578-.114l.115.488a2.035 2.035 0 0 1-.75.128c-.865 0-1.365-.453-1.365-1.17 0-.712.495-1.182 1.323-1.182.27-.001.538.043.787.132Zm1.58 2.22c-.62 0-.938-.286-.938-.866v-.95h-.354v-.484h.354v-.488l.72-.03v.518h.577v.484h-.578v.94c0 .256.125.374.36.374.092 0 .185-.008.276-.026l.036.488c-.149.028-.3.041-.453.04Z" fill="#1E3764"/><path d="M11.394 13.946c3.803 0 5.705-2.14 7.606-4.28H6.38v4.28h5.014Z" fill="url(#pi-bancontact-a)"/><path d="M26.607 5.385c-3.804 0-5.705 2.14-7.607 4.28h12.62v-4.28h-5.013Z" fill="url(#pi-bancontact-b)"/><defs><linearGradient id="pi-bancontact-a" x1="8.933" y1="12.003" x2="17.734" y2="8.13" gradientUnits="userSpaceOnUse"><stop stop-color="#005AB9"/><stop offset="1" stop-color="#1E3764"/></linearGradient><linearGradient id="pi-bancontact-b" x1="19.764" y1="10.037" x2="29.171" y2="6.235" gradientUnits="userSpaceOnUse"><stop stop-color="#FBA900"/><stop offset="1" stop-color="#FFD800"/></linearGradient></defs></svg>
2251              </li><li class="icon--payment">
2252                <svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" aria-labelledby="pi-google_pay"><title id="pi-google_pay">Google Pay</title><path d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000" opacity=".07"/><path d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32" fill="#FFF"/><path d="M18.093 11.976v3.2h-1.018v-7.9h2.691a2.447 2.447 0 0 1 1.747.692 2.28 2.28 0 0 1 .11 3.224l-.11.116c-.47.447-1.098.69-1.747.674l-1.673-.006zm0-3.732v2.788h1.698c.377.012.741-.135 1.005-.404a1.391 1.391 0 0 0-1.005-2.354l-1.698-.03zm6.484 1.348c.65-.03 1.286.188 1.778.613.445.43.682 1.03.65 1.649v3.334h-.969v-.766h-.049a1.93 1.93 0 0 1-1.673.931 2.17 2.17 0 0 1-1.496-.533 1.667 1.667 0 0 1-.613-1.324 1.606 1.606 0 0 1 .613-1.336 2.746 2.746 0 0 1 1.698-.515c.517-.02 1.03.093 1.49.331v-.208a1.134 1.134 0 0 0-.417-.901 1.416 1.416 0 0 0-.98-.368 1.545 1.545 0 0 0-1.319.717l-.895-.564a2.488 2.488 0 0 1 2.182-1.
225206zM23.29 13.52a.79.79 0 0 0 .337.662c.223.176.5.269.785.263.429-.001.84-.17 1.146-.472.305-.286.478-.685.478-1.103a2.047 2.047 0 0 0-1.324-.374 1.716 1.716 0 0 0-1.03.294.883.883 0 0 0-.392.73zm9.286-3.75l-3.39 7.79h-1.048l1.281-2.728-2.224-5.062h1.103l1.612 3.885 1.569-3.885h1.097z" fill="#5F6368"/><path d="M13.986 11.284c0-.308-.024-.616-.073-.92h-4.29v1.747h2.451a2.096 2.096 0 0 1-.9 1.373v1.134h1.464a4.433 4.433 0 0 0 1.348-3.334z" fill="#4285F4"/><path d="M9.629 15.721a4.352 4.352 0 0 0 3.01-1.097l-1.466-1.14a2.752 2.752 0 0 1-4.094-1.44H5.577v1.17a4.53 4.53 0 0 0 4.052 2.507z" fill="#34A853"/><path d="M7.079 12.05a2.709 2.709 0 0 1 0-1.735v-1.17H5.577a4.505 4.505 0 0 0 0 4.075l1.502-1.17z" fill="#FBBC04"/><path d="M9.629 8.44a2.452 2.452 0 0 1 1.74.68l1.3-1.293a4.37 4.37 0 0 0-3.065-1.183 4.53 4.53 0 0 0-4.027 2.5l1.502 1.171a2.715 2.715 0 0 1 2.55-1.875z" fill="#EA4335"/></svg>
2253
2254              </li><li class="icon--payment">
2255                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 38 24" width="38" height="24" role="img" aria-labelledby="pi-spidealwero"><title id="pi-spidealwero">iDEAL Wero</title><path opacity="0.07" d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="black"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#FFF48D"/><path d="M3.45001 7.43572V17.0022C3.45001 17.4602 3.82664 17.8347 4.28673 17.8347H10.0301C14.3722 17.8347 16.2539 15.4157 16.2539 12.2063C16.2539 8.99693 14.3715 6.60321 10.0294 6.60321H4.28603C3.82594 6.60321 3.44931 6.97773 3.44931 7.43572H3.45001Z" fill="white"/><path d="M7.29413 8.95133V16.0203H10.385C13.1918 16.0203 14.4087 14.4422 14.4087 12.2112C14.4087 9.98022 13.1911 8.41901 10.385 8.41901H7.82926C7.53259 8.41901 7.29413 8.66027 7.29413 8.95204V8.95133Z" fill="#CC0066"/><path fill-rule="evenodd" clip-rule="evenodd" d="M5.03507 17.073H10.0294C13.539 17.073 15.4754 15.3456 15.4754 12.2105C15.4754 10.4038 14.7685 7.36908 10.0294 7.36908H5.03507C4.59182 7.36908 4.23203 7.72677 4.23203 8.16862V16.2742C4.23203 16.7153 4.59182 17.0737 5.03507 17.0737V17.073ZM4.49924 8.16862C4.49924 7.87335 4.7377 7.63559 5.03437 7.63559H10.0287C11.9609 7.63559 15.2068 8.23104 15.2068 12.2105C15.2068 15.1744 13.3665 16.8065 10.0287 16.8065H5.03507C4.7384 16.8065 4.49994 16.5694 4.49994 16.2735V8.16862H4.49924Z" fill="#232323"/><path fill-rule="evenodd" clip-rule="evenodd" d="M8.81464 11.1831C8.72066 11.1494 8.62247 11.1326 8.51586 11.1326V11.1284H7.8082V12.8355H8.52428C8.65122 12.8355 8.76134 12.8102 8.85602 12.7681C8.95 12.7218 9.02785 12.6629 9.08957 12.5872C9.15129 12.5114 9.19618 12.4188 9.22844 12.3136C9.25719 12.2084 9.27332 12.0948 9.27332 11.9686C9.27332 11.8255 9.25299 11.7035 9.21581 11.5983C9.17514 11.4973 9.12183 11.4089 9.05661 11.3374C8.98717 11.27 8.90932 11.2153 8.81534 11.1817L8.81464 11.1831ZM8.64702 12.4995C8.59371 12.5163 8.54462 12.5248 8.49132 12.5248V12.529H8.16799V11.4524H8.4296C8.51937 11.4524 8.59301 11.465 8.65473 11.4903C8.71645 11.5155 8.76554 11.5576 8.80201 11.6039C8.83849 11.6502 8.86724 11.7133 8.88407 11.7806C8.9002 11.8479 8.90862 11.9279 8.90862 12.0121C8.90862 12.1088 8.896 12.1846 8.87215 12.2519C8.85108 12.3106 8.81921 12.3649 8.77817 12.4118C8.74305 12.4524 8.69779 12.4829 8.64702 12.5002V12.4995Z" fill="white"/><path d="M10.7504 11.1333V11.4489H9.87441V11.815H10.6803V12.1053H9.87441V12.5219H10.7707V12.8376H9.51041V11.1305H10.7504V11.1347V11.1333Z" fill="white"/><path fill-rule="evenodd" clip-rule="evenodd" d="M12.6244 12.8404L12.0023 11.1333H11.6222L10.9958 12.8404H11.3641L11.4952 12.4616H12.1173L12.2443 12.8404H12.6251H12.6244ZM11.8136 11.5534L12.0226 12.1797H11.5934L11.8101 11.5534H11.8143H11.8136Z" fill="white"/><path d="M13.2178 11.1325V12.5247H14.0278V12.8403H12.8538V11.1332H13.2178V11.1325Z" fill="white"/><path d="M5.85774 12.8656C6.30099 12.8656 6.66009 12.5065 6.66009 12.0625C6.66009 11.6186 6.30099 11.2595 5.85774 11.2595C5.41448 11.2595 5.05539 11.6186 5.05539 12.0625C5.05539 12.5065 5.41448 12.8656 5.85774 12.8656ZM6.33536 16.0771C5.71396 16.0771 5.216 15.5406 5.216 14.8813V13.9478C5.216 13.6181 5.46498 13.3474 5.77778 13.3474C6.09059 13.3474 6.33957 13.6139 6.33957 13.9478V16.0771H6.33536Z" fill="#232323"/><path d="M31.45 12.2209C31.45 11.1773 32.1926 10.2264 33.4749 10.2264C34.7572 10.2264 35.5053 11.178 35.5053 12.2209C35.5053 13.2638 34.7627 14.2154 33.4749 14.2154C32.1926 14.2154 31.45 13.2638 31.45 12.2209ZM34.3782 12.2209C34.3782 11.7178 34.0467 11.2537 33.4749 11.2537C32.9032 11.2537 32.5717 11.7186 32.571
22557 12.2209C32.5717 12.7232 32.9086 13.1889 33.4749 13.1889C34.0412 13.1889 34.3782 12.724 34.3782 12.2209ZM30.6615 12.9619C31.0889 12.7185 31.3455 12.2537 31.3455 11.7404C31.3455 10.9784 30.7948 10.3294 29.94 10.3294H28.1452V14.1132H29.2567V13.146H29.4649L30.1006 14.1132H31.4095L30.6615 12.9619ZM29.7161 12.2747H29.2567V11.2046H29.7216C30.0211 11.2046 30.213 11.4479 30.213 11.7396C30.213 12.0314 30.0148 12.2747 29.7161 12.2747ZM23.0713 10.3247L22.4044 12.5797L21.7539 10.3247H20.8686L20.2126 12.5797L19.5511 10.3247H18.378L19.722 14.1015H20.6868L21.3108 12.0454L21.9294 14.1015H22.8997L24.2436 10.3247H23.0705H23.0713ZM25.9261 13.1795H25.9237C25.508 13.1795 25.2163 12.9284 25.0915 12.5961H27.9159C27.9385 12.4713 27.9502 12.3434 27.9502 12.2139C27.9502 11.1734 27.21 10.2241 25.9261 10.2233V11.2482C26.3442 11.249 26.6328 11.5002 26.7568 11.8317H23.9363C23.9137 11.9565 23.902 12.0844 23.902 12.2139C23.902 13.2552 24.643 14.2052 25.923 14.2052H25.9253V13.1795H25.9261Z" fill="#1D1C1C"/><path d="M25.9237 14.2044C25.9674 14.2044 26.0103 14.2029 26.0524 14.2013C26.3122 14.188 26.5485 14.135 26.7591 14.05C26.9697 13.965 27.1546 13.8472 27.3114 13.7052C27.4673 13.5644 27.5983 13.3982 27.699 13.2138C27.7903 13.0469 27.8574 12.8667 27.8995 12.6787H26.7225C26.6983 12.7287 26.6702 12.777 26.6382 12.8215C26.5945 12.8831 26.5431 12.9385 26.4846 12.9861C26.4261 13.0344 26.3605 13.075 26.2888 13.1062C26.217 13.1374 26.1382 13.1592 26.0532 13.1709C26.0119 13.1764 25.969 13.1795 25.9245 13.1795C25.6601 13.1795 25.4456 13.0773 25.2919 12.9174L24.5268 13.6912C24.8668 14.0055 25.3387 14.2036 25.9237 14.2036V14.2044Z" fill="#1D1C1C"/><path d="M25.9237 10.2225C24.838 10.2225 24.1399 10.9058 23.9535 11.7482H25.1266C25.267 11.4581 25.5431 11.2475 25.9237 11.2475C26.2272 11.2475 26.4627 11.3785 26.6164 11.5766L27.3886 10.7958C27.0438 10.4464 26.5477 10.2225 25.9245 10.2225H25.9237Z" fill="#1D1C1C"/><path d="M17.3927 16.431C17.3069 16.431 17.2367 16.3608 17.2367 16.275V8.16296C17.2367 8.07716 17.3069 8.00696 17.3927 8.00696C17.4785 8.00696 17.5487 8.07716 17.5487 8.16296V16.275C17.5487 16.3608 17.4785 16.431 17.3927 16.431Z" fill="#1D1C1C"/></svg>
2256              </li><li class="icon--payment">
2257                <svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-master"><title id="pi-master">Mastercard</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#1C1C1C" style="fill:#1C1C1C;fill:color(display-p3 0.1098 0.1098 0.1098);fill-opacity:1;"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#232323" style="fill:#232323;fill:color(display-p3 0.1373 0.1373 0.1373);fill-opacity:1;"/><path d="M14.6364 19.2727C18.8538 19.2727 22.2727 15.8538 22.2727 11.6364C22.2727 7.41892 18.8538 4 14.6364 4C10.4189 4 7 7.41892 7 11.6364C7 15.8538 10.4189 19.2727 14.6364 19.2727Z" fill="#EB001B" style="fill:#EB001B;fill:color(display-p3 0.9216 0.0000 0.1059);fill-opacity:1;"/><path d="M23.3637 19.2727C27.5811 19.2727 31 15.8538 31 11.6364C31 7.41892 27.5811 4 23.3637 4C19.1462 4 15.7273 7.41892 15.7273 11.6364C15.7273 15.8538 19.1462 19.2727 23.3637 19.2727Z" fill="#F79E1B" style="fill:#F79E1B;fill:color(display-p3 0.9686 0.6196 0.1059);fill-opacity:1;"/><path d="M22.2727 11.6362C22.2727 9.01797 20.9637 6.72706 19 5.41797C17.0364 6.83615 15.7273 9.12706 15.7273 11.6362C15.7273 14.1452 17.0364 16.5452 19 17.8543C20.9637 16.5452 22.2727 14.2543 22.2727 11.6362Z" fill="#FF5F00" style="fill:#FF5F00;fill:color(display-p3 1.0000 0.3725 0.0000);fill-opacity:1;"/></svg>
2258
2259              </li><li class="icon--payment">
2260                <svg viewBox="0 0 38 24" xmlns="http://www.w3.org/2000/svg" width="38" height="24" role="img" aria-labelledby="pi-paypal"><title id="pi-paypal">PayPal</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z"/><path fill="#fff" d="M35 1c1.1 0 2 .9 2 2v18c0 1.1-.9 2-2 2H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h32"/><path fill="#003087" d="M23.9 8.3c.2-1 0-1.7-.6-2.3-.6-.7-1.7-1-3.1-1h-4.1c-.3 0-.5.2-.6.5L14 15.6c0 .2.1.4.3.4H17l.4-3.4 1.8-2.2 4.7-2.1z"/><path fill="#3086C8" d="M23.9 8.3l-.2.2c-.5 2.8-2.2 3.8-4.6 3.8H18c-.3 0-.5.2-.6.5l-.6 3.9-.2 1c0 .2.1.4.3.4H19c.3 0 .5-.2.5-.4v-.1l.4-2.4v-.1c0-.2.3-.4.5-.4h.3c2.1 0 3.7-.8 4.1-3.2.2-1 .1-1.8-.4-2.4-.1-.5-.3-.7-.5-.8z"/>
2260<path fill="#012169" d="M23.3 8.1c-.1-.1-.2-.1-.3-.1-.1 0-.2 0-.3-.1-.3-.1-.7-.1-1.1-.1h-3c-.1 0-.2 0-.2.1-.2.1-.3.2-.3.4l-.7 4.4v.1c0-.3.3-.5.6-.5h1.3c2.5 0 4.1-1 4.6-3.8v-.2c-.1-.1-.3-.2-.5-.2h-.1z"/></svg>
2261              </li><li class="icon--payment">
2262                <svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" aria-labelledby="pi-shopify_pay"><title id="pi-shopify_pay">Shop Pay</title><path opacity=".07" d="M35 0H3C1.3 0 0 1.3 0 3v18c0 1.7 1.4 3 3 3h32c1.7 0 3-1.3 3-3V3c0-1.7-1.4-3-3-3z" fill="#000"/><path d="M35.889 0C37.05 0 38 .982 38 2.182v19.636c0 1.2-.95 2.182-2.111 2.182H2.11C.95 24 0 23.018 0 21.818V2.182C0 .982.95 0 2.111 0H35.89z" fill="#5A31F4"/><path d="M9.35 11.368c-1.017-.223-1.47-.31-1.47-.705 0-.372.306-.558.92-.558.54 0 .934.238 1.225.704a.079.079 0 00.104.03l1.146-.584a.082.082 0 00.032-.114c-.475-.831-1.353-1.286-2.51-1.286-1.52 0-2.464.755-2.464 1.956 0 1.275 1.15 1.597 2.17 1.82 1.02.222 1.474.31 1.474.705 0 .396-.332.582-.993.582-.612 0-1.065-.282-1.34-.83a.08.08 0 00-.107-.035l-1.143.57a.083.083 0 00-.036.111c.454.92 1.384 1.437 2.627 1.437 1.583 0 2.539-.742 2.539-1.98s-1.155-1.598-2.173-1.82v-.003zM15.49 8.855c-.65 0-1.224.232-1.636.646a.04.04 0 01-.069-.03v-2.64a.08.08 0 00-.08-.081H12.27a.08.08 0 00-.08.082v8.194a.08.08 0 00.08.082h1.433a.08.08 0 00.081-.082v-3.594c0-.695.528-1.227 1.239-1.227.71 0 1.226.521 1.226 1.227v3.594a.08.08 0 00.081.082h1.433a.08.08 0 00.081-.082v-3.594c0-1.51-.981-2.577-2.355-2.577zM20.753 8.62c-.778 0-1.507.24-2.03.588a.082.082 0 00-.027.109l.632 1.088a.08.08 0 00.11.03 2.5 2.5 0 011.318-.366c1.25 0 2.17.891 2.17 2.068 0 1.003-.736 1.745-1.669 1.745-.76 0-1.288-.446-1.288-1.077 0-.361.152-.657.548-.866a.08.08 0 00.032-.113l-.596-1.018a.08.08 0 00-.098-.035c-.799.299-1.359 1.018-1.359 1.984 0 1.46 1.152 2.55 2.76 2.55 1.877 0 3.227-1.313 3.227-3.195 0-2.018-1.57-3.492-3.73-3.492zM28.675 8.843c-.724 0-1.373.27-1.845.746-.026.027-.069.007-.069-.029v-.572a.08.08 0 00-.08-.082h-1.397a.08.08 0 00-.08.082v8.182a.08.08 0 00.08.081h1.433a.08.08 0 00.081-.081v-2.683c0-.036.043-.054.069-.03a2.6 2.6 0 001.808.7c1.682 0 2.993-1.373 2.993-3.157s-1.313-3.157-2.993-3.157zm-.271 4.929c-.956 0-1.681-.768-1.681-1.783s.723-1.783 1.681-1.783c.958 0 1.68.755 1.68 1.783 0 1.027-.713 1.783-1.681 1.783h.001z" fill="#fff"/></svg>
2263
2264              </li><li class="icon--payment">
2265                <svg viewBox="-36 25 38 24" xmlns="http://www.w3.org/2000/svg" width="38" height="24" role="img" aria-labelledby="pi-unionpay"><title id="pi-unionpay">Union Pay</title><path fill="#005B9A" d="M-36 46.8v.7-.7zM-18.3 25v24h-7.2c-1.3 0-2.1-1-1.8-2.3l4.4-19.4c.3-1.3 1.9-2.3 3.2-2.3h1.4zm12.6 0c-1.3 0-2.9 1-3.2 2.3l-4.5 19.4c-.3 1.3.5 2.3 1.8 2.3h-4.9V25h10.8z"/><path fill="#E9292D" d="M-19.7 25c-1.3 0-2.9 1.1-3.2 2.3l-4.4 19.4c-.3 1.3.5 2.3 1.8 2.3h-8.9c-.8 0-1.5-.6-1.5-1.4v-21c0-.8.7-1.6 1.5-1.6h14.7z"/><path fill="#0E73B9" d="M-5.7 25c-1.3 0-2.9 1.1-3.2 2.3l-4.4 19.4c-.3 1.3.5 2.3 1.8 2.3H-26h.5c-1.3 0-2.1-1-1.8-2.3l4.4-19.4c.3-1.3 1.9-2.3 3.2-2.3h14z"/><path fill="#059DA4" d="M2 26.6v21c0 .8-.6 1.4-1.5 1.4h-12.1c-1.3 0-2.1-1.1-1.8-2.3l4.5-19.4C-8.6 26-7 25-5.7 25H.5c.9 0 1.5.7 1.5 1.6z"/><path fill="#fff" d="M-21.122 38.645h.14c.14 0 .28-.07.28-.14l.42-.63h1.19l-.21.35h1.4l-.21.63h-1.68c-.21.28-.42.42-.7.42h-.84l.21-.63m-.21.91h3.01l-.21.7h-1.19l-.21.7h1.19l-.21.7h-1.19l-.28 1.05c-.07.14 0 .28.28.21h.98l-.21.7h-1.89c-.35 0-.49-.21-.35-.63l.35-1.33h-.77l.21-.7h.77l.21-.7h-.7l.21-.7zm4.83-1.75v.42s.56-.42 1.12-.42h1.96l-.77 2.66c-.07.28-.35.49-.77.49h-2.24l-.49 1.89c0 .07 0 .14.14.14h.42l-.14.56h-1.12c-.42 0-.56-.14-.49-.35l1.47-5.39h.91zm1.68.77h-1.75l-.21.7s.28-.21.77-.21h1.05l.14-.49zm-.63 1.68c.14 0 .21 0 .21-.14l.14-.35h-1.75l-.14.56 1.54-.07zm-1.19.84h.98v.42h.28c.14 0 .21-.07.21-.14l.07-.28h.84l-.14.49c-.07.35-.35.49-.77.56h-.56v.77c0 .14.07.21.35.21h.49l-.14.56h-1.19c-.35 0-.49-.14-.49-.49l.07-2.1zm4.2-2.45l.21-.84h1.19l-.07.28s.56-.28 1.05-.28h1.47l-.21.84h-.21l-1.12 3.85h.21l-.21.77h-.21l-.07.35h-1.19l.07-.35h-2.17l.21-.77h.21l1.12-3.85h-.28m1.26 0l-.28 1.05s.49-.21.91-.28c.07-.35.21-.77.21-.77h-.84zm-.49 1.54l-.28 1.12s.56-.28.98-.28c.14-.42.21-.77.21-.77l-.91-.07zm.21 2.31l.21-.77h-.84l-.21.77h.84zm2.87-4.69h1.12l.07.42c0 .07.07.14.21.14h.21l-.21.7h-.77c-.28 0-.49-.07-.49-.35l-.14-.91zm-.35 1.47h3.57l-.21.77h-1.19l-.21.7h1.12l-.21.77h-1.26l-.28.42h.63l.14.84c0 .07.07.14.21.14h.21l-.21.7h-.7c-.35 0-.56-.07-.56-.35l-.14-.77-.56.84c-.14.21-.35.35-.63.35h-1.05l.21-.7h.35c.14 0 .21-.07.35-.21l.84-1.26h-1.05l.21-.77h1.19l.21-.7h-1.19l.21-.77zm-19.74-5.04c-.14.7-.42 1.19-.91 1.54-.49.35-1.12.56-1.89.56-.7 0-1.26-.21-1.54-.56-.21-.28-.35-.56-.35-.98 0-.14 0-.35.07-.56l.84-3.92h1.19l-.77 3.92v.28c0 .21.07.35.14.49.14.21.35.28.7.28s.7-.07.91-.28c.21-.21.42-.42.49-.77l.77-3.92h1.19l-.84 3.92m1.12-1.54h.84l-.07.49.14-.14c.28-.28.63-.42 1.05-.42.35 0 .63.14.77.35.14.21.21.49.14.91l-.49 2.38h-.91l.42-2.17c.07-.28.07-.49 0-.56-.07-.14-.21-.14-.35-.14-.21 0-.42.07-.56.21-.14.14-.28.35-.28.63l-.42 2.03h-.91l.63-3.57m9.8 0h.84l-.07.49.14-.14c.28-.28.63-.42 1.05-.42.35 0 .63.14.77.35s.21.49.14.91l-.49 2.38h-.91l.42-2.24c.07-.21 0-.42-.07-.49-.07-.14-.21-.14-.35-.14-.21 0-.42.07-.56.21-.14.14-.28.35-.28.63l-.42 2.03h-.91l.7-3.57m-5.81 0h.98l-.77 3.5h-.98l.77-3.5m.35-1.33h.98l-.21.84h-.98l.21-.84zm1.4 4.55c-.21-.21-.35-.56-.35-.98v-.21c0-.07 0-.21.07-.28.14-.56.35-1.05.7-1.33.35-.35.84-.49 1.33-.49.42 0 .77.14 1.05.35.21.21.35.56.35.98v.21c0 .07 0 .21-.07.28-.14.56-.35.98-.7 1.33-.35.35-.84.49-1.33.49-.35 0-.7-.14-1.05-.35m1.89-.7c.14-.21.28-.49.35-.84v-.35c0-.21-.07-.35-.14-.49a.
2265635.635 0 0 0-.49-.21c-.28 0-.49.07-.63.28-.14.21-.28.49-.35.84v.28c0 .21.07.35.14.49.14.14.28.21.49.21.28.07.42 0 .63-.21m6.51-4.69h2.52c.49 0 .84.14 1.12.35.28.21.35.56.35.91v.28c0 .07 0 .21-.07.28-.07.49-.35.98-.7 1.26-.42.35-.84.49-1.4.49h-1.4l-.42 2.03h-1.19l1.19-5.6m.56 2.59h1.12c.28 0 .49-.07.7-.21.14-.14.28-.35.35-.63v-.28c0-.21-.07-.35-.21-.42-.14-.07-.35-.14-.7-.14h-.91l-.35 1.68zm8.68 3.71c-.35.77-.7 1.26-.91 1.47-.21.21-.63.7-1.61.7l.07-.63c.84-.28 1.26-1.4 1.54-1.96l-.28-3.78h1.19l.07 2.38.91-2.31h1.05l-2.03 4.13m-2.94-3.85l-.42.28c-.42-.35-.84-.56-1.54-.21-.98.49-1.89 4.13.91 2.94l.14.21h1.12l.7-3.29-.91.07m-.56 1.82c-.21.56-.56.84-.91.77-.28-.14-.35-.63-.21-1.19.21-.56.56-.84.91-.77.28.14.35.63.21 1.19"/></svg>
2266              </li><li class="icon--payment">
2267                <svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 38 24" width="38" height="24" fill="none" aria-labelledby="pi-visa"><title id="pi-visa">Visa</title><rect x=".5" y=".5" width="37" height="23" rx="2.5" stroke="#000" stroke-opacity=".07" fill="none"/><path d="M35 0H3C1.3 0 0 1.3 0 3V21C0 22.7 1.4 24 3 24H35C36.7 24 38 22.7 38 21V3C38 1.3 36.6 0 35 0Z" fill="#142FBD" style="fill:#142FBD;fill:color(display-p3 0.0784 0.1843 0.7412);fill-opacity:1;"/><path d="M35 1C36.1 1 37 1.9 37 3V21C37 22.1 36.1 23 35 23H3C1.9 23 1 22.1 1 21V3C1 1.9 1.9 1 3 1H35Z" fill="#1532CB" style="fill:#1532CB;fill:color(display-p3 0.0824 0.1961 0.7961);fill-opacity:1;"/><path d="M29.5944 10.2167H29.2778C28.8556 11.2722 28.5389 11.8 28.2222 13.3833H30.2278C29.9111 11.8 29.9111 11.0611 29.5944 10.2167V10.2167ZM32.6556 16.4444H30.8611C30.7556 16.4444 30.7556 16.4444 30.65 16.3389L30.4389 15.3889L30.3333 15.1778H27.8C27.6944 15.1778 27.5889 15.1778 27.5889 15.3889L27.2722 16.3389C27.2722 16.4444 27.1667 16.4444 27.1667 16.4444H24.95L25.1611 15.9167L28.2222 8.73889C28.2222 8.21111 28.5389 8 29.0667 8H30.65C30.7556 8 30.8611 8 30.8611 8.21111L32.3389 15.0722C32.4444 15.4944 32.55 15.8111 32.55 16.2333C32.6556 16.3389 32.6556 16.3389 32.6556 16.4444V16.4444ZM18.5111 16.1278L18.9333 14.2278C19.0389 14.2278 19.1444 14.3333 19.1444 14.3333C19.8833 14.65 20.6222 14.8611 21.3611 14.7556C21.5722 14.7556 21.8889 14.65 22.1 14.5444C22.6278 14.3333 22.6278 13.8056 22.2056 13.3833C21.9944 13.1722 21.6778 13.0667 21.3611 12.8556C20.9389 12.6444 20.5167 12.4333 20.2 12.1167C18.9333 11.0611 19.3556 9.58333 20.0944 8.84444C20.7278 8.42222 21.0444 8 21.8889 8C23.1556 8 24.5278 8 25.1611 8.21111H25.2667C25.1611 8.84444 25.0556 9.37222 24.8444 10.0056C24.3167 9.79444 23.7889 9.58333 23.2611 9.58333C22.9444 9.58333 22.6278 9.58333 22.3111 9.68889C22.1 9.68889 21.9944 9.79444 21.8889 9.9C21.6778 10.1111 21.6778 10.4278 21.8889 10.6389L22.4167 11.0611C22.8389 11.2722 23.2611 11.4833 23.5778 11.6944C24.1056 12.0111 24.6333 12.5389 24.7389 13.1722C24.95 14.1222 24.6333 14.9667 23.7889 15.6C23.2611 16.0222 23.05 16.2333 22.3111 16.2333C20.8333 16.2333 19.6722 16.3389 18.7222 16.0222C18.6167 16.2333 18.6167 16.2333 18.5111 16.1278V16.1278ZM14.8167 16.4444C14.9222 15.7056 14.9222 15.7056 15.0278 15.3889C15.5556 13.0667 16.0833 10.6389 16.5056 8.31667C16.6111 8.10556 16.6111 8 16.8222 8H18.7222C18.5111 9.26667 18.3 10.2167 17.9833 11.3778C17.6667 12.9611 17.35 14.5444 16.9278 16.1278C16.9278 16.3389 16.8222 16.3389 16.6111 16.3389L14.8167 16.4444ZM5 8.21111C5 8.10556 5.21111 8 5.31667 8H8.90556C9.43333 8 9.85556 8.31667 9.96111 8.84444L10.9111 13.4889C10.9111 13.5944 10.9111 13.5944 11.0167 13.7C11.0167 13.5944 11.1222 13.5944 11.1222 13.5944L13.3389 8.21111C13.2333 8.10556 13.3389 8 13.4444 8H15.6611C15.6611 8.10556 15.6611 8.10556 15.5556 8.21111L12.2833 15.9167C12.1778 16.1278 12.1778 
226716.2333 12.0722 16.3389C11.9667 16.4444 11.7556 16.3389 11.5444 16.3389H9.96111C9.85556 16.3389 9.75 16.3389 9.75 16.1278L8.06111 9.58333C7.85 9.37222 7.53333 9.05556 7.11111 8.95C6.47778 8.63333 5.31667 8.42222 5.10556 8.42222L5 8.21111Z" fill="white" style="fill:white;fill-opacity:1;"/></svg>
2268
2269              </li></ul><div class="footer__copyright site-footer__bottom-block"><span>
2270            &copy; 2026 Bond &amp; Mason
2271</span><span class="footer__powered_by"><a target="_blank" rel="nofollow" href="https://www.shopify.com?utm_campaign=poweredby&amp;utm_medium=shopify&amp;utm_source=onlinestore">Powered by Shopify</a></span>
2272      </div>
2273    </div>
2274
2275  </div>
2276</footer>
2277
2278
2279</div>
2280<!-- END sections: footer-group --></div>
2281  </div><div id="VideoModal" class="modal modal--solid">
2282  <div class="modal__inner">
2283    <div class="modal__centered page-width text-center">
2284      <div class="modal__centered-content">
2285        <div class="video-wrapper video-wrapper--modal">
2286          <div id="VideoHolder"></div>
2287        </div>
2288      </div>
2289    </div>
2290  </div>
2291
2292  <button type="button" class="modal__close js-modal-close text-link">
2293    <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><title>icon-X</title><path d="m19 17.61 27.12 27.13m0-27.12L19 44.74"/></svg>
2294    <span class="icon__fallback-text">"Close (esc)"</span>
2295  </button>
2296</div>
2297<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true">
2298  <div class="pswp__bg"></div>
2299  <div class="pswp__scroll-wrap">
2300    <div class="pswp__container">
2301      <div class="pswp__item"></div>
2302      <div class="pswp__item"></div>
2303      <div class="pswp__item"></div>
2304    </div>
2305
2306    <div class="pswp__ui pswp__ui--hidden">
2307      <button class="btn btn--no-animate btn--body btn--circle pswp__button pswp__button--arrow--left" title="Previous">
2308        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-left" viewBox="0 0 284.49 498.98"><title>icon-chevron-left</title><path d="M249.49 0a35 35 0 0 1 24.75 59.75L84.49 249.49l189.75 189.74a35.002 35.002 0 1 1-49.5 49.5L10.25 274.24a35 35 0 0 1 0-49.5L224.74 10.25A34.89 34.89 0 0 1 249.49 0Z"/></svg>
2309      </button>
2310
2311      <button class="btn btn--no-animate btn--body btn--circle btn--large pswp__button pswp__button--close" title="Close (esc)">
2312        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><title>icon-X</title><path d="m19 17.61 27.12 27.13m0-27.12L19 44.74"/></svg>
2313      </button>
2314
2315      <button class="btn btn--no-animate btn--body btn--circle pswp__button pswp__button--arrow--right" title="Next">
2316        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-right" viewBox="0 0 284.49 498.98"><title>icon-chevron</title><path d="M35 498.98a35 35 0 0 1-24.75-59.75l189.74-189.74L10.25 59.75a35.002 35.002 0 0 1 49.5-49.5l214.49 214.49a35 35 0 0 1 0 49.5L59.75 488.73A34.89 34.89 0 0 1 35 498.98Z"/></svg>
2317      </button>
2318    </div>
2319  </div>
2320</div>
2321<tool-tip data-tool-tip="">
2322  <div class="tool-tip__inner" data-tool-tip-inner>
2323    <button class="tool-tip__close" data-tool-tip-close=""><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" viewBox="0 0 64 64"><title>icon-X</title><path d="m19 17.61 27.12 27.13m0-27.12L19 44.74"/></svg></button>
2324    <div data-tool-tip-title>Bond &amp; Mason</div>
2325    <div class="tool-tip__content" data-tool-tip-content>
2326    </div>
2327  </div>
2328</tool-tip>
2329
2330  <template id="predictiveImageMarkup">
2331    <image-element>
2332      <img width height src loading="lazy" sizes="(min-width: 769px) 100px, 60px">
2333    </image-element>
2334  </template>
2335<style>  </style>
2336<div id="shopify-block-AY0t1U0hVdVlqMGtGT__6744518860797519131" class="shopify-block shopify-app-block"><link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-language-float-selector.css" rel="stylesheet" type="text/css" media="all" />
2337<link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-language-fix-selector.css" rel="stylesheet" type="text/css" media="all" />
2338<link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-currency-selector.css" rel="stylesheet" type="text/css" media="all" />
2339<link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-language-float-link-selector.css" rel="stylesheet" type="text/css" media="all" />
2340<link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-languageAndcurrency-dropdown-selector.css" rel="stylesheet" type="text/css" media="all" />
2341<link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-languageAndcurrency-popup-selector.css" rel="stylesheet" type="text/css" media="all" />
2342<link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-cart-notification.css" rel="stylesheet" type="text/css" media="all" />
2343<link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-google.css" rel="stylesheet" type="text/css" media="all" />
2344<link href="//cdn.shopify.com/extensions/01a0b4dd-0fcc-7464-a38a-008498c35397/localizing-261/assets/etranslate-dynamic-preview.css" rel="stylesheet" type="text/css" media="all" />
2345
2346
2347<div id='etranslate-language-float-selector-theme2' class='etranslate-LanguageList' style='display:none' translate="no">
2348    <form method="post" action="/localization" id="localization_form" 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="/" />
2349        <span class='language-button'>
2350        <div class='etranslate-language-list-button' id='etranslate-language-button'>
2351                   <div class="etranslate-button-icon-wrapper">
2352                    <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"
2353                         id="etranslate-button-icon-theme2" style="display: none">
2354<path d="M8.5.1h-1C3.3.3.1 3.8.1 8c0 4.1 3.1 7.5 7.1 7.9h1.6c4-.4 7.1-3.8 7.1-7.9 0-4.2-3.2-7.7-7.4-7.9zM5.2 1.6C4.2 3 3.6 5 3.5 7.4H1.1C1.3 4.8 3 2.6 5.2 1.6zm-4.1 7h2.4c.1 2.3.7 4.4 1.7 5.7-2.3-1-3.9-3.1-4.1-5.7zm6.3 6.1c-1.5-.5-2.6-3.1-2.7-6.1h2.7v6.1zm0-7.3H4.7c.1-3 1.3-5.5 2.7-6.1v6.1zm7.5 0h-2.4c-.1-2.4-.7-4.4-1.7-5.8 2.3 1 3.9 3.2 4.1 5.8zM8.6 1.3c1.4.5 2.6 3.1 2.7 6.1H8.6V1.3zm0 13.4V8.6h2.7c-.1 3-1.2 5.6-2.7 6.1zm2.2-.4c1-1.4 1.6-3.4 1.7-5.7h2.4c-.2 2.5-1.8 4.7-4.1 5.7z" fill="currentColor"></path>
2355</svg>
2356
2357                </div>
2358                <div class='etranslate-flag-wrapper'>
2359                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2360                </div>
2361
2362                <div class="etranslate-language-name"
2363                     data-name="English">
2364                    English
2365                </div>
2366            <div class='etranslate-language-arrow-new'>
2367                <svg t="1691992688952" className="icon"
2368                     viewBox="0 0 1024 1024" version="1.1"
2369                     xmlns="http://www.w3.org/2000/svg" p-id="1728"
2370                     width="200" height="200" id="etranslate-language-arrow-new-img-theme2" style="display: none">
2371            <path
2372                    d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2373                    p-id="1729"></path>
2374        </svg>
2375
2376            </div>
2377        </div>
2378    </span>
2379        <div id='etranslate-language-list-dropdown-box'
2380             class='etranslate-language-list-dropdown-box'
2381             style="opacity: 0">
2382            <ul id='etranslate-language-list-dropdown' class='etranslate-language-list-dropdown'
2383                style='max-height:0px;opacity:0;'>
2384            </ul>
2385        </div>
2386
2387        <input type="hidden" name="country_code" value="NL">
2388        <input type="hidden" name="language_code" value="en">
2389    </form>
2390</div>
2391
2392
2393<div id='etranslate-language-embedded-selector-theme2' class='embed-etranslate-LanguageList' style='display:none' translate="no">
2394    <form method="post" action="/localization" id="localization_form" 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="/" />
2395        <span class='language-button'>
2396    <div class='embed-etranslate-language-list-button' id='etranslate-language-button'>
2397               <div class="etranslate-button-icon-wrapper">
2398                    <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"
2399                         id="etranslate-button-icon-theme2" style="display: none">
2400<path d="M8.5.1h-1C3.3.3.1 3.8.1 8c0 4.1 3.1 7.5 7.1 7.9h1.6c4-.4 7.1-3.8 7.1-7.9 0-4.2-3.2-7.7-7.4-7.9zM5.2 1.6C4.2 3 3.6 5 3.5 7.4H1.1C1.3 4.8 3 2.6 5.2 1.6zm-4.1 7h2.4c.1 2.3.7 4.4 1.7 5.7-2.3-1-3.9-3.1-4.1-5.7zm6.3 6.1c-1.5-.5-2.6-3.1-2.7-6.1h2.7v6.1zm0-7.3H4.7c.1-3 1.3-5.5 2.7-6.1v6.1zm7.5 0h-2.4c-.1-2.4-.7-4.4-1.7-5.8 2.3 1 3.9 3.2 4.1 5.8zM8.6 1.3c1.4.5 2.6 3.1 2.7 6.1H8.6V1.3zm0 13.4V8.6h2.7c-.1 3-1.2 5.6-2.7 6.1zm2.2-.4c1-1.4 1.6-3.4 1.7-5.7h2.4c-.2 2.5-1.8 4.7-4.1 5.7z" fill="currentColor"></path>
2401</svg>
2402
2403                </div>
2404        <div class='embed-etranslate-flag-wrapper'>
2405          <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2406        </div>
2407
2408        <div class="embed-etranslate-language-name"
2409             data-name="English">
2410          English
2411        </div>
2412      <div class='embed-etranslate-language-arrow'>
2413            <svg t="1691992688952" className="icon"
2414                 viewBox="0 0 1024 1024" version="1.1"
2415                 xmlns="http://www.w3.org/2000/svg" p-id="1728"
2416                 width="200" height="200" id="etranslate-language-arrow-new-img-theme2" style="display: none">
2417            <path
2418                    d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2419                    p-id="1729"></path>
2420        </svg>
2421      </div>
2422    </div>
2423  </span>
2424        <div id='embed-etranslate-language-list-dropdown-box'
2425             class='embed-etranslate-language-list-dropdown-box'
2426             style="opacity: 0">
2427            <ul id='embed-etranslate-language-list-dropdown' class='embed-etranslate-language-list-dropdown'
2428                style='max-height:0px;opacity:0;'>
2429            </ul>
2430
2431        </div>
2432
2433        <input type="hidden" name="country_code" value="NL">
2434        <input type="hidden" name="language_code" value="en">
2435    </form>
2436</div>
2437
2438
2439<div id='etranslate-currency-selector-theme2' class='etranslate-CurrencyList' style='display:none' translate="no">
2440    <form method="post" action="/localization" id="localization_form" 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="/" />
2441        <span class='selector-button'>
2442        <div class='etranslate-currency-list-button'>
2443                   <div class="etranslate-button-icon-wrapper">
2444                    <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"
2445                         id="etranslate-button-icon-theme2" style="display: none">
2446<path d="M8.5.1h-1C3.3.3.1 3.8.1 8c0 4.1 3.1 7.5 7.1 7.9h1.6c4-.4 7.1-3.8 7.1-7.9 0-4.2-3.2-7.7-7.4-7.9zM5.2 1.6C4.2 3 3.6 5 3.5 7.4H1.1C1.3 4.8 3 2.6 5.2 1.6zm-4.1 7h2.4c.1 2.3.7 4.4 1.7 5.7-2.3-1-3.9-3.1-4.1-5.7zm6.3 6.1c-1.5-.5-2.6-3.1-2.7-6.1h2.7v6.1zm0-7.3H4.7c.1-3 1.3-5.5 2.7-6.1v6.1zm7.5 0h-2.4c-.1-2.4-.7-4.4-1.7-5.8 2.3 1 3.9 3.2 4.1 5.8zM8.6 1.3c1.4.5 2.6 3.1 2.7 6.1H8.6V1.3zm0 13.4V8.6h2.7c-.1 3-1.2 5.6-2.7 6.1zm2.2-.4c1-1.4 1.6-3.4 1.7-5.7h2.4c-.2 2.5-1.8 4.7-4.1 5.7z" fill="currentColor"></path>
2447</svg>
2448
2449                </div>
2450                <div class='etranslate-flag-wrapper'>
2451                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2452                </div>
2453                <div class="etranslate-currency-name">
2454                    EUR
2455                </div>
2456            <div class='etranslate-currency-selector-arrow'>
2457                 <svg t="1691992688952" className="icon"
2458                      viewBox="0 0 1024 1024" version="1.1"
2459                      xmlns="http://www.w3.org/2000/svg" p-id="1728"
2460                      width="200" height="200" id="etranslate-language-arrow-new-img-theme2" style="display: none">
2461            <path
2462                    d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2463                    p-id="1729"></path>
2464        </svg>
2465            </div>
2466        </div>
2467    </span>
2468
2469        <div id='etranslate-currency-list-dropdown-box'
2470             class='etranslate-currency-list-dropdown-box'
2471             style="opacity: 0">
2472            <ul class='etranslate-currency-list-dropdown' style='max-height:0px;opacity:0;'><li class='etranslate-selector-dropdown-item' data-country="Australia"
2473                        data-code="AUD" data-name="Australian dollar"
2474                        data-symbol="$">
2475                        <div class="etranslate-flag-wrapper">
2476                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2477                        </div>
2478                        <div class="etranslate-currency-name">AUD</div>
2479                    </li><li class='etranslate-selector-dropdown-item' data-country="Canada"
2480                        data-code="CAD" data-name="Canadian dollar"
2481                        data-symbol="$">
2482                        <div class="etranslate-flag-wrapper">
2483                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2484                        </div>
2485                        <div class="etranslate-currency-name">CAD</div>
2486                    </li><li class='etranslate-selector-dropdown-item' data-country="Switzerland"
2487                        data-code="CHF" data-name="Swiss franc"
2488                        data-symbol="Fr">
2489                        <div class="etranslate-flag-wrapper">
2490                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2491                        </div>
2492                        <div class="etranslate-currency-name">CHF</div>
2493                    </li><li class='etranslate-selector-dropdown-item' data-country="Denmark"
2494                        data-code="DKK" data-name="Danish krone"
2495                        data-symbol="kr">
2496                        <div class="etranslate-flag-wrapper">
2497                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2498                        </div>
2499                        <div class="etranslate-currency-name">DKK</div>
2500                    </li><li class='etranslate-selector-dropdown-item' data-country="European Union"
2501                        data-code="EUR" data-name="Euro"
2502                        data-symbol="€">
2503                        <div class="etranslate-flag-wrapper">
2504                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2505                        </div>
2506                        <div class="etranslate-currency-name">EUR</div>
2507                    </li><li class='etranslate-selector-dropdown-item' data-country="United Kingdom"
2508                        data-code="GBP" data-name="Pound sterling"
2509                        data-symbol="£">
2510                        <div class="etranslate-flag-wrapper">
2511                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2512                        </div>
2513                        <div class="etranslate-currency-name">GBP</div>
2514                    </li><li class='etranslate-selector-dropdown-item' data-country="India"
2515                        data-code="INR" data-name="Indian rupee"
2516                        data-symbol="₨">
2517                        <div class="etranslate-flag-wrapper">
2518                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2519                        </div>
2520                        <div class="etranslate-currency-name">INR</div>
2521                    </li><li class='etranslate-selector-dropdown-item' data-country="Mexico"
2522                        data-code="MXN" data-name="Mexican peso"
2523                        data-symbol="$">
2524                        <div class="etranslate-flag-wrapper">
2525                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2526                        </div>
2527                        <div class="etranslate-currency-name">MXN</div>
2528                    </li><li class='etranslate-selector-dropdown-item' data-country="Norway"
2529                        data-code="NOK" data-name="Norwegian krone"
2530                        data-symbol="kr">
2531                        <div class="etranslate-flag-wrapper">
2532                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2533                        </div>
2534                        <div class="etranslate-currency-name">NOK</div>
2535                    </li><li class='etranslate-selector-dropdown-item' data-country="New Zealand"
2536                        data-code="NZD" data-name="New Zealand dollar"
2537                        data-symbol="$">
2538                        <div class="etranslate-flag-wrapper">
2539                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2540                        </div>
2541                        <div class="etranslate-currency-name">NZD</div>
2542                    </li><li class='etranslate-selector-dropdown-item' data-country="Poland"
2543                        data-code="PLN" data-name="Polish złoty"
2544                        data-symbol="zł">
2545                        <div class="etranslate-flag-wrapper">
2546                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2547                        </div>
2548                        <div class="etranslate-currency-name">PLN</div>
2549                    </li><li class='etranslate-selector-dropdown-item' data-country="Russia"
2550                        data-code="RUB" data-name="Russian ruble"
2551                        data-symbol="₽">
2552                        <div class="etranslate-flag-wrapper">
2553                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2554                        </div>
2555                        <div class="etranslate-currency-name">RUB</div>
2556                    </li><li class='etranslate-selector-dropdown-item' data-country="Sweden"
2557                        data-code="SEK" data-name="Swedish krona (plural: kronor)"
2558                        data-symbol="kr">
2559                        <div class="etranslate-flag-wrapper">
2560                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2561                        </div>
2562                        <div class="etranslate-currency-name">SEK</div>
2563                    </li><li class='etranslate-selector-dropdown-item' data-country="United States"
2564                        data-code="USD" data-name="United States dollar"
2565                        data-symbol="$">
2566                        <div class="etranslate-flag-wrapper">
2567                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2568                        </div>
2569                        <div class="etranslate-currency-name">USD</div>
2570                    </li><li class='etranslate-selector-dropdown-item' data-country="Vietnam"
2571                        data-code="VND" data-name="Vietnamese đồng"
2572                        data-symbol="₫">
2573                        <div class="etranslate-flag-wrapper">
2574                            <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2575                        </div>
2576                        <div class="etranslate-currency-name">VND</div>
2577                    </li>
2578            </ul>
2579
2580        </div>
2581
2582        <input type="hidden" name="country_code" value="NL">
2583    </form>
2584</div>
2585
2586
2587<div id='etranslate-language-float-link-selector-theme2'
2588     class='etranslate-LanguageList-link etranslate-language-float-link'
2589     style='display:none' translate="no">
2590    <form method="post" action="/localization" id="localization_form" 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="/" />
2591        <ul id='etranslate-language-list-link' class='etranslate-language-list-link' style=''>
2592        </ul>
2593        <input type="hidden" name="country_code" value="NL">
2594        <input type="hidden" name="language_code" value="en">
2595    </form>
2596</div>
2597
2598
2599<div class="etranslate-cart-notification-theme2" style="display: none" translate="no"></div>
2600
2601
2602<div id="etranslate-language_currency-dropdown-selector-theme2" style="display: none" translate="no">
2603    <form method="post" action="/localization" id="localization_form" 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="/" />
2604        <span class='selector-button'>
2605        <div class='etranslate-selector-list-button'>
2606                   <div class="etranslate-button-icon-wrapper">
2607                    <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"
2608                         id="etranslate-button-icon-theme2" style="display: none">
2609<path d="M8.5.1h-1C3.3.3.1 3.8.1 8c0 4.1 3.1 7.5 7.1 7.9h1.6c4-.4 7.1-3.8 7.1-7.9 0-4.2-3.2-7.7-7.4-7.9zM5.2 1.6C4.2 3 3.6 5 3.5 7.4H1.1C1.3 4.8 3 2.6 5.2 1.6zm-4.1 7h2.4c.1 2.3.7 4.4 1.7 5.7-2.3-1-3.9-3.1-4.1-5.7zm6.3 6.1c-1.5-.5-2.6-3.1-2.7-6.1h2.7v6.1zm0-7.3H4.7c.1-3 1.3-5.5 2.7-6.1v6.1zm7.5 0h-2.4c-.1-2.4-.7-4.4-1.7-5.8 2.3 1 3.9 3.2 4.1 5.8zM8.6 1.3c1.4.5 2.6 3.1 2.7 6.1H8.6V1.3zm0 13.4V8.6h2.7c-.1 3-1.2 5.6-2.7 6.1zm2.2-.4c1-1.4 1.6-3.4 1.7-5.7h2.4c-.2 2.5-1.8 4.7-4.1 5.7z" fill="currentColor"></path>
2610</svg>
2611
2612                </div>
2613                <div class='etranslate-flag-wrapper etranslate-currency-flag-wrapper'>
2614                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2615                </div>
2616                <div class="etranslate-currency-name">EUR</div>
2617                <div class='split-line'> / </div>
2618                <div class='etranslate-flag-wrapper etranslate-language-flag-wrapper'>
2619                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2620                </div>
2621                <div class="etranslate-language-name"
2622                     data-name="English">
2623                    English
2624                </div>
2625               <div class='etranslate-language-arrow-new'>
2626                    <svg t="1691992688952" className="icon"
2627                         viewBox="0 0 1024 1024" version="1.1"
2628                         xmlns="http://www.w3.org/2000/svg" p-id="1728"
2629                         width="200" height="200" id="etranslate-language-arrow-new-img-theme2" style="display: none">
2630            <path
2631                    d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2632                    p-id="1729"></path>
2633        </svg>
2634            </div>
2635        </div>
2636    </span>
2637        <div class="etranslate-selector-list-dropdown" style='max-height:0px;opacity:0;display: none'>
2638            <div class='etranslate-selector-card'>
2639                <div class='etranslate-language-selector'>
2640                    <div class='etranslate-language-selector-label'>Language</div>
2641                    <div class="etranslate-selector-button etranslate-language-selector-button">
2642                        <div class='etranslate-selector-list-button-content'>
2643                            <div class='etranslate-flag-wrapper'>
2644                                <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2645                            </div>
2646                            <div class="etranslate-language-name"
2647                                 data-name="English">
2648                                English
2649                            </div>
2650                        </div>
2651                        <div class='etranslate-currency_language-arrow-language'>
2652                            <svg t="1691992688952" className="icon"
2653                                 viewBox="0 0 1024 1024" version="1.1"
2654                                 xmlns="http://www.w3.org/2000/svg" p-id="1728"
2655                                 width="200" height="200" id="etranslate-currency_language-arrow-language-img" style="display: none">
2656                                <path
2657                                        d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2658                                        p-id="1729"></path>
2659                            </svg>
2660                        </div>
2661                    </div>
2662                    <ul class="etranslate-language-dropdown etranslate-selector-dropdown">
2663
2664                    </ul>
2665                </div>
2666                <div class='etranslate-currency-selector'>
2667                    <div class='etranslate-currency-selector-label'>Currency</div>
2668                    <div class="etranslate-selector-button etranslate-currency-selector-button">
2669                        <div class='etranslate-selector-list-button-content'>
2670                            <div class='etranslate-flag-wrapper'>
2671                                <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2672                            </div>
2673                            <div class="etranslate-currency-name">EUR</div>
2674                        </div>
2675                        <div class='etranslate-currency_language-arrow-currency'>
2676                            <svg t="1691992688952" className="icon"
2677                                 viewBox="0 0 1024 1024" version="1.1"
2678                                 xmlns="http://www.w3.org/2000/svg" p-id="1728"
2679                                 width="200" height="200" id="etranslate-currency_language-arrow-currency-img" style="display: none">
2680                                <path
2681                                        d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2682                                        p-id="1729"></path>
2683                            </svg>
2684                        </div>
2685                    </div>
2686                    <ul class="etranslate-currency-dropdown etranslate-selector-dropdown"><li class='etranslate-selector-dropdown-item' data-country="Australia"
2687                                data-code="AUD" data-name="Australian dollar"
2688                                data-symbol="$">
2689                                <div class="etranslate-flag-wrapper">
2690                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2691                                </div>
2692                                <div class="etranslate-currency-name">AUD</div>
2693                            </li><li class='etranslate-selector-dropdown-item' data-country="Canada"
2694                                data-code="CAD" data-name="Canadian dollar"
2695                                data-symbol="$">
2696                                <div class="etranslate-flag-wrapper">
2697                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2698                                </div>
2699                                <div class="etranslate-currency-name">CAD</div>
2700                            </li><li class='etranslate-selector-dropdown-item' data-country="Switzerland"
2701                                data-code="CHF" data-name="Swiss franc"
2702                                data-symbol="Fr">
2703                                <div class="etranslate-flag-wrapper">
2704                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2705                                </div>
2706                                <div class="etranslate-currency-name">CHF</div>
2707                            </li><li class='etranslate-selector-dropdown-item' data-country="Denmark"
2708                                data-code="DKK" data-name="Danish krone"
2709                                data-symbol="kr">
2710                                <div class="etranslate-flag-wrapper">
2711                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2712                                </div>
2713                                <div class="etranslate-currency-name">DKK</div>
2714                            </li><li class='etranslate-selector-dropdown-item' data-country="European Union"
2715                                data-code="EUR" data-name="Euro"
2716                                data-symbol="€">
2717                                <div class="etranslate-flag-wrapper">
2718                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2719                                </div>
2720                                <div class="etranslate-currency-name">EUR</div>
2721                            </li><li class='etranslate-selector-dropdown-item' data-country="United Kingdom"
2722                                data-code="GBP" data-name="Pound sterling"
2723                                data-symbol="£">
2724                                <div class="etranslate-flag-wrapper">
2725                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2726                                </div>
2727                                <div class="etranslate-currency-name">GBP</div>
2728                            </li><li class='etranslate-selector-dropdown-item' data-country="India"
2729                                data-code="INR" data-name="Indian rupee"
2730                                data-symbol="₨">
2731                                <div class="etranslate-flag-wrapper">
2732                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2733                                </div>
2734                                <div class="etranslate-currency-name">INR</div>
2735                            </li><li class='etranslate-selector-dropdown-item' data-country="Mexico"
2736                                data-code="MXN" data-name="Mexican peso"
2737                                data-symbol="$">
2738                                <div class="etranslate-flag-wrapper">
2739                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2740                                </div>
2741                                <div class="etranslate-currency-name">MXN</div>
2742                            </li><li class='etranslate-selector-dropdown-item' data-country="Norway"
2743                                data-code="NOK" data-name="Norwegian krone"
2744                                data-symbol="kr">
2745                                <div class="etranslate-flag-wrapper">
2746                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2747                                </div>
2748                                <div class="etranslate-currency-name">NOK</div>
2749                            </li><li class='etranslate-selector-dropdown-item' data-country="New Zealand"
2750                                data-code="NZD" data-name="New Zealand dollar"
2751                                data-symbol="$">
2752                                <div class="etranslate-flag-wrapper">
2753                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2754                                </div>
2755                                <div class="etranslate-currency-name">NZD</div>
2756                            </li><li class='etranslate-selector-dropdown-item' data-country="Poland"
2757                                data-code="PLN" data-name="Polish złoty"
2758                                data-symbol="zł">
2759                                <div class="etranslate-flag-wrapper">
2760                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2761                                </div>
2762                                <div class="etranslate-currency-name">PLN</div>
2763                            </li><li class='etranslate-selector-dropdown-item' data-country="Russia"
2764                                data-code="RUB" data-name="Russian ruble"
2765                                data-symbol="₽">
2766                                <div class="etranslate-flag-wrapper">
2767                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2768                                </div>
2769                                <div class="etranslate-currency-name">RUB</div>
2770                            </li><li class='etranslate-selector-dropdown-item' data-country="Sweden"
2771                                data-code="SEK" data-name="Swedish krona (plural: kronor)"
2772                                data-symbol="kr">
2773                                <div class="etranslate-flag-wrapper">
2774                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2775                                </div>
2776                                <div class="etranslate-currency-name">SEK</div>
2777                            </li><li class='etranslate-selector-dropdown-item' data-country="United States"
2778                                data-code="USD" data-name="United States dollar"
2779                                data-symbol="$">
2780                                <div class="etranslate-flag-wrapper">
2781                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2782                                </div>
2783                                <div class="etranslate-currency-name">USD</div>
2784                            </li><li class='etranslate-selector-dropdown-item' data-country="Vietnam"
2785                                data-code="VND" data-name="Vietnamese đồng"
2786                                data-symbol="₫">
2787                                <div class="etranslate-flag-wrapper">
2788                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2789                                </div>
2790                                <div class="etranslate-currency-name">VND</div>
2791                            </li>
2792                    </ul>
2793                </div>
2794                <div class="etranslate-change">
2795                    <button class="etranslate-change-button" type="button">Change</button>
2796                </div>
2797
2798            </div>
2799        </div>
2800        <input type="hidden" name="country_code" value="NL">
2801        <input type="hidden" name="language_code" value="en">
2802    </form>
2803</div>
2804
2805
2806<div id="etranslate-language_currency-popup-selector-theme2" style="display: none" translate="no">
2807    <form method="post" action="/localization" id="localization_form" 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="/" />
2808        <span class='selector-button'>
2809        <div class='etranslate-selector-list-button'>
2810                   <div class="etranslate-button-icon-wrapper">
2811                    <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"
2812                         id="etranslate-button-icon-theme2" style="display: none">
2813<path d="M8.5.1h-1C3.3.3.1 3.8.1 8c0 4.1 3.1 7.5 7.1 7.9h1.6c4-.4 7.1-3.8 7.1-7.9 0-4.2-3.2-7.7-7.4-7.9zM5.2 1.6C4.2 3 3.6 5 3.5 7.4H1.1C1.3 4.8 3 2.6 5.2 1.6zm-4.1 7h2.4c.1 2.3.7 4.4 1.7 5.7-2.3-1-3.9-3.1-4.1-5.7zm6.3 6.1c-1.5-.5-2.6-3.1-2.7-6.1h2.7v6.1zm0-7.3H4.7c.1-3 1.3-5.5 2.7-6.1v6.1zm7.5 0h-2.4c-.1-2.4-.7-4.4-1.7-5.8 2.3 1 3.9 3.2 4.1 5.8zM8.6 1.3c1.4.5 2.6 3.1 2.7 6.1H8.6V1.3zm0 13.4V8.6h2.7c-.1 3-1.2 5.6-2.7 6.1zm2.2-.4c1-1.4 1.6-3.4 1.7-5.7h2.4c-.2 2.5-1.8 4.7-4.1 5.7z" fill="currentColor"></path>
2814</svg>
2815
2816                </div>
2817                <div class='etranslate-flag-wrapper etranslate-currency-flag-wrapper'>
2818                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2819                </div>
2820                <div class="etranslate-currency-name">EUR</div>
2821                <div class='split-line'> / </div>
2822                  <div class='etranslate-flag-wrapper etranslate-language-flag-wrapper'>
2823                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2824                </div>
2825                <div class="etranslate-language-name"
2826                     data-name="English">
2827                    English
2828                </div>
2829            <div class='etranslate-language-arrow-new'>
2830                 <svg t="1691992688952" className="icon"
2831                      viewBox="0 0 1024 1024" version="1.1"
2832                      xmlns="http://www.w3.org/2000/svg" p-id="1728"
2833                      width="200" height="200" id="etranslate-language-arrow-new-img-theme2" style="display: none">
2834                                <path
2835                                        d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2836                                        p-id="1729"></path>
2837                            </svg>
2838            </div>
2839        </div>
2840    </span>
2841        <div class="etranslate-selector-list-dropdown" style='max-height:0px;opacity:0;'>
2842            <div class='etranslate-selector-card'>
2843                <div class='etranslate-selector-content'>
2844                    <div class='etranslate-language-selector'>
2845                        <div class='etranslate-language-selector-label'>Language</div>
2846                        <div class="etranslate-selector-button etranslate-language-selector-button">
2847                            <div class='etranslate-selector-list-button-content'>
2848                                <div class='etranslate-flag-wrapper'>
2849                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2850                                </div>
2851                                <div class="etranslate-language-name"
2852                                     data-name="English">
2853                                    English
2854                                </div>
2855                            </div>
2856                            <div class='etranslate-currency_language-arrow-language'>
2857                                <svg t="1691992688952" className="icon"
2858                                     viewBox="0 0 1024 1024" version="1.1"
2859                                     xmlns="http://www.w3.org/2000/svg" p-id="1728"
2860                                     width="200" height="200" id="etranslate-currency_language-arrow-language-img" style="display: none">
2861                                    <path
2862                                            d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2863                                            p-id="1729"></path>
2864                                </svg>
2865                            </div>
2866                        </div>
2867                        <ul class="etranslate-language-dropdown etranslate-selector-dropdown">
2868
2869                        </ul>
2870                    </div>
2871                    <div class='etranslate-currency-selector'>
2872                        <div class='etranslate-currency-selector-label'>Currency</div>
2873                        <div class="etranslate-selector-button etranslate-currency-selector-button">
2874                            <div class='etranslate-selector-list-button-content'>
2875                                <div class='etranslate-flag-wrapper'>
2876                                    <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2877                                </div>
2878                                <div class="etranslate-currency-name">EUR</div>
2879                            </div>
2880                            <div class='etranslate-currency_language-arrow-currency'>
2881                                <svg t="1691992688952" className="icon"
2882                                     viewBox="0 0 1024 1024" version="1.1"
2883                                     xmlns="http://www.w3.org/2000/svg" p-id="1728"
2884                                     width="200" height="200" id="etranslate-currency_language-arrow-currency-img" style="display: none">
2885                                    <path
2886                                            d="M573.056 272l308.8 404.608A76.8 76.8 0 0 1 820.736 800H203.232a76.8 76.8 0 0 1-61.056-123.392L450.976 272a76.8 76.8 0 0 1 122.08 0z"
2887                                            p-id="1729"></path>
2888                                </svg>
2889                            </div>
2890                        </div>
2891                        <ul class="etranslate-currency-dropdown etranslate-selector-dropdown"><li class='etranslate-selector-dropdown-item' data-country="Australia"
2892                                    data-code="AUD" data-name="Australian dollar"
2893                                    data-symbol="$">
2894                                    <div class="etranslate-flag-wrapper">
2895                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2896                                    </div>
2897                                    <div class="etranslate-currency-name">AUD</div>
2898                                </li><li class='etranslate-selector-dropdown-item' data-country="Canada"
2899                                    data-code="CAD" data-name="Canadian dollar"
2900                                    data-symbol="$">
2901                                    <div class="etranslate-flag-wrapper">
2902                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2903                                    </div>
2904                                    <div class="etranslate-currency-name">CAD</div>
2905                                </li><li class='etranslate-selector-dropdown-item' data-country="Switzerland"
2906                                    data-code="CHF" data-name="Swiss franc"
2907                                    data-symbol="Fr">
2908                                    <div class="etranslate-flag-wrapper">
2909                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2910                                    </div>
2911                                    <div class="etranslate-currency-name">CHF</div>
2912                                </li><li class='etranslate-selector-dropdown-item' data-country="Denmark"
2913                                    data-code="DKK" data-name="Danish krone"
2914                                    data-symbol="kr">
2915                                    <div class="etranslate-flag-wrapper">
2916                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2917                                    </div>
2918                                    <div class="etranslate-currency-name">DKK</div>
2919                                </li><li class='etranslate-selector-dropdown-item' data-country="European Union"
2920                                    data-code="EUR" data-name="Euro"
2921                                    data-symbol="€">
2922                                    <div class="etranslate-flag-wrapper">
2923                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2924                                    </div>
2925                                    <div class="etranslate-currency-name">EUR</div>
2926                                </li><li class='etranslate-selector-dropdown-item' data-country="United Kingdom"
2927                                    data-code="GBP" data-name="Pound sterling"
2928                                    data-symbol="£">
2929                                    <div class="etranslate-flag-wrapper">
2930                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2931                                    </div>
2932                                    <div class="etranslate-currency-name">GBP</div>
2933                                </li><li class='etranslate-selector-dropdown-item' data-country="India"
2934                                    data-code="INR" data-name="Indian rupee"
2935                                    data-symbol="₨">
2936                                    <div class="etranslate-flag-wrapper">
2937                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2938                                    </div>
2939                                    <div class="etranslate-currency-name">INR</div>
2940                                </li><li class='etranslate-selector-dropdown-item' data-country="Mexico"
2941                                    data-code="MXN" data-name="Mexican peso"
2942                                    data-symbol="$">
2943                                    <div class="etranslate-flag-wrapper">
2944                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2945                                    </div>
2946                                    <div class="etranslate-currency-name">MXN</div>
2947                                </li><li class='etranslate-selector-dropdown-item' data-country="Norway"
2948                                    data-code="NOK" data-name="Norwegian krone"
2949                                    data-symbol="kr">
2950                                    <div class="etranslate-flag-wrapper">
2951                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2952                                    </div>
2953                                    <div class="etranslate-currency-name">NOK</div>
2954                                </li><li class='etranslate-selector-dropdown-item' data-country="New Zealand"
2955                                    data-code="NZD" data-name="New Zealand dollar"
2956                                    data-symbol="$">
2957                                    <div class="etranslate-flag-wrapper">
2958                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2959                                    </div>
2960                                    <div class="etranslate-currency-name">NZD</div>
2961                                </li><li class='etranslate-selector-dropdown-item' data-country="Poland"
2962                                    data-code="PLN" data-name="Polish złoty"
2963                                    data-symbol="zł">
2964                                    <div class="etranslate-flag-wrapper">
2965                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2966                                    </div>
2967                                    <div class="etranslate-currency-name">PLN</div>
2968                                </li><li class='etranslate-selector-dropdown-item' data-country="Russia"
2969                                    data-code="RUB" data-name="Russian ruble"
2970                                    data-symbol="₽">
2971                                    <div class="etranslate-flag-wrapper">
2972                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2973                                    </div>
2974                                    <div class="etranslate-currency-name">RUB</div>
2975                                </li><li class='etranslate-selector-dropdown-item' data-country="Sweden"
2976                                    data-code="SEK" data-name="Swedish krona (plural: kronor)"
2977                                    data-symbol="kr">
2978                                    <div class="etranslate-flag-wrapper">
2979                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2980                                    </div>
2981                                    <div class="etranslate-currency-name">SEK</div>
2982                                </li><li class='etranslate-selector-dropdown-item' data-country="United States"
2983                                    data-code="USD" data-name="United States dollar"
2984                                    data-symbol="$">
2985                                    <div class="etranslate-flag-wrapper">
2986                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2987                                    </div>
2988                                    <div class="etranslate-currency-name">USD</div>
2989                                </li><li class='etranslate-selector-dropdown-item' data-country="Vietnam"
2990                                    data-code="VND" data-name="Vietnamese đồng"
2991                                    data-symbol="₫">
2992                                    <div class="etranslate-flag-wrapper">
2993                                        <span class="rectangle_flag select-dropdown-flag-icon flag-icon"/>
2994                                    </div>
2995                                    <div class="etranslate-currency-name">VND</div>
2996                                </li>
2997                        </ul>
2998                    </div>
2999                    <div class="etranslate-change">
3000                        <button class="etranslate-change-button" type="button">CHANGE</button>
3001                        <div class='etranslate-selector-cancel'>Cancel</div>
3002                    </div>
3003
3004                </div>
3005            </div>
3006            <div class='etranslate-language-list-popup-backdrop'></div>
3007        </div>
3008        <input type="hidden" name="country_code" value="NL">
3009        <input type="hidden" name="language_code" value="en">
3010    </form>
3011</div>
3012
3013
3014<div class="etranslate_redirect" translate="no">
3015    <form method="post" action="/localization" id="localization_form" 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="/" />
3016        <input type="hidden" name="country_code" value="NL">
3017        <input type="hidden" name="language_code" value="en">
3018    </form>
3019</div>
3020
3021<div id="google_translate_element2" style="display: none !important;"></div>
3022
3023<script id="et_shop_locale" type="application/json">
3024    [{"name": "English","endonym_name": "English","iso_code": "en","primary": true},{"name": "Italian","endonym_name": "Italiano","iso_code": "it","primary": false},{"name": "Spanish","endonym_name": "Español","iso_code": "es","primary": false},{"name": "French","endonym_name": "français","iso_code": "fr","primary": false},{"name": "Dutch","endonym_name": "Nederlands","iso_code": "nl","primary": false},{"name": "German","endonym_name": "Deutsch","iso_code": "de","primary": false}]
3025
3026</script>
3026
3027
3028<script id="shopify_supported_currencies" type="application/json">
3029    [{"iso_code": "AU","currency_iso_code": "AUD"},{"iso_code": "AT","currency_iso_code": "EUR"},{"iso_code": "BE","currency_iso_code": "EUR"},{"iso_code": "CA","currency_iso_code": "CAD"},{"iso_code": "DK","currency_iso_code": "DKK"},{"iso_code": "FR","currency_iso_code": "EUR"},{"iso_code": "DE","currency_iso_code": "EUR"},{"iso_code": "IN","currency_iso_code": "INR"},{"iso_code": "IE","currency_iso_code": "EUR"},{"iso_code": "IT","currency_iso_code": "EUR"},{"iso_code": "MX","currency_iso_code": "MXN"},{"iso_code": "NL","currency_iso_code": "EUR"},{"iso_code": "NZ","currency_iso_code": "NZD"},{"iso_code": "NO","currency_iso_code": "EUR"},{"iso_code": "PL","currency_iso_code": "PLN"},{"iso_code": "PT","currency_iso_code": "EUR"},{"iso_code": "SG","currency_iso_code": "SGD"},{"iso_code": "ES","currency_iso_code": "EUR"},{"iso_code": "SE","currency_iso_code": "SEK"},{"iso_code": "CH","currency_iso_code": "CHF"},{"iso_code": "GB","currency_iso_code": "GBP"},{"iso_code": "US","currency_iso_code": "USD"},{"iso_code": "VN","currency_iso_code": "VND"}]
3030
3031</script>
vendor: 1 bytes, line 3031
3031
3032<script id="localization_country_currency_iso_code"
3033        type="application/json">EUR</script>
vendor: 1 bytes, line 3033
3033
3034<script id="shop_domain" type="application/json">bondandmason.com</script>
vendor: 1 bytes, line 3034
3034
3035<script id="shop_metaFields" type="application/json">{"status":"1","fix_status":0,"flags_type":"rectangle_flag","labels_type":"language_name","position_lr":"left","position_tb":"fixed_bottom","vertical":80,"horizontal":12,"selector_width":24,"choose_language_selector":"floating_selector","style_of_the_selector":"dropdown","background_color":"#ffffff","background_opacity":100,"font_color":"#000000","css_code":"","language_flags":"","border_width":1,"mobile_position_lr":"left","mobile_position_tb":"fixed_bottom","mobile_selector_width":"24","mobile_vertical":"12","mobile_horizontal":12,"mobile_choose_language_selector":"floating_selector","mobile_style_of_the_selector":"dropdown","mobile_flags_type":"rectangle_flag","mobile_background_color":"#ffffff","mobile_font_color":"#000000","mobile_background_opacity":"100","mobile_css_code":"","mobile_labels_type":"language_name","mobile_border_width":"1","selector_type":"language","language_currency_selector_style":"dropdown","currency_selector_type":"floating_selector","currency_label_type":"code","mobile_language_currency_selector_style":"dropdown","mobile_currency_selector_type":"embedded_selector","mobile_currency_label_type":"code","auto_switch_location_language":1,"auto_switch_location_currency":0,"arrow":"SIMPLE","mobile_arrow":"SIMPLE","border":["ROUNDED"],"mobile_border":["ROUNDED"],"auto_selector_width":["CUSTOM"],"mobile_auto_selector_width":["CUSTOM"],"rm_logo":"0","custom_js":"","custom_rtl_css":"","mobile_custom_js":"","mobile_custom_rtl_css":"","auto_switch_location_language_ip":"0","languages":[{"is_publish":1,"lan_code":"en","lan_type":2},{"is_publish":1,"lan_code":"nl","lan_type":2},{"is_publish":1,"lan_code":"de","lan_type":2},{"is_publish":1,"lan_code":"it","lan_type":2},{"is_publish":1,"lan_code":"es","lan_type":2}],"default_language":"en","default_currency":{"code":"EUR","country":"European Union","currency":"Euro","currency_symbol":"€","round":"0.00","exchange_rate":0,"is_default":1},"user_currencies_data":[{"code":"AUD","country":"Australia","currency":"Australian dollar","currency_symbol":"$","round":"0.00","exchange_rate":0,"is_default":0},{"code":"CAD","country":"Canada","currency":"Canadian dollar","currency_symbol":"$","round":"0.00","exchange_rate":0,"is_default":0},{"code":"CHF","country":"Switzerland","currency":"Swiss franc","currency_symbol":"Fr","round":"0.00","exchange_rate":0,"is_default":0},{"code":"DKK","country":"Denmark","currency":"Danish krone","currency_symbol":"kr","round":"0.00","exchange_rate":0,"is_default":0},{"code":"EUR","country":"European Union","currency":"Euro","currency_symbol":"€","round":"0.00","exchange_rate":0,"is_default":1},{"code":"GBP","country":"United Kingdom","currency":"Pound sterling","currency_symbol":"£","round":"0.00","exchange_rate":0,"is_default":0},{"code":"INR","country":"India","currency":"Indian rupee","currency_symbol":"₨","round":"0.00","exchange_rate":0,"is_default":0},{"code":"MXN","country":"Mexico","currency":"Mexican peso","currency_symbol":"$","round":"0.00","exchange_rate":0,"is_default":0},{"code":"NOK","country":"Norway","currency":"Norwegian krone","currency_symbol":"kr","round":"0.00","exchange_rate":0,"is_default":0},{"code":"NZD","country":"New Zealand","currency":"New Zealand dollar","currency_symbol":"$","round":"0.00","exchange_rate":0,"is_default":0},{"code":"PLN","country":"Poland","currency":"Polish złoty","currency_symbol":"zł","round":"0.00","exchange_rate":0,"is_default":0},{"code":"RUB","country":"Russia","currency":"Russian ruble","currency_symbol":"₽","round":"0.00","exchange_rate":0,"is_default":0},{"code":"SEK","country":"Sweden","currency":"Swedish krona (plural: kronor)","currency_symbol":"kr","round":"0.00","exchange_rate":0,"is_default":0},{"code":"USD","country":"United States","currency":"United States dollar","currency_symbol":"$","round":"0.00","exchange_rate":0,"is_default":0},{"code":"VND","country":"Vietnam","currency":"Vietnamese đồng","currency_symbol":"₫","round":"0.00","exchange_rate":0,"is_default":0}]}</script>
vendor: 1 bytes, line 3035
3035
3036<script id="shop_metaFields_v2" type="application/json">{"default_currency":{"code":"EUR","country":"European Union","currency":"Euro","currency_symbol":"€","round":"0.00","exchange_rate":"0","is_default":1},"default_language":"en","desktop":"{\"content\":{\"currency_flags_type\":\"rectangle_flag\",\"embed_place\":\"\",\"labels_type_show\":true,\"language_select\":true,\"position_tb\":\"bottom\",\"bar_currency_labels_type_show\":true,\"currency_labels_type_obj\":{\"name\":false,\"code\":true,\"symbol\":false},\"separator\":\"\/\",\"button_icon\":\"globe\",\"left\":12,\"style_of_the_selector\":\"dropdown\",\"bar_currency_flags_type_show\":true,\"arrow\":\"SIMPLE\",\"currency_select\":true,\"flags_type_show\":true,\"currency_labels_type\":\"code\",\"custom_bar_status\":true,\"bar_labels_type\":\"language_name\",\"bar_labels_type_show\":true,\"bar_currency_labels_type_obj\":{\"name\":false,\"code\":true,\"symbol\":false},\"currency_labels_type_show\":true,\"flags_type\":\"rectangle_flag\",\"bar_sort_list\":{\"language\":{\"index\":0,\"children\":{\"bar_flags_type\":0,\"bar_labels_type\":1}},\"currency\":{\"index\":1,\"children\":{\"bar_currency_flags_type\":0,\"bar_currency_labels_type\":1}}},\"arrow_show\":true,\"bar_currency_flags_type\":\"rectangle_flag\",\"embed_place_index\":0,\"fixed\":true,\"top\":80,\"button_icon_show\":false,\"separator_show\":true,\"bar_currency_labels_type\":\"code\",\"labels_type\":\"language_name\",\"selector_type\":\"language\",\"position_lr\":\"left\",\"currency_flags_type_show\":true,\"choose_language_selector\":\"floating_selector\",\"bar_flags_type_show\":true,\"bar_flags_type\":\"rectangle_flag\",\"sort_list\":{\"button_icon\":-1,\"flags_type\":0,\"labels_type\":1,\"separator\":2,\"currency_flags_type\":3,\"currency_labels_type\":4,\"arrow\":5}},\"style\":{\"dropdown_background_color\":\"#ffffff\",\"custom_rtl_css\":\"\",\"popup_primary_background_color\":\"#121127b8\",\"popup_select_background_color\":\"#F3F3F6\",\"popup_primary_font_color\":\"#ffffff\",\"popup_select_font_color\":\"#000000\",\"popup_background_color\":\"#ffffff\",\"popup_font_color\":\"#000000\",\"selector_width\":24,\"dropdown_select_background_color\":\"#F3F3F6\",\"dropdown_background_opacity\":100,\"dropdown_select_font_color\":\"#000000\",\"css_code\":\"\",\"popup_second_font_color\":\"#000000\",\"border\":[\"ROUNDED\"],\"popup_background_opacity\":100,\"background_color\":\"#ffffff\",\"font_color\":\"#000000\",\"border_width\":1,\"auto_selector_width\":[\"CUSTOM\"],\"custom_js\":\"\",\"background_opacity\":100,\"dropdown_primary_background_color\":\"#121127b8\",\"dropdown_primary_font_color\":\"#ffffff\"}}","et":1,"global":"{\"auto_switch_location_language\":1,\"auto_switch_location_language_ip\":\"0\",\"auto_switch_location_currency\":0,\"language_flags\":{},\"language_sort_list\":[]}","languages":[{"is_publish":1,"lan_code":"nl","lan_type":2},{"is_publish":1,"lan_code":"de","lan_type":2},{"is_publish":1,"lan_code":"it","lan_type":2},{"is_publish":1,"lan_code":"es","lan_type":2},{"is_publish":1,"lan_code":"fr","lan_type":2}],"mobile":"{\"content\":{\"currency_flags_type\":\"rectangle_flag\",\"embed_place\":\"\",\"labels_type_show\":true,\"language_select\":true,\"position_tb\":\"bottom\",\"bar_currency_labels_type_show\":true,\"currency_labels_type_obj\":{\"name\":false,\"code\":true,\"symbol\":false},\"separator\":\"\/\",\"button_icon\":\"globe\",\"left\":12,\"style_of_the_selector\":\"dropdown\",\"bar_currency_flags_type_show\":true,\"arrow\":\"SIMPLE\",\"currency_select\":true,\"flags_type_show\":true,\"currency_labels_type\":\"code\",\"custom_bar_status\":true,\"bar_labels_type\":\"language_name\",\"bar_labels_type_show\":true,\"bar_currency_labels_type_obj\":{\"name\":false,\"code\":true,\"symbol\":false},\"currency_labels_type_show\":true,\"flags_type\":\"rectangle_flag\",\"bar_sort_list\":{\"language\":{\"index\":0,\"children\":{\"bar_flags_type\":0,\"bar_labels_type\":1}},\"currency\":{\"index\":1,\"children\":{\"bar_currency_flags_type\":0,\"bar_currency_labels_type\":1}}},\"arrow_show\":true,\"bar_currency_flags_type\":\"rectangle_flag\",\"embed_place_index\":0,\"fixed\":true,\"top\":\"12\",\"button_icon_show\":false,\"separator_show\":true,\"bar_currency_labels_type\":\"code\",\"labels_type\":\"language_name\",\"selector_type\":\"language\",\"position_lr\":\"left\",\"currency_flags_type_show\":true,\"choose_language_selector\":\"floating_selector\",\"bar_flags_type_show\":true,\"bar_flags_type\":\"rectangle_flag\",\"sort_list\":{\"button_icon\":-1,\"flags_type\":0,\"labels_type\":1,\"separator\":2,\"currency_flags_type\":3,\"currency_labels_type\":4,\"arrow\":5}},\"style\":{\"dropdown_background_color\":\"#ffffff\",\"custom_rtl_css\":\"\",\"popup_primary_background_color\":\"#121127b8\",\"popup_select_background_color\":\"#F3F3F6\",\"popup_primary_font_color\":\"#ffffff\",\"popup_select_font_color\":\"#000000\",\"popup_background_color\":\"#ffffff\",\"popup_font_color\":\"#000000\",\"selector_width\":\"24\",\"dropdown_select_background_color\":\"#F3F3F6\",\"dropdown_background_opacity\":100,\"dropdown_select_font_color\":\"#000000\",\"css_code\":\"\",\"popup_second_font_color\":\"#000000\",\"border\":[\"ROUNDED\"],\"popup_background_opacity\":100,\"background_color\":\"#ffffff\",\"font_color\":\"#000000\",\"border_width\":\"1\",\"auto_selector_width\":[\"CUSTOM\"],\"custom_js\":\"\",\"background_opacity\":\"100\",\"dropdown_primary_background_color\":\"#121127b8\",\"dropdown_primary_font_color\":\"#ffffff\"}}","rm_logo":1,"status":1,"user_currencies_data":[{"code":"AUD","country":"Australia","currency":"Australian dollar","currency_symbol":"$","round":"0.00","exchange_rate":"0"},{"code":"CAD","country":"Canada","currency":"Canadian dollar","currency_symbol":"$","round":"0.00","exchange_rate":"0"},{"code":"CHF","country":"Switzerland","currency":"Swiss franc","currency_symbol":"Fr","round":"0.00","exchange_rate":"0"},{"code":"DKK","country":"Denmark","currency":"Danish krone","currency_symbol":"kr","round":"0.00","exchange_rate":"0"},{"code":"EUR","country":"European Union","currency":"Euro","currency_symbol":"€","round":"0.00","exchange_rate":"0","is_default":1},{"code":"GBP","country":"United Kingdom","currency":"Pound sterling","currency_symbol":"£","round":"0.00","exchange_rate":"0"},{"code":"INR","country":"India","currency":"Indian rupee","currency_symbol":"₨","round":"0.00","exchange_rate":"0"},{"code":"MXN","country":"Mexico","currency":"Mexican peso","currency_symbol":"$","round":"0.00","exchange_rate":"0"},{"code":"NOK","country":"Norway","currency":"Norwegian krone","currency_symbol":"kr","round":"0.00","exchange_rate":"0"},{"code":"NZD","country":"New Zealand","currency":"New Zealand dollar","currency_symbol":"$","round":"0.00","exchange_rate":"0"},{"code":"PLN","country":"Poland","currency":"Polish złoty","currency_symbol":"zł","round":"0.00","exchange_rate":"0"},{"code":"RUB","country":"Russia","currency":"Russian ruble","currency_symbol":"₽","round":"0.00","exchange_rate":"0"},{"code":"SEK","country":"Sweden","currency":"Swedish krona (plural: kronor)","currency_symbol":"kr","round":"0.00","exchange_rate":"0"},{"code":"USD","country":"United States","currency":"United States dollar","currency_symbol":"$","round":"0.00","exchange_rate":"0"},{"code":"VND","country":"Vietnam","currency":"Vietnamese đồng","currency_symbol":"₫","round":"0.00","exchange_rate":"0"}]}</script>
vendor: 1 bytes, line 3036
3036
3037<script id="cart_notify_metaFields" type="application/json">null</script>
vendor: 1 bytes, line 3037
3037
3038<script id="rtl_config" type="application/json">{"is_rtl":"false"}</script>
vendor: 1 bytes, line 3038
3038
3039<script id="media_config_metaFields"
3040        type="application/json">null</script>
vendor: 1 bytes, line 3040
3040
3041<script id="language_iso_code" type="application/json">en</script>
vendor: 1 bytes, line 3041
3041
3042<script id="shop_currency" type="application/json">EUR</script>
vendor: 1 bytes, line 3042
3042
3043<script id="shop_locale" type="application/json">en</script>
vendor: 1 bytes, line 3043
3043
3044<script id="shop_permanent_domain" type="application/json">orgonitely.myshopify.com</script>
vendor: 1 bytes, line 3044
3044
3045<script id="effective_time" type="application/json">2023-06-19</script>
vendor: 1 bytes, line 3045
3045
3046<script id="shop_money_format" type="application/json">€{{amount_with_comma_separator}}</script>
vendor: 1 bytes, line 3046
3046
3047<script id="shop_permanent_domain" type="application/json">orgonitely.myshopify.com</script>
vendor: 1 bytes, line 3047
3047
3048<script id="localization_country_iso_code" type=" /json">NL</script>
vendor: 1 bytes, line 3048
3048
3049<script id="pagefly_json" type="application/json">
3050    
3051    
3052    null
3053</script>
vendor: 1 bytes, line 3053
3053
3054<script id="floating_metaFiles" type="application/json">{
3055    "background_color":"",
3056    "background_opacity":"",
3057    "border_width":"",
3058    "css_code":"",
3059    "flags_type":"",
3060    "font_color":"",
3061    "horizontal":"",
3062    "vertical":"",
3063    "position_lr":"",
3064    "position_tb":"",
3065    "labels_type":"",
3066    "selector_width":""
3067}
3068</script>
3068
3069
3070</div>
3070<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
3070
3071</body>
3072</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.