https://www.boody.co.uk/cdn/shop/t/305/assets/section-nosto-produc…?v=118505806117334198421789137245
1(()=>{var e={4578(e,t,n){"use strict";function a(e,t){"string"==typeof e&&(e=e.replace(".",""));let n="";const a=/\{\{\s*(\w+)\s*\}\}/,r=t||"${{amount}}";function i(e,t=2,n=",",a="."){if(isNaN(e)||null==e)return 0;const r=(e=(e/100).toFixed(t)).split(".");return r[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,`$1${n}`)+(r[1]?a+r[1]:"")}switch(r.match(a)[1]){case"amount":n=i(e,2);break;case"amount_no_decimals":n=i(e,0);break;case"amount_with_comma_separator":n=i(e,2,".",",");break;case"amount_no_decimals_with_comma_separator":n=i(e,0,".",",")}return r.replace(a,n)}n.d(t,{u:()=>a})},3600(e,t,n){"use strict";n.d(t,["MS",0,()=>{var e;return["US","CA"].includes(null===(e=GM_STATE.shopify.markets)||void 0===e||null===(e=e.country)||void 0===e?void 0:e.iso_code)?{colour:"Color",colours:"colors",colourways:"colorways"}:{colour:"Colour",colours:"colours",colourways:"colourways"}},"Mo",0,e=>null!=e&&e.image?{backgroundImage:`url('${e.image}')`,backgroundSize:"cover",backgroundPosition:"center"}:{backgroundColor:(null==e?void 0:e.hex)||"#EFEBE4"},"N7",0,()=>!1!==window.__boodyShowCardPrice,"Pk",0,(e=[],t={})=>{const n=Object.keys(t).map(t=>e.find(e=>e.swatch_name===t)).filter(Boolean),a=n.filter(e=>{var t;return null==e||null===(t=e.tags)||void 0===t?void 0:t.some(e=>"swatch:seasonal"===e)}),r=n.filter(e=>{var t;return!(null!=e&&null!==(t=e.tags)&&void 0!==t&&t.some(e=>"swatch:seasonal"===e))});return{all:n,seasonal:a,core:r}},"b9",0,(e,t={})=>{const n=null==t?void 0:t[null==e?void 0:e.swatch_name];return n?{image:n.image||null,hex:n.hex||null}:null}])},5851(e,t,n){"use strict";var a=n(8742);const r=(0,a.cF)((e,t)=>(0,a.Tj)(t=>(t.classList.add(e),t),t)),i=((0,a.cF)((e,t)=>(0,a.Tj)(t=>e.appendChild(t),t)),(0,a.cF)((e,t,n)=>(n.style[e]=t,n))("display","none"),(0,a.cF)((e,t)=>getComputedStyle(t)[e]),(0,a.GT)("clientHeight"),(0,a.cF)((e,t)=>t.classList.contains(e)),(e,t)=>t.getAttribute(e)),l=((0,a.cF)(i),(0,a.cF)((e,t,n)=>(n.setAttribute(e,t),n))),o=((0,a.cF)((e,t)=>{t.removeAttribute(e)}),(0,a.cF)((e,t)=>i("data-"+e,t)),(0,a.cF)((e,t,n)=>l("data-"+e,t,n)),(e,t,n,a)=>(a.addEventListener(e,t,n),a)),s=(e,t,n,a)=>(a.removeEventListener(e,t,n),a),c=(e,t)=>{const n=["matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector"];for(const a of n)if("function"==typeof t[a])return t[a](e);return!1},d=((0,a.cF)((e,t,n)=>(0,a.Tj)((0,a.OH)(o,e,t,{}),n)),(0,a.cF)((e,t,n)=>(0,a.Tj)((0,a.OH)(s,e,t,{}),n)),(0,a.cF)((e,t,n)=>(0,a.Tj)((0,a.OH)(o,e,t,{passive:!0}),n)),(0,a.cF)((e,t,n)=>(0,a.Tj)((0,a.OH)(o,e,t,!0),n)),(0,a.cF)((e,t)=>(0,a.xB)(t=>t&&!c(e,t)&&t.parentNode,e=>e.parentNode===document?null:e.parentNode,t.parentNode)),(e,t,n,r)=>o(e,e=>{const i=(0,a.xB)(e=>e&&e!==document&&!c(n,e)&&e.parentNode,e=>e.parentNode,e.target);i!==document&&c(n,i)&&t.apply(r,[e])},{},r)),u=((0,a.cF)((e,t,n,r)=>(0,a.Tj)((0,a.OH)(d,e,t,n),r)),(0,a.cF)((e,t)=>(0,a.Tj)(t=>(t.classList.remove(e),t),t)));(0,a.cF)((e,t)=>(0,a.Tj)(t=>(t.classList.toggle(e),t),t)),(0,a.Fs)((0,a.GT)("children"),a.gv),(0,a.GT)("parentNode"),(0,a.GT)("offsetTop"),(0,a.GT)("value"),"undefined"!=typeof window&&window.navigator&&window.navigator.platform&&(/iPad|iPhone|iPod/.test(window.navigator.platform)||"MacIntel"===navigator.platform&&navigator),n.d(t,["Lt",0,(e,t=document)=>t.querySelector(e),"Ub",0,(e,t=document)=>(0,a.gv)(t.querySelectorAll(e)),"iQ",0,r,"vy",0,u])},8896(e,t,n){"use strict";const a=new class{constructor(){this.listeners=new Map}emit(e,t){const n=new CustomEvent(e,{detail:t});document.dispatchEvent(n)}on(e,t){const n=e=>{t(e.detail)};this.listeners.has(e)||this.listeners.set(e,new Map),this.listeners.get(e).set(t,n),document.addEventListener(e,n)}off(e,t){var n;const a=null===(n=this.listeners.get(e))||void 0===n?void 0:n.get(t);a&&(document.removeEventListener(e,a),this.listeners.get(e).delete(t))}};n.d(t,["Q",0,a,"x",0,{cart:{get:"cart.get",add:"cart.add",update:"cart.update",clear:"cart.clear",count:"cart.count",change:"cart.change",render:"cart.render",reload:"cart.reload",freeGift:"cart.free_gift",disableCheckout:"cart.disable_checkout"},product:{updateVariant:"product.update_variant",openQuickAdd:"product.open_quick_add",openColourwayDrawer:"product.open_colourway_drawer",selectedVariant:"product.selected_variant"},collection:{productsLoaded:"collection.products_loaded"},notice:{global:"notice.global"},account:{login:"account.login",register:"account.register"},recommendations:{affinities:"recommendations.affinities",campaigns:"recommendations.campaigns",products:"recommendations.products"},gwp:{maxGifts:"gwp.max_gifts"}}])},7386(e,t,n){"use strict";const a=/\/cdn\/shop\/|cdn\.shopify\.com/,r=[200,400,600,900,1200,1600,2560],i=(e,t)=>{if(/_\d+x\d*\./.test(e))return e.replace(/_\d+x\d*\./,`_${t}x.`);const n=e.replace(/([?&])width=\d+&?/,"$1").replace(/[?&]$/,"");return`${n}${n.includes("?")?"&":"?"}width=${t}`};n.d(t,["t",0,e=>"string"==typeof e&&a.test(e)?{src:i(e,600),srcSet:r.map(t=>`${i(e,t)} ${t}w`).join(", ")}:null])},9895(e,t,n){"use strict";n.d(t,["B",0,(e=[])=>Array.isArray(e)&&e.includes("filter_Block:not-for-sale")])},8742(e,t,n){"use strict";const a=(e,...t)=>t.length>=e.length?e(...t):a.bind(void 0,e,...t),r=a((e,t)=>Array.isArray(t)?t.map(e):e(t)),i=(a((e,t)=>Array.isArray(t)?t.filter(e):e(t)?t:void 0),(e,...t)=>e.bind(void 0,...t)),l=(...e)=>function(t){return e.reduce((e,t)=>
1t.apply(this,[e]),t)},o=a((e,t)=>t[e]),s=(a((e,t)=>t<e),a((e,t,n)=>(n[e]=t,n)),(e,t,n)=>e(n)?s(e,t,t(n)):n),c=(a((e,t)=>t/e),a((e,t)=>t*e),a((e,t)=>-1!==e.indexOf(t)),a((e,t)=>e<0?t[t.length+e]:t[e]));l((c(1),c(-1)),a((e,t)=>t+e)(1)),n.d(t,["Fs",0,l,"GT",0,o,"OH",0,i,"Tj",0,r,"cF",0,a,"gv",0,e=>Array.prototype.slice.call(e),"xB",0,s])},8441(e,t,n){"use strict";var a=n(8970),r=n(9895);const i={},l={},o=e=>Number(String(e||"").split("/").pop()),s=e=>e?100*Number(e):null,c=(e=[])=>e.find(e=>"string"==typeof e&&e.startsWith("YGroup_"))||"",d=(e=[],t,n)=>{const a=e.find(e=>(null==e?void 0:e.namespace)===t&&(null==e?void 0:e.key)===n);return null==a?void 0:a.value},u=(e=[])=>[1,2,3,4,5].reduce((t,n)=>{const a=`pack_${n}`,r=d(e,a,"sku_override");return t[n]={name:d(e,a,"name"),size:d(e,a,"size"),discount:d(e,a,"discount"),sku_override:"null"===r?null:r,minimum_quantity:d(e,a,"minimum_quantity")},t},{}),p=(e,t)=>{var n,a,r,i,l,c,d;const p=(null===(n=e.selectedOptions)||void 0===n?void 0:n.map(e=>e.value))||[],m=(null===(a=e.image)||void 0===a?void 0:a.url)||null;return{id:o(e.id),title:p.join(" / "),position:t+1,available:e.availableForSale,availableForSale:e.availableForSale,inventory_management:"shopify",inventory_policy:e.currentlyNotInStock?"continue":"deny",inventory_quantity:e.quantityAvailable,image:m,featured_image:m,price:s(null===(r=e.price)||void 0===r?void 0:r.amount),compare_at_price:s(null===(i=e.compareAtPrice)||void 0===i?void 0:i.amount),compareAtPrice:null===(l=e.compareAtPrice)||void 0===l?void 0:l.amount,options:p,option1:p[0],option2:p[1],option3:p[2],size_available:"false"!==(null===(c=e.sizeAvailable)||void 0===c?void 0:c.value),metafields:{packs:u(e.metafields)},customFields:[{key:"custom-size_available",value:null===(d=e.sizeAvailable)||void 0===d?void 0:d.value}]}},m=async({yGroupTag:e,numOfVariants:t,needFullVariants:n,imageLimit:a})=>{var s;if(!e)return[];const c=(e=>Math.max(1,Number(e)||1))(t),u=Math.max(2,Number(a)||2),m=e,v=i[m];if(v&&v.numOfVariants>=c&&v.imageLimit>=u&&(v.needFullVariants||!n))return v.products;const f=`${m}:${c}:${n}:${u}`;if(l[f])return l[f];const h=`\n query SwatchGroup($query: String!) @inContext(country: ${null===(s=GM_STATE.shopify.markets)||void 0===s||null===(s=s.country)||void 0===s?void 0:s.iso_code}) {\n products(first: 50, query: $query) {\n nodes {\n id\n title\n handle\n onlineStoreUrl\n availableForSale\n tags\n ${n?"collections(first: 100) { nodes { id handle } }":""}\n featuredImage { url }\n images(first: ${u}) {\n nodes { url }\n }\n metafields(identifiers: [\n {key: "stylecode", namespace: "linked_products"},\n {key: "swatch_name", namespace: "linked_products"},\n {key: "display_name", namespace: "product"},\n {key: "fabric_family", namespace: "custom"},\n {key: "fabric_family_listingpage_displayname", namespace: "custom"}\n ]) {\n key\n namespace\n value\n }\n variants(first: ${c}) {\n nodes {\n ${(e=>`\n id\n availableForSale\n quantityAvailable\n currentlyNotInStock\n image { url }\n price { amount }\n compareAtPrice { amount }\n ${e?'selectedOptions { name value }\n sizeAvailable: metafield(namespace: "custom", key: "size_available") { value }\n metafields(identifiers: [\n {namespace: "pack_1", key: "name"},\n {namespace: "pack_1", key: "size"},\n {namespace: "pack_1", key: "discount"},\n {namespace: "pack_1", key: "sku_override"},\n {namespace: "pack_1", key: "minimum_quantity"},\n {namespace: "pack_2", key: "name"},\n {namespace: "pack_2", key: "size"},\n {namespace: "pack_2", key: "discount"},\n {namespace: "pack_2", key: "sku_override"},\n {namespace: "pack_2", key: "minimum_quantity"},\n {namespace: "pack_3", key: "name"},\n {namespace: "pack_3", key: "size"},\n {namespace: "pack_3", key: "discount"},\n {namespace: "pack_3", key: "sku_override"},\n {namespace: "pack_3", key: "minimum_quantity"},\n {namespace: "pack_4", key: "name"},\n {namespace: "pack_4", key: "size"},\n {namespace: "pack_4", key: "discount"},\n {namespace: "pack_4", key: "sku_override"},\n {namespace: "pack_4", key: "minimum_quantity"},\n {namespace: "pack_5", key: "name"},\n {namespace: "pack_5", key: "size"},\n {namespace: "pack_5", key: "discount"},\n {namespace: "pack_5", key: "sku_override"},\n {namespace: "pack_5", key: "minimum_quantity"}\n ]) {\n namespace\n key\n value\n }':""}\n`)(n)}\n }\n }\n }\n }\n }\n `;return l[f]=fetch(GM_STATE.apis.graphQlEndpoint,{method:"POST",headers:{"Content-Type":"application/json","X-Shopify-Storefront-Access-Token":GM_STATE.apis.storefrontAccessToken},body:JSON.stringify({query:h,variables:{query:`tag:'${e}'`}})}).then(e=>e.json()).then(e=>{var t;const a=(null==e||null===(t=e.data)||void 0===t||null===(t=t.products)||void 0===t||null===(t=t.nodes)||void 0===t?void 0:t.map(e=>((e,{needFullVariants:t})=>{var n,a,r,i,l,s,c,u,m;const v=(null===(n=e.images)||void 0===n||null===(n=n.nodes)||void 0===n?void 0:n.map(e=>
1e.url).filter(Boolean))||[],f=t&&(null===(a=e.variants)||void 0===a||null===(a=a.nodes)||void 0===a?void 0:a.map(p))||[],h=null===(r=e.variants)||void 0===r||null===(r=r.nodes)||void 0===r?void 0:r[0],g=d(e.metafields,"linked_products","swatch_name"),y=d(e.metafields,"linked_products","stylecode"),b=d(e.metafields,"product","display_name"),w=d(e.metafields,"custom","fabric_family"),x=d(e.metafields,"custom","fabric_family_listingpage_displayname"),k=(null===(i=e.featuredImage)||void 0===i?void 0:i.url)||v[0]||"",_=v.find(e=>e!==k)||v[1]||"";return{id:o(e.id),available:e.availableForSale,handle:e.handle,title:e.title,url:e.onlineStoreUrl,tags:e.tags||[],collections:(null===(l=e.collections)||void 0===l||null===(l=l.nodes)||void 0===l?void 0:l.map(e=>({id:o(e.id),handle:e.handle})))||[],featuredImage:k,image:k,image_hover:_,images:v,media:v.slice(1),price_from:null==h||null===(s=h.price)||void 0===s?void 0:s.amount,price_to:null==h||null===(c=h.price)||void 0===c?void 0:c.amount,compare_at_price_from:null==h||null===(u=h.compareAtPrice)||void 0===u?void 0:u.amount,compare_at_price_to:null==h||null===(m=h.compareAtPrice)||void 0===m?void 0:m.amount,swatch_name:g,variants:f,metafields:{stylecode:y,swatchName:g,productName:b,custom:{fabric_family:w,fabric_family_listingpage_displayname:x}},customFields:[{key:"linked_products-stylecode",value:y},{key:"linked_products-swatch_name",value:g},{key:"product-display_name",value:b},{key:"custom-fabric_family",value:w},{key:"custom-fabric_family_listingpage_displayname",value:x}].filter(e=>null!=e.value)}})(e,{needFullVariants:n})).filter(e=>!(0,r.B)(e.tags)))||[];return((e,t,n,a)=>{const r=i[e];return!r||t>r.numOfVariants||a>r.imageLimit||n&&!r.needFullVariants})(m,c,n,u)&&(i[m]={numOfVariants:c,needFullVariants:n,imageLimit:u,products:a}),a}).catch(e=>(console.error("Storefront swatch group error:",e),[])).finally(()=>{delete l[f]}),l[f]};n.d(t,["_o",0,({product:e,enabled:t=!0,lazy:n=!1,numOfVariants:r=1,needFullVariants:i=!1,imageLimit:l=2})=>{const o=(0,a.Kr)(()=>c(null==e?void 0:e.tags),[null==e?void 0:e.tags]),{ref:s,isVisible:d}=(e=>{const t=(0,a.li)(null),[n,r]=(0,a.J0)(!e);return(0,a.vJ)(()=>{if(!e||n)return;const a=t.current;if(!a||"undefined"==typeof IntersectionObserver)return void r(!0);const i=new IntersectionObserver(e=>{e.some(e=>e.isIntersecting)&&(r(!0),i.disconnect())},{rootMargin:"300px"});return i.observe(a),()=>i.disconnect()},[e,n]),{ref:t,isVisible:n}})(n),[u,p]=(0,a.J0)([]),[v,f]=(0,a.J0)(!1);return(0,a.vJ)(()=>{let e=!1;return t&&o?d?(f(!1),m({yGroupTag:o,numOfVariants:r,needFullVariants:i,imageLimit:l}).then(t=>{e||(p(t),f(!0))}),()=>{e=!0}):(p([]),void f(!1)):(p([]),void f(!0))},[t,l,d,i,r,o]),{swatches:u,swatchesLoaded:v,yGroupTag:o,observerRef:s}},"dv",0,c,"yd",0,m])},3369(e,t,n){"use strict";var a=n(8970),r=n(8441);n.d(t,["A",0,({product:e,lazy:t=!1,numOfVariants:n=1,needFullVariants:i=!1,imageLimit:l=2})=>{const[o,s]=(0,a.J0)(null),{swatches:c,swatchesLoaded:d,observerRef:u}=(0,r._o)({product:e,lazy:t,numOfVariants:n,needFullVariants:i,imageLimit:l});return(0,a.vJ)(()=>{var t,n,a;const r=(null===(t=window)||void 0===t||null===(t=t.collectionConfig)||void 0===t?void 0:t.handle)||null,i=(null==e||null===(n=e.tags)||void 0===n?void 0:n.filter(e=>e.includes("hero-swatch")))||[],l=(null==i||null===(a=i.find(e=>e.includes(r)))||void 0===a?void 0:a.split(":")[2])||null,o=l&&c.find(e=>{var t;return(null===(t=e.swatch_name)||void 0===t?void 0:t.toLowerCase())===l})||c.find(t=>t.handle===e.handle);s(e=>(null==e?void 0:e.handle)&&c.find(t=>t.handle===e.handle)||o)},[e,c]),{swatches:c,swatchesLoaded:d,currentSwatch:o,setCurrentSwatch:s,observerRef:u}}])},5220(e,t,n){"use strict";let a=null;n.d(t,["R",0,()=>{if(null===a){const e=document.getElementById("theme-swatches");e&&(a=JSON.parse(e.innerHTML))}return{themeSwatches:a||{}}}])},1985(e,t,n){"use strict";n.d(t,["y8",0,e=>e?100*(e=>"string"==typeof e?parseFloat(e):e)(e):0])},1239(e,t,n){"use strict";n.d(t,["Mo",0,async(e,t)=>{nostojs(n=>{n.defaultSession().recordAttribution("cpr",e,t).done()})},"Ng",0,async(e,t)=>{t&&((async(e,t)=>{nostojs(n=>{n.defaultSession().recordAttribution("vp",e,t).done()})})(e,t),sessionStorage.setItem("resultId",t))}])},2172(e,t,n){"use strict";var a,r,i=n(4578);const l=window.GM_STATE,o=(null==l||null===(a=l.customs)||void 0===a?void 0:a.badge.tags)||[],s=(null==l||null===(r=l.customs)||void 0===r?void 0:r.badge.items)||[],c=e=>{let t="";return["new"].includes(e)&&(t="badge"),t};n.d(t,["bA",0,e=>{const t=[];if(e&&e.length)for(const n of e){const e=o.findIndex(e=>n===e);if(-1!==e)t.push(s[e]);else if(n.includes("label-")){const e=n.replace("label-","").replaceAll("-"," ");t.push({text:e,tag:n,customClass:c(e),backgroundColor:"",textColor:""})}}return t},"up",0,function(e,t=l.shopify.moneyFormat){return(0,i.u)(e,t)}])},3137(e,t,n){"use strict";n.d(t,{A:()=>w});var a=n(873),r=n(8970),i=n(5156),l=n(5851),o=n(3752),s=n(5982),c=n(1340),d=n(7529);function u(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function p(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};
1t%2?u(Object(n),!0).forEach(function(t){(0,a.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):u(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}const m=class{constructor(e,t,n){this.element=e,this.selector=e.getAttribute("data-selector")||"js-carousel-swiper",this.type=e.getAttribute("data-type")||null,this.swiper=null,this.setOptions(t||{},n),this.initCarousel()}setOptions(e,t){const{navigation:n,pagination:a,scrollbar:r}=e||{},i={prevEl:(0,l.Lt)(".js-carousel-prev",this.element),nextEl:(0,l.Lt)(".js-carousel-next",this.element)},o=(0,l.Lt)(".js-carousel-pagination",this.element),s=(0,l.Lt)(".js-carousel-scrollbar",this.element);let c={};t.thumbnail&&(c={thumbs:{swiper:(0,l.Lt)(t.thumbnail),multipleActiveThumbs:!1}}),this.options=p(p({},e),{},{navigation:t.navigation&&p(p({},n),i),pagination:t.pagination&&p(p({},a),{},{el:o}),scrollbar:t.scrollbar&&p(p({},r),{},{el:s}),lazy:e.lazy||!0,keyboard:{enabled:t.keyboard||!1,onlyInViewport:t.onlyInViewport||!0}},c)}initCarousel(){if("native"===this.type){const e=(0,l.Ub)(`.${this.selector}`);if(!e.length)return;if(e.length>1)return void console.error("Swiper: Multiple instances of the same selector are not supported",e);this.swiper=new i.A(`.${this.selector}`,p({modules:[o.A,s.A,c.A,d.A]},this.options))}else{var e;let t=0;if(this.swiper=(0,l.Lt)(`.${this.selector}`,this.element),null!==(e=this.swiper)&&void 0!==e&&e.initialize&&this.swiper)this.initSwiper();else{const e=setInterval(()=>{var n;t++,t>5&&clearInterval(e),null!==(n=this.swiper)&&void 0!==n&&n.initialize&&(clearInterval(e),this.initSwiper())},300)}}}initSwiper(){var e;this.swiper&&null!==(e=this.swiper)&&void 0!==e&&e.initialize&&(Object.assign(this.swiper,this.options),this.swiper.initialize())}};var v=n(3319),f=n(9273);function h(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function g(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?h(Object(n),!0).forEach(function(t){(0,a.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):h(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}const y=".swiper-pagination-bullets-dynamic",b=24;function w({items:e,options:t,selector:n,navigation:a=!1,pagination:i=!1,scrollbar:o=!0,classContainer:s="",classWrapper:c="",topNavigationType:d="none",bottomPaginationType:u="none",setCarouselInstance:p=()=>{}}){const h={navigation:a,pagination:i,scrollbar:o},w=(0,r.li)(null),x=(0,r.li)(null),[k,_]=(0,r.J0)(!1),[A,O]=(0,r.J0)(!0),[P,S]=(0,r.J0)(!1),[N,j]=(0,r.J0)(null);(0,r.vJ)(()=>{var e;const n=g(g({},t),{},{on:{init:()=>{w.current.classList.add("swiper-initialized"),w.current.classList.add("swiper-horizontal"),w.current.classList.add("swiper-backface-hidden")},afterInit:e=>{e.virtualSize>e.width&&_(!0);const t=(0,l.Lt)(y,w.current),n=e.pagination.bullets.length;let a=0;t&&(a=n>=5?(5-n)*b:n>=3?0:-24,t.style.setProperty("right",`${a}px`,"important"))},activeIndexChange:e=>{O(e.isBeginning),S(e.isEnd);const t=e.pagination.bullets.length,n=(0,l.Lt)(y,w.current);let a=0;n&&(a=t>=5?0===e.activeIndex?(5-t)*b:e.activeIndex===t-1?(3-t)*b:(4-t)*b:t>=3?0===e.activeIndex?0:e.activeIndex===t-1?-48:-24:0===e.activeIndex?-24:-48,n.style.setProperty("right",`${a}px`,"important"))},slidesUpdated:e=>{_(e.virtualSize>e.width)}}}),a=new m(w.current,n,h);j(a),p(null==a||null===(e=a.swiper)||void 0===e?void 0:e.swiper)},[]);const F=e=>{var t,n;"prev"===e?null===(t=x.current.swiper)||void 0===t||t.slidePrev():"next"===e&&(null===(n=x.current.swiper)||void 0===n||n.slideNext())};return e&&(0,f.FD)("div",{className:`swiper-wrapper ${c}`,ref:w,"data-selector":n,"data-type":"component",children:[(0,f.Y)("swiper-container",{className:`swiper overflow-hidden ${s} ${n}`,init:"false",ref:x,children:e}),a&&(0,f.FD)("div",{class:"swiper-navigation js-carousel-navigation",children:[(0,f.Y)("div",{class:"swiper-navigation-button carousel-prev js-carousel-prev",children:(0,f.Y)(v.A,{viewB
1ox:"0 0 16 16",name:"icon-chevron-left",className:"h-6 w-6 text-primary"})}),(0,f.Y)("div",{class:"swiper-navigation-button carousel-next js-carousel-next",children:(0,f.Y)(v.A,{viewBox:"0 0 16 16",name:"icon-chevron-right",className:"h-6 w-6 text-primary"})})]}),(i&&"none"===d||i&&"dot"===u||"dot"===d)&&(0,f.Y)("div",{class:"swiper-pagination swiper-pagination-custom js-carousel-pagination"}),o&&(0,f.Y)("div",{class:"swiper-scrollbar js-carousel-scrollbar"}),"arrow"===d&&k&&(0,f.FD)("div",{class:"flex gap-2.5 absolute -top-11 right-0 lg:-top-14 swiper-top-pagination",children:[(0,f.Y)("div",{class:"cursor-pointer",onClick:()=>F("prev"),children:(0,f.Y)(v.A,{viewBox:"0 0 16 16",name:"icon-chevron-left",className:"h-6 w-6 "+(A?"pointer-events-none text-grey-300":"text-grey-900")})}),(0,f.Y)("div",{class:"cursor-pointer",onClick:()=>F("next"),children:(0,f.Y)(v.A,{viewBox:"0 0 16 16",name:"icon-chevron-right",className:"h-6 w-6 "+(P?"pointer-events-none text-grey-300":"text-grey-900")})})]})]})}},2474(e,t,n){"use strict";n.d(t,{A:()=>s});var a=n(8970),r=n(5851),i=n(3137),l=n(5979),o=n(9273);function s({products:e,options:t,desktopSlidesPerView:n,selector:l,navigation:s=!0,topNavigationType:d="none",pagination:u=!1,scrollbar:p=!1,className:m="",classContainer:v="",classWrapper:f="",enableRating:h=!0,enableQuickview:g=!1,enableSwatches:y=!0,classTitle:b,classContent:w,classBottomContent:x,centerSlides:k=!1,idModal:_,ratioImage:A,classLinkTitle:O,classSizeCustom:P,hydratePrice:S=!1,classSlide:N="w-[320px] md:w-1/3 lg:w-1/4 3xl:w-1/5",sizes:j}){const F=t||{slidesPerView:1.45,spaceBetween:16,freeMode:{enabled:!0,sticky:!0},pagination:!0,a11y:!1,centerInsufficientSlides:k,grabCursor:!0,speed:500,breakpoints:{768:{slidesPerView:3.1},1024:{slidesPerView:n||4.04},1440:{slidesPerView:n||4.04},1536:{slidesPerView:n||5.1}}},$=j||(()=>{var e;const t=null!==(e=F.spaceBetween)&&void 0!==e?e:0,n=(e,t)=>`calc((100vw - ${t*(e-1)}px) / ${e})`,a=F.breakpoints||{},r=Object.keys(a).map(Number).filter(e=>a[e].slidesPerView).sort((e,t)=>t-e).map(e=>{var r;return`(min-width: ${e}px) ${n(a[e].slidesPerView,null!==(r=a[e].spaceBetween)&&void 0!==r?r:t)}`});return r.push(n(F.slidesPerView||1,t)),r.join(", ")})(),C=`${f} js-swiper-carousel`,T=(0,a.li)(null);return(0,a.vJ)(()=>{const e=T.current;if(!e)return;const t=(0,r.Lt)(".js-plp-card-image",e),n=(0,r.Lt)(".js-carousel-navigation",e);if(!t||!n)return;const a=()=>{n.style.top=t.clientHeight/2+"px"},i=new ResizeObserver(a);return i.observe(t),a(),()=>i.disconnect()},[e]),e.length>0&&(0,o.Y)("div",{className:m,ref:T,children:(0,o.Y)(i.A,{items:(0,o.Y)(c,{products:e,enableRating:h,enableQuickview:g,enableSwatches:y,classTitle:b,classContent:w,classBottomContent:x,idModal:_,ratioImage:A,classLinkTitle:O,classSizeCustom:P,hydratePrice:S,classSlide:N,sizes:$}),options:F,navigation:s,pagination:u,topNavigationType:d,scrollbar:p,selector:l,classWrapper:C,classContainer:v})})}function c({products:e,enableRating:t=!0,enableQuickview:n=!1,enableSwatches:a=!0,classTitle:r,classContent:i,classBottomContent:s,idModal:c,ratioImage:d,classLinkTitle:u,classSizeCustom:p,hydratePrice:m,classSlide:v,sizes:f}){return e.map(e=>e&&(0,o.Y)("swiper-slide",{className:v,children:(0,o.Y)(l.A,{sizes:f,product:e,enableRating:t,enableQuickview:n,enableSwatches:a,classTitle:r,classContent:i,classBottomContent:s,idModal:c,ratioImage:d,classLinkTitle:u,classSizeCustom:p,hydratePrice:m})}))}},6014(e,t,n){"use strict";var a=n(873),r=n(2430);function i(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?i(Object(n),!0).forEach(function(t){(0,a.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):i(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var o=n(8970),s=n(8896);const c={"shopify-graphql":e=>{var t,n,a,r;const i=e.metafields.find(e=>!!e&&"display_name"===e.key);return{id:e.id,title:(null==i?void 0:i.value)||e.title,handle:e.handle,url:e.onlineStoreUrl,featuredImage:null===(t=e.featuredImage)||void 0===t?void 0:t.url,media:e.images.nodes,imageAlt:null===(n=e.featuredImage)||void 0===n?void 0:n.altText,price:null===(a=e.variants)||void 0===a||null===(a=a.nodes[0])||void 0===a||null===(a=a.price)||void 0===a?void 0:a.amount,compareAtPrice:null===(r=e.variants)||void 0===r||null===(r=r.nodes[0])||void 0===r||null===(r=r.compareAtPrice)||void 0===r?void 0:r.amount,tags:e.tags,variants:e.variants.nodes,customFields:(l=e.metafields,l.map(e=>({key:e?e.namespace+"-"+e.key:"",value:e?e.value:""})))};var l},"nosto-recommended":e=>{const t=e.customFields&&e.customFields.find(e=>"product-display_name"===e.key);return{id:e.id,title:(null==t?void 0:t.value)||e.title,handle:e.url.split("products/").pop(),url:e.url,featuredImage:e.featuredImage,media:e.media,altText:e.imageAlt,price:e.price,compareAtPrice:e.compareAtPrice,tags:e.tags,variants:e.variants,customFields:e.customFields,resultId:e.resultId}},nosto:e=>({id:e.id,title:e.name,handle:e.url,image:e.image_url,altText:e.image_alt_text}),"shopify-education":e=>{var t,n;return{id:e.id,title:e.title,handle:e.handle,url:e.url,featuredImage:e.featuredImage,media:e.images,price:(null===(t=e.variants[0])||void 0===t?void 0:t.price)/100,compareAtPrice:(null===(n=e.variants[0])||void 0===n?void 0:n.compare_at_price)/100,tags:e.tags,variants:e.variants,customFieldsTitle:e.metafields.productName}}},d=(e,t)=>{const n=c[t];return n?e.filter(e=>e).map(n):[]};var u=n(2474),p=n(5979),m=n(9273);function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function f(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};
1t%2?v(Object(n),!0).forEach(function(t){(0,a.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):v(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}const h={ArrowRight:1,ArrowLeft:-1},g="-mx-4 flex gap-4 overflow-x-auto px-4 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden md:-mx-6 md:px-6 lg:mx-0 lg:grid lg:grid-cols-4 lg:gap-6 lg:overflow-visible lg:px-0",y="w-[240px] flex-none md:w-[30%] lg:w-auto",b="(min-width: 1024px)",w=(e,t)=>{const n=t*(e-1);return`(min-width: 1440px) ${Math.ceil((1344-n)/e)}px, (min-width: 1024px) calc((100vw - ${96+n}px) / ${e})`},x=({pulse:e})=>(0,m.FD)("div",{className:"flex flex-col "+(e?"animate-pulse":""),children:[(0,m.Y)("div",{className:"aspect-[232/331] w-full md:aspect-[320/392] "+(e?"bg-gray-200":"")}),(0,m.FD)("div",{className:"flex h-[127.3px] flex-col pt-[11px] lg:h-[137px]",children:[e?(0,m.Y)("div",{className:"mb-0.5 h-6 w-2/3 bg-gray-200"}):null,e?(0,m.FD)("div",{className:"mt-auto",children:[(0,m.Y)("div",{className:"mb-2 h-4 w-1/3 bg-gray-200"}),(0,m.Y)("div",{className:"mt-2 h-4 w-1/2 bg-gray-200"})]}):null]})]});customElements.get("nosto-product-carousel")||(0,r.A)(function(e){const t=window[`nostoProductConfig${e.index}`],n=(t.tabs||[]).filter(e=>e.label),a=n.length>1,r=!a||Boolean(t.enableNavigation),i=!1!==t.fullWidth,[c,v]=(0,o.J0)(()=>!r&&window.matchMedia(b).matches);(0,o.vJ)(()=>{if(r)return;const e=window.matchMedia(b),t=e=>v(e.matches);return e.addEventListener("change",t),()=>e.removeEventListener("change",t)},[]);const[k,_]=(0,o.J0)(0),[A,O]=(0,o.J0)({}),[P,S]=(0,o.J0)([]),N=i?void 0:0===P.length||P.length>4?4.2:4,j=i?"flex-none w-[calc((100%-7.2px)/1.45)] md:w-[calc((100%-33.6px)/3.1)] lg:w-[calc((100%-48.64px)/4.04)] 3xl:w-[calc((100%-65.6px)/5.1)]":"flex-none w-[calc((100%-7.2px)/1.45)] md:w-[calc((100%-33.6px)/3.1)] "+(4===N?"lg:w-[calc((100%-48px)/4)]":"lg:w-[calc((100%-51.2px)/4.2)]"),[F,$]=(0,o.J0)(null),[C,T]=(0,o.J0)(!0),[Y,I]=(0,o.J0)({}),E=(0,o.li)(0),D=(0,o.li)(null),z=(0,o.li)(!0),L=(0,o.li)([]),V=`js-carousel-swiper-product-nosto-${e.id}`,M=`nosto-carousel-panel-${e.id}`,B=`nosto-carousel-heading-${e.id}`,q=t=>`nosto-carousel-tab-${e.id}-${t}`,J=n[k]||{placement:t.nostoPlacement,collection:t.productsCollection},{productsData:G,allProductsData:Q}=((e="")=>{const[t,n]=(0,o.J0)(null),[a,r]=(0,o.J0)([]),[i,l]=(0,o.J0)({});return(0,o.vJ)(()=>{const e=e=>{l(e)},t=e=>{n(e)},a=e=>{const t=[];for(const n in e)if(Object.hasOwnProperty.call(e,n)){const a=e[n];a&&(document.createElement("div").innerHTML=a.html,t.push({id:n,html:a.html}))}r(t)};return s.Q.on(s.x.recommendations.affinities,e),s.Q.on(s.x.recommendations.products,t),s.Q.on(s.x.recommendations.campaigns,a),()=>{s.Q.off(s.x.recommendations.affinities,e),s.Q.off(s.x.recommendations.products,t),s.Q.off(s.x.recommendations.campaigns,a)}},[]),{productsData:(0,o.Kr)(()=>{var n;return""!==e?(null==t||null===(n=t.find(t=>t.id===e))||void 0===n?void 0:n.products)||[]:(null==t?void 0:t.products)||[]},[e,t]),contentData:a,affinities:i,allProductsData:t}})(J.placement),R=e=>{var t;return e&&Q&&(null===(t=Q.find(t=>t.id===e))||void 0===t?void 0:t.products)||[]},H=null!==Q,U=Boolean(J.placement&&(null==G?void 0:G.length)>0),K=async e=>null===e?null:await(async(e,t=[],n=10)=>async function({query:e,variables:t}){const n=GM_STATE.apis.graphQlEndpoint,a=e.replace(/\n/g," ").replace(/ {2}/g,""),r={method:"post",headers:{"Content-Type":"application/json",Accept:"application/json","X-Shopify-Storefront-Access-Token":GM_STATE.apis.storefrontAccessToken},body:JSON.stringify(l({query:a},t?{variables:t}:{}))};return await fetch(n,r)}(((e,t,n)=>{return{query:`\n query Collection($handle: String, $first: Int, $filters: [ProductFilter!]) @inContext(country: ${null===(a=GM_STATE.shopify.markets)||void 0===a||null===(a=a.country)||void 0===a?void 0:a.iso_code}) {\n collection(handle: $handle) {\n products(first: $first, filters: $filters) {\n nodes {\n \n title\n id\n handle\n onlineStoreUrl\n featuredImage {\n altText\n url\n }\n images(first: 10) {\n nodes {\n url\n altText\n }\n }\n variants(first: 50) {\n nodes {\n price {\n amount\n }\n compareAtPrice {\n amount\n }\n }\n }\n tags\n metafields(identifiers: [\n {key: "stylecode", namespace: "linked_products"},\n {key: "swatch_name", namespace: "linked_products"},\n {key: "display_name", namespace: "product"},\n {key: "reviews_count", namespace: "yotpo"},\n {key: "reviews_average", namespace: "yotpo"},\n {key: "fabric_family_listingpage_displayname", namespace: "custom"}\n ]) {\n key\n namespace\n value\n }\n\n }\n }\n }\n }\n `,variables:{handle:e,filters:t,first:n}};var a})(e,t,n)).then(e=>{if(!e.ok)throw e;return e.json()}).then(e=>{var t;return null===(t=e.data.collection)||void 0===t?void 0:t.products.nodes}))(e,[{available:!0}],8),W=n.length>0?A[k]:void 0,X=Boolean(W&&("nosto-recommended"===W.source||!U)),Z=e=>{z.current=!1,e!==k&&(A[e]||T(!0),_(e))};(0,o.vJ)(()=>{(async()=>{const e=D.current===k;if(D.current=k,e&&H&&!((null==G?void 0:G.length)>0)&&Y[k])return;E.current+=1;const t=E.current;if(X)return S(W.products),$(W.source),void T(!1);try{T(!0);const e=await(async e=>{if(J.placement&&(null==e?void 0:e.length)>0)return{products:d(e,"nosto-recommended"),source:"nosto-recommended"};const t=await K(J.collection);return t&&t.length>0?{products:d(t,"shopify-graphql"),source:"collection"}:{products:[],source:"collection"}})(G);if(t!==E.current)return;e.products.length>0?(S(e.products),$(e.source),n.length>0&&O(t=>f(f({},t),{},{[k]:e}))):(S([]),$(e.source),I(e=>f(f({},e),{},{[k]:!0})))}catch(a){console.log(a),t===E.current&&(S([]),$("collection"),I(e=>f(f({},e),{},{[k]:!0})))}finally{t===E.current&&T(!1)}})()},[k,G]);const ee=(e,t)=>
1{if(!e||!t)return;const n=e=>e.replace(/"/g,'"').replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&"),a=/([a-zA-Z_:][-a-zA-Z0-9_:.]*)="([^"]*)"/g;let r;for(;r=a.exec(t);)e.setAttribute(r[1],n(r[2]))};(0,o.vJ)(()=>{if(!a)return;const t=document.getElementById(`shopify-section-${e.id}`);if(!t)return;const r=e=>{const t=n.findIndex(t=>t.key===(e.detail&&e.detail.blockId));t>=0&&Z(t)};return t.addEventListener("shopify:block:select",r),()=>t.removeEventListener("shopify:block:select",r)},[n.length,k]);const te=!(C||P&&P.length>0),ne=(e,t)=>Boolean(A[t])||R(e.placement).length>0||t===k&&!te,ae=(e,t)=>H&&Boolean(Y[t])&&!ne(e,t),re=n.length>0?n:[J],ie=re.every((e,t)=>ne(e,t)||ae(e,t)),le=re.every(ae),oe=(()=>{if(!(a&&te&&z.current&&ae(n[k],k)))return null;for(let e=0;e<n.length;e+=1){if(ne(n[e],e))return e;if(!ae(n[e],e))return null}return null})();(0,o.vJ)(()=>{null!==oe&&z.current&&Z(oe)},[oe]);const se=te&&(!ie||R(J.placement).length>0||Boolean(A[k])||null!==oe),ce=a&&te&&n.some((e,t)=>t!==k&&!ne(e,t)&&!Y[t]);(0,o.vJ)(()=>{if(!ce)return;const e=E.current;n.forEach(async(t,n)=>{if(n!==k&&!ne(t,n)&&!Y[n])try{const a=await K(t.collection);if(e!==E.current)return;a&&a.length>0?O(e=>f(f({},e),{},{[n]:{products:d(a,"shopify-graphql"),source:"collection"}})):I(e=>f(f({},e),{},{[n]:!0}))}catch(a){console.log(a),e===E.current&&I(e=>f(f({},e),{},{[n]:!0}))}})},[ce,k]);const de=(e.heading||"").trim()?{"aria-labelledby":B}:{"aria-label":"Product carousel audiences"},ue=a?{id:M,role:"tabpanel","aria-labelledby":q(k),"data-product-source":F}:{},pe=c?P.slice(0,4):P,me=Boolean(t.showShopAll&&t.shopAllUrl&&t.shopAllLabel),ve=Boolean(window.Shopify&&window.Shopify.designMode);if(te&&le&&!ve)return null;const fe=C||se,he=e=>[...new Set(e.filter(Boolean))].join(", "),ge=a&&le?`No products to show on any tab. Check the Nosto placements (${he(n.map(e=>e.placement))}) and the fallback collections (${he(n.map(e=>e.collection))}).`:`No products to show. Check the Nosto placement and the fallback collection${a?" for this tab":""}.`;return(0,m.Y)("div",{className:"overflow-hidden pb-8 lg:pb-16",children:(0,m.FD)("div",{className:i?"container":"mx-auto max-w-[1440px] px-4 lg:px-12",children:[a?(0,m.FD)("div",{className:"mb-4 flex flex-col items-start gap-3 md:flex-row md:items-center md:justify-between lg:mb-6",children:[(0,m.Y)("div",{id:B,className:"text-2xl font-medium text-grey-900 lg:text-4xl",children:e.heading}),(0,m.Y)("div",f(f({className:"nosto-carousel-tabs flex w-max shrink-0 items-center gap-[3px] rounded-full bg-[#F2EFE9] p-[3px]",role:"tablist"},de),{},{onKeyDown:e=>{let t=null;e.key in h&&(t=(k+h[e.key]+n.length)%n.length),"Home"===e.key&&(t=0),"End"===e.key&&(t=n.length-1),null!==t&&(e.preventDefault(),Z(t),L.current[t]&&L.current[t].focus())},children:n.map((e,t)=>(0,m.Y)("button",{ref:n=>{L.current[t]=n,ee(n,e.attributes)},type:"button",role:"tab",id:q(t),"aria-selected":t===k,"aria-controls":M,tabIndex:t===k?0:-1,className:"rounded-full px-4 py-[7px] text-[12.5px] font-semibold leading-4 transition-colors focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[#2C4727] md:px-5 md:py-2 md:text-[13px] "+(t===k?"bg-[#2C4727] text-white":"text-[#5A5950] hover:text-[#2C4727]"),onClick:()=>Z(t),children:e.label},e.key))}))]}):(0,m.Y)("div",{className:"mb-4 text-2xl font-medium text-grey-900 lg:mb-6 lg:text-4xl",children:e.heading}),(0,m.Y)("div",f(f({className:"w-full",ref:e=>{1===n.length&&ee(e,n[0].attributes)}},ue),{},{children:r&&(fe||P&&P.length>0)?(0,m.FD)("div",{className:"grid [grid-template-areas:'stack']",children:[(0,m.Y)("div",{className:"[grid-area:stack] flex gap-4 overflow-hidden "+(fe?"":"invisible"),"aria-hidden":fe?void 0:"true",children:[...Array(6)].map((e,t)=>(0,m.Y)("div",{className:j,children:(0,m.Y)(x,{pulse:fe})},t))}),fe?null:(0,m.Y)("div",{className:"nosto-carousel-rail min-w-0 [grid-area:stack] "+(i||!a?"":"overflow-hidden"),children:(0,m.Y)(u.A,{products:P,navigation:a,pagination:!1,topNavigationType:a?"none":"arrow",desktopSlidesPerView:N,sizes:i?void 0:`${w(N,16)}, (min-width: 768px) calc((100vw - 65.6px) / 3.1), calc((100vw - 39.2px) / 1.45)`,className:"carousel-swiper-new-product",selector:V,classWrapper:"carousel-swiper-product-nosto",classContainer:i||a?"overflow-visible":"overflow-hidden",hydratePrice:U},N)})]}):fe?(0,m.Y)("div",{className:g,children:[...Array(4)].map((e,t)=>(0,m.Y)("div",{className:y,children:(0,m.Y)(x,{pulse:!0})},t))}):P&&P.length>0?(0,m.Y)("div",{className:`nosto-carousel-grid ${g}`,children:pe.map(e=>e&&(0,m.Y)("div",{className:`nosto-carousel-grid__item ${y}`,children:(0,m.Y)(p.A,{product:e,hydratePrice:U,sizes:`${i?"(min-width: 1024px) 25vw":w(4,24)}, (min-width: 768px) 30vw, 240px`})},e.id))}):ve?(0,m.Y)("p",{className:"text-sm text-grey-900",role:"status",children:ge}):null})),me?(0,m.Y)("div",{className:"mt-6 flex justify-center lg:mt-8",children:(0,m.Y)("a",{href:t.shopAllUrl,className:"inline-flex items-center justify-center rounded-full border border-grey-900 px-8 py-3 text-sm font-medium text-grey-900 transition-colors hover:bg-grey-900 hover:text-white lg:text-base",children:t.shopAllLabel})}):null]})})}
1,"nosto-product-carousel",["heading","index"])},3319(e,t,n){"use strict";var a=n(9273);n.d(t,["A",0,function(e){return(0,a.Y)("svg",{xmlns:"http://www.w3.org/2000/svg",className:e.className?`icon ${e.className}`:"icon",viewBox:e.viewBox,fill:"none",children:(0,a.Y)("use",{xmlnsXlink:"http://www.w3.org/1999/xlink",xlinkHref:`#${e.name}`,x:"0",y:"0"})})}])},6439(e,t,n){"use strict";var a=n(2172),r=n(9273);n.d(t,["A",0,function({className:e="",price:t=0,originalPrice:n=null,classSize:i="text-base",classColor:l="",hasCurrency:o=!1,classCurrency:s="text-xs md-max:pb-0.5 lg:text-base",allPricesAreEqual:c=!0,classFrom:d="text-sm md:text-base"}){const u=n&&0!==n&&n>t,p=u?`${i} ${l}`:`${i}`;return(0,r.FD)("div",c?{className:`price ${e}`,children:[u?(0,r.Y)("span",{className:`line-through ${i}`,children:(0,a.up)(n)}):"",(0,r.FD)("div",{className:"flex items-end gap-1",children:[(0,r.Y)("span",{className:p,children:(0,a.up)(t)}),o&&(0,r.FD)("span",{className:s,children:[" ",window.Shopify.currency.active]})]})]}:{className:"plp-card-price flex gap-2",children:[(0,r.Y)("span",{className:`line-through ${i}`,children:(0,a.up)(n)}),(0,r.FD)("div",{className:`flex items-end gap-1 text-secondary ${d}`,children:[(0,r.Y)("span",{children:"From"}),(0,r.Y)("span",{children:(0,a.up)(t)}),o&&(0,r.FD)("span",{className:s,children:[" ",window.Shopify.currency.active]})]})]})}])},5979(e,t,n){"use strict";n.d(t,{A:()=>$});var a=n(8970),r=n(2172),i=n(9273);const l=function({items:e,className:t="flex gap-1"}){return e.length>0&&(0,i.Y)("div",{className:t,children:e.map(e=>{return(0,i.Y)("span",{className:`badge whitespace-nowrap text-center ${e.customClass}`,style:{color:`${e.textColor}`,backgroundColor:`${e.backgroundColor}`},children:e.text||(t=e.tag,t.replace("label-","").replaceAll("-"," "))});var t})})};function o({url:e,title:t,subTitle:n,handleClick:a,image:r,badges:o=[],reviewsAverage:s,reviewsCount:c,price:d,pill:u,className:p="",classImage:m="",classLinkImage:v="",rootRef:f}){return(0,i.FD)("div",{className:`flex h-full flex-col ${p}`,ref:f,children:[(0,i.FD)("div",{className:`plp-card-image js-plp-card-image relative mb-[11px] shrink-0 overflow-hidden rounded-[6px] bg-[#EFEBE4] ${m}`,children:[(null==o?void 0:o.length)>0&&(0,i.Y)("div",{className:"absolute left-[11px] top-[11px] z-10 flex flex-col gap-1",children:(0,i.Y)(l,{items:o})}),(0,i.Y)("a",{href:e,title:t,onClick:a,className:`block h-full w-full ${v}`,children:r})]}),(0,i.FD)("div",{className:"flex h-full flex-col gap-[3px]",children:[s&&c?(0,i.FD)("div",{className:"flex items-center gap-[6px] text-[11px] leading-[1.4] text-[#6E6E66] lg:text-[12.5px]",children:[(0,i.Y)("span",{className:"tracking-[0.5px] text-[#2C4727]",children:"â
â
â
â
â
"}),(0,i.Y)("span",{className:"font-medium",children:s}),(0,i.FD)("span",{className:"text-[#A5A399]",children:["(",c,")"]})]}):null,(0,i.Y)("a",{href:e,title:t,onClick:a,className:"line-clamp-2 break-words text-[13px] font-semibold leading-[1.25] !tracking-normal text-[#2A2B2D] lg:text-[15px]",children:t}),n?(0,i.Y)("div",{className:"text-[11.5px] leading-[1.4] text-[#8A887F] lg:text-[13px]",children:n}):null,d,(0,i.Y)("div",{className:"mt-auto pt-[6px]",children:u})]})]})}var s=n(7386);const c=function({imageUrl:e,alt:t,className:n,imageClass:r,isLazy:l=!0,isCover:o=!0,sizes:c="100vw"}){const d=`${o?"object-cover object-top":"object-contain"} ${r}`,u=`relative ${n}`,p=e&&e.length>0&&e.some(Boolean)?e[0]:window.GM_STATE.shopify.defaultImage,m="string"==typeof p?p:null==p?void 0:p.url,{src:v,srcSet:f}=(0,a.Kr)(()=>(0,s.t)(m)||{src:m,srcSet:void 0},[m]);return(0,i.Y)("figure",{className:u,children:(0,i.Y)("img",{loading:l?"lazy":"eager",sizes:f?c:void 0,srcSet:f,src:v,className:d,alt:t})})};var d=n(6439),u=n(1985),p=n(873),m=n(8896),v=n(5220),f=n(3600),h=n(8441);function g(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,a)}return n}function y(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};
1t%2?g(Object(n),!0).forEach(function(t){(0,p.A)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):g(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function b({swatches:e=[],payload:t={},fallback:n=null}){const{themeSwatches:r}=(0,v.R)(),{all:l}=(0,a.Kr)(()=>(0,f.Pk)(e,r),[e,r]),o=l.length,s=(0,f.MS)();if(o<2)return n;const c=l.slice(0,5),d=()=>{var e;const n=(0,h.dv)(null==t||null===(e=t.product)||void 0===e?void 0:e.tags);n&&(0,h.yd)({yGroupTag:n,numOfVariants:1,needFullVariants:!1,imageLimit:50})};return(0,i.FD)("button",{type:"button",onClick:()=>{m.Q.emit(m.x.product.openColourwayDrawer,y(y({},t),{},{swatchCount:o}))},onMouseEnter:d,onFocus:d,"aria-label":`See all ${o} ${s.colours}`,className:"flex w-full items-center justify-between gap-2 rounded-[22px] border border-[#DCD6CB] bg-white px-3 py-2 transition-colors duration-150 hover:border-[#2C4727] hover:bg-[#EEF2EC] lg:rounded-[24px] lg:pl-[13px] lg:pr-2",children:[(0,i.Y)("span",{className:"flex gap-[3px] lg:gap-[5px]",children:c.map((e,t)=>{const n=(0,f.Mo)((0,f.b9)(e,r));return(0,i.Y)("span",{style:n,className:"h-[13px] w-[13px] rounded-full shadow-[inset_0_0_0_1px_rgba(0,0,0,0.13)] lg:h-4 lg:w-4"},e.handle||t)})}),(0,i.FD)("span",{className:"whitespace-nowrap text-[12px] font-semibold leading-[1.2] text-[#2C4727] lg:text-[13px]",children:[(0,i.FD)("span",{className:"hidden lg:inline",children:["See all ",o," ",s.colours," +"]}),(0,i.FD)("span",{className:"lg:hidden",children:["+",o," ",s.colours]})]})]})}var w=n(3369);const x={},k={};let _=null;const A=e=>String(e).split("/").pop(),O=e=>Math.max(1,Number(e)||1),P=(e,t)=>{var n,a,r,i,l,o;const s=(null===(n=e.selectedOptions)||void 0===n?void 0:n.map(e=>e.value))||[];return{id:Number(A(e.id)),title:s.join(" / "),position:t+1,available:e.availableForSale,availableForSale:e.availableForSale,inventory_management:"shopify",inventory_policy:e.currentlyNotInStock?"continue":"deny",inventory_quantity:e.quantityAvailable,price:S(null===(a=e.price)||void 0===a?void 0:a.amount),compare_at_price:S(null===(r=e.compareAtPrice)||void 0===r?void 0:r.amount),compareAtPrice:null===(i=e.compareAtPrice)||void 0===i?void 0:i.amount,options:s,size_available:"false"!==(null===(l=e.sizeAvailable)||void 0===l?void 0:l.value),customFields:[{key:"custom-size_available",value:null===(o=e.sizeAvailable)||void 0===o?void 0:o.value}]}},S=e=>e?100*Number(e):null;function N(){var e;const t=_;if(_=null,!t||0===t.requests.size)return;const n=null===(e=GM_STATE.shopify.markets)||void 0===e||null===(e=e.country)||void 0===e?void 0:e.iso_code,a=[...t.requests.values()],r=a.map(({handle:e,numOfVariants:t,needFullVariants:n},a)=>`p${a}: product(handle: "${e}") {\n id\n handle\n variants(first: ${t}) {\n nodes {\n ${(e=>`\n id\n availableForSale\n quantityAvailable\n currentlyNotInStock\n price { amount }\n compareAtPrice { amount }\n ${e?'selectedOptions { name value }\n sizeAvailable: metafield(namespace: "custom", key: "size_available") { value }':""}\n`)(n)}\n }\n }\n }`).join("\n");fetch(GM_STATE.apis.graphQlEndpoint,{method:"POST",headers:{"Content-Type":"application/json","X-Shopify-Storefront-Access-Token":GM_STATE.apis.storefrontAccessToken},body:JSON.stringify({query:`query batchProducts @inContext(country: ${n}) {\n${r}\n}`})}).then(e=>e.json()).then(e=>{a.forEach(({handle:t,numOfVariants:n,needFullVariants:a,resolvers:r},i)=>{var l;const o=null==e||null===(l=e.data)||void 0===l?void 0:l[`p${i}`],s=o?{data:{product:o}}:null;s&&((e,t,n)=>{const a=x[e];return!a||t>a.numOfVariants||n&&!a.needFullVariants})(t,n,a)&&(x[t]={numOfVariants:n,needFullVariants:a,result:s}),r.forEach(e=>e(s))})}).catch(e=>{console.error("Batch Storefront API error:",e),a.forEach(({resolvers:e})=>{e.forEach(e=>e(null))})})}var j=n(1447),F=n(1239);function $({product:e,enableRating:t=!0,enableQuickview:n=!1,enableSwatches:l=!0,idModal:s,classSizeCustom:p="text-[13px] leading-[1.4] lg:text-[14px]",ratioImage:v="aspect-[232/331] md:aspect-[320/392]",sizes:h="(min-width: 1536px) 20vw, (min-width: 1024px) 25vw, (min-width: 768px) 33vw, 50vw",useProductName:g=!0,hydratePrice:y=!1}){var S,$,C;const{title:T,price:Y,featuredImage:I,media:E,customFields:D,url:z,id:L,compareAtPrice:V,handle:M,tags:B,resultId:q}=e,J=null==D||null===(S=D.find(e=>"yotpo-reviews_count"===e.key))||void 0===S?void 0:S.value,G=null==D||null===($=D.find(e=>"yotpo-reviews_average"===e.key))||void 0===$?void 0:$.value,{currentSwatch:Q,swatches:R,swatchesLoaded:H,observerRef:U}=(0,w.A)({product:e,lazy:!0,imageLimit:2}),K=g&&e.customFieldsTitle?e.customFieldsTitle:T,W=null==D||null===(C=D.find(e=>"custom-fabric_family_listingpage_displayname"===e.key))||void 0===C?void 0:C.value,X=null==B?void 0:B.some(e=>e.toLowerCase().includes("gift card")),Z=(({handle:e,fallbackPrice:t,fallbackCompareAtPrice:n,numOfVariants:r=1,needFullVariants:i=!1,enabled:l=!0})=>{const o=O(r),[s,c]=(0,a.J0)({handle:e,numOfVariants:o,needFullVariants:i,fallbackPrice:t,fallbackCompareAtPrice:n,price:t,compareAtPrice:n,variantPricesById:{},variants:[]});return(0,a.vJ)(()=>
1{if(c({handle:e,numOfVariants:o,needFullVariants:i,fallbackPrice:t,fallbackCompareAtPrice:n,price:t,compareAtPrice:n,variantPricesById:{},variants:[]}),!l||!e)return;let a=!1;return(async()=>{var r;const l=await((e,t=1,n=!1)=>{if(!e)return Promise.resolve(null);const a=O(t),r=x[e];if(r&&r.numOfVariants>=a&&(r.needFullVariants||!n))return Promise.resolve(r.result);const i=`${e}:${a}:${n}`;return k[i]||(_||(_={requests:new Map},Promise.resolve().then(N)),k[i]=new Promise(t=>{const r=_.requests.get(i);r?r.resolvers.push(t):_.requests.set(i,{handle:e,numOfVariants:a,needFullVariants:n,resolvers:[t]})}).finally(()=>{delete k[i]})),k[i]})(e,o,i);if(a||null==l||null===(r=l.data)||void 0===r||!r.product)return;const s=l.data.product.variants.nodes[0];if(!s)return;const d=l.data.product.variants.nodes.reduce((e,t)=>(e[A(t.id)]={price:t.price.amount,compareAtPrice:t.compareAtPrice?t.compareAtPrice.amount:null},e),{}),u=i?l.data.product.variants.nodes.map(P):[];c({handle:e,numOfVariants:o,needFullVariants:i,fallbackPrice:t,fallbackCompareAtPrice:n,price:s.price.amount,compareAtPrice:s.compareAtPrice?s.compareAtPrice.amount:null,variantPricesById:d,variants:u})})(),()=>{a=!0}},[l,n,t,e,o,i]),s.handle!==e||s.numOfVariants!==o||s.needFullVariants!==i||s.fallbackPrice!==t||s.fallbackCompareAtPrice!==n?{price:t,compareAtPrice:n,variantPricesById:{},variants:[]}:{price:s.price,compareAtPrice:s.compareAtPrice,variantPricesById:s.variantPricesById,variants:s.variants}})({handle:(null==Q?void 0:Q.handle)||M,fallbackPrice:Q?null==Q?void 0:Q.price_from:Y,fallbackCompareAtPrice:Q?null==Q?void 0:Q.compare_at_price_from:V,enabled:y&&!X&&!(null!=(null==Q?void 0:Q.price_from))}),ee=(0,a.Kr)(()=>null!=Q&&Q.image_hover?Q.image_hover:E&&E.length>0?E[0]:null,[Q,E]),te=(0,f.N7)(),ne={product:e,currentHandle:(null==Q?void 0:Q.handle)||M,id:L,resultId:q,type:"category",url:z,title:K,subTitle:W,price:(0,u.y8)(Z.price),reviewsAverage:G,reviewsCount:J,showPrice:te,gridMode:"model",modelSize:"all"};return(0,i.Y)(o,{url:`${window.Shopify.routes.root}products/${(null==Q?void 0:Q.handle)||M}`,title:K,subTitle:W,badges:(0,r.bA)((null==Q?void 0:Q.tags)||[]),handleClick:()=>{(0,F.Ng)(L,q)},reviewsAverage:t?G:void 0,reviewsCount:t?J:void 0,classImage:v,image:(0,i.FD)(i.FK,{children:[(0,i.Y)(c,{sizes:h,imageUrl:[(null==Q?void 0:Q.image)||I],alt:T,className:"h-full w-full",imageClass:"w-full h-full",isCover:!0,isLazy:!0},`${(null==Q?void 0:Q.image)||I}-image`),ee&&(0,i.Y)(c,{sizes:h,alt:T,imageUrl:[ee],className:"!absolute inset-0 h-full w-full opacity-0 transition-opacity duration-500 [.plp-card-image:hover_&]:opacity-100",imageClass:"w-full h-full"},`${ee}-hover`)]}),price:te?(0,i.Y)(d.A,{price:(0,u.y8)(Z.price),originalPrice:(0,u.y8)(Z.compareAtPrice),className:"plp-card-price flex items-center justify-start gap-2 text-grey-700",classSize:(()=>{let e=p;return e+=Number(Z.compareAtPrice)>Number(Z.price)?" text-grey-500":" text-grey-700",e})(),classColor:"!text-grey-700"}):null,pill:(0,i.FD)(i.FK,{children:[l&&!X&&(0,i.Y)(b,{swatches:R,payload:ne,fallback:H&&0===R.length?(0,i.Y)(j.A,{customFields:D}):null}),n&&(0,i.Y)("button",{class:"js-button-quickview button-secondary mt-auto min-h-[40px] w-full py-[6px] font-medium lg:px-4 lg:text-[15px] xl:px-6 xl:text-base","data-handle":z,onClick:e=>{e.preventDefault(),m.Q.emit(m.x.product.openQuickAdd,{handle:z,id_modal:s}),(0,F.Mo)(L,q)},children:"Quick View"})]}),rootRef:U})}},1447(e,t,n){"use strict";var a=n(8970),r=n(5220),i=n(7500),l=n.n(i),o=n(5851),s=n(9273);const c="hidden";n.d(t,["A",0,function({classWraper:e,customFields:t,isPdpCard:n,available:i,className:d=""}){const{themeSwatches:u}=(0,r.R)(),p=null!=t&&t.length>0&&t.find(e=>"linked_products-swatch_name"===e.key),m=u[n?null==t?void 0:t.swatchName:null==p?void 0:p.value],v=null==m?void 0:m.image,f=null==m?void 0:m.hex;return(0,a.vJ)(()=>{if(n){const e=sessionStorage.getItem("productLinkedData"),n=(0,o.Lt)(".js-swatches-loading");if(e&&n&&(n.innerHTML=e),null!=t&&t.swatchName){const e=setTimeout(()=>{const e=(0,o.Lt)(".js-product-linked");e&&(0,o.vy)(c,e),n&&(0,o.iQ)(c,n),e&&sessionStorage.setItem("productLinkedData",e.innerHTML)},300);return()=>clearTimeout(e)}}},[]),(0,s.FD)("div",{className:"js-product-linked "+(n?"hidden":""),children:[n&&(null==t?void 0:t.swatchName)&&(0,s.Y)("div",{className:"pb-2 pt-4",children:(0,s.Y)("span",{className:"text-grey-900 text-sm leading-5",children:"Colour"})}),(0,s.Y)("div",{className:l()("flex flex-row flex-wrap gap-2 py-[3px]",e),children:(v||f)&&(0,s.FD)("button",{type:"button",className:`relative cursor-pointer border-grey-900 rounded-full overflow-hidden bg-white before:content-[""] before:absolute before:z-10 before:rounded-full before:left-0 before:top-0 before:w-full before:h-full ${n?"h-8 w-8 border-[0.655px] p-0.5 "+(!1===i?" before:bg-[linear-gradient(to_bottom_left,transparent_50%,#2A2B2D_50%,#2A2B2D_calc(50%_+_0.655px),transparent_50%)]":""):"h-4 w-4 border p-[1px]"} ${d}`,"aria-label":"Select color",children:[v&&(0,s.Y)("img",{src:m.image,className:"h-full w-full rounded-full overflow-hidden object-cover",alt:"Color swatch"}),f&&(0,s.Y)("div",{style:{backgroundColor:m.hex},className:"h-full w-full rounded-full overflow-hidden "+("#ffffff"===m.hex?"shadow-[inset_0_0px_0px_1px_rgba(0,0,0,0.1)]":"")})]})})]})}])},7500(e,t){var n; 2/*! 3 Copyright (c) 2018 Jed Watson. 4 Licensed under the MIT License (MIT), see 5 http://jedwatson.github.io/classnames 6*/!function(){"use strict";var a={}.hasOwnProperty;function r(){for(var e="",t=0;t<arguments.length;t++){var n=arguments[t];
6n&&(e=l(e,i(n)))}return e}function i(e){if("string"==typeof e||"number"==typeof e)return e;if("object"!=typeof e)return"";if(Array.isArray(e))return r.apply(null,e);if(e.toString!==Object.prototype.toString&&!e.toString.toString().includes("[native code]"))return e.toString();var t="";for(var n in e)a.call(e,n)&&e[n]&&(t=l(t,n));return t}function l(e,t){return t?e?e+" "+t:e+t:e}e.exports?(r.default=r,e.exports=r):void 0===(n=function(){return r}.apply(t,[]))||(e.exports=n)}()},873(e,t,n){"use strict";n.d(t,{A:()=>r});var a=n(4812);function r(e,t,n){return(t=(0,a.A)(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}},4153(e,t,n){"use strict";n.d(t,{A:()=>r});var a=n(774);function r(e,t){if("object"!=(0,a.A)(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!=(0,a.A)(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}},4812(e,t,n){"use strict";n.d(t,{A:()=>i});var a=n(774),r=n(4153);function i(e){var t=(0,r.A)(e,"string");return"symbol"==(0,a.A)(t)?t:t+""}},774(e,t,n){"use strict";function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}n.d(t,{A:()=>a})}};const t={};function n(a){const r=t[a];if(void 0!==r)return r.exports;const i=t[a]={exports:{}};return e[a](i,i.exports,n),i.exports}n.m=e,(()=>{const e=[];n.O=(t,a,r,i)=>{if(a){i=i||0;for(var l=e.length;l>0&&e[l-1][2]>i;l--)e[l]=e[l-1];return void(e[l]=[a,r,i])}let o=1/0;for(l=0;l<e.length;l++){let[a,r,i]=e[l],c=!0;for(var s=0;s<a.length;s++)(!1&i||o>=i)&&Object.keys(n.O).every(e=>n.O[e](a[s]))?a.splice(s--,1):(c=!1,i<o&&(o=i));if(c){e.splice(l--,1);const n=r();void 0!==n&&(t=n)}}return t}})(),n.n=e=>{const t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},n.d=(e,t)=>{if(Array.isArray(t))for(var a=0;a<t.length;){var r=t[a++],i=t[a++];n.o(e,r)?0===i&&a++:Object.defineProperty(e,r,0===i?{enumerable:!0,value:t[a++]}:{enumerable:!0,get:i})}else for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.j=2189,(()=>{const e={2189:0,6632:0,6739:0};n.O.j=t=>0===e[t];const t=(t,a)=>{let[r,i,l]=a;var o,s,c=0;if(r.some(t=>0!==e[t])){for(o in i)n.o(i,o)&&(n.m[o]=i[o]);if(l)var d=l(n)}for(t&&t(a);c<r.length;c++)n.o(e,s=r[c])&&e[s]&&e[s][0](),e[s]=0;return n.O(d)},a=self.webpackChunkgamma=self.webpackChunkgamma||[];a.forEach(t.bind(null,0)),a.push=t.bind(null,a.push.bind(a))})();let a=n.O(void 0,[9174,6979],()=>n(6014));a=n.O(a)})(); 7//# sourceMappingURL=section-nosto-product-carousel.js.map
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.