PageSourceSearch

https://thejoinery.com/

html thejoinery.com collected 2026-10-04 00:23:59 UTC 246,631 bytes, 3,029 lines download raw bytes

1<!doctype html>
2<html class="no-js" lang="en">
3  <head>
4    <meta charset="utf-8">
5    <meta http-equiv="X-UA-Compatible" content="IE=edge">
6    <meta name="viewport" content="width=device-width,initial-scale=1">
7    <meta name="theme-color" content="">
8    <meta name="google-site-verification" content="s_gByZ_tkiWwgcTc7ZcQHWSDbEw3SJOKPicCG5hwLwY" />
9    <link rel="canonical" href="https://thejoinery.com/">
10    <link rel="preconnect" href="https://cdn.shopify.com" crossorigin>
11    <link rel="stylesheet" type="text/css" href="https://cloud.typography.com/85394/6673792/css/fonts.css" />
12    
12<script async src="//thejoinery.com/cdn/shop/t/2/assets/avada-cookiebar-gcm-integration.js?v=126193589784249790441774984290"></script>
12<link rel="icon" type="image/png" href="//thejoinery.com/cdn/shop/files/favicon.png?crop=center&height=32&v=1694552311&width=32"><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><title>
13      Solid Wood Furniture Handcrafted in Portland, Oregon
14 &ndash; The Joinery</title>
15
16    
17      <meta name="description" content="For over 40 years, our team has handcrafted solid wood furniture that brings joy to your home. Handmade in Portland, OR. Order furniture online or visit our showroom in Portland today. Open Daily.">
18    
19
20    
21
22<meta property="og:site_name" content="The Joinery">
23<meta property="og:url" content="https://thejoinery.com/">
24<meta property="og:title" content="Solid Wood Furniture Handcrafted in Portland, Oregon">
25<meta property="og:type" content="website">
26<meta property="og:description" content="For over 40 years, our team has handcrafted solid wood furniture that brings joy to your home. Handmade in Portland, OR. Order furniture online or visit our showroom in Portland today. Open Daily."><meta property="og:image" content="http://thejoinery.com/cdn/shop/files/joinery_logo.png?height=628&pad_color=fff&v=1675283678&width=1200">
27  <meta property="og:image:secure_url" content="https://thejoinery.com/cdn/shop/files/joinery_logo.png?height=628&pad_color=fff&v=1675283678&width=1200">
28  <meta property="og:image:width" content="1200">
29  <meta property="og:image:height" content="628"><meta name="twitter:card" content="summary_large_image">
30<meta name="twitter:title" content="Solid Wood Furniture Handcrafted in Portland, Oregon">
31<meta name="twitter:description" content="For over 40 years, our team has handcrafted solid wood furniture that brings joy to your home. Handmade in Portland, OR. Order furniture online or visit our showroom in Portland today. Open Daily.">
32
33
34    
34<script src="//thejoinery.com/cdn/shop/t/2/assets/global.js?v=8626684112604297181787328045" defer="defer"></script>
34
35    
35<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
35<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/71252869408/digital_wallets/dialog">
36<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
36<script async="async" src="/checkouts/internal/preloads.js?locale=en-US"></script>
36
37<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
38<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&shop_id=71252869408" crossorigin="anonymous"></script>
vendor: 1 bytes, line 38
38
39<script id="shopify-features" type="application/json">{"accessToken":"e2101e7f079a3b7a535dd09b65b629ca","betas":["rich-media-storefront-analytics"],"domain":"thejoinery.com","predictiveSearch":true,"shopId":71252869408,"locale":"en"}</script>
vendor: 1 bytes, line 39
39
40<script>var Shopify = Shopify || {};
41Shopify.shop = "the-joinery-pdx.myshopify.com";
42Shopify.locale = "en";
43Shopify.currency = {"active":"USD","rate":"1.0"};
44Shopify.country = "US";
45Shopify.theme = {"name":"The Joinery","id":143128330528,"schema_name":"Dawn","schema_version":"7.0.1","theme_store_id":887,"role":"main"};
46Shopify.theme.handle = "null";
47Shopify.theme.style = {"id":null,"handle":null};
48Shopify.cdnHost = "thejoinery.com/cdn";
49Shopify.routes = Shopify.routes || {};
50Shopify.routes.root = "/";
51Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
52Shopify.SignInWithShop = Shopify.SignInWithShop || {};
53Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
54Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 54
54
55<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 55
55
56<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 56
56
57<script>
58  window.ShopifyPay = window.ShopifyPay || {};
59  window.ShopifyPay.apiHost = "shop.app\/pay";
60  window.ShopifyPay.redirectState = null;
61</script>
vendor: 1 bytes, line 61
61
62<script>
63  window.Shopify = window.Shopify || {};
64  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
65  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
66  window.Shopify.SignInWithShop.eligible = true;
67</script>
vendor: 1 bytes, line 67
67
68<script id="shop-js-analytics" type="application/json">{"pageType":"index"}</script>
vendor: 1 bytes, line 68
68
69<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 69
69
70<script type="module">
71  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
72
73  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
74
75</script>
vendor: 1 bytes, line 75
75
76<script>
77  window.Shopify = window.Shopify || {};
78  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
79  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"]};
80</script>
vendor: 1 bytes, line 80
80
81<script>(function() {
82  var isLoaded = false;
83  function asyncLoad() {
84    if (isLoaded) return;
85    isLoaded = true;
86    var urls = ["https:\/\/chimpstatic.com\/mcjs-connected\/js\/users\/47c9d532e46348143093864ca\/3975fb87bc741c35fdc79136d.js?shop=the-joinery-pdx.myshopify.com","https:\/\/cdn.nfcube.com\/instafeed-41da8e67d9795a479d691cbca592320d.js?shop=the-joinery-pdx.myshopify.com"];
87    for (var i = 0; i < urls.length; i++) {
88      var s = document.createElement('script');
89      s.type = 'text/javascript';
90      s.async = true;
91      s.src = urls[i];
92      var x = document.getElementsByTagName('script')[0];
93      x.parentNode.insertBefore(s, x);
94    }
95  };
96  if(window.attachEvent) {
97    window.attachEvent('onload', asyncLoad);
98  } else {
99    window.addEventListener('load', asyncLoad, false);
100  }
101})();</script>
vendor: 1 bytes, line 101
101
102<script id="__st">var __st={"a":71252869408,"offset":-25200,"reqid":"b7446b4f-8575-4ed9-be4b-ef1ebe50cc49-1791073438","pageurl":"thejoinery.com\/","u":"be249487e0b6","p":"home"};</script>
vendor: 1 bytes, line 102
102
103<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 103
103
104<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 104
104
105<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//thejoinery.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 105
105
106<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 = "//thejoinery.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>
106<script crossorigin="anonymous" defer="defer" src="//thejoinery.com/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 106
106
107<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 107
107
108<script>
109  window.Shopify = window.Shopify || {};
110  window.Shopify.MCP = window.Shopify.MCP || {};
111  window.Shopify.MCP.enabled = true;
112  window.Shopify.MCP.shop = "the-joinery-pdx.myshopify.com";
113  window.Shopify.MCP.mcpEndpoint = "https:\/\/thejoinery.com\/api\/mcp";
114  window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n  - What is your return policy?\n  - What is your shipping policy?\n  - What is your phone number?\n  - What are your hours of operation?\"\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."}},"required":["query"]}}];
115</script>
vendor: 1 bytes, line 115
115
116<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("\/\/thejoinery.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
117</script>
vendor: 1 bytes, line 117
117
118<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://thejoinery.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
119</script>
vendor: 1 bytes, line 119
119
120<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
121  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);
122</script>
vendor: 1 bytes, line 122
122
123<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})}}));
124</script>
124
125<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://thejoinery.com/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
126<style id="shopify-accelerated-checkout-cart">
127        #shopify-buyer-consent {
128  margin-top: 1em;
129  display: inline-block;
130  width: 100%;
131}
132
133#shopify-buyer-consent.hidden {
134  display: none;
135}
136
137#shopify-subscription-policy-button {
138  background: none;
139  border: none;
140  padding: 0;
141  text-decoration: underline;
142  font-size: inherit;
143  cursor: pointer;
144}
145
146#shopify-subscription-policy-button::before {
147  box-shadow: none;
148}
149
150      </style>
151<script id="sections-script" data-sections="header,footer" defer="defer" src="//thejoinery.com/cdn/shop/t/2/compiled_assets/scripts.js?v=61936181921355174781756421203"></script>
vendor: 1 bytes, line 151
151
152<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
152
153
154
155    <style data-shopify>
156      @font-face {
157  font-family: Assistant;
158  font-weight: 400;
159  font-style: normal;
160  font-display: swap;
161  src: url("//thejoinery.com/cdn/fonts/assistant/assistant_n4.9120912a469cad1cc292572851508ca49d12e768.woff2") format("woff2"),
162       url("//thejoinery.com/cdn/fonts/assistant/assistant_n4.6e9875ce64e0fefcd3f4446b7ec9036b3ddd2985.woff") format("woff");
163}
164
165      @font-face {
166  font-family: Assistant;
167  font-weight: 700;
168  font-style: normal;
169  font-display: swap;
170  src: url("//thejoinery.com/cdn/fonts/assistant/assistant_n7.bf44452348ec8b8efa3aa3068825305886b1c83c.woff2") format("woff2"),
171       url("//thejoinery.com/cdn/fonts/assistant/assistant_n7.0c887fee83f6b3bda822f1150b912c72da0f7b64.woff") format("woff");
172}
173
174      
175      
176      @font-face {
177  font-family: Assistant;
178  font-weight: 400;
179  font-style: normal;
180  font-display: swap;
181  src: url("//thejoinery.com/cdn/fonts/assistant/assistant_n4.9120912a469cad1cc292572851508ca49d12e768.woff2") format("woff2"),
182       url("//thejoinery.com/cdn/fonts/assistant/assistant_n4.6e9875ce64e0fefcd3f4446b7ec9036b3ddd2985.woff") format("woff");
183}
184
185
186      :root {
187        --font-body-family: Assistant, sans-serif;
188        --font-body-style: normal;
189        --font-body-weight: 400;
190        --font-body-weight-bold: 700;
191
192        --font-heading-family: Assistant, sans-serif;
193        --font-heading-style: normal;
194        --font-heading-weight: 400;
195
196        --font-body-scale: 1.0;
197        --font-heading-scale: 1.0;
198
199        --color-base-text: 18, 18, 18;
200        --color-shadow: 18, 18, 18;
201        --color-base-background-1: 255, 255, 255;
202        --color-base-background-2: 243, 243, 243;
203        --color-base-solid-button-labels: 255, 255, 255;
204        --color-base-outline-button-labels: 18, 18, 18;
205        --color-base-accent-1: 18, 18, 18;
206        --color-base-accent-2: 68, 68, 68;
207        --payment-terms-background-color: #ffffff;
208
209        --gradient-base-background-1: #ffffff;
210        --gradient-base-background-2: #f3f3f3;
211        --gradient-base-accent-1: #121212;
212        --gradient-base-accent-2: #444444;
213
214        --media-padding: px;
215        --media-border-opacity: 0.05;
216        --media-border-width: 1px;
217        --media-radius: 0px;
218        --media-shadow-opacity: 0.0;
219        --media-shadow-horizontal-offset: 0px;
220        --media-shadow-vertical-offset: 4px;
221        --media-shadow-blur-radius: 5px;
222        --media-shadow-visible: 0;
223
224        --page-width: 130rem;
225        --page-width-margin: 0rem;
226
227        --product-card-image-padding: 0.0rem;
228        --product-card-corner-radius: 0.0rem;
229        --product-card-text-alignment: left;
230        --product-card-border-width: 0.0rem;
231        --product-card-border-opacity: 0.1;
232        --product-card-shadow-opacity: 0.0;
233        --product-card-shadow-visible: 0;
234        --product-card-shadow-horizontal-offset: 0.0rem;
235        --product-card-shadow-vertical-offset: 0.4rem;
236        --product-card-shadow-blur-radius: 0.5rem;
237
238        --collection-card-image-padding: 0.0rem;
239        --collection-card-corner-radius: 0.0rem;
240        --collection-card-text-alignment: left;
241        --collection-card-border-width: 0.0rem;
242        --collection-card-border-opacity: 0.1;
243        --collection-card-shadow-opacity: 0.0;
244        --collection-card-shadow-visible: 0;
245        --collection-card-shadow-horizontal-offset: 0.0rem;
246        --collection-card-shadow-vertical-offset: 0.4rem;
247        --collection-card-shadow-blur-radius: 0.5rem;
248
249        --blog-card-image-padding: 0.0rem;
250        --blog-card-corner-radius: 0.0rem;
251        --blog-card-text-alignment: left;
252        --blog-card-border-width: 0.0rem;
253        --blog-card-border-opacity: 0.1;
254        --blog-card-shadow-opacity: 0.0;
255        --blog-card-shadow-visible: 0;
256        --blog-card-shadow-horizontal-offset: 0.0rem;
257        --blog-card-shadow-vertical-offset: 0.4rem;
258        --blog-card-shadow-blur-radius: 0.5rem;
259
260        --badge-corner-radius: 4.0rem;
261
262        --popup-border-width: 1px;
263        --popup-border-opacity: 0.1;
264        --popup-corner-radius: 0px;
265        --popup-shadow-opacity: 0.0;
266        --popup-shadow-horizontal-offset: 0px;
267        --popup-shadow-vertical-offset: 4px;
268        --popup-shadow-blur-radius: 5px;
269
270        --drawer-border-width: 1px;
271        --drawer-border-opacity: 0.1;
272        --drawer-shadow-opacity: 0.0;
273        --drawer-shadow-horizontal-offset: 0px;
274        --drawer-shadow-vertical-offset: 4px;
275        --drawer-shadow-blur-radius: 5px;
276
277        --spacing-sections-desktop: 0px;
278        --spacing-sections-mobile: 0px;
279
280        --grid-desktop-vertical-spacing: 8px;
281        --grid-desktop-horizontal-spacing: 20px;
282        --grid-mobile-vertical-spacing: 4px;
283        --grid-mobile-horizontal-spacing: 10px;
284
285        --text-boxes-border-opacity: 0.1;
286        --text-boxes-border-width: 0px;
287        --text-boxes-radius: 0px;
288        --text-boxes-shadow-opacity: 0.0;
289        --text-boxes-shadow-visible: 0;
290        --text-boxes-shadow-horizontal-offset: 0px;
291        --text-boxes-shadow-vertical-offset: 4px;
292        --text-boxes-shadow-blur-radius: 5px;
293
294        --buttons-radius: 0px;
295        --buttons-radius-outset: 0px;
296        --buttons-border-width: 1px;
297        --buttons-border-opacity: 1.0;
298        --buttons-shadow-opacity: 0.0;
299        --buttons-shadow-visible: 0;
300        --buttons-shadow-horizontal-offset: 0px;
301        --buttons-shadow-vertical-offset: 4px;
302        --buttons-shadow-blur-radius: 5px;
303        --buttons-border-offset: 0px;
304
305        --inputs-radius: 0px;
306        --inputs-border-width: 1px;
307        --inputs-border-opacity: 0.55;
308        --inputs-shadow-opacity: 0.0;
309        --inputs-shadow-horizontal-offset: 0px;
310        --inputs-margin-offset: 0px;
311        --inputs-shadow-vertical-offset: 4px;
312        --inputs-shadow-blur-radius: 5px;
313        --inputs-radius-outset: 0px;
314
315        --variant-pills-radius: 40px;
316        --variant-pills-border-width: 1px;
317        --variant-pills-border-opacity: 0.55;
318        --variant-pills-shadow-opacity: 0.0;
319        --variant-pills-shadow-horizontal-offset: 0px;
320        --variant-pills-shadow-vertical-offset: 4px;
321        --variant-pills-shadow-blur-radius: 5px;
322      }
323
324      *,
325      *::before,
326      *::after {
327        box-sizing: inherit;
328      }
329
330      html {
331        box-sizing: border-box;
332        font-size: calc(var(--font-body-scale) * 62.5%);
333        height: 100%;
334      }
335
336      body {
337        display: grid;
338        grid-template-rows: auto auto 1fr auto;
339        grid-template-columns: 100%;
340        min-height: 100%;
341        margin: 0;
342        font-size: 1.5rem;
343        letter-spacing: 0.06rem;
344        line-height: calc(1 + 0.8 / var(--font-body-scale));
345        font-family: var(--font-body-family);
346        font-style: var(--font-body-style);
347        font-weight: var(--font-body-weight);
348      }
349
350      @media screen and (min-width: 750px) {
351        body {
352          font-size: 1.6rem;
353        }
354      }
355    </style>
356
357    <link href="//thejoinery.com/cdn/shop/t/2/assets/base.css?v=126851806606018146531787328194" rel="stylesheet" type="text/css" media="all" />
358<link rel="preload" as="font" href="//thejoinery.com/cdn/fonts/assistant/assistant_n4.9120912a469cad1cc292572851508ca49d12e768.woff2" type="font/woff2" crossorigin><link rel="preload" as="font" href="//thejoinery.com/cdn/fonts/assistant/assistant_n4.9120912a469cad1cc292572851508ca49d12e768.woff2" type="font/woff2" crossorigin>
358<script>document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
359    if (Shopify.designMode) {
360      document.documentElement.classList.add('shopify-design-mode');
361    }
362    </script>
362
363  
363<script src="https://cdn.shopify.com/extensions/01a0f6b9-396a-713a-ba86-3c9e67328667/avada-cookie-bar-63/assets/avada-cookie.js" type="text/javascript" defer="defer"></script>
363
364<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
365<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: 71252869408,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 365
365
366<script>
367  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
368</script>
vendor: 1 bytes, line 368
368
369<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}
369).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: 71252869408,storefrontBaseUrl: "https://thejoinery.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://thejoinery.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"2426372384","configuration":"{\"mailchimp_store_id\":\"store_71b7acsh7ncrvzj6k1qb\", \"mailchimp_user_id\":\"838177\",\"mailchimp_list_id\":\"68e8b886da\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"e357a49eadeb6216a959d63fa3fb8f55","type":"APP","apiClientId":2585307,"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":"846430496","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-RHGLHXQD0F\\\"],\\\"gtag_events\\\":[{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-RHGLHXQD0F\\\"}],\\\"enable_monitoring_mode\\\":false}\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"a3321ca85cf5aaf6b57585fcd8d67b3a","type":"APP","apiClientId":1780363,"privacyPurposes":[],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"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":"The Joinery","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"the-joinery-pdx.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/thejoinery.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"
36910313131262240","handle":"alameda-coffee-table","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"51609694208288","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://thejoinery.com/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"143128330528","themeStoreId":"887","themePublished":"true","eventMetadataId":"5f3382e9-dd0a-4211-8a2f-6d65be270d44","pageType":"home","shopId":"71252869408","storefrontBaseUrl":"https:\/\/thejoinery.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\", \"7ee89bf1\"]","isMerchantRequest":"false","hashVersion":"5982071ew7ea472e3p69b68784m2150dfea","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
369<script>
370  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
371  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
372  window.ShopifyAnalytics.meta.currency = 'USD';
373  var meta = {"page":{"pageType":"home","requestId":"b7446b4f-8575-4ed9-be4b-ef1ebe50cc49-1791073438"}};
374  for (var attr in meta) {
375    window.ShopifyAnalytics.meta[attr] = meta[attr];
376  }
377</script>
vendor: 1 bytes, line 377
377
378<script class="analytics">
379  (function () {
380    var customDocumentWrite = function(content) {
381      var jquery = null;
382
383      if (window.jQuery) {
384        jquery = window.jQuery;
385      } else if (window.Checkout && window.Checkout.$) {
386        jquery = window.Checkout.$;
387      }
388
389      if (jquery) {
390        jquery('body').append(content);
391      }
392    };
393
394    var hasLoggedConversion = function(token) {
395      if (token) {
396        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
397      }
398      return false;
399    }
400
401    var setCookieIfConversion = function(token) {
402      if (token) {
403        var twoMonthsFromNow = new Date(Date.now());
404        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
405
406        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
407      }
408    }
409
410    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
411    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
412    if (trekkie.integrations) {
413      return;
414    }
415    trekkie.methods = [
416      'identify',
417      'page',
418      'ready',
419      'track',
420      'trackForm',
421      'trackLink'
422    ];
423    trekkie.factory = function(method) {
424      return function() {
425        var args = Array.prototype.slice.call(arguments);
426        args.unshift(method);
427        trekkie.push(args);
428        if (method == 'track' || method == 'page') {
429          var pageUrl;
430          try {
431            pageUrl = window.location.href;
432          } catch (e) {}
433          var pageReferrer;
434          try {
435            pageReferrer = document.referrer;
436          } catch (e) {}
437          try {
438            if (window.__TREKKIE_SHIM_QUEUE == null) {
439              window.__TREKKIE_SHIM_QUEUE = [];
440            }
441            window.__TREKKIE_SHIM_QUEUE.push({
442              from: 'trekkie-stub',
443              method: method,
444              args: args.slice(1),
445              pageContext: {
446                url: pageUrl,
447                referrer: pageReferrer
448              }
449            });
450          } catch (e) {
451            // no-op
452          }
453        }
454        return trekkie;
455      };
456    };
457    for (var i = 0; i < trekkie.methods.length; i++) {
458      var key = trekkie.methods[i];
459      trekkie[key] = trekkie.factory(key);
460    }
461    trekkie.load = function(config) {
462      trekkie.config = config || {};
463      trekkie.config.initialDocumentCookie = document.cookie;
464      var first = document.getElementsByTagName('script')[0];
465var script = document.createElement('script');
466script.type = 'text/javascript';
467script.onerror = function(e) {
468  var scriptFallback = document.createElement('script');
469  scriptFallback.type = 'text/javascript';
470  scriptFallback.onerror = function(error) {
471          var Monorail = {
472      produce: function produce(monorailDomain, schemaId, payload) {
473        var currentMs = new Date().getTime();
474        var event = {
475          schema_id: schemaId,
476          payload: payload,
477          metadata: {
478            event_created_at_ms: currentMs,
479            event_sent_at_ms: currentMs
480          }
481        };
482        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
483      },
484      sendRequest: function sendRequest(endpointUrl, payload) {
485        // Try the sendBeacon API
486        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
487          var blobData = new window.Blob([payload], {
488            type: 'text/plain'
489          });
490
491          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
492            return true;
493          } // sendBeacon was not successful
494
495        } // XHR beacon
496
497        var xhr = new XMLHttpRequest();
498
499        try {
500          xhr.open('POST', endpointUrl);
501          xhr.setRequestHeader('Content-Type', 'text/plain');
502          xhr.send(payload);
503        } catch (e) {
504          console.log(e);
505        }
506
507        return false;
508      },
509      isIos12: function isIos12() {
510        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
511      }
512    };
513    Monorail.produce('monorail-edge.shopifysvc.com',
514      'trekkie_storefront_load_errors/1.1',
515      {shop_id: 71252869408,
516      theme_id: 143128330528,
517      app_name: "storefront",
518      context_url: window.location.href,
519      source_url: "//thejoinery.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
520
521  };
522  scriptFallback.async = true;
523  scriptFallback.src = '//thejoinery.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
524  first.parentNode.insertBefore(scriptFallback, first);
525};
526script.async = true;
527script.src = '//thejoinery.com/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
528first.parentNode.insertBefore(script, first);
529
530    };
531    trekkie.load(
532      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":71252869408,"isMerchantRequest":null,"themeId":143128330528,"themeCityHash":"2081972048381258026","contentLanguage":"en","currency":"USD","eventMetadataId":"5f3382e9-dd0a-4211-8a2f-6d65be270d44"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}}
533    );
534
535    var loaded = false;
536    trekkie.ready(function() {
537      if (loaded) return;
538      loaded = true;
539
540      window.ShopifyAnalytics.lib = window.trekkie;
541
542      var originalDocumentWrite = document.write;
543      document.write = customDocumentWrite;
544      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
545      document.write = originalDocumentWrite;
546
547      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
548      var token = match? match[1]: undefined;
549      if (!hasLoggedConversion(token)) {
550        setCookieIfConversion(token);
551        
552      }
553    });
554
555    window.ShopifyAnalytics.lib.page(null,{"pageType":"home","requestId":"b7446b4f-8575-4ed9-be4b-ef1ebe50cc49-1791073438","shopifyEmitted":true});
556
557    var eventsListenerScript = document.createElement('script');
558    eventsListenerScript.async = true;
559    eventsListenerScript.src = "//thejoinery.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
560    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
561})();</script>
vendor: 1 bytes, line 561
561
562<script
563  defer
564  src="https://thejoinery.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
565  data-application="storefront-renderer"
566  data-shop-id="71252869408"
567  data-render-region="gcp-us-central1"
568  data-page-type="index"
569  data-theme-instance-id="143128330528"
570  data-theme-name="Dawn"
571  data-theme-version="7.0.1"
572  data-monorail-region="shop_domain"
573  data-resource-timing-sampling-rate="10"
574  data-shs="true"
575  data-shs-beacon="true"
576  data-shs-export-with-fetch="true"
577  data-shs-logs-sample-rate="1"
578  data-shs-beacon-endpoint="https://thejoinery.com/api/collect"
579></script>
579
580<meta name="shopify-y" content="c48bc52a-522e-4c9c-87d4-6dc5f924448c" data-expiration="1822631038000"><meta name="shopify-s" content="f780a307-890d-4d53-9302-8a988de3b611" data-expiration="1791075238000"><meta name="new-cookie-storage-activated" content="t">
581</head>
582
583  <body class="gradient" id="solid-wood-furniture-handcrafted-in-portland-oregon">
584    <a class="skip-to-content-link button visually-hidden" href="#MainContent">
585      Skip to content
586    </a><div id="shopify-section-announcement-bar" class="shopify-section"><div class="announcement-bar color-accent-1 gradient" role="region" aria-label="Announcement" ><a href="/products/alameda-coffee-table" class="announcement-bar__link link link--text focus-inset animate-arrow"><div class="page-width">
587                <p class="announcement-bar__message center h5">
588                  View our collboration with Pratt and Larson
589<svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
590  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
591</svg>
592
593</p>
594              </div></a></div><div class="announcement-bar color-background-1 gradient" role="region" aria-label="Announcement" ><a href="/pages/stores" class="announcement-bar__link link link--text focus-inset animate-arrow"><div class="page-width">
595                <p class="announcement-bar__message right h5">
596                  Store Locations
597<svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
598  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
599</svg>
600
601</p>
602              </div></a></div>
603</div>
604    <div id="shopify-section-header" class="shopify-section section-header"><link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-list-menu.css?v=151968516119678728991675285420" media="print" onload="this.media='all'">
605<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-search.css?v=96455689198851321781675285420" media="print" onload="this.media='all'">
606<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-menu-drawer.css?v=182311192829367774911675285420" media="print" onload="this.media='all'">
607<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-cart-notification.css?v=183358051719344305851675285420" media="print" onload="this.media='all'">
608<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-cart-items.css?v=23917223812499722491675285420" media="print" onload="this.media='all'">
609<link href="//thejoinery.com/cdn/shop/t/2/assets/joinery-global.css?v=48811663012346725191777836830" rel="stylesheet" type="text/css" media="all" />
610<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-list-menu.css?v=151968516119678728991675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
611<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-search.css?v=96455689198851321781675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
612<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-menu-drawer.css?v=182311192829367774911675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
613<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-cart-notification.css?v=183358051719344305851675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
614<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-cart-items.css?v=23917223812499722491675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
615
616<style>
617  header-drawer {
618    justify-self: start;
619    margin-left: -1.2rem;
620  }
621
622  .header__heading-logo {
623    max-width: 250px;
624  }
625
626  @media screen and (min-width: 990px) {
627    header-drawer {
628      display: none;
629    }
630  }
631
632  .menu-drawer-container {
633    display: flex;
634  }
635
636  .list-menu {
637    list-style: none;
638    padding: 0;
639    margin: 0;
640  }
641
642  .list-menu--inline {
643    display: inline-flex;
644    flex-wrap: wrap;
645  }
646
647  summary.list-menu__item {
648    padding-right: 2.7rem;
649  }
650
651  .list-menu__item {
652    display: flex;
653    align-items: center;
654    line-height: calc(1 + 0.3 / var(--font-body-scale));
655  }
656
657  .list-menu__item--link {
658    text-decoration: none;
659    padding-bottom: 1rem;
660    padding-top: 1rem;
661    line-height: calc(1 + 0.8 / var(--font-body-scale));
662  }
663
664  @media screen and (min-width: 750px) {
665    .list-menu__item--link {
666      padding-bottom: 0.5rem;
667      padding-top: 0.5rem;
668    }
669  }
670</style><style data-shopify>.header {
671    padding-top: 10px;
672    padding-bottom: 10px;
673  }
674
675  .section-header {
676    margin-bottom: 0px;
677  }
678
679  @media screen and (min-width: 750px) {
680    .section-header {
681      margin-bottom: 0px;
682    }
683  }
684
685  @media screen and (min-width: 990px) {
686    .header {
687      padding-top: 20px;
688      padding-bottom: 20px;
689    }
690  }</style>
690<script src="//thejoinery.com/cdn/shop/t/2/assets/details-disclosure.js?v=153497636716254413831675285420" defer="defer"></script>
vendor: 1 bytes, line 690
690
691<script src="//thejoinery.com/cdn/shop/t/2/assets/details-modal.js?v=161897927113593009591787921693" defer="defer"></script>
vendor: 1 bytes, line 691
691
692<script src="//thejoinery.com/cdn/shop/t/2/assets/cart-notification.js?v=160453272920806432391675285420" defer="defer"></script>
692<svg xmlns="https://www.w3.org/2000/svg" class="hidden">
693  <symbol id="icon-search" viewbox="0 0 18 19" fill="none">
694    <path fill-rule="evenodd" clip-rule="evenodd" d="M11.03 11.68A5.784 5.784 0 112.85 3.5a5.784 5.784 0 018.18 8.18zm.26 1.12a6.78 6.78 0 11.72-.7l5.4 5.4a.5.5 0 11-.71.7l-5.41-5.4z" fill="currentColor"/>
695  </symbol>
696
697  <symbol id="icon-close" class="icon icon-close" fill="none" viewBox="0 0 18 17">
698    <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
699  </symbol>
700</svg>
701<sticky-header class="header-wrapper color-background-1 gradient header-wrapper--border-bottom">
702  <header class="header header--top-left header--mobile-center page-width header--has-menu"><header-drawer data-breakpoint="tablet">
703        <details id="Details-menu-drawer-container" class="menu-drawer-container">
704          <summary class="header__icon header__icon--menu header__icon--summary link focus-inset" aria-label="Menu">
705            <span>
706              <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" role="presentation" class="icon icon-hamburger" fill="none" viewBox="0 0 18 16">
707  <path d="M1 .5a.5.5 0 100 1h15.71a.5.5 0 000-1H1zM.5 8a.5.5 0 01.5-.5h15.71a.5.5 0 010 1H1A.5.5 0 01.5 8zm0 7a.5.5 0 01.5-.5h15.71a.5.5 0 010 1H1a.5.5 0 01-.5-.5z" fill="currentColor">
708</svg>
709
710              <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" role="presentation" class="icon icon-close" fill="none" viewBox="0 0 18 17">
711  <path d="M.865 15.978a.5.5 0 00.707.707l7.433-7.431 7.579 7.282a.501.501 0 00.846-.37.5.5 0 00-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 10-.707-.708L8.991 7.853 1.413.573a.5.5 0 10-.693.72l7.563 7.268-7.418 7.417z" fill="currentColor">
712</svg>
713
714            </span>
715          </summary>
716          <div id="menu-drawer" class="gradient menu-drawer motion-reduce" tabindex="-1">
717            <div class="menu-drawer__inner-container">
718              <div class="menu-drawer__navigation-container">
719                <nav class="menu-drawer__navigation">
720                  <ul class="menu-drawer__menu has-submenu list-menu" role="list"><li><details id="Details-menu-drawer-menu-item-1">
721                            <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
722                              About Us
723                              <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
724  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
725</svg>
726
727                              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
728  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
729</svg>
730
731                            </summary>
732                            <div id="link-about-us" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1">
733                              <div class="menu-drawer__inner-submenu">
734                                <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true">
735                                  <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
736  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
737</svg>
738
739                                  About Us
740                                </button>
741                                <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/pages/about" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
742                                          Our Story
743                                        </a></li><li><a href="/pages/craft" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
744                                          Craft &amp; Process
745                                        </a></li><li><a href="/pages/furniture-guarantee-warranty" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
746                                          Lifetime Promise
747                                        </a></li><li><a href="/pages/better-because-of-us" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
748                                          Sustainability &amp; Impact
749                                        </a></li></ul>
750                              </div>
751                            </div>
752                          </details></li><li>
752<details id="Details-menu-drawer-menu-item-2">
753                            <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
754                              Bedroom
755                              <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
756  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
757</svg>
758
759                              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
760  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
761</svg>
762
763                            </summary>
764                            <div id="link-bedroom" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1">
765                              <div class="menu-drawer__inner-submenu">
766                                <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true">
767                                  <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
768  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
769</svg>
770
771                                  Bedroom
772                                </button>
773                                <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/collections/bed" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
774                                          Beds
775                                        </a></li><li><a href="/collections/nightstands-1" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
776                                          Nightstands
777                                        </a></li><li><a href="/collections/dressers" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
778                                          Dressers
779                                        </a></li></ul>
780                              </div>
781                            </div>
782                          </details></li><li><details id="Details-menu-drawer-menu-item-3">
783                            <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
784                              Dining Room
785                              <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
786  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
787</svg>
788
789                              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
790  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
791</svg>
792
793                            </summary>
794                            <div id="link-dining-room" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1">
795                              <div class="menu-drawer__inner-submenu">
796                                <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true">
797                                  <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
798  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
799</svg>
800
801                                  Dining Room
802                                </button>
803                                <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/collections/dining-tables" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
804                                          Dining Tables
805                                        </a></li><li><a href="/collections/dining-chairs" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
806                                          Dining Chairs
807                                        </a></li><li><a href="/collections/dining-benches" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
808                                          Dining Benches
809                                        </a></li><li><a href="/collections/sideboards-and-hutches" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
810                                          Sideboards and Hutches
811                                        </a></li><li><a href="/collections/stools" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
812                                          Stools
813                                        </a></li></ul>
814                              </div>
815                            </div>
816                          </details></li><li>
816<details id="Details-menu-drawer-menu-item-4">
817                            <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
818                              Living Room
819                              <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
820  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
821</svg>
822
823                              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
824  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
825</svg>
826
827                            </summary>
828                            <div id="link-living-room" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1">
829                              <div class="menu-drawer__inner-submenu">
830                                <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true">
831                                  <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
832  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
833</svg>
834
835                                  Living Room
836                                </button>
837                                <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/collections/sofas-and-loveseats" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
838                                          Sofas and Loveseats
839                                        </a></li><li><a href="/collections/lounge-chairs-and-ottomans" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
840                                          Lounge Chairs and Ottomans
841                                        </a></li><li><a href="/collections/benches" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
842                                          Benches
843                                        </a></li><li><a href="/collections/media-console-and-storage" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
844                                          Media Console and Storage
845                                        </a></li><li><a href="/collections/coffee-tables" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
846                                          Coffee Tables
847                                        </a></li><li><a href="/collections/end-tables" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
848                                          End Tables
849                                        </a></li><li><a href="/collections/entry-tables" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
850                                          Entry Tables
851                                        </a></li></ul>
852                              </div>
853                            </div>
854                          </details></li><li><details id="Details-menu-drawer-menu-item-5">
855                            <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
856                              Office
857                              <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
858  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
859</svg>
860
861                              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
862  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
863</svg>
864
865                            </summary>
866                            <div id="link-office" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1">
867                              <div class="menu-drawer__inner-submenu">
868                                <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true">
869                                  <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
870  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
871</svg>
872
873                                  Office
874                                </button>
875                                <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/collections/desks" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
876                                          Desks
877                                        </a></li><li><a href="/collections/bookcases-and-storage" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
878                                          Bookcases and Storage
879                                        </a></li></ul>
880                              </div>
881                            </div>
882                          </details></li><li>
882<details id="Details-menu-drawer-menu-item-6">
883                            <summary class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
884                              Accessories
885                              <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
886  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
887</svg>
888
889                              <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
890  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
891</svg>
892
893                            </summary>
894                            <div id="link-accessories" class="menu-drawer__submenu has-submenu gradient motion-reduce" tabindex="-1">
895                              <div class="menu-drawer__inner-submenu">
896                                <button class="menu-drawer__close-button link link--text focus-inset" aria-expanded="true">
897                                  <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
898  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
899</svg>
900
901                                  Accessories
902                                </button>
903                                <ul class="menu-drawer__menu list-menu" role="list" tabindex="-1"><li><a href="/collections/home-accessories" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
904                                          Home Accessories
905                                        </a></li><li><a href="/collections/finish" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
906                                          Finish
907                                        </a></li><li><a href="/collections/gift-guide" class="menu-drawer__menu-item link link--text list-menu__item focus-inset">
908                                          Gift Guide
909                                        </a></li></ul>
910                              </div>
911                            </div>
912                          </details></li><li><a href="/pages/customize" class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
913                            Customize
914                          </a></li><li><a href="/blogs/news" class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
915                            News
916                          </a></li><li><a href="/pages/contact" class="menu-drawer__menu-item list-menu__item link link--text focus-inset">
917                            Contact
918                          </a></li></ul>
919                </nav>
920                <div class="menu-drawer__utility-links"><a href="https://thejoinery.com/customer_authentication/redirect?locale=en&region_country=US" class="menu-drawer__account link focus-inset h5">
921                      <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" role="presentation" class="icon icon-account" fill="none" viewBox="0 0 18 19">
922  <path fill-rule="evenodd" clip-rule="evenodd" d="M6 4.5a3 3 0 116 0 3 3 0 01-6 0zm3-4a4 4 0 100 8 4 4 0 000-8zm5.58 12.15c1.12.82 1.83 2.24 1.91 4.85H1.51c.08-2.6.79-4.03 1.9-4.85C4.66 11.75 6.5 11.5 9 11.5s4.35.26 5.58 1.15zM9 10.5c-2.5 0-4.65.24-6.17 1.35C1.27 12.98.5 14.93.5 18v.5h17V18c0-3.07-.77-5.02-2.33-6.15-1.52-1.1-3.67-1.35-6.17-1.35z" fill="currentColor">
923</svg>
924
925Log in</a><ul class="list list-social list-unstyled" role="list"><li class="list-social__item">
926                        <a href="https://www.facebook.com/thejoinerypdx" class="list-social__link link"><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-facebook" viewB
926ox="0 0 18 18">
927  <path fill="currentColor" d="M16.42.61c.27 0 .5.1.69.28.19.2.28.42.28.7v15.44c0 .27-.1.5-.28.69a.94.94 0 01-.7.28h-4.39v-6.7h2.25l.31-2.65h-2.56v-1.7c0-.4.1-.72.28-.93.18-.2.5-.32 1-.32h1.37V3.35c-.6-.06-1.27-.1-2.01-.1-1.01 0-1.83.3-2.45.9-.62.6-.93 1.44-.93 2.53v1.97H7.04v2.65h2.24V18H.98c-.28 0-.5-.1-.7-.28a.94.94 0 01-.28-.7V1.59c0-.27.1-.5.28-.69a.94.94 0 01.7-.28h15.44z">
928</svg>
929<span class="visually-hidden">Facebook</span>
930                        </a>
931                      </li><li class="list-social__item">
932                        <a href="https://www.instagram.com/thejoinery/" class="list-social__link link"><svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-instagram" viewBox="0 0 18 18">
933  <path fill="currentColor" d="M8.77 1.58c2.34 0 2.62.01 3.54.05.86.04 1.32.18 1.63.3.41.17.7.35 1.01.66.3.3.5.6.65 1 .12.32.27.78.3 1.64.05.92.06 1.2.06 3.54s-.01 2.62-.05 3.54a4.79 4.79 0 01-.3 1.63c-.17.41-.35.7-.66 1.01-.3.3-.6.5-1.01.66-.31.12-.77.26-1.63.3-.92.04-1.2.05-3.54.05s-2.62 0-3.55-.05a4.79 4.79 0 01-1.62-.3c-.42-.16-.7-.35-1.01-.66-.31-.3-.5-.6-.66-1a4.87 4.87 0 01-.3-1.64c-.04-.92-.05-1.2-.05-3.54s0-2.62.05-3.54c.04-.86.18-1.32.3-1.63.16-.41.35-.7.66-1.01.3-.3.6-.5 1-.65.32-.12.78-.27 1.63-.3.93-.05 1.2-.06 3.55-.06zm0-1.58C6.39 0 6.09.01 5.15.05c-.93.04-1.57.2-2.13.4-.57.23-1.06.54-1.55 1.02C1 1.96.7 2.45.46 3.02c-.22.56-.37 1.2-.4 2.13C0 6.1 0 6.4 0 8.77s.01 2.68.05 3.61c.04.94.2 1.57.4 2.13.23.58.54 1.07 1.02 1.56.49.48.98.78 1.55 1.01.56.22 1.2.37 2.13.4.94.05 1.24.06 3.62.06 2.39 0 2.68-.01 3.62-.05.93-.04 1.57-.2 2.13-.41a4.27 4.27 0 001.55-1.01c.49-.49.79-.98 1.01-1.56.22-.55.37-1.19.41-2.13.04-.93.05-1.23.05-3.61 0-2.39 0-2.68-.05-3.62a6.47 6.47 0 00-.4-2.13 4.27 4.27 0 00-1.02-1.55A4.35 4.35 0 0014.52.46a6.43 6.43 0 00-2.13-.41A69 69 0 008.77 0z"/>
934  <path fill="currentColor" d="M8.8 4a4.5 4.5 0 100 9 4.5 4.5 0 000-9zm0 7.43a2.92 2.92 0 110-5.85 2.92 2.92 0 010 5.85zM13.43 5a1.05 1.05 0 100-2.1 1.05 1.05 0 000 2.1z">
935</svg>
936<span class="visually-hidden">Instagram</span>
937                        </a>
938                      </li></ul>
939                </div>
940              </div>
941            </div>
942          </div>
943        </details>
944      </header-drawer><h1 class="header__heading"><a href="/" class="header__heading-link link link--text focus-inset"><img src="//thejoinery.com/cdn/shop/files/joinery_logo.png?v=1675283678" alt="The Joinery" srcset="//thejoinery.com/cdn/shop/files/joinery_logo.png?v=1675283678&amp;width=50 50w, //thejoinery.com/cdn/shop/files/joinery_logo.png?v=1675283678&amp;width=100 100w, //thejoinery.com/cdn/shop/files/joinery_logo.png?v=1675283678&amp;width=150 150w, //thejoinery.com/cdn/shop/files/joinery_logo.png?v=1675283678&amp;width=200 200w, //thejoinery.com/cdn/shop/files/joinery_logo.png?v=1675283678&amp;width=250 250w, //thejoinery.com/cdn/shop/files/joinery_logo.png?v=1675283678&amp;width=300 300w, //thejoinery.com/cdn/shop/files/joinery_logo.png?v=1675283678&amp;width=400 400w" width="250" height="42.934782608695656" class="header__heading-logo">
945</a></h1><nav class="header__inline-menu">
946          <ul class="list-menu list-menu--inline" role="list"><li><header-menu>
947                    <details id="Details-HeaderMenu-1">
948                      <summary class="header__menu-item list-menu__item link focus-inset">
949                        <span>About Us</span>
950                        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
951  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
952</svg>
953
954                      </summary>
955                      <ul id="HeaderMenu-MenuList-1" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/pages/about" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
956                                Our Story
957                              </a></li><li><a href="/pages/craft" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
958                                Craft &amp; Process
959                              </a></li><li><a href="/pages/furniture-guarantee-warranty" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
960                                Lifetime Promise
961                              </a></li><li><a href="/pages/better-because-of-us" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
962                                Sustainability &amp; Impact
963                              </a></li></ul>
964                    </details>
965                  </header-menu></li><li><header-menu>
966                    <details id="Details-HeaderMenu-2">
967                      <summary class="header__menu-item list-menu__item link focus-inset">
968                        <span>Bedroom</span>
969                        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
970  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
971</svg>
972
973                      </summary>
974                      <ul id="HeaderMenu-MenuList-2" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/collections/bed" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
975                                Beds
976                              </a></li><li><a href="/collections/nightstands-1" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
977                                Nightstands
978                              </a></li><li><a href="/collections/dressers" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
979                                Dressers
980                              </a></li></ul>
981                    </details>
982                  </header-menu></li><li><header-menu>
983                    <details id="Details-HeaderMenu-3">
984                      <summary class="header__menu-item list-menu__item link focus-inset">
985                        <span>Dining Room</span>
986                        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
987  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
988</svg>
989
990                      </summary>
991                      <ul id="HeaderMenu-MenuList-3" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/collections/dining-tables" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
992                                Dining Tables
993                              </a></li><li><a href="/collections/dining-chairs" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
994                                Dining Chairs
995                              </a></li><li><a href="/collections/dining-benches" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
996                                Dining Benches
997                              </a></li><li><a href="/collections/sideboards-and-hutches" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
998                                Sideboards and Hutches
999                              </a></li><li><a href="/collections/stools" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1000                                Stools
1001                              </a></li></ul>
1002                    </details>
1003                  </header-menu></li><li><header-menu>
1004                    <details id="Details-HeaderMenu-4">
1005                      <summary class="header__menu-item list-menu__item link focus-inset">
1006                        <span>Living Room</span>
1007                        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
1008  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
1009</svg>
1010
1011                      </summary>
1012                      <ul id="HeaderMenu-MenuList-4" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/collections/sofas-and-loveseats" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1013                                Sofas and Loveseats
1014                              </a></li><li><a href="/collections/lounge-chairs-and-ottomans" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1015                                Lounge Chairs and Ottomans
1016                              </a></li><li><a href="/collections/benches" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1017                                Benches
1018                              </a></li><li><a href="/collections/media-console-and-storage" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1019                                Media Console and Storage
1020                              </a></li><li><a href="/collections/coffee-tables" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1021                                Coffee Tables
1022                              </a></li><li><a href="/collections/end-tables" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1023                                End Tables
1024                              </a></li><li><a href="/collections/entry-tables" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1025                                Entry Tables
1026                              </a></li></ul>
1027                    </details>
1028                  </header-menu></li><li><header-menu>
1029                    <details id="Details-HeaderMenu-5">
1030                      <summary class="header__menu-item list-menu__item link focus-inset">
1031                        <span>Office</span>
1032                        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
1033  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
1034</svg>
1035
1036                      </summary>
1037                      <ul id="HeaderMenu-MenuList-5" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/collections/desks" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1038                                Desks
1039                              </a></li><li><a href="/collections/bookcases-and-storage" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1040                                Bookcases and Storage
1041                              </a></li></ul>
1042                    </details>
1043                  </header-menu></li><li><header-menu>
1044                    <details id="Details-HeaderMenu-6">
1045                      <summary class="header__menu-item list-menu__item link focus-inset">
1046                        <span>Accessories</span>
1047                        <svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-caret" viewBox="0 0 10 6">
1048  <path fill-rule="evenodd" clip-rule="evenodd" d="M9.354.646a.5.5 0 00-.708 0L5 4.293 1.354.646a.5.5 0 00-.708.708l4 4a.5.5 0 00.708 0l4-4a.5.5 0 000-.708z" fill="currentColor">
1049</svg>
1050
1051                      </summary>
1052                      <ul id="HeaderMenu-MenuList-6" class="header__submenu list-menu list-menu--disclosure gradient caption-large motion-reduce global-settings-popup" role="list" tabindex="-1"><li><a href="/collections/home-accessories" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1053                                Home Accessories
1054                              </a></li><li><a href="/collections/finish" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1055                                Finish
1056                              </a></li><li><a href="/collections/gift-guide" class="header__menu-item list-menu__item link link--text focus-inset caption-large">
1057                                Gift Guide
1058                              </a></li></ul>
1059                    </details>
1060                  </header-menu></li><li><a href="/pages/customize" class="header__menu-item list-menu__item link link--text focus-inset">
1061                    <span>Customize</span>
1062                  </a></li><li><a href="/blogs/news" class="header__menu-item list-menu__item link link--text focus-inset">
1063                    <span>News</span>
1064                  </a></li><li><a href="/pages/contact" class="header__menu-item list-menu__item link link--text focus-inset">
1065                    <span>Contact</span>
1066                  </a></li></ul>
1067        </nav><div class="header__icons">
1068      <details-modal class="header__search">
1069        <details>
1070          <summary class="header__icon header__icon--search header__icon--summary link focus-inset modal__toggle" aria-haspopup="dialog" aria-label="Search">
1071            <span>
1072              <svg class="modal__toggle-open icon icon-search" aria-hidden="true" focusable="false" role="presentation">
1073                <use href="#icon-search">
1074              </svg>
1075              <svg class="modal__toggle-close icon icon-close" aria-hidden="true" focusable="false" role="presentation">
1076                <use href="#icon-close">
1077              </svg>
1078            </span>
1079          </summary>
1080          <div class="search-modal modal__content gradient" role="dialog" aria-modal="true" aria-label="Search">
1081            <div class="modal-overlay"></div>
1082            <div class="search-modal__content search-modal__content-bottom" tabindex="-1"><form action="/search" method="get" role="search" class="search search-modal__form">
1083                  <div class="field">
1084                    <input class="search__input field__input"
1085                      id="Search-In-Modal"
1086                      type="search"
1087                      name="q"
1088                      value=""
1089                      placeholder="Search">
1090                    <label class="field__label" for="Search-In-Modal">Search</label>
1091                    <input type="hidden" name="options[prefix]" value="last">
1092                    <button class="search__button field__button" aria-label="Search">
1093                      <svg class="icon icon-search" aria-hidden="true" focusable="false" role="presentation">
1094                        <use href="#icon-search">
1095                      </svg>
1096                    </button>
1097                  </div></form><button type="button" class="search-modal__close-button modal__close-button link link--text focus-inset" aria-label="Close">
1098                <svg class="icon icon-close" aria-hidden="true" focusable="false" role="presentation">
1099                  <use href="#icon-close">
1100                </svg>
1101              </button>
1102            </div>
1103          </div>
1104        </details>
1105      </details-modal><a href="https://thejoinery.com/customer_authentication/redirect?locale=en&region_country=US" class="header__icon header__icon--account link focus-inset small-hide">
1106          <svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" role="presentation" class="icon icon-account" fill="none" viewBox="0 0 18 19">
1107  <path fill-rule="evenodd" clip-rule="evenodd" d="M6 4.5a3 3 0 116 0 3 3 0 01-6 0zm3-4a4 4 0 100 8 4 4 0 000-8zm5.58 12.15c1.12.82 1.83 2.24 1.91 4.85H1.51c.08-2.6.79-4.03 1.9-4.85C4.66 11.75 6.5 11.5 9 11.5s4.35.26 5.58 1.15zM9 10.5c-2.5 0-4.65.24-6.17 1.35C1.27 12.98.5 14.93.5 18v.5h17V18c0-3.07-.77-5.02-2.33-6.15-1.52-1.
11071-3.67-1.35-6.17-1.35z" fill="currentColor">
1108</svg>
1109
1110          <span class="visually-hidden">Log in</span>
1111        </a><a href="/cart" class="header__icon header__icon--cart link focus-inset" id="cart-icon-bubble"><svg class="icon icon-cart-empty" aria-hidden="true" focusable="false" role="presentation" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40" fill="none">
1112  <path d="m15.75 11.8h-3.16l-.77 11.6a5 5 0 0 0 4.99 5.34h7.38a5 5 0 0 0 4.99-5.33l-.78-11.61zm0 1h-2.22l-.71 10.67a4 4 0 0 0 3.99 4.27h7.38a4 4 0 0 0 4-4.27l-.72-10.67h-2.22v.63a4.75 4.75 0 1 1 -9.5 0zm8.5 0h-7.5v.63a3.75 3.75 0 1 0 7.5 0z" fill="currentColor" fill-rule="evenodd"/>
1113</svg>
1114<span class="visually-hidden">Cart</span></a>
1115    </div>
1116  </header>
1117</sticky-header>
1118
1119<cart-notification>
1120  <div class="cart-notification-wrapper page-width">
1121    <div id="cart-notification" class="cart-notification focus-inset color-background-1 gradient" aria-modal="true" aria-label="Item added to your cart" role="dialog" tabindex="-1">
1122      <div class="cart-notification__header">
1123        <h2 class="cart-notification__heading caption-large text-body"><svg class="icon icon-checkmark color-foreground-text" aria-hidden="true" focusable="false" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 9" fill="none">
1124  <path fill-rule="evenodd" clip-rule="evenodd" d="M11.35.643a.5.5 0 01.006.707l-6.77 6.886a.5.5 0 01-.719-.006L.638 4.845a.5.5 0 11.724-.69l2.872 3.011 6.41-6.517a.5.5 0 01.707-.006h-.001z" fill="currentColor"/>
1125</svg>
1126Item added to your cart</h2>
1127        <button type="button" class="cart-notification__close modal__close-button link link--text focus-inset" aria-label="Close">
1128          <svg class="icon icon-close" aria-hidden="true" focusable="false"><use href="#icon-close"></svg>
1129        </button>
1130      </div>
1131      <div id="cart-notification-product" class="cart-notification-product"></div>
1132      <div class="cart-notification__links">
1133        <a href="/cart" id="cart-notification-button" class="button button--secondary button--full-width"></a>
1134        <form action="/cart" method="post" id="cart-notification-form">
1135          <button class="button button--primary button--full-width" name="checkout">Check out</button>
1136        </form>
1137        <button type="button" class="link button-label">Continue shopping</button>
1138      </div>
1139    </div>
1140  </div>
1141</cart-notification>
1142<style data-shopify>
1143  .cart-notification {
1144     display: none;
1145  }
1146</style>
1147
1148
1149<script type="application/ld+json">
1150  {
1151    "@context": "https://schema.org",
1152    "@type": "Organization",
1153    "name": "The Joinery",
1154    
1155      "logo": "https:\/\/thejoinery.com\/cdn\/shop\/files\/joinery_logo.png?v=1675283678\u0026width=460",
1156    
1157    "sameAs": [
1158      "",
1159      "https:\/\/www.facebook.com\/thejoinerypdx",
1160      "",
1161      "https:\/\/www.instagram.com\/thejoinery\/",
1162      "",
1163      "",
1164      "",
1165      "",
1166      ""
1167    ],
1168    "url": "https:\/\/thejoinery.com"
1169  }
1170</script>
1170
1171  
1171<script type="application/ld+json">
1172    {
1173      "@context": "https://schema.org",
1174      "@type": "WebSite",
1175      "name": "The Joinery",
1176      "potentialAction": {
1177        "@type": "SearchAction",
1178        "target": "https:\/\/thejoinery.com\/search?q={search_term_string}",
1179        "query-input": "required name=search_term_string"
1180      },
1181      "url": "https:\/\/thejoinery.com"
1182    }
1183  </script>
1183
1184</div>
1185    <main id="MainContent" class="content-for-layout focus-none" role="main" tabindex="-1">
1186      <section id="shopify-section-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656" class="shopify-section section"><link href="//thejoinery.com/cdn/shop/t/2/assets/section-image-banner.css?v=170916557215809668651675285420" rel="stylesheet" type="text/css" media="all" />
1187<style data-shopify>@media screen and (max-width: 749px) {
1188    #Banner-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656::before,
1189    #Banner-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656 .banner__media::before,
1190    #Banner-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656:not(.banner--mobile-bottom) .banner__content::before {
1191      padding-bottom: 50.0%;
1192      content: '';
1193      display: block;
1194    }
1195  }
1196
1197  @media screen and (min-width: 750px) {
1198    #Banner-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656::before,
1199    #Banner-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656 .banner__media::before {
1200      padding-bottom: 50.0%;
1201      content: '';
1202      display: block;
1203    }
1204  }</style><style data-shopify>#Banner-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656::after {
1205    opacity: 0.0;
1206  }</style><div id="Banner-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656" class="banner banner--content-align-center banner--content-align-mobile-center banner--large banner--adapt banner--desktop-transparent"><div class="banner__media media"><img src="//thejoinery.com/cdn/shop/files/Studio-Maple-Table-version3_d75a892c-0b48-410e-be23-dbd1a5dc207a.jpg?v=1790362201&amp;width=1500" srcset="//thejoinery.com/cdn/shop/files/Studio-Maple-Table-version3_d75a892c-0b48-410e-be23-dbd1a5dc207a.jpg?v=1790362201&amp;width=375 375w, //thejoinery.com/cdn/shop/files/Studio-Maple-Table-version3_d75a892c-0b48-410e-be23-dbd1a5dc207a.jpg?v=1790362201&amp;width=550 550w, //thejoinery.com/cdn/shop/files/Studio-Maple-Table-version3_d75a892c-0b48-410e-be23-dbd1a5dc207a.jpg?v=1790362201&amp;width=750 750w, //thejoinery.com/cdn/shop/files/Studio-Maple-Table-version3_d75a892c-0b48-410e-be23-dbd1a5dc207a.jpg?v=1790362201&amp;width=1100 1100w, //thejoinery.com/cdn/shop/files/Studio-Maple-Table-version3_d75a892c-0b48-410e-be23-dbd1a5dc207a.jpg?v=1790362201&amp;width=1500 1500w" width="2000" height="1000.0" loading="lazy" sizes="100vw">
1207    </div><div class="banner__content banner__content--bottom-right page-width">
1208    <div class="banner__box content-container content-container--full-width-mobile color-background-1 gradient"><div class="banner__buttons" ><a href="/collections/dining-tables" class="button button--secondary">Handcrafted Dining Tables</a></div><div class="banner__text subtitle" >
1209              <span></span>
1210            </div></div>
1211  </div>
1212</div>
1213
1214
1215<style> #shopify-section-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656 .banner__buttons {max-width: unset;} #shopify-section-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656 .banner--desktop-transparent .button--secondary {background: rgba(255, 255, 255, 0.7); color: #000; font-size: 3rem; font-weight: 500; letter-spacing: 0.5px; padding: 2rem 3rem; white-space: nowrap;} #shopify-section-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656 .banner--desktop-transparent .button--secondary:hover {background: #fff;} @media screen and (max-width: 749px) {#shopify-section-template--17787349532960__f63438b5-811e-4e01-a3e0-b000a8b74656 .banner--desktop-transparent .button--secondary {font-size: 1.5rem; padding: 1rem 2rem; }} </style></section><section id="shopify-section-template--17787349532960__abe9a5cd-53f3-4116-b1e9-a745a99e8d50" class="shopify-section section"><link href="//thejoinery.com/cdn/shop/t/2/assets/section-multicolumn.css?v=138363567467112740511675285420" rel="stylesheet" type="text/css" media="all" />
1216<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-slider.css?v=111384418465749404671675285420" media="print" onload="this.media='all'">
1217<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-slider.css?v=111384418465749404671675285420" rel="stylesheet" type="text/css" media="all" /></noscript><style data-shopify>.section-template--17787349532960__abe9a5cd-53f3-4116-b1e9-a745a99e8d50-padding {
1218    padding-top: 39px;
1219    padding-bottom: 39px;
1220  }
1221
1222  @media screen and (min-width: 750px) {
1223    .section-template--17787349532960__abe9a5cd-53f3-4116-b1e9-a745a99e8d50-padding {
1224      padding-top: 52px;
1225      padding-bottom: 52px;
1226    }
1227  }</style><div class="multicolumn color-background-2 gradient background-none no-heading">
1228  <div class="page-width section-template--17787349532960__abe9a5cd-53f3-4116-b1e9-a745a99e8d50-padding isolate"><slider-component class="slider-mobile-gutter">
1229      <ul class="multicolumn-list contains-content-container grid grid--1-col-tablet-down grid--1-col-desktop"
1230        id="Slider-template--17787349532960__abe9a5cd-53f3-4116-b1e9-a745a99e8d50"
1231        role="list"
1232      ><li id="Slide-template--17787349532960__abe9a5cd-53f3-4116-b1e9-a745a99e8d50-1" class="multicolumn-list__item grid__item center" >
1233            <div class="multicolumn-card content-container">
1234                <div class="multicolumn-card__image-wrapper multicolumn-card__image-wrapper--full-width multicolumn-card-spacing">
1235                 <a href="/pages/about">
1236                  <div class="media media--transparent media--adapt"
1237                    
1238                      style="padding-bottom: 60.16666666666667%;"
1239                    ><img src="//thejoinery.com/cdn/shop/files/joinery_furniture_here_for_good.jpg?v=1696254423&amp;width=1420" alt="Image of Western Walnut with the text: &quot;Since 1982 The Joinery has created handcrafted furniture that&#39;s here for good. Designed and built in Portland, Oregon&quot; Link to About us page at thejoinery.com" srcset="//thejoinery.com/cdn/shop/files/joinery_furniture_here_for_good.jpg?v=1696254423&amp;width=275 275w, //thejoinery.com/cdn/shop/files/joinery_furniture_here_for_good.jpg?v=1696254423&amp;width=550 550w, //thejoinery.com/cdn/shop/files/joinery_furniture_here_for_good.jpg?v=1696254423&amp;width=710 710w, //thejoinery.com/cdn/shop/files/joinery_furniture_here_for_good.jpg?v=1696254423&amp;width=1420 1420w" width="1420" height="854" loading="lazy" sizes="(min-width: 990px) 710px, (min-width: 750px) 710px, calc(100vw - 30px)" class="multicolumn-card__image">
1240                  </div>
1241                </a>
1242                </div><div class="multicolumn-card__info"></div>
1243            </div>
1244          </li></ul></slider-component>
1245    <div class="center"></div>
1246  </div>
1247</div>
1248
1249
1250<style> #shopify-section-template--17787349532960__abe9a5cd-53f3-4116-b1e9-a745a99e8d50 .color-background-2 {background: #e5e5e1 !important;} #shopify-section-template--17787349532960__abe9a5cd-53f3-4116-b1e9-a745a99e8d50 .multicolumn-list__item:only-child {max-width: 85%;} </style></section><section id="shopify-section-template--17787349532960__image_banner_rr4jxG" class="shopify-section section"><link href="//thejoinery.com/cdn/shop/t/2/assets/section-image-banner.css?v=170916557215809668651675285420" rel="stylesheet" type="text/css" media="all" />
1251<style data-shopify>@media screen and (max-width: 749px) {
1252    #Banner-template--17787349532960__image_banner_rr4jxG::before,
1253    #Banner-template--17787349532960__image_banner_rr4jxG .banner__media::before,
1254    #Banner-template--17787349532960__image_banner_rr4jxG:not(.banner--mobile-bottom) .banner__content::before {
1255      padding-bottom: 50.0%;
1256      content: '';
1257      display: block;
1258    }
1259  }
1260
1261  @media screen and (min-width: 750px) {
1262    #Banner-template--17787349532960__image_banner_rr4jxG::before,
1263    #Banner-template--17787349532960__image_banner_rr4jxG .banner__media::before {
1264      padding-bottom: 50.0%;
1265      content: '';
1266      display: block;
1267    }
1268  }</style><style data-shopify>#Banner-template--17787349532960__image_banner_rr4jxG::after {
1269    opacity: 0.0;
1270  }</style><div id="Banner-template--17787349532960__image_banner_rr4jxG" class="banner banner--content-align-center banner--content-align-mobile-center banner--large banner--adapt banner--mobile-bottom banner--desktop-trans
1270parent"><div class="banner__media media"><img src="//thejoinery.com/cdn/shop/files/CT7A_ALAMEDA-COFFEE-TABLE.jpg?v=1778733881&amp;width=1500" alt="Burnt orange sofa with colorful cushions and a wooden coffee table with a mosaic design in a room with large windows." srcset="//thejoinery.com/cdn/shop/files/CT7A_ALAMEDA-COFFEE-TABLE.jpg?v=1778733881&amp;width=375 375w, //thejoinery.com/cdn/shop/files/CT7A_ALAMEDA-COFFEE-TABLE.jpg?v=1778733881&amp;width=550 550w, //thejoinery.com/cdn/shop/files/CT7A_ALAMEDA-COFFEE-TABLE.jpg?v=1778733881&amp;width=750 750w, //thejoinery.com/cdn/shop/files/CT7A_ALAMEDA-COFFEE-TABLE.jpg?v=1778733881&amp;width=1100 1100w, //thejoinery.com/cdn/shop/files/CT7A_ALAMEDA-COFFEE-TABLE.jpg?v=1778733881&amp;width=1500 1500w" width="2000" height="1000.0" loading="lazy" sizes="100vw">
1271    </div><div class="banner__content banner__content--bottom-center page-width">
1272    <div class="banner__box content-container content-container--full-width-mobile color-background-1 gradient"><div class="banner__buttons" ><a href="/blogs/news/introducing-the-alameda-coffee-table" class="button button--primary">Meet the Alameda</a></div></div>
1273  </div>
1274</div>
1275
1276
1277<style> #shopify-section-template--17787349532960__image_banner_rr4jxG #Banner-template--17787349532960__image_banner_rr4jxG .banner__buttons a.button--primary {background: rgba(255, 255, 255, 0.7); color: #000; font-size: 2.125rem; font-weight: 500; letter-spacing: 0.5px; padding: 2rem 3rem; white-space: nowrap;} #shopify-section-template--17787349532960__image_banner_rr4jxG #Banner-template--17787349532960__image_banner_rr4jxG .banner__buttons a.button--primary:hover {background: #fff;} </style></section><section id="shopify-section-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e" class="shopify-section section"><link href="//thejoinery.com/cdn/shop/t/2/assets/section-multicolumn.css?v=138363567467112740511675285420" rel="stylesheet" type="text/css" media="all" />
1278<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-slider.css?v=111384418465749404671675285420" media="print" onload="this.media='all'">
1279<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-slider.css?v=111384418465749404671675285420" rel="stylesheet" type="text/css" media="all" /></noscript><style data-shopify>.section-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-padding {
1280    padding-top: 39px;
1281    padding-bottom: 39px;
1282  }
1283
1284  @media screen and (min-width: 750px) {
1285    .section-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-padding {
1286      padding-top: 52px;
1287      padding-bottom: 52px;
1288    }
1289  }</style><div class="multicolumn color-background-1 gradient background-none">
1290  <div class="page-width section-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-padding isolate"><div class="title-wrapper-with-link title-wrapper--self-padded-mobile title-wrapper--no-top-margin">
1291        <h2 class="title h1">
1292          featured press
1293        </h2></div><slider-component class="slider-mobile-gutter">
1294      <ul class="multicolumn-list contains-content-container grid grid--2-col-tablet-down grid--6-col-desktop"
1295        id="Slider-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e"
1296        role="list"
1297      ><li id="Slide-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-1" class="multicolumn-list__item grid__item center" >
1298            <div class="multicolumn-card content-container">
1299                <div class="multicolumn-card__image-wrapper multicolumn-card__image-wrapper--full-width multicolumn-card-spacing">
1300                 <a href="https://www.washingtonpost.com/graphics/2020/road-to-recovery/supply-chain-wood/">
1301                  <div class="media media--transparent media--adapt"
1302                    
1303                      style="padding-bottom: 100.0%;"
1304                    ><img src="//thejoinery.com/cdn/shop/files/press_wapo.png?v=1694090109&amp;width=1420" alt="Link to The Washington Post Website" srcset="//thejoinery.com/cdn/shop/files/press_wapo.png?v=1694090109&amp;width=275 275w, //thejoinery.com/cdn/shop/files/press_wapo.png?v=1694090109&amp;width=550 550w, //thejoinery.com/cdn/shop/files/press_wapo.png?v=1694090109&amp;width=710 710w, //thejoinery.com/cdn/shop/files/press_wapo.png?v=1694090109&amp;width=1420 1420w" width="1420" height="1420" loading="lazy" sizes="(min-width: 990px) 550px, (min-width: 750px) 550px, calc(100vw - 30px)" class="multicolumn-card__image">
1305                  </div>
1306                </a>
1307                </div><div class="multicolumn-card__info"></div>
1308            </div>
1309          </li><li id="Slide-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-2" class="multicolumn-list__item grid__item center" >
1310            <div class="multicolumn-card content-container">
1311                <div class="multicolumn-card__image-wrapper multicolumn-card__image-wrapper--full-width multicolumn-card-spacing">
1312                 <a href="https://issuu.com/graymag/docs/gray_magazine_issue_3/16">
1313                  <div class="media media--transparent media--adapt"
1314                    
1315                      style="padding-bottom: 100.0%;"
1316                    ><img src="//thejoinery.com/cdn/shop/files/press_gray.png?v=1694091748&amp;width=1420" alt="Link to Gray Magazine website" srcset="//thejoinery.com/cdn/shop/files/press_gray.png?v=1694091748&amp;width=275 275w, //thejoinery.com/cdn/shop/files/press_gray.png?v=1694091748&amp;width=550 550w, //thejoinery.com/cdn/shop/files/press_gray.png?v=1694091748&amp;width=710 710w, //thejoinery.com/cdn/shop/files/press_gray.png?v=1694091748&amp;width=1420 1420w" width="1420" height="1420" loading="lazy" sizes="(min-width: 990px) 550px, (min-width: 750px) 550px, calc(100vw - 30px)" class="multicolumn-card__image">
1317                  </div>
1318                </a>
1319                </div><div class="multicolumn-card__info"></div>
1320            </div>
1321          </li><li id="Slide-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-3" class="multicolumn-list__item grid__item center" >
1322            <div class="multicolumn-card content-container">
1323                <div class="multicolumn-card__image-wrapper multicolumn-card__image-wrapper--full-width multicolumn-card-spacing">
1324                 <a href="https://www.bhg.com/best-places-to-buy-furniture-7564618">
1325                  <div class="media media--transparent media--adapt"
1326                    
1327                      style="padding-bottom: 100.0%;"
1328                    ><img src="//thejoinery.com/cdn/shop/files/press_bhg.png?v=1694091747&amp;width=1420" alt="Link to Better Homes &amp; Garden website" srcset="//thejoinery.com/cdn/shop/files/press_bhg.png?v=1694091747&amp;width=275 275w, //thejoinery.com/cdn/shop/files/press_bhg.png?v=1694091747&amp;width=550 550w, //thejoinery.com/cdn/shop/files/press_bhg.png?v=1694091747&amp;width=710 710w, //thejoinery.com/cdn/shop/files/press_bhg.png?v=1694091747&amp;width=1420 1420w" width="1420" height="1420" loading="lazy" sizes="(min-width: 990px) 550px, (min-width: 750px) 550px, calc(100vw - 30px)" class="multicolumn-card__image">
1329                  </div>
1330                </a>
1331                </div><div class="multicolumn-card__info"></div>
1332            </div>
1333          </li><li id="Slide-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-4" class="multicolumn-list__item grid__item center" >
1334            <div class="multicolumn-card content-container">
1335                <div class="multicolumn-card__image-wrapper multicolumn-card__image-wrapper--full-width multicolumn-card-spacing">
1336                 <a href="https://www.architecturaldigest.com/story/shopping-tariffs">
1337                  <div class="media media--transparent media--adapt"
1338                    
1339                      style="padding-bottom: 100.0%;"
1340                    ><img src="//thejoinery.com/cdn/shop/files/press_ad.png?v=1694091858&amp;width=1420" alt="Link to Architectural Digest (AD) website" srcset="//thejoinery.com/cdn/shop/files/press_ad.png?v=1694091858&amp;width=275 275w, //thejoinery.com/cdn/shop/files/press_ad.png?v=1694091858&amp;width=550 550w, //thejoinery.com/cdn/shop/files/press_ad.png?v=1694091858&amp;width=710 710w, //thejoinery.com/cdn/shop/files/press_ad.png?v=1694091858&amp;width=1420 1420w" width="1420" height="1420" loading="lazy" sizes="(min-width: 990px) 550px, (min-width: 750px) 550px, calc(100vw - 30px)" class="multicolumn-card__image">
1341                  </div>
1342                </a>
1343                </div><div class="multicolumn-card__info"></div>
1344            </div>
1345          </li><li id="Slide-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-5" class="multicolumn-list__item grid__item center" >
1346            <div class="multicolumn-card content-container">
1347                <div class="multicolumn-card__image-wrapper multicolumn-card__image-wrapper--full-width multicolumn-card-spacing">
1348                 <a href="https://www.sunset.com/home-garden/home-tours/berkeley-craftsman-remodel-empty-nest">
1349                  <div class="media media--transparent media--adapt"
1350                    
1351                      style="padding-bottom: 100.0%;"
1352                    ><img src="//thejoinery.com/cdn/shop/files/press_sunset.png?v=1694091747&amp;width=1420" alt="Link to Sunset Magazine website" srcset="//thejoinery.com/cdn/shop/files/press_sunset.png?v=1694091747&amp;width=275 275w, //thejoinery.com/cdn/shop/files/press_sunset.png?v=1694091747&amp;width=550 550w, //thejoinery.com/cdn/shop/files/press_sunset.png?v=1694091747&amp;width=710 710w, //thejoinery.com/cdn/shop/files/press_sunset.png?v=1694091747&amp;width=1420 1420w" width="1420" height="1420" loading="lazy" sizes="(min-width: 990px) 550px, (min-width: 750px) 550px, calc(100vw - 30px)" class="multicolumn-card__image">
1353                  </div>
1354                </a>
1355                </div><div class="multicolumn-card__info"></div>
1356            </div>
1357          </li><li id="Slide-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e-6" class="multicolumn-list__item grid__item center" >
1358            <div class="multicolumn-card content-container">
1359                <div class="multicolumn-card__image-wrapper multicolumn-card__image-wrapper--full-width multicolumn-card-spacing">
1360                 <a href="https://www.thespruce.com/best-made-in-america-furniture-1391263">
1361                  <div class="media media--transparent media--adapt"
1362                    
1363                      style="padding-bottom: 100.0%;"
1364                    ><img src="//thejoinery.com/cdn/shop/files/press_spruce.png?v=1694091747&amp;width=1420" alt="Link to The Spruce Website" srcset="//thejoinery.com/cdn/shop/files/press_spruce.png?v=1694091747&amp;width=275 275w, //thejoinery.com/cdn/shop/files/press_spruce.png?v=1694091747&amp;width=550 550w, //thejoinery.com/cdn/shop/files/press_spruce.png?v=1694091747&amp;width=710 710w, //thejoinery.com/cdn/shop/files/press_spruce.png?v=1694091747&amp;width=1420 1420w" width="1420" height="1420" loading="lazy" sizes="(min-width: 990px) 550px, (min-width: 750px) 550px, calc(100vw - 30px)" class="multicolumn-card__image">
1365                  </div>
1366                </a>
1367                </div><div class="multicolumn-card__info"></div>
1368            </div>
1369          </li></ul></slider-component>
1370    <div class="center"></div>
1371  </div>
1372</div>
1373
1374
1375<style> #shopify-section-template--17787349532960__304feae2-2a25-41e1-80f6-ee7f8a40263e h2 {font-size: 3.25rem; margin: 0 auto; text-align: center; text-transform: lowercase;} </style></section><section id="shopify-section-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340" class="shopify-section section"><link href="//thejoinery.com/cdn/shop/t/2/assets/section-image-banner.css?v=170916557215809668651675285420" rel="stylesheet" type="text/css" media="all" />
1376<style data-shopify>#Banner-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340::after {
1377    opacity: 0.0;
1378  }</style><div id="Banner-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340" class="banner banner--content-align-right banner--content-align-mobile-center banner--large banner--mobile-bottom"><div class="banner__media media">
1378<img src="//thejoinery.com/cdn/shop/files/Modern-Nightstand.jpg?v=1777672854&amp;width=1500" alt="Wooden dresser with open drawer on a light wooden floor" srcset="//thejoinery.com/cdn/shop/files/Modern-Nightstand.jpg?v=1777672854&amp;width=375 375w, //thejoinery.com/cdn/shop/files/Modern-Nightstand.jpg?v=1777672854&amp;width=550 550w, //thejoinery.com/cdn/shop/files/Modern-Nightstand.jpg?v=1777672854&amp;width=750 750w, //thejoinery.com/cdn/shop/files/Modern-Nightstand.jpg?v=1777672854&amp;width=1100 1100w, //thejoinery.com/cdn/shop/files/Modern-Nightstand.jpg?v=1777672854&amp;width=1500 1500w" width="2000" height="1000.0" loading="lazy" sizes="100vw">
1379    </div><div class="banner__content banner__content--bottom-left page-width">
1380    <div class="banner__box content-container content-container--full-width-mobile color-background-2 gradient"><div class="banner__text body" >
1381              <span>&quot;This is our ninth purchase in 20 years and completes our master bedroom set.&quot; -Susan</span>
1382            </div><div class="banner__buttons" ><a href="/pages/furniture-guarantee-warranty" class="button button--primary">Learn about our guarantee</a></div></div>
1383  </div>
1384</div>
1385
1386
1387<style> @media screen and (min-width: 1400px) {#shopify-section-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340 .banner__box {max-width: 70rem; }} #shopify-section-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340 .banner__text span {font-size: 3rem; color: #000; letter-spacing: 0; font-style: italic; line-height: 1.3; margin-bottom: 2rem; display: block;} #shopify-section-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340 .banner__buttons {background: #000;} #shopify-section-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340 .banner__buttons a {opacity: 1; font-size: 2rem; font-weight: 700; text-transform: uppercase;} @media screen and (max-width: 749px) {#shopify-section-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340 .banner__text span, #shopify-section-template--17787349532960__ba7b0bea-8479-426c-91a6-22161ab6e340 .banner__buttons a {font-size: 1.75rem; }} </style></section><section id="shopify-section-template--17787349532960__79f945c2-0a48-4c0e-b035-cf812fe82ead" class="shopify-section section"><link href="//thejoinery.com/cdn/shop/t/2/assets/section-multicolumn.css?v=138363567467112740511675285420" rel="stylesheet" type="text/css" media="all" />
1388<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-slider.css?v=111384418465749404671675285420" media="print" onload="this.media='all'">
1389<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-slider.css?v=111384418465749404671675285420" rel="stylesheet" type="text/css" media="all" /></noscript><style data-shopify>.section-template--17787349532960__79f945c2-0a48-4c0e-b035-cf812fe82ead-padding {
1390    padding-top: 39px;
1391    padding-bottom: 39px;
1392  }
1393
1394  @media screen and (min-width: 750px) {
1395    .section-template--17787349532960__79f945c2-0a48-4c0e-b035-cf812fe82ead-padding {
1396      padding-top: 52px;
1397      padding-bottom: 52px;
1398    }
1399  }</style><div class="multicolumn color-background-1 gradient background-none no-heading">
1400  <div class="page-width section-template--17787349532960__79f945c2-0a48-4c0e-b035-cf812fe82ead-padding isolate"><slider-component class="slider-mobile-gutter">
1401      <ul class="multicolumn-list contains-content-container grid grid--1-col-tablet-down grid--1-col-desktop"
1402        id="Slider-template--17787349532960__79f945c2-0a48-4c0e-b035-cf812fe82ead"
1403        role="list"
1404      ><li id="Slide-template--17787349532960__79f945c2-0a48-4c0e-b035-cf812fe82ead-1" class="multicolumn-list__item grid__item center" >
1405            <div class="multicolumn-card content-container">
1406                <div class="multicolumn-card__image-wrapper multicolumn-card__image-wrapper--full-width multicolumn-card-spacing">
1407                 <a href="/pages/craft">
1408                  <div class="media media--transparent media--adapt"
1409                    
1410                      style="padding-bottom: 62.85714285714287%;"
1411                    ><img src="//thejoinery.com/cdn/shop/files/Tenon_with-text.jpg?v=1760131930&amp;width=1420" alt="Close-up of a craftsperson’s hands holding a piece of wood with the phrase &quot;Meet the artists behind the craft&quot; overlayed. Links to Craft page at www.thejoinery.com" srcset="//thejoinery.com/cdn/shop/files/Tenon_with-text.jpg?v=1760131930&amp;width=275 275w, //thejoinery.com/cdn/shop/files/Tenon_with-text.jpg?v=1760131930&amp;width=550 550w, //thejoinery.com/cdn/shop/files/Tenon_with-text.jpg?v=1760131930&amp;width=710 710w, //thejoinery.com/cdn/shop/files/Tenon_with-text.jpg?v=1760131930&amp;width=1420 1420w" width="1420" height="893" loading="lazy" sizes="(min-width: 990px) 710px, (min-width: 750px) 710px, calc(100vw - 30px)" class="multicolumn-card__image">
1412                  </div>
1413                </a>
1414                </div><div class="multicolumn-card__info"></div>
1415            </div>
1416          </li></ul></slider-component>
1417    <div class="center"></div>
1418  </div>
1419</div>
1420
1421
1422<style> #shopify-section-template--17787349532960__79f945c2-0a48-4c0e-b035-cf812fe82ead .multicolumn-list__item:only-child {max-width: 85%;} </style></section><section id="shopify-section-template--17787349532960__1753713492b8732cdb" class="shopify-section section"><div class="page-width"><div id="shopify-block-AempKVDJmL3Q2THgzQ__instafeed_app_block_6LAe4p" class="shopify-block shopify-app-block">
1423
1424
1425
1426  
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438<style>
1439      div[id*="instafeed_app_block"] {
1440        width: 100%;
1441      }
1442      div.shopify-section:has(>
1442 [id*="instafeed_app_block"]) {
1443      width: 100%;
1444      }
1445      
1446      body #insta-feed {
1447      
1448          
1449
1450          
1451          margin-bottom: 0px!important;
1452          
1453
1454          
1455
1456          
1457
1458          
1459      }
1460      
1461      body #insta-feed h2 {
1462      
1463        
1464        
1465         text-align: center;
1466      }
1467
1468      
1469      
1470</style>
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482  <div id="insta-feed"></div>
1483  
1483<script>
1484    if (typeof instafeedLocalTitle === 'undefined') var instafeedLocalTitle = "";
1485    
1486  </script>
1486
1487
1488
1489<!-- BEGIN app snippet: storefront-script -->
1490
1491
1492  
1493    
1493<script>
1494      var instafeedScriptSrc = "https:\/\/cdn.nfcube.com\/instafeed-41da8e67d9795a479d691cbca592320d.js";
1495      var instafeedScriptMode = "defer";
1496      !function(e,n){if(!window.instafeedStorefrontScheduled&&(window.instafeedStorefrontScheduled=!0,e))if("defer"!==n){if("consent"===n){var t=!1;function o(){t||(t=!0,a())}function i(){window.Shopify&&window.Shopify.customerPrivacy&&window.Shopify.customerPrivacy.marketingAllowed()&&o()}function d(){document.addEventListener("visitorConsentCollected",function(e){e.detail&&e.detail.marketingAllowed&&o()}),window.Shopify&&window.Shopify.loadFeatures?window.Shopify.loadFeatures([{name:"consent-tracking-api",version:"0.1"}],i):i()}return void("loading"===document.readyState?document.addEventListener("DOMContentLoaded",d):d())}"complete"===document.readyState?a():window.addEventListener("load",function(){a()})}else"loading"===document.readyState?document.addEventListener("DOMContentLoaded",a):a();function r(e){return String(e).split("?")[0]}function a(){if(!function(){for(var n=document.getElementsByTagName("script"),t=r(e),o=0;o!==n.length;o++)if(r(n[o].src)===t)return!0;return!1}()){var n=document.createElement("script");n.async=!0,n.src=e,document.body.appendChild(n)}}}(instafeedScriptSrc,instafeedScriptMode);
1497    </script>
1497
1498  
1499
1500<!-- END app snippet -->
1501
1502
1503
1504
1505
1506
1507</div>
1508</div>
1509
1510
1511</section><section id="shopify-section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b" class="shopify-section section"><style data-shopify>.section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b-padding {
1512  padding-top: calc(0px * 0.75);
1513  padding-bottom: calc(0px  * 0.75);
1514}
1515
1516@media screen and (min-width: 750px) {
1517  .section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b-padding {
1518    padding-top: 0px;
1519    padding-bottom: 0px;
1520  }
1521}</style><div class="color-background-2 gradient">
1522  <div class="section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b-padding">
1523    <div id="newsletter">
1524
1525<div id="newsletter-left"><img alt="Hands working on furniture" src="https://cdn.shopify.com/s/files/1/0712/5286/9408/files/joinery_newsletter.jpg?v=1694097530" /></div>
1526
1527<div id="newsletter-right"><h3>Stay in the Know</h3>
1528<p>Sign up for our newsletter to receive information about our new designs, events, special promotions, and our team.</p>
1529
1530
1531<div id="mc_embed_signup">
1532<form action="//thejoinery.us1.list-manage.com/subscribe/post?u=47c9d532e46348143093864ca&amp;id=68e8b886da" class="validate" id="mc-embedded-subscribe-form" method="post" name="mc-embedded-subscribe-form" novalidate target="_blank">
1533<div id="mc_embed_signup_scroll">
1534<input class="email" id="mce-EMAIL" name="EMAIL" placeholder="Email address" required type="email" value /> 
1535<div style="position: absolute; left: -5000px;">
1536<input aria-label="Hidden field inserted by Mailchimp" name="b_47c9d532e46348143093864ca_68e8b886da" tabindex="-1" type="text" value /></div>
1537<input class="button" id="mc-embedded-subscribe" name="subscribe" type="submit" value="Sign Up" /></div>
1538</form>
1539</div>
1540</div>
1541</div>
1542  </div>
1543</div>
1544
1545
1546<style> #shopify-section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b #newsletter {background: #e5e5e1; float: left; margin-bottom: -5rem; width: 100%;} #shopify-section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b #newsletter-left {float: left; line-height: 0.75; width: 50%;} #shopify-section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b #newsletter-left img {max-width: 100%;} #shopify-section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b #newsletter-right {float: left; padding: 3% 5%; width: 40%;} #shopify-section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b #mc_embed_signup input {border: 1px solid #999; display: block; font-size: 18px; padding: 8px; margin: 0 0 10px; width: 58%; min-width: 130px; width: 100%;} #shopify-section-template--17787349532960__324c3d63-9284-49be-ac8e-f024b4a56b8b #mc_embed_signup input.button {background: #000; float: left; font-weight: 400; line-height: 100%; padding: 12px 0 10px; text-transform: uppercase; width: 70%;} </style></section><section id="shopify-section-template--17787349532960__1695825653c5a712b4" class="shopify-section section"><div class="page-width"></div>
1547
1548
1549</section><section id="shopify-section-template--17787349532960__17537134926eeaf03e" class="shopify-section section"><div class="page-width"><div id="shopify-block-Aclpqb2dFeE56d0l0a__shop_shop_login_button_app_block_V3kYBb" class="shopify-block shopify-app-block">
1550  
1550<script defer="defer" async type="module" src="https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-login-button.en.esm.js"></script>
vendor: 1 bytes, line 1550
1550
1551<script type="module">
1552  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.shop-login-button.en.esm.js");
1553
1554  
1555</script>
1555
1556
1557<shop-login-button ux-mode="windoid" return-uri="https://thejoinery.com/account/redirect" source="app_block" persist-after-sign-in="false" proxy="true" proxy-core-idp="true" redirect-type="iframe" response-type="code"></shop-login-button>
1558
1559
1560
1561
1562</div>
1563</div>
1564
1565
1566</section>
1567    </main>
1568
1569    <div id="shopify-section-footer" class="shopify-section">
1570<link href="//thejoinery.com/cdn/shop/t/2/assets/section-footer.css?v=83777583229853969691675285420" rel="stylesheet" type="text/css" media="all" />
1571<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-newsletter.css?v=103472482056003053551675285420" media="print" onload="this.media='all'">
1572<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-list-menu.css?v=151968516119678728991675285420" media="print" onload="this.media='all'">
1573<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-list-payment.css?v=69253961410771838501675285420" media="print" onload="this.media='all'">
1574<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-list-social.css?v=52211663153726659061675285420" media="print" onload="this.media='all'">
1575<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/component-rte.css?v=69919436638515329781675285420" media="print" onload="this.media='all'">
1576<link rel="stylesheet" href="//thejoinery.com/cdn/shop/t/2/assets/disclosure.css?v=646595190999601341675285420" media="print" onload="this.media='all'">
1577
1578<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-newsletter.css?v=103472482056003053551675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
1579<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-list-menu.css?v=151968516119678728991675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
1580<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-list-payment.css?v=69253961410771838501675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
1581<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-list-social.css?v=52211663153726659061675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
1582<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/component-rte.css?v=69919436638515329781675285420" rel="stylesheet" type="text/css" media="all" /></noscript>
1583<noscript><link href="//thejoinery.com/cdn/shop/t/2/assets/disclosure.css?v=646595190999601341675285420" rel="stylesheet" type="text/css" media="all" /></noscript><style data-shopify>.footer {
1584    margin-top: 36px;
1585  }
1586
1587  .section-footer-padding {
1588    padding-top: 27px;
1589    padding-bottom: 27px;
1590  }
1591
1592  @media screen and (min-width: 750px) {
1593    .footer {
1594      margin-top: 48px;
1595    }
1596
1597    .section-footer-padding {
1598      padding-top: 36px;
1599      padding-bottom: 36px;
1600    }
1601  }</style><footer class="footer color-background-1 gradient section-footer-padding">
1602  <!-- Begin custom Joinery footer markup -->
1603
1604  <div class="footer__blocks-wrapper footer__content-top page-width">
1605    <div class="footer-region-left">
1606      <div id="b-corp">
1607        <img
1608          src="https://cdn.shopify.com/s/files/1/0712/5286/9408/files/b-corp-logo-black-rgb.png?v=1778847034"
1609          alt="Certified B Corporation"
1610          loading="lazy"
1611        >
1612      </div>
1613
1614      <div class="footer-menu">
1615        <ul class="menu clearfix">
1616          <li><a href="/pages/purchasing" class="link link--text list-menu__item list-menu__item--link">Purchasing</a></li>
1617          <li><a href="https://issuu.com/thejoinery/docs/final_catalog" class="link link--text list-menu__item list-menu__item--link">Catalog</a></li>
1618          <li><a href="/collections/sale" class="link link--text list-menu__item list-menu__item--link">Outlet</a></li>          
1619          <li><a href="/pages/request-samples" class="link link--text list-menu__item list-menu__item--link">Request Samples</a></li>
1620          <li><a href="/pages/the-joinery-lifetime-furniture-guarantee" class="link link--text list-menu__item list-menu__item--link">Lifetime Guarantee</a></li>
1621          <li><a href="/pages/careers" class="link link--text list-menu__item list-menu__item--link">Careers</a></li>
1622          <li><a href="/pages/product-care" class="link link--text list-menu__item list-menu__item--link">Product Care</a></li>
1623          <li><a href="/collections/commercial-furniture-design-services" class="link link--text list-menu__item list-menu__item--link">Commercial Projects</a></li>
1624          <li><a href="/pages/for-the-trade" class="link link--text list-menu__item list-menu__item--link">For the Trade</a></li>
1625        </ul>
1626      </div>
1627    </div>
1628    <!-- end footer region left -->
1629
1630    <div class="footer-region-right">
1631      <div id="social">
1632          <ul>
1633            <li><a id="facebook" href="https://www.facebook.com/thejoinerypdx" target="_blank">Facebook <span class="visually-hidden">(opens in a new window)</span></a></li>
1634            <li><a id="instagram" href="https://www.instagram.com/thejoinery/" target="_blank">Instagram <span class="visually-hidden">(opens in a new window)</span></a></li>
1635          </ul>
1636        
1637      </div>
1638
1639      
1640      <div id="copyright">
1641        <ul>
1642          <li><a href="/">© The Joinery</a></li>
1643          <li><a href="/pages/sitemap">Site Map</a></li>
1644          <li>
1645            <a href="/pages/privacy-policy-and-terms-of-use" title="Privacy Policy and Terms of Use">Privacy Policy | Terms of Use</a>
1646          </li>
1647        </ul>
1648      </div>
1649    </div>
1650  </div>
1651
1652  <!-- End custom Joinery footer markup -->
1652<div class="footer__content-top page-width"><div class="footer-block--newsletter"><div class="footer-block__newsletter"><h2 class="footer-block__heading">Get Our Newsletter</h2><form method="post" action="/contact#ContactFooter" id="ContactFooter" accept-charset="UTF-8" class="footer__newsletter newsletter-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="contact[tags]" value="newsletter">
1653              <div class="newsletter-form__field-wrapper">
1654                <div class="field">
1655                  <input
1656                    id="NewsletterForm--footer"
1657                    type="email"
1658                    name="contact[email]"
1659                    class="field__input"
1660                    value=""
1661                    aria-required="true"
1662                    autocorrect="off"
1663                    autocapitalize="off"
1664                    autocomplete="email"
1665                    
1666                    placeholder="Email"
1667                    required
1668                  >
1669                  <label class="field__label" for="NewsletterForm--footer">
1670                    Email
1671                  </label>
1672                  <button
1673                    type="submit"
1674                    class="newsletter-form__button field__button"
1675                    name="commit"
1676                    id="Subscribe"
1677                    aria-label="Subscribe"
1678                  >
1679                    <svg viewBox="0 0 14 10" fill="none" aria-hidden="true" focusable="false" role="presentation" class="icon icon-arrow" xmlns="http://www.w3.org/2000/svg">
1680  <path fill-rule="evenodd" clip-rule="evenodd" d="M8.537.808a.5.5 0 01.817-.162l4 4a.5.5 0 010 .708l-4 4a.5.5 0 11-.708-.708L11.793 5.5H1a.5.5 0 010-1h10.793L8.646 1.354a.5.5 0 01-.109-.546z" fill="currentColor">
1681</svg>
1682
1683                  </button>
1684                </div></div></form></div></div>
1685    </div><div class="footer__content-bottom">
1686    <div class="footer__content-bottom-wrapper page-width">
1687      <div class="footer__column footer__localization isolate"></div>
1688      <div class="footer__column footer__column--info"><div class="footer__payment">
1689            <span class="visually-hidden">Payment methods</span>
1690            <ul class="list list-payment" role="list"><li class="list-payment__item">
1691                  <svg class="icon icon--full-color" 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>
1692
1693                </li><li class="list-payment__item">
1694                  <svg class="icon icon--full-color" 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-.114
1694c-.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>
1695
1696                </li><li class="list-payment__item">
1697                  <svg class="icon icon--full-color" 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 
169716.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>
1698
1699                </li></ul>
1700          </div><div class="footer__copyright caption">
1701          <small class="copyright__content"
1702            >&copy; 2026 <a href="/" title="">The Joinery</a>.
1703          </small>
1704          <small class="copyright__content"><a target="_blank" rel="nofollow" href="https://www.shopify.com?utm_campaign=poweredby&amp;utm_medium=shopify&amp;utm_source=onlinestore">Powered by Shopify <span class="visually-hidden">(opens in a new window)</span></a></small>
1705          <small class="copyright__content"> | <a href="https://www.shopify.com/legal/privacy">Shopify Privacy Policy</a></small>
1706        </div>
1707      </div>
1708    </div>
1709  </div>
1710</footer>
1711
1712
1713
1714
1715<style> #shopify-section-footer .footer-block__details-content.rte {font-size: 1.4rem; letter-spacing: 0;} #shopify-section-footer .footer-block__details-content.rte a {color: rgba(0, 0, 0, 0.75); text-decoration: none;} #shopify-section-footer h2.footer-block__heading {font-weight: 500; margin: 0 0 10px; text-transform: uppercase;} #shopify-section-footer .list-social__item .icon {height: 3rem; width: 3rem;} </style></div>
1716
1717    <ul hidden>
1718      <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li>
1719      <li id="a11y-new-window-message">Opens in a new window.</li>
1720    </ul>
1721
1722    
1722<script>
1723      window.shopUrl = 'https://thejoinery.com';
1724      window.routes = {
1725        cart_add_url: '/cart/add',
1726        cart_change_url: '/cart/change',
1727        cart_update_url: '/cart/update',
1728        cart_url: '/cart',
1729        predictive_search_url: '/search/suggest'
1730      };
1731
1732      window.cartStrings = {
1733        error: `There was an error while updating your cart. Please try again.`,
1734        quantityError: `You can only add [quantity] of this item to your cart.`
1735      }
1736
1737      window.variantStrings = {
1738        addToCart: `Add to cart`,
1739        soldOut: `Sold`,
1740        unavailable: `Unavailable`,
1741      }
1742
1743      window.accessibilityStrings = {
1744        imageAvailable: `Image [index] is now available in gallery view`,
1745        shareSuccess: `Link copied to clipboard`,
1746        pauseSlideshow: `Pause slideshow`,
1747        playSlideshow: `Play slideshow`,
1748      }
1749    </script>
1749<script>
1750function mwApoCustom() {
1751  window.mwApoInit  = window.mwApoInit  || {};
1752  window.mwApoInit.onEvent = function (event, args) {  
1753      if (event == "init::finish") {
1754        if (document.querySelector(".shopify-payment-button")) {
1755          document.querySelector(".shopify-payment-button").style.display =
1756            "none";
1757
1758          var mutationObserver = new MutationObserver(function (mutations) {
1759            mutations.forEach(function (mutation) {
1760              document.querySelector(".shopify-payment-button").style.display =
1761                "none";
1762            });
1763          });
1764
1765          mutationObserver.observe(
1766            document.getElementsByClassName("shopify-payment-button")[0],
1767            {
1768              attributes: true,
1769              characterData: true,
1770              childList: true,
1771              subtree: true,
1772              attributeOldValue: true,
1773              characterDataOldValue: true,
1774            }
1775          );
1776        }
1777      }
1778  };
1779  window.mwApoInit.onCallback = function (event, data) {
1780     return data;
1781  };
1782  window.mwApoInit.settings.selectors.product.gallery_container = '.custom_selector';
1783}
1784</script>
1784
1785
1786<style>
1787</style>
1788    
1789  <style> body#site-map .rte {display: flex; flex-direction: row;} body#site-map .rte .column {width: 50%;} </style>
1790<div id="shopify-block-AWlIvdkFVaWsydStBQ__4804304946286255945" class="shopify-block shopify-app-block">
1791
1792  
1792<script>
1793    const cookieBarMetaFields = {"shopId":"01Iy2kiZTwR7I2uY9BkN","settings":{"theme":"light_theme","message":"This website uses cookies and similar technologies to operate our store, analyze traffic, and improve your experience. You can accept, decline or adjust your preferences below. ","showPrivacyPolicy":true,"googlePrivacyLink":"https://business.safety.google/privacy/","privacyLink":"/policies/privacy-policy","privacyLinkText":"Learn more","googlePrivacyPolicy":true,"googlePrivacyText":"Visit Google policy","agreeButtonText":"Accept","denyButtonText":"Decline","showOnCountry":"all","displayType":"float_card","desktopFloatCardPosition":"bottom_left","desktopPosition":"bottom","mobilePositions":"bottom","themeName":"Light theme","textFont":"Noto+Sans","serveFontViaCDN":false,"showIcon":false,"customCss":"","removeBranding":true,"specificRegions":{"pipeda":false,"gdpr":false,"appi":false,"lgpd":false,"ccpa":false},"specificCountries":["DZA","AGO","BEN","BWA","IOT","BFA","BDI","CPV","CMR","CAF","TCD","COM","COG","COD","CIV","DJI","EGY","GNQ","ERI","SWZ","ETH","ATF","GAB","GMB","GHA","GIN","GNB","KEN","LSO","LBR","LBY","MDG","MWI","MLI","MRT","MUS","MYT","MAR","MOZ","NAM","NER","NGA","REU","RWA","STP","SEN","SYC","SLE","SOM","ZAF","SSD","SHN","SDN","TZA","TGO","TAA","TUN","UGA","ESH","ZMB","ZWE","AFG","ARM","AZE","BHR","BGD","BTN","BRN","KHM","CHN","GEO","HKG","IND","IDN","IRQ","ISR","JPN","JOR","KAZ","KWT","KGZ","LAO","LBN","MAC","MYS","MDV","MNG","MMR","NPL","OMN","PAK","PSE","PHL","QAT","SAU","SGP","KOR","LKA","TWN","TJK","THA","TLS","TUR","TKM","ARE","UZB","VNM","YEM","ALA","ALB","AND","AUT","BLR","BEL","BIH","BGR","HRV","CYP","CZE","DNK","EST","FRO","FIN","FRA","DEU","GIB","GRC","GGY","HUN","ISL","IRL","IMN","ITA","JEY","UNK","LVA","LIE","LTU","LUX","MLT","MDA","MCO","MNE","NLD","MKD","NOR","POL","PRT","ROU","RUS","SMR","SRB","SVK","SVN","ESP","SJM","SWE","CHE","UKR","GBR","VAT","AIA","ATG","ABW","BHS","BRB","BLZ","BMU","BES","VGB","CAN","CYM","CRI","CUW","DMA","DOM","SLV","GRL","GRD","GLP","GTM","HTI","HND","JAM","MTQ","MEX","MSR","NIC","PAN","PRI","SXM","KNA","LCA","SPM","VCT","TTO","TCA","Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","Washington DC","West Virginia","Wisconsin","Wyoming","VIR","AUS","CXR","CCK","COK","FJI","PYF","GUM","HMD","KIR","MHL","FSM","NRU","NCL","NZL","NIU","NFK","MNP","PLW","PNG","PCN","WSM","SLB","ARG","BOL","BRA","CHL","COL","ECU","FLK","GUF","GUY","PRY","PER","SGS","SUR","URY","VEN"],"specificUsCountries":["California","Colorado","Connecticut","Delaware","Florida","Iowa","Montana","Nebraska","New Hampshire","New Jersey","Oregon","Texas","Utah","Virginia"],"specificEuCountries":[],"regionLanguageMap":null,"customPrivacyLink":"","icon":"cookie_bar_icon_1","customIcon":false,"customIconUrl":"","textAlignment":"center","fontSize":16,"displayAfter":"3","optionPolicyLink":"select","bannerType":"accept-or-preferences","showReOpenButton":true,"reOpenPosition":"bottom-right","displayButtonAs":"text","iconReOpen":"image-icon-1","reOpenImpliedConsent":["gdpr","nonGdpr"],"isRevertPreferences":true,"textColor":"#000000","denyTextColor":"#000000","privacyLinkColor":"#000000","bgColor":"#FFFFFF","messageColor":"#2C332F","agreeBtnTextColor":"#F8F8F8","agreeBtnBgColor":"#000000","agreeBtnBorder":"#2C332F","iconColor":"#000000","textAvada":"rgba(0, 0, 0, 0.8)","textBtnColor":"#000000","checkoutBannerTitle":"We keep your privacy","notificationAfterConsent":"Privacy updated","visibleAfterConsent":true,"collapsedBannerContent":true,"showCloseIcon":true,"dataSalesCheckboxTitle":"Do not Sell or Share My Personal Information","showAtConsentBanner":true,"showAtPrefPopup":false,"isUseVipTheme":false,"isUseVipLogo":false,"geoCompl
1793iance":{"enabled":false,"countryOverrides":{},"gdpr":{"enabled":true,"bannerType":"preferences","dataSaleOptOut":false,"countries":null,"regionOverrides":{}},"ccpa":{"enabled":true,"bannerType":"decline-only","dataSaleOptOut":true,"countries":null,"regionOverrides":{}},"lgpd":{"enabled":true,"bannerType":"accept-or-decline","dataSaleOptOut":false,"countries":null,"regionOverrides":{}},"pipeda":{"enabled":true,"bannerType":"accept-or-decline","dataSaleOptOut":false,"countries":null,"regionOverrides":{}},"appi":{"enabled":true,"bannerType":"accept-only","dataSaleOptOut":false,"countries":null,"regionOverrides":{}},"others":{"bannerType":"informative","hideBanner":false}},"forceConsentOnFirstVisit":false,"scrollThreshold":20,"skipInitialClicks":0,"autoBlocker":{"enabled":true,"pixelIframeRemoval":true,"riskyPixelIds":[],"allowedPixelIds":[]},"customerAccountBannerEnabled":false,"customerAccountVisibleAfterConsent":false,"customerAccountShowCollapseIcon":false,"customerAccountShowCloseIcon":false,"customerAccountNotificationAfterConsent":"Privacy updated","preferencesButtonText":"Preferences","preferencesPopHeaderTitle":"Select type of Cookies you accept using.","preferencesPopHeaderDesc":"","strictCookiesTitle":"Essential Strictly Required","strictCookiesDesc":"These cookies are required to run our website properly for checkout, security and fraud prevention and cannot be switched off.","analyticCookiesTitle":"Analytics","analyticCookiesDesc":"These cookies help us to understand how visitors interact with websites by collecting and reporting information, including Shopify Analytics and Google Analytics","marketingCookiesTitle":"Marketing","marketingCookiesDesc":"These cookies are usually set by our marketing and advertising partners to show you relevant ads including Google Ads.","functionalCookiesTitle":"Functional","functionalCookiesDesc":"Functional cookies enable our website to offer additional functions and personal settings.","acceptSelectedButtonText":"Save consent","acceptAllButtonText":"Accept All","reopenButtonText":"Cookie consent","preferenceStyleCustom":"default","iconType":"default_icon","shopId":"01Iy2kiZTwR7I2uY9BkN","urlIcon":"","advancedSetting":false,"fontStore":[{"label":"Assistant","value":"Assistant"}],"boxShadow":"0px 3px 8px rgba(0, 0, 0, 0.2)","borderColor":"","display":"","textAvadaMobile":"rgba(0, 0, 0, 0.8)","borderRadius":"32px","btnColor":"#F8F8F8","id":"gny2vX3YDRAn35ExgYLl","fontWeight":"500","illustrations":"Illustrations","dataTrackingMethod":"Data tracking method","tcfPrivacyText":"Privacy policy","tcfAcceptAllButtonText":"Accept all","maxDurationCookie":"Maximum duration of cookies","tcfMessage3":"You may modify or withdraw your preferences at any time by clicking the \"Cookies Consent\" button (or Cookies icon) at the bottom of this site. For more details, please refer to our {tcfPrivacyText} and {tcfGooglePolicyText}.","tcfMessage2":"Store and/or access information on a device. Use limited data to select advertising. Use profiles to select personalised advertising. Create profiles for personalised advertising. Use profiles to select personalised content. Create profiles to personalise content. Measure advertising performance. Measure content performance. Understand audiences through statistics or combinations of data from different sources. Develop and improve services. Use limited data to select content. We may also use precise geolocation data and identify devices through scanning.","tcfMessage1":"We and our {partnersText} process data that concerns you. We may process data essential for the proper functioning of the site or for security reasons, classified as Strictly required, which does not require your consent. In addition to this data, we will process personal data (e.g. login-based identifiers, non-precise location, interaction with ads or content) only if you have given your consent. You express your consent by clicking “Accept” or manage your preferences by clicking on \"Customize preferences\".","tcfConsent":"Consent","tcfHeader":"We keep your privacy","tcfAcceptButtonText":"Accept","deviceStorageOverview":"Device Storage Overview","tcfLegIntClaim":"Legitimate interest claim:","lifeTimeCookieRefresh":"Cookie lifetime is being refreshed","tcfPreferencesContent1":"Customize your consent preferences below. Granular consent for Purposes & Features and Vendors is supported.","cookieProvider":"Provider","tcfSaveButtonText":"Save consent","tcfPreferencesContent2":"Most {vendorText} require your explicit consent to process personal data, while some rely on legitimate interest. However, you have the right to object to their use of legitimate interest at anytime.","tcfPreferencesContent3":"The choices you make regarding the purposes and entities listed below are saved in a cookie named “avada-tcf” in Local Storage and expire after 12 months.","tcfSpecialPeriodInfo":"Some purposes and/or special purposes may have different retention periods that are reported next to their descriptions.","cookieDescription":"Description","numberVendor":"{number} vendors","tcfPurposes":"Purposes","tcfPrivacyPolicyText":"Privacy policy","tcfDeclineAllButtonText":"Decline all","tcfPartnerText":"{number} partners","tcfGooglePolicyText":"Google policy","tcfThirdPartyVendors":"TCF Third party vendors","tcfVendorTitle":"Vendors","tcfDeviceStorage":"Device storage information:","cookieName":"Cookie name","tcfSpecialPurposes":"Special purposes","tcfCategoryTitle":"Categories","tcfPeriod":"{days} days","tcfDenyButtonText":"Decline","tcfFeatures":"Features","cookieDuration":"Duration","tcfPreferencesButtonText":"Customize preferences","tcfDataRetention":"Data retention period:","dataCategories":"Data categories","vendorText":"vendors","tcfFeaturesAndPurposesTitle":"Features & Purposes","tcfFlexiblePurposes":"Flexible purposes","tcfHeader2":"We and our partners process data to provide:","tcfSpecialFeatureOptins":"Special features","tcfHeader3":"Withdraw consent","tcfLegIntPurposes":"Legitimate interest","tcfLegitimate":"Legitimate interest","showCookieInfo":true,"label":"Light theme","value":"light_theme","impliedConsent":[],"scannerSetting":{"type":"weekly","scanDay":"monday","scanHour":"0","enabled":false,"serverScanTime":{"_seconds":1783321200,"_nanoseconds":0}}},"status":true,"translations":{"defaultLanguage":"en","detectMethod":"browser"}
1793,"cookies":{"strictly-required":[{"description":"Merchant authentication: Identity session cookie.","duration":"session","provider":"Shopify","name":"__Host-_identity_session_same_site"},{"description":"Merchant authentication: Main session cookie for Identity authentication. This is the underlying Rails session cookie. It contains the SID.","duration":"2y","provider":"Shopify","name":"_identity_session"},{"description":"Permanent device identifier.","duration":"session","provider":"Shopify","name":"_master_udr"},{"description":"Contains essential information for the correct functionality of merchant surfaces such as the admin area.","duration":"1y","provider":"Shopify","name":"_merchant_essential"},{"description":"Used to store session id in core for auth Legacy Admin","duration":"12w","provider":"Shopify","name":"_secure_admin_session_id"},{"description":"Used to store session id in core for auth Legacy Admin","duration":"12w","provider":"Shopify","name":"_secure_admin_session_id_csrf"},{"description":"Contains essential information for the correct functionality of Shop.app.","duration":"1y","provider":"Shopify","name":"_shop_app_essential"},{"description":"Contains essential information for the correct functionality of a store such as session and checkout information and anti-tampering data.","duration":"1y","provider":"Shopify","name":"_shopify_essential"},{"description":"Contains an opaque token that is used to identify a device for all essential purposes.","duration":"1y","provider":"Shopify","name":"_shopify_essential_"},{"description":"Used to check cookie capabilities on the client.","duration":"1min","provider":"Shopify","name":"_shopify_test"},{"description":"","duration":"-","provider":"Avada","name":"avada_cookie_consent"},{"description":"Helps detect fraud and provides continuity between each of your checkout attempts with Affirm. This data is necessary for Affirm to improve your experience by understanding where you and other customers are experiencing friction as you use our product.","duration":"1y","provider":"Affirm","name":"checkout_continuity_service"},{"description":"Used in connection with GDPR acceptance.","duration":"-","provider":"Oberlo","name":"gdpr_accepted"},{"description":"","duration":"-","provider":"Avada","name":"integration"},{"description":"Remembers a user's privacy choices about cookies and online tracking, especially for marketing and advertising, based on user's regional privacy laws.","duration":"1y","provider":"Shopify","name":"privacy_signal"},{"description":"This cookie is typically used to maintain an anonymized user session by the server.","duration":"session","provider":"Affirm","name":"session"}],"reporting-analytics":[{"description":"ID used to identify users","duration":"2 years","provider":"Google","name":"_ga"},{"description":"Contains analytics data for the merchant session.","duration":"1y","provider":"Shopify","name":"_merchant_analytics"},{"description":"Contains analytics data for Shop.app.","duration":"1y","provider":"Shopify","name":"_shop_app_analytics"},{"description":"Contains analytics data for buyer surfaces such as the storefront or checkout.","duration":"1y","provider":"Shopify","name":"_shopify_analytics"},{"description":"Shopify analytics.","duration":"2 years","provider":"Shopify","name":"_shopify_s"},{"description":"Shopify analytics.","duration":"-","provider":"Oberlo","name":"_shopify_t"},{"description":"Shopify analytics.","duration":"2 years","provider":"Shopify","name":"_shopify_y"},{"description":"Contains the required buyer information for analytics in Shop.","duration":"1y","provider":"Shopify","name":"shop_analytics"},{"description":"First-party analytics identifier set client-side by the Shopify Web Pixel Manager. It stores the visitor's client ID (a UUID) to track an anonymous visitor across sessions for analytics and conversion attribution.","duration":"1y","provider":"Shopify","name":"shopify_client_id"}],"marketing-retargeting":[{"description":"Contains marketing data for buyer surfaces such as the storefront or checkout.","duration":"1y","provider":"Shopify","name":"_shopify_marketing"}],"functional":[{"description":"Set after a checkout is completed to ensure that new carts are in the same currency as the last checkout.","duration":"14 days","provider":"Shopify","name":"cart_currency"},{"description":"Used in connection with checkout.","duration":"2 weeks","provider":"Shopify","name":"localization"},{"description":"Used as a mechanism to set User locale in admin.","duration":"1y","provider":"Shopify","name":"shopify_override_user_locale"}]},"integration":{"shopify":{"connected":true},"globalPrivacyControl":{"enabled":false},"metaPixel":{"enabled":false,"script":"\n  !function(f,b,e,v,n,t,s)\n  {n=f.fbq=function(){n.callMethod?\n  n.callMethod.apply(n,arguments):n.queue.push(arguments)};\n  if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';\n  n.queue=[];t=b.createElement(e);t.async=!0;\n  t.src=v;s=b.getElementsByTagName(e)[0];\n  s.parentNode.insertBefore(t,s)}(window, document,'script',\n  'https://connect.facebook.net/en_US/fbevents.js');\n  fbq('consent', 'revoke');\n  \n  fbq('track', 'PageView');\n  "},"tiktokPixel":{"enabled":false,"script":""},"microsoftConsentMode":{"enabled":false},"tcf":{"enabled":false},"pinterestConsent":{"enabled":false,"script":""},"klaviyo":{"enabled":false},"headlessCommerce":{"enabled":false},"swym":{"enabled":false},"shopId":"01Iy2kiZTwR7I2uY9BkN","createdAt":"2026-01-28T20:27:48.165Z","googleConsentMode":{"enabled":true,"ga4":"G-RHGLHXQD0F","script":""},"updatedAt":"2026-03-31T19:11:57.656Z","id":"dFun9X4c1r0kiW9foB78"},"autoBlocker":{"enabled":true,"defaultConsentGranted":true,"blockedCookies":{"exact":["_gcl_au","_gcl_aw","_gcl_dc","_ga","_gid"],"prefixes":["_gac_","_ga_","_gat_"]},"blockedScriptHosts":["googletagmanager.com","google-analytics.com","analytics.google.com","googleadservices.com","googlesyndication.com","doubleclick.net"],"pixelIframeRemoval"
1793:true,"riskyPixelIds":[],"allowedPixelIds":[],"knownVendorPixelIds":[]}} || {};
1794    const resetMetafields = false || {};
1795    const {integration: avadaCbIntegration} = cookieBarMetaFields;
1796    const shopNameCookie = 'The Joinery';
1797    window.AVADA_COOKIES_BAR = {
1798      shopName: shopNameCookie,
1799      shopId: cookieBarMetaFields.shopId,
1800      status: cookieBarMetaFields.status,
1801      ...(window.AVADA_COOKIES_BAR || {}),
1802      ...cookieBarMetaFields.settings,
1803      translation: cookieBarMetaFields.translations,
1804      cookies: cookieBarMetaFields.cookies,
1805      integration: avadaCbIntegration,
1806      customer: {
1807        id: null,
1808        email: null,
1809        first_name: null,
1810        last_name: null,
1811        phone: null,
1812        emailSignature: null
1813      },
1814      reset: resetMetafields,
1815      brandData: {
1816        primaryBackground: "#000000",
1817        primaryForeground: "#ffffff",
1818        secondaryBackground: "#6e6e6e",
1819        secondaryForeground: "#ffffff",
1820        logo: "\/\/thejoinery.com\/cdn\/shop\/files\/joinery_logo.png?v=1675283678"
1821      }
1822    };
1823
1824    // Single definition of "a Meta pixel id Avada manages". Kept deliberately
1825    // loose about what follows the id so `fbq('init','123',{em:'...'})` counts —
1826    // an earlier stricter copy required a literal `);` and silently disagreed
1827    // with this one. Mirrors extractKnownVendorPixelIds in
1828    // packages/functions/src/helpers/utils/autoBlocker.js.
1829    function extractMetaPixelIds(code) {
1830      return Array.from(
1831        String(code || '').matchAll(/fbq\(\s*['"]init['"]\s*,\s*['"](\d+)['"]/g),
1832        match => match[1]
1833      );
1834    }
1835
1836    if (avadaCbIntegration?.pinterestConsent?.enabled && typeof pintrk === 'function') {
1837      console.log('Disabled pinterest consent');
1838      pintrk('setconsent', false);
1839    }
1840
1841    (() => {
1842      const getCookie= (name) => {
1843        const nameEQ = name + '=';
1844        const ca = document.cookie.split(';');
1845        for (let i = 0; i < ca.length; i++) {
1846          let c = ca[i];
1847          while (c.charAt(0) === ' ') c = c.substring(1, c.length);
1848          if (c.indexOf(nameEQ) === 0) return JSON.parse(decodeURIComponent(c.substring(nameEQ.length, c.length)));
1849        }
1850        return {};
1851      }
1852      window.AVADA_COOKIE_CONSENT = getCookie('avada_cookie_consent');
1853    })();
1854
1855    try {
1856      // Ownership is "the merchant handed us a tag id AND the integration is on".
1857      // The backend decides it that way — readVendorScript in autoBlocker.js
1858      // returns '' for a disabled vendor, so a disabled one never reaches the
1859      // denylist. Testing only the script here made the two disagree whenever an
1860      // integration was switched off with its script still saved: the storefront
1861      // published "we own this pixel" while blockedScriptHosts said we did not.
1862      // Nothing acted on the difference, because every use site below also ANDs
1863      // with `enabled` — but the flag is what verification, the e2e suite and CS
1864      // read, so it has to be the same answer.
1865      const metaPixelEnabled = !!avadaCbIntegration?.metaPixel?.enabled;
1866      const metaPixelScript = metaPixelEnabled ? avadaCbIntegration?.metaPixel?.script || '' : '';
1867      window.__avadaManagesMetaPixel = extractMetaPixelIds(metaPixelScript).length > 0;
1868      window.metaPixelFunc = window.__avadaManagesMetaPixel
1869        ? new Function(metaPixelScript)
1870        : null;
1871      if(window.__avadaManagesMetaPixel && avadaCbIntegration?.metaPixel?.enabled && window.AVADA_COOKIE_CONSENT.analytics && window.AVADA_COOKIE_CONSENT.marketing) {
1872        window.metaPixelFunc();
1873      }
1874    } catch (e) {
1875      console.error('Something went wrong in Meta Pixel:', e)
1876    }
1877
1878    try {
1879      if(avadaCbIntegration?.pinterestConsent?.enabled && window.AVADA_COOKIE_CONSENT.analytics && window.AVADA_COOKIE_CONSENT.marketing) {
1880        pintrk('setconsent', true);
1881        console.log('Enabled pinterest consent');
1882      }
1883    } catch (e) {
1884      console.error('Something went wrong in Pinterest integration:', e)
1885    }
1886
1887    try {
1888      const tiktokPixelScript = avadaCbIntegration?.tiktokPixel?.script || '';
1889      // Same ownership test as Meta: no ttq.load() id means the merchant runs the
1890      // official TikTok sales channel, so the pixel lives in Shopify's Web Pixel
1891      // sandbox and Customer Privacy governs it. Taking over window.ttq there is
1892      // exactly the interference SB-16468 is about.
1893      window.__avadaManagesTiktokPixel =
1894        !!avadaCbIntegration?.tiktokPixel?.enabled &&
1895        /ttq\.load\(\s*['"][^'"]+['"]/.test(tiktokPixelScript);
1896      if(avadaCbIntegration?.tiktokPixel?.enabled && window.__avadaManagesTiktokPixel) {
1897        window.tiktokPixelFunc = new Function(tiktokPixelScript);
1898
1899        // Extract pixel IDs from script for loading when theme pixel already exists
1900        const tiktokIdRegex = /ttq\.load\('([^']+)'\)/g;
1901        window._avadaTiktokPixelIds = [];
1902        let tiktokIdMatch;
1903        while ((tiktokIdMatch = tiktokIdRegex.exec(tiktokPixelScript)) !== null) {
1904          window._avadaTiktokPixelIds.push(tiktokIdMatch[1]);
1905        }
1906
1907        const manageTikTokConsent = () => {
1908          if (!window.ttq) return;
1909          try {
1910            const hasConsent = window.AVADA_COOKIE_CONSENT?.analytics && window.AVADA_COOKIE_CONSENT?.marketing;
1911            if (hasConsent) {
1912              if (typeof window.ttq.grantConsent === 'function') window.ttq.grantConsent();
1913              window._tiktokConsentRevoked = false;
1914            } else {
1915              if (typeof window.ttq.holdConsent === 'function') window.ttq.holdConsent();
1916              if (typeof window.ttq.revokeConsent === 'function') window.ttq.revokeConsent();
1917              window._tiktokConsentRevoked = true;
1918            }
1919          } catch (e) {
1920            console.error('Error managing TikTok consent:', e);
1921          }
1922        };
1923
1924        if (window.ttq) {
1925          // Theme pixel already loaded ttq - load app pixel IDs that aren't loaded yet
1926          let hasNewPixels = false;
1927          (window._avadaTiktokPixelIds || []).forEach(function(id) {
1928            if (!window.ttq._i || !window.ttq._i[id]) {
1929              window.ttq.load(id);
1930              hasNewPixels = true;
1931            }
1932          });
1933          if (hasNewPixels) window.ttq.page();
1934          manageTikTokConsent();
1935        } else {
1936          // Intercept ttq creation to apply consent before SDK processes queued events.
1937          // Self-removes after first interception to avoid conflicts with other scripts.
1938          try {
1939            let _ttqValue = undefined;
1940            Object.defineProperty(window, 'ttq', {
1941              get() { return _ttqValue; },
1942              set(val) {
1943                _ttqValue = val;
1944                if (val) {
1945                  // Restore normal property immediately to prevent conflicts
1946                  try {
1947                    Object.defineProperty(window, 'ttq', {
1948                      value: val, writable: true, configurable: true, enumerable: true
1949                    });
1950                  } catch(e) {}
1951                  manageTikTokConsent();
1952                }
1953              },
1954              configurable: true,
1955              enumerable: true
1956            });
1957            // Coordination with Avada auto-blocker: if the TikTok sandbox is ever
1958            // removed before ttq initializes, drop the accessor so the property can
1959            // behave normally again (prevents a stranded interceptor).
1960            setTimeout(function () {
1961              if (_ttqValue === undefined) {
1962                try { delete window.ttq; } catch (e) {}
1963              }
1964            }, 10000);
1965          } catch (e) {
1966            // defineProperty failed - fallback to DOMContentLoaded
1967            const onReady = () => manageTikTokConsent();
1968            if (document.readyState === 'loading') {
1969              document.addEventListener('DOMContentLoaded', onReady, {once: true});
1970            } else {
1971              setTimeout(onReady, 0);
1972            }
1973          }
1974        }
1975      }
1976    } catch (e) {
1977      console.error('Error handling TikTok Pixel consent:', e);
1978    }
1979
1980    // handle for customer add metaPixel script in theme
1981    try {
1982      if(avadaCbIntegration?.metaPixel?.enabled && window.__avadaManagesMetaPixel && window.fbq) {
1983        window.pixelIds = [];
1984        window.fbq = function () {
1985          console.log('Meta/FB Pixel disabled');
1986        };
1987        function savePixelIds() {
1988          const scripts = document.querySelectorAll('script');
1989          for (let script of scripts) {
1990              const contentScript = script.innerHTML.trim();
1991            if (contentScript.includes("!function(f,b,e,v,n,t,s)")) {
1992              window.pixelIds.push(...extractMetaPixelIds(contentScript));
1993            }
1994          }
1995        }
1996        savePixelIds();
1997      }
1998    } catch (e) {
1999      console.error('Something went wrong in Meta Pixel:', e)
2000    }
2001
2002  </script>
2002
2003
2004
2005
2006</div><div id="shopify-block-AaW9lWkh5dkhRTzhKW__14656832010101544780" class="shopify-block shopify-app-block">
2007  <link rel="preload" as="style" href="https://cdn.shopify.com/extensions/01a0f216-2326-7b23-bf83-dc69f22b39e1/apo-product-options-299/assets/mws_apo_bundle.css" onload="this.onload=null;this.rel='stylesheet'">
2008  
2009  <noscript><link href="//cdn.shopify.com/extensions/01a0f216-2326-7b23-bf83-dc69f22b39e1/apo-product-options-299/assets/mws_apo_bundle.css" rel="stylesheet" type="text/css" media="all" /></noscript>
2009<script type="module" defer src="https://cdn.shopify.com/extensions/01a0f216-2326-7b23-bf83-dc69f22b39e1/apo-product-options-299/assets/mws_apo_bundle.js"></script>
2009
2010
2011<script>
2012  window.mwApoSelectors = {
2013    "cart_row": [
2014      ".has-popup-tab .popup-tab .detail .item",
2015      "#main #cartform .cart-list .item",
2016      ".topBar__miniCart #mini_cart_form .cart_items .miniCart__item",
2017      "#cart_form .container .cart__itemList .cart__card",
2018      ".cart-mini-sidebar .cart-mini-content .cart-mini-item",
2019      ".template-cart .section-cart .cart .cart-table tbody .table-row",
2020      ".container.clearfix > div .twelve .twelve .cart-table.bottompad .item-row",
2021      "#header-cart .mini-products-list:first-child .grid",
2022      ".cart .grid table tbody tr.cart__row",
2023      ".recently-added table tbody tr",
2024      ".custom .row .columns .cart-table tbody tr",
2025      ".cart-summary .cart-summary__product:first-child",
2026      "form .cart-items .cart-item-container",
2027      "#CartForm #CartOuter table tbody .item",
2028      "#your-shopping-cart .page-container .main-content .items > .item:not(:last-child)",
2029      "#cart-summary .inner .cart-summary-item-list .cart-summary-item",
2030      "#cartform .cart-items .item",
2031      ".cart-form .cart-content > div .cart-item-wrapper .cart-item",
2032      ".ajaxcart .max-width--4 .cart .cart__row.mt3 .grid:first-child",
2033      "form .cart .cart__row:nth-child(2) .grid:first-child",
2034      ".ajaxcart .items .item",
2035      ".cart .items .item",
2036      ".cart-preview .product-container .box.product",
2037      ".cart-form .cart-items .cart-item",
2038      "#cart-form table tbody .cart-row",
2039      ".ajaxcart .ajaxcart__inner .ajaxcart__product .ajaxcart__row",
2040      ".cart .cart-table tbody .cart__row",
2041      ".halo-modal-body .cart-popup-content .cart-form .scroll-content .cart_items .cart-list li",
2042      "#dropdown-cart .has-items .mini-products-list .item",
2043      ".cart-form .cart_items .cart-list li",
2044      "#dropdown-cart .has-items .mini-products-list .item",
2045      ".shopify-section form .wrapper-cart .cart-list li",
2046      "#shopify-section-static-cart form .cartitems--container .cartitems .cart-item",
2047      "#cartform .cart-table tbody tr.even",
2048      ".standard-page form .cart-items.row",
2049      ".ajaxcart .ajaxcart__inner .ajaxcart__product .ajaxcart.row",
2050      "#cartform table tbody tr",
2051      "#CartDrawer #CartContainer .ajaxcart .ajaxcart__product .ajaxcart__row",
2052      "#your-shopping-cart #PageContainer .cart .cart-table .cart__row",
2053      ".cart__form .cart__table .cart__items .cart__item",
2054      ".modal-cart-form table.table-shopping-cart tbody .cart-line-item",
2055      ".main-cart-form table.table-shopping-cart tbody .cart-line-item",
2056      ".cart-form .cart-items tbody tr.cart-item",
2057      ".site-main #shopify-section-static-cart .cart-form .cart-items .cart-item",
2058      ".ajaxcart .drawer__inner .ajaxcart__product .ajaxcart__row",
2059      ".cart .cart__row:nth-child(2) .grid.cart__row--table-large",
2060      ".cart .ajaxcart__inner .ajaxcart__product .ajaxcart__row",
2061      "form.cart .cart__row:not(.cart__header-labels) .grid--full.cart__row--table-large",
2062      ".mini-cart .mini-cart__content .mini-cart__full .mini-cart__items .mini-cart__item",
2063      "form table tbody tr",
2064      "form .cart--mobile .cart__items .cart-item",
2065      "#cart-form .cart-row",
2066      ".cart .cart-table tbody tr.cart__row",
2067      "form .cart-items-container .cart-items tbody tr.cart-item",
2068      ".modal--window .modal--container form .variant-id",
2069      ".template--cart .layout--main-content form .content .variant-id",
2070      ".template-cart .cart .cart-items",
2071      ".header-cart .header-cart-items .header-cart-item",
2072      ".grid #cartForm .cartRow",
2073      ".modal--container .fw--cart form .content .variant-id",
2074      ".panel div form .content .variant-id",
2075      ".shopify-section .reading-container #cartform ul li.item",
2076      ".cart #shopify-section-cart-template  #cart_form ul li",
2077      ".container-wrap .container #Cart form .cart-table #CartItems .line-item",
2078      ".cartContainer .scroll #Cart form .cart-table #CartItems .line-item",
2079      ".ajaxcart .ajaxcart__inner .ajaxcart__product .ajaxcart__row .grid",
2080      "#shopping-cart #cartform .desktop-8.tablet-6 .cart-item",
2081      "form .cart-items tbody .cart-item",
2082      ".ajaxcart .ajaxcart__inner .ajaxcart__product .ajaxcart__row .grid",
2083      ".cart.table-wrap .cart-table tbody .cart__row",
2084      ".mm-panels .mm-opened .cart_item",
2085      ".ajaxcart__content .cart__body .cart__row:not(:first-child)",
2086      ".template-cart .cartForm .cart__body .cart__row:not(:first-child)",
2087      ".cart-wrapper .cart-inner > div .cart-content .clearfix .item-cart",
2088      ".cart div .cart-table-wrap .data-table tbody tr",
2089      "#shopify-section-cart-template .cart .line-items .line-item",
2090      ".static-cart-wrapper .cart .cart-container .cart-container-scrollable .cart-items .cart-item-row",
2091      "#site-header-drawer-cart .cart-mini .cart-container .cart-container-scrollable .cart-items .cart-item-row",
2092      "#cart_form ul li",
2093      "#cart .mm-panels .mm-panel ul.mm-listview .cart_item",
2094      "#cart_form .section .cart_items",
2095      "#cartform .cart-list .item.clearfix",
2096      ".cart_menu form .cart_row:first-child ul:last-child",
2097      ".cart_tbl form .con_row ul",
2098      "#site-cart .site-nav-container-last .top .cart .cart-items .cart-item",
2099      ".site-box-content .cart .cart-items .cart-item",
2100      "#shopify-section-template-cart form table.cart-items tbody tr.cart-item",
2101      ".cartForm .cart__body .cart__row:last-child .cart__row--table-large:first-child",
2102      "#cartform .cart-contents .clearfix",
2103      ".template-product #cart-summary-overlay .cart-summary-overlay__column-item .cart-summary-overlay__variants",
2104      "#cartform .item-list .item .desc div .name",
2105      "#ajaxifyCart .cart-form .ajaxifyCart--products .ajaxifyCart--product",
2106      ".cart #shopping-cart #cartform table tbody tr",
2107      ".mini-cart .mini-cart__inner .mini-cart__items .mini-cart__item-wrapper .mini-cart__item",
2108      ".container form .cart__items tbody tr.cart-item",
2109      "#cart_form .section .columns .section.clearfix:first-child",
2110      ".cart_container .cart_content form.js-cart_content__form ul.js-cart_items .cart_item ",
2111      "#cartform table.desktop-9 tbody tr",
2112      ".cart-form .cart__products .cart__product .cart__row",
2113      ".ajaxcart__form .ajaxcart__inner .ajaxcart__products .ajaxcart__product .ajaxcart__row",
2114      ".container-widget .shopping-cart-table tbody tr",
2115      ".cart-items__wrapper .cart-form .cart-items__table tbody > tr[data-key]"
2116    ],
2117    "product_form": [
2118      ".product-form form",
2119      ".nav-shift .shopify-section .product .container #main form",
2120      ".product__container div .product__section .product_form .shopify-product-form",
2121      ".template-product .page-body-content .section-product .product-details-wrapper .product-form",
2122      ".container.clearfix > div .product-grid-product-template .twelve .bottompad .product-variants #add-item-form-product-template",
2123      ".pageWrapper .page-container .main-content .shopify-section .product-template__container .grid .grid__item .product-single__meta .product-form",
2124      ".product-page--main-content .product-page--cart-form-block .product-page--cart-form .shopify-product-form",
2125      ".section-product .grid .product-info div:nth-child(3) .AddToCartForm",
2126      ".form__width .product__form .product-form",
2127      ".template-product .page-container .main-content .item .shopify-product-form",
2128      ".row.light-space-above .product-details .product-section .product-form",
2129      ".page-wrapper .product-wrapper .product-options #product-options .product-form .shopify-product-form",
2130      ".grid .grid__item.five-twelfths .product-form",
2131      ".item .right .shopify-product-form",
2132      ".main-content > div .grid .product-aside .purchase-box .product-form",
2133      "#shopify-section-page-product .product-page .product-details-wrap .product-form",
2134      ".product-page--form #AddToCartForm--product-template .shopify-product-form:first-child",
2135      ".product .row .product-shop .shopify-product-form",
2136      ".product .row .product-shop div #add-to-cart-form",
2137      ".product--container .product--outer .product-form--alt div form",
2138      "#product-box .col-md-5 .product-description-main-wrapper #add-to-cart-form",
2139      ".grid .grid__item.five-twelfths .product-form",
2140      ".product-page #product-right #product-description div .product_form",
2141      ".product-sticky-wrapper .product-details-wrapper .product-details--form-wrapper #AddToCartForm",
2142      ".product.container .inner .product__details.clearfix .product__info .product__form",
2143      ".desktop-flex-wrapper .product-description-product-template .product-item-caption-white .shopify-product-form",
2144      ".product-container .product .product-details-wrapper .shopify-product-form",
2145      ".page-template-product .site-main #shopify-section-static-product form",
2146      ".desktop-flex-wrapper .product-description-product-template .product-item-caption-white .shopify-product-form",
2147      ".sidebarColumn-inner .content-wrapper--title > div #AddToCartForm .shopify-product-form",
2148      ".product__details .inner .grid .product__info .product__form",
2149      ".product-description div #add-to-cart-product-page .shopify-product-form",
2150      ".section-product .grid .product-info div:nth-child(3) .AddToCartForm",
2151      "#shopify-section-static-product .module-wrapper .product-wrap .product-form",
2152      "#shopify-section-product .product-page--main .product-page--info-box--container .product-page--cart-form .shopify-product-form",
2153      ".section-product-template .form-vertical",
2154      "#productTop .grid .productInfo #prodForm",
2155      ".partial--product .details .add-to-cart .shopify-product-form",
2156      ".shopify-section > div .product-container .product-info .inner .product-form",
2157      ".product .product_section .product__description .product_form .shopify-product-form",
2158      ".product-info .product-info--wrapper .product-form .productForm",
2159      ".product-template .product-top .product-right #AddToCartForm",
2160      "#shopify-section-page-product div .product-form .shopify-product-form",
2161      ".product--product-template .grid__item .grid .grid__item .product-form",
2162      ".product .product-template-section .main-wrapper div.sixteen:last-child > div:first-child .product_form .shopify-product-form",
2163      "#shopify-section-product #ProductSection-product .product-single #productInfo-product .shopify-product-form",
2164      ".product-page-area .product-essential .row .product-shop .product-shop-wrapper .product-type-main .product-form",
2165      ".Product__Wrapper .Product__InfoWrapper .Product__Info .Container .ProductForm",
2166      "#shopify-section-product-template .shopify-product-form",
2167      ".product-atc .product-atc-steps .product-atc-step-form .product-form",
2168      ".section .six.columns .product_form .shopify-product-form:first-child",
2169      ".product_section.product_images_position--left .seven.columns.omega .product_form .shopify-product-form",
2170      ".product-area .product-detail .product-detail__form .feedback-go_to_cart",
2171      ".pro_main_c .row div form",
2172      "#section-product .site-box .site-box-content div #add-to-cart-product .shopify-product-form",
2173      ".main-content #shopify-section-module-product .product-details-inline .product-wrap .product-form .shopify-product-form",
2174      ".product__form__wrapper > div .product__form .shopify-product-form",
2175      "#main #shopify-section-product-template div .product-details .shopify-product-form",
2176      ".product-detail .detail .product-form form:first-child",
2177      ".product #content #product-description #AddToCartForm",
2178      ".container .grid .grid__cell .product__details .product__form ",
2179      "#shopify-section-product-template > div .js-product_section > div .product_form .shopify-product-form:first-child",
2180      ".product-top #product-description div .shopify-product-form",
2181      ".container .product-single__bottom > div .js-cart-replace .product-single__box .js-product-form",
2182      ".product-info-outer .col-sm-12 .row .product-info div:nth-child(3) #add-item-form",
2183      '.page-container .grid .grid__item .product-form[action="/cart/add"]',
2184      'form[action="/cart/add"]',
2185      ".product-single__form",
2186    ],
2187    "add_to_cart": [
2188      "form .row.clearfix .column.full:last-child .product-form .quadd-wrapper .product-add .button",
2189      ".product_form .shopify-product-form .add_to_cart:first-child",
2190      ".template-product .page-body-content .section-product .product-details-wrapper .product-form .addtocart-button-active",
2191      "#add-item-form-product-template .purchase-section div.four:last-child .purchase .bottompad-quarter #add-to-cart-product-template",
2192      ".product-form .product-action .product-form__item--submit #AddToCart-product-template",
2193      ".shopify-product-form .quanity-cart-row .add-to-cart #add",
2194      ".product-form .product-detail__quantity-row .btn",
2195      ".product-form .product__submit .product__submit__buttons .product__submit__add",
2196      ".template-product .page-container .main-content .item .shopify-product-form .add-to-cart",
2197      ".product-form .payment-and-quantity--with-quantity .payment-and-quantity__add .product-add",
2198      ".shopify-product-form .form-actions .button",
2199      ".shopify-product-form .add-to-cart-container .btn--add-to-cart",
2200      ".shopify-product-form .row .add-to-cart",
2201      ".main-content > div .grid .product-aside .purchase-box .product-form .shopify-product-form .cart-buttons .button-wrapper .default-cart-button__button",
2202      ".product-form .product-add-to-cart .product-add .add-to-cart",
2203      ".shopify-product-form .cta-content--pay-buttons #AddToCart--product-template:first-child",
2204      ".shopify-product-form .groups-btn .btn",
2205      ".product-shop div #add-to-cart-form #product-add-to-cart",
2206      ".product-form--alt div form .product-form--atc .product-form--atc-button",
2207      "#add-to-cart-form .row .product-page--submit-action #purchase",
2208      ".product-form div:nth-child(2) .btn",
2209      ".product_form #product-add #AddToCart",
2210      ".product-sticky-wrapper .product-details-wrapper .product-details--form-wrapper #AddToCartForm .paymentButtonsWrapper #AddToCart",
2211      ".product__form .product__buy .button:first-child",
2212      ".shopify-product-form .row .product-form__item #AddToCart-product-template",
2213      ".shopify-product-form .product-add-to-cart .add-to-cart",
2214      ".product-menu .product-menu-buttons .product-menu-buttons-content .product-menu-buttons-addtocart .product-menu-button",
2215      ".product-single__meta .product-single__form .add-to-cart",
2216      ".shopify-product-form .product-selectors #AddToCart",
2217      ".product__form .product__buy .product__add-to-cart",
2218      ".shopify-product-form .buttons-holder .addToCart",
2219      ".AddToCartForm .cta-content .AddToCart",
2220      ".product-form .add-to-cart .product-form-add-to-cart .product-form-submit-wrap .add-to-cart-button",
2221      "#shopify-section-product .product-page--main .product-page--info-box--container .product-page--cart-form .shopify-product-form .product-page--add-to-cart",
2222      ".section-product-template .form-vertical .product-template__container .product-details .product-smart-wrapper .add-to-cart-btn",
2223      "#productTop .grid .productInfo #prodForm #AddToCart",
2224      ".shopify-product-form .product-page--cart-container .product-page--cart--column-b span .add",
2225      ".product-form .productoptions .with-payment-button .add-to-cart",
2226      ".product .product_section .product__description .product_form .shopify-product-form .purchase-details .add_to_cart",
2227      "form.productForm .productForm-block div .productForm-submit",
2228      "#AddToCartForm .product-add .AddtoCart",
2229      ".shopify-product-form .product-submit .payment-buttons-container .add-to-cart",
2230      ".grid__item .product-form #AddToCart",
2231      ".product .product-template-section .main-wrapper div.sixteen:last-child > div:first-child .product_form .shopify-product-form .add_to_cart",
2232      "#shopify-section-product #ProductSection-product .product-single #productInfo-product .shopify-product-form .add-to-cart__wrapper #AddToCart-product",
2233      ".product-form .product-options-bottom .add-to-cart-box .actions > div .button-wrapper-content .add-to-cart",
2234      ".Product__Wrapper .Product__InfoWrapper .Product__Info .Container .ProductForm .ProductForm__AddToCart",
2235      "#shopify-section-product-template .shopify-product-form .item .add-to-cart",
2236      ".product-form > div .product-form-atc .form-element-wrapper .form-element-quantity-submit .form-element-submit-button",
2237      ".shopify-product-form .purchase-details .purchase-details__buttons .add_to_cart:first-child",
2238      "#product-form .purchase-details .purchase-details__buttons .add_to_cart",
2239      ".feedback-go_to_cart .cf .product-detail__form__action .button",
2240      ".shopify-section > div .shopify-product-form .desc_blk .desc_blk_bot .btn_c",
2241      ".shopify-product-form .cart-functions .button",
2242      ".shopify-product-form .input-wrapper .product-quantity-container .add-to-cart .product-form-submit-wrap .button",
2243      ".shopify-product-form .product__submit .product__submit__buttons .product__submit__add",
2244      ".shopify-product-form .quick-actions .button",
2245      "form .quantity-submit-row__submit .button:first-child",
2246      ".product #content #product-description #AddToCartForm #addToCart",
2247      ".grid__cell .product__details .product__form .product__add-to-cart",
2248      ".shopify-product-form .purchase-details .purchase-details__buttons .add_to_cart:first-child",
2249      ".shopify-product-form .product-add .add",
2250      ".js-product-form .product-single__add .js-product-add",
2251      "#add-item-form .wrapper .pull-left:last-child .addtocart",
2252      '.product-form[action="/cart/add"] .product-form__item .btn[name="add"]',
2253      ".product-form .product-form__buttons .product-form__add-to-cart:first-child",
2254      ".product-main .product-form--atc .product-form--atc-button",
2255      ".product__content .product__content-main .product__form-wrapper .product__add-to-cart-button",
2256      ".product-wrapper #AddToCart--product-template",
2257      ".page-margin--product .product__form #klaviyo_sensor_pro",
2258      '.product:first-child .variations_form .single_add_to_cart_button[type="submit"]',
2259      ".product-form__buttons .product-form__submit",
2260      "add-to-cart-component .add-to-cart-button",
2261      ".mws-addtocart",
2262      'form[action="/cart/add"] [name="add"]',
2263      ".product-form__add-button",
2264      ".buy-buttons .button",
2265      "gp-product-button button",
2266      "#addToCartButton",
2267      ".product-buy-buttons--primary button",
2268      'form[action="/cart/add"] .add_to_cart',
2269      ".f8pr-button button",
2270      'form[action="/cart/add"] .product-form__payment-container .product-form__add-button',
2271    ],
2272    "price": [
2273      "form .title-row .product-price .theme-money",
2274      ".product__container div .product__section .product__details .product__price span .current_price .money",
2275      ".template-product .page-body-content .section-product .product-details-wrapper .price .money",
2276      "#product-id-product-template > div .relative-product-template > div .content-height-product-template > div .twelve .offers #price-product-template",
2277      ".shopify-section .product-template__container .grid .grid__item .product-single__meta .product-single__price .product-price__price #ProductPrice-product-template",
2278      ".product-page--main-content .product-page--cart-form-block .prices div p .actual-price",
2279      ".product-detail__detail > div .product-detail__title-area .product-detail__price span .theme-money",
2280      ".form__inner__wrapper .form__width .product__title__wrapper .product__price span",
2281      ".template-product .page-container .main-content .item .info .price .money span",
2282      ".row.light-space-above .product-details .product-section .product-price .current-price",
2283      ".page-wrapper .product-wrapper .product-options .product-price .money:first-child",
2284      ".max-site-width .lg--up--seven-eighths .grid .grid__item:nth-child(2) .wd--pt3 .mt3 div #AddToCartForm--product .shopify-product-form",
2285      ".item .right div #productPrice-product-template .money",
2286      ".main-content > div .grid .product-aside .purchase-box .product-form .shopify-product-form .price #ProductPrice-product-template",
2287      ".product-form .product-add-to-cart .product-price .product-price-minimum",
2288      ".wrapper .grid .grid__item .product-page--form .f--main .ProductPrice:first-child",
2289      ".row .product-shop .prices .price .money",
2290      ".product-shop div #add-to-cart-form .prices .price",
2291      ".product-main .product-details .product-pricing .product--price .price--main .money",
2292      "#add-to-cart-form .product-page--pricing .product-page--pricing--variant-price #price-field .money",
2293      ".grid .grid__item.five-twelfths .product-price span .theme-money",
2294      ".product-page #product-right #product-description div .product-prices .product-price",
2295      ".product-sticky-wrapper .product-details-wrapper .product-details--form-wrapper #AddToCartForm #ProductPrice .money",
2296      ".product.container .inner .product__details.clearfix .product__meta.product__meta--mobile .product__prices .product__price:not(.product__price--old):not(.product__price--new)",
2297      ".desktop-flex-wrapper > div .mobile-hidden-sm .product-item-caption-header .product-item-caption-price #ProductPrice-product-template .money",
2298      ".product-details-wrapper .product-details .product-price .product-price-minimum",
2299      ".product-menu .product-menu-buttons .product-menu-buttons-content .product-menu-buttons-addtocart .product-menu-button .money",
2300      ".product-details .product-price .money:last-child",
2301      ".main-content #shopify-section-product-template .product-section .page-content--product .page-width .grid .grid__item .product-single__meta .product__price .money:first-child",
2302      ".shopify-product-form .medium-down--text-center .medium-down--text-center",
2303      ".product__details .inner .grid .product__info .product-meta .product-meta__prices .product-meta__price",
2304      "#shopify-section-product-page .product-page .product-content .product-header .product-price .productPrice",
2305      ".section-product .grid .product-info .priceWrapper #ProductPrice",
2306      ".module-product .product-wrap .product-details .product-price .price .money:first-child",
2307      "#shopify-section-product .product-page--main .product-page--info-box--container .product-page--cart-form .shopify-product-form .product-page--price span",
2308      ".section-product-template .form-vertical .product-template__container .js-prod-price span",
2309      "#productTop .grid .productInfo .price #ProductPrice",
2310      ".shopify-product-form .product-page--cart-container .product-page--cart--column-a .price .actual-price",
2311      ".shopify-section > div .product-container .product-info .inner .majorinfo .pricearea .current-price",
2312      ".product .product_section .product__description .current_price  .money span",
2313      ".product-info .product-info--wrapper .block .product-price .product-normal-price .money",
2314      "#AddToCartForm #product-price .product-price .money",
2315      ".shopify-product-form .product-submit .product-price .product-price-minimum",
2316      ".grid__item .product-form #ProductPrice",
2317      ".product .product-template-section .main-wrapper div.sixteen:last-child > div:first-child .modal_price .current_price .money span",
2318      "#shopify-section-product #ProductSection-product .product-single #productInfo-product .text-center .product__price .money #ProductPrice-product .money span",
2319      ".product-page-area .product-essential .row .product-shop .product-shop-wrapper .product-type-data .price-box .detail-price .price .money",
2320      ".Product__Wrapper .Product__InfoWrapper .Product__Info .Container .ProductForm .ProductForm__AddToCart span:last-child",
2321      ".Product__Wrapper .Product__InfoWrapper .Product__Info .Container .ProductMeta .ProductMeta__PriceList .ProductMeta__Price",
2322      "#shopify-section-product-template .pricing .price span",
2323      ".product-main-content .product-header-desktop .product-price .price-main",
2324      ".product .product-header-mobile .product-price .price-main",
2325      ".section .six.columns .modal_price span .current_price .money:first-child",
2326      ".product_section.product_images_position--left .seven.columns.omega p.modal_price span:nth-child(1) .money",
2327      ".form__inner__wrapper .form__width .product__title__wrapper .product__price span",
2328      ".shopify-section > div .shopify-product-form .desc_blk .desc_blk_bot .price .money",
2329      "#section-product .site-box .site-box-content .price .product-price",
2330      ".main-content #shopify-section-module-product .product-details-inline .product-details .product-price .price .money",
2331      ".product__form__wrapper > div .product__title__wrapper .product__price span",
2332      "#shopify-section-product-template div .product-details .product-price-wrap #productPrice-product-template .price-money .money",
2333      ".product-detail .detail .price-area .theme-money .money:first-child",
2334      ".product #content #product-description #AddToCartForm .product-price .money span",
2335      ".grid__cell .product__details .product__meta .product__prices .product__price",
2336      ".product-template .main div div div .js-product_section div .modal_price span .current_price .money:first-child",
2337      ".product-top #product-description div .shopify-product-form #product-price .product-price",
2338      ".section--product-single > div .product-single__bottom > div .js-cart-replace > div .js-product-price-number .product-single__price-number .money",
2339      ".product-info-outer .col-sm-12 .row .product-info div:nth-child(3) .product-info__price .price-box__new .money",
2340      ".page-container .product__price .price:not(.price--on-sale) .price__pricing-group .price__regular .price-item.price-item--regular",
2341      ".page-container .product__price .price--on-sale .price__pricing-group .price__sale .price-item.price-item--sale",
2342      ".page-container .product-single__price",
2343      ".product__content .price .price__pricing-group .price__regular .price-item--regular:first-child",
2344      "#shopify-section-product-template .Product__Wrapper .ProductMeta .ProductMeta__PriceList .ProductMeta__Price",
2345      ".product__content .product__price .product__current-price",
2346      ".product-wrapper #ProductPrice",
2347      ".product-single .product__price .price__regular .price-item--regular",
2348      ".page-margin--product [data-form-wrapper] [data-price-wrapper] [data-product-price]",
2349      "#shopify-section-product-template .product-single__meta .product-single__prices .product-single__price",
2350      ".product:first-child .price-review .price_range",
2351      ".modal_price span .current_price .money",
2352      "product-price .price",
2353      ".mws-price",
2354      "product-info .price--on-sale .price__sale .price-item--sale",
2355      "product-info .price__container .price__regular .price-item--regular",
2356      ".price-container .price__current",
2357      ".product__price .price__current--on-sale",
2358      ".price--highlight",
2359      ".product-page-price .price__current .money",
2360      ".prices .price",
2361      ".total-price .total-money",
2362      ".product__price__main .product__price",
2363      ".product-template .money[data-price]",
2364      ".price-list .price",
2365      "gp-product-price",
2366      ".product-price--wrapper .product-price--original",
2367      ".price--on-sale .price-item--sale",
2368      ".product__price [data-price]",
2369      ".yv-main-product-detail .yv-prizebox .yv-product-price",
2370      ".product-info__price .price .price__default .price__current",
2371      ".t4s-product__price-review .t4s-product-price .money",
2372      ".product-form__info-content .price-list .price--highlight",
2373    ],
2374    "compare_price": [
2375      ".page-container .product__price .price--on-sale .price__pricing-group .price__sale .price-item.price-item--regular",
2376      ".product-single .product__price .price__sale .price-item--sale",
2377      "product-price .compare-at-price",
2378      ".mws-compare",
2379      "product-info .price--on-sale .price__sale .price-item--regular",
2380      ".product__price .price__compare-at .price__compare-at--single",
2381      ".price--compare",
2382      ".product-page-price .price__compare-at .money",
2383      ".price--on-sale .price-item--regular",
2384    ],
2385    "cart_properties": [
2386      ".cart-popup-wrapper .cart-popup-item .product-details .product-details__item",
2387      ".cart .cart__row .cart__meta .product-details .product-details__item",
2388      ".has-popup-tab .popup-tab .detail .item .detail .variant",
2389      "#main #cartform .cart-list .item .col-desc .text .title",
2390      ".topBar__miniCart #mini_cart_form .cart_items .miniCart__item .miniCart__itemDetails",
2391      "#cart_form .container .cart__itemList .cart__card .cart__info .cart__text .meta",
2392      ".cart-mini-sidebar .cart-mini-content .cart-mini-item .cart-mini-item-row .cart-mini-item-variant",
2393      ".template-cart .section-cart .cart .cart-table tbody .table-row .product-item .variant",
2394      ".container.clearfix > div .twelve .twelve .cart-table.bottompad .item-row .item-details .three h6",
2395      ".cart .grid table tbody td.cart__meta .list-view-item__title",
2396      ".block-cart .mini-products-list:first-child .grid .product-details .pName",
2397      ".recently-added table tbody tr .cart-detail h2",
2398      ".custom .row .columns .cart-table tbody tr .title p",
2399      ".cart-summary .cart-summary__product:first-child .cart-summary__product__description .cart-summary__product__variants",
2400      "form .cart-items .description .description__variant:last-child",
2401      "#CartForm #CartOuter table tbody .item .desc a",
2402      "#your-shopping-cart .page-container .main-content .item .product .subtitle",
2403      "#cart-summary .inner .cart-summary-item-list .cart-summary-item .title-variant .variant",
2404      "#cartform .cart-items .item .description .variant",
2405      ".cart-form .cart-content > div .cart-item-wrapper .cart-item .cart-item-info-wrapper .cart-item-options ul li:nth-last-child(2)",
2406      ".ajaxcart .max-width--4 .cart .cart__row.mt3 .grid:last-child .grid__item.three-quarters .pl2 .table.full--w",
2407      "form .cart .cart__row:nth-child(2) .grid:last-child .grid__item.three-quarters .pl2 .table.full--w",
2408      ".ajaxcart .items .item .right .description:last-child",
2409      ".cart .items .item .right .description:last-child",
2410      ".cart-preview .product-container .product figure figcaption",
2411      ".cart-form .cart-items .cart-item .grid .cart-item-product .cart-item-title",
2412      "#cart-form table tbody .cart-row .cart-detail a",
2413      ".ajaxcart .ajaxcart__inner .ajaxcart__product .ajaxcart__row .grid .grid__item.grid__item.three-quarters .mb1 ",
2414      ".cart .cart-table tbody .cart__row td:first-child .cart__info .product-grid-title",
2415      ".halo-modal-body .cart-popup-content .cart-form .scroll-content .cart_items .cart-list li .cart-title .product-name",
2416      "#dropdown-cart .has-items .mini-products-list .item .product-details .product-name",
2417      ".cart-form .cart_items .cart-list li .details .cart-details .product-name",
2418      ".shopify-section form .wrapper-cart .cart-list li .product-details p.size",
2419      "#dropdown-cart .has-items .mini-products-list .item .product-details .product-name a",
2420      "#shopify-section-static-cart form .cartitems--container .cartitems .cart-item .cart-item--inner .cart-item--content .cart-item--content-title",
2421      ".atc-banner--container .atc-banner--outer .atc-banner--inner .atc-banner--product .atc--product .atc--product-details .atc--product-details--title",
2422      "#cartform .cart-table tbody .cart-table-title .cart__meta-text",
2423      ".standard-page form .cart-items.row > div .cart-item .cart-column--detail .cart-column--title-and-price .cart-variant",
2424      ".ajaxcart .ajaxcart__inner .ajaxcart__product .ajaxcart.row .desktop-8.tablet-4 p .ajaxcart__product-meta",
2425      "#cartform table tbody tr .cart-item .cart-title p",
2426      "#CartDrawer #CartContainer .ajaxcart .ajaxcart__product .ajaxcart__row .ajaxcart__product-meta",
2427      "#your-shopping-cart #PageContainer .cart .cart-table .cart__row td:nth-child(2) small",
2428      ".cart__form .cart__table .cart__items .cart__item .cart-item__left .cart-item__title",
2429      ".modal-cart-form table.table-shopping-cart tbody .cart-line-item .table-shopping-cart-img .table-shopping-cart-item",
2430      ".main-cart-form table.table-shopping-cart tbody .cart-line-item .table-shopping-cart-img .table-shopping-cart-item",
2431      ".cart-form .cart-items tbody tr.cart-item .product-item .product-item-details .cart-variant",
2432      ".site-main #shopify-section-static-cart .cart-form .cart-items .cart-item .cart-item-column-2 .cart-item-title",
2433      ".ajaxcart .drawer__inner .ajaxcart__product .ajaxcart__row .grid:first-child .grid__item.grid__item.two-thirds .ajaxcart__product-name--wrapper .ajaxcart__product-meta",
2434      ".cart .cart__row:nth-child(2) .grid.cart__row--table-large .grid__item:first-child .grid .grid__item.three-quarters .cart__product-meta:first-child",
2435      ".cart .ajaxcart__inner .ajaxcart__product .ajaxcart__row > div .grid__item:nth-child(2) .display-table-cell p .ajaxcart__product-title",
2436      "form.cart .cart__row:nth-child(3) .grid--full.cart__row--table-large .grid__item:first-child .grid .grid__item:nth-child(2) a",
2437      ".mini-cart .mini-cart__content .mini-cart__full .mini-cart__items .mini-cart__item .product-meta .product-meta__title",
2438      "form table tbody tr td.cart-item__info .cart-item__variant",
2439      "form .cart--mobile .cart__items .cart-item .cart-item__right .cart-item__title",
2440      "#cart-form .cart-row .content > div h3",
2441      ".cart .cart-table tbody tr.cart__row td:first-child .cart__info .product-grid-title",
2442      "form .cart-items-container .cart-items tbody tr.cart-item .cart-item-product-wrap .cart-variant",
2443      ".modal--window .modal--container form .variant-id .title a",
2444      ".template--cart .layout--main-content form .content .variant-id .title a",
2445      ".template-cart .cart .cart-product-info-wrapper .cart-product-info-wrapper .cart-price-wrapper + p",
2446      ".header-cart .header-cart-items .header-cart-item .header-cart-item-info .header-cart-item-options span:first-child",
2447      ".grid #cartForm .cartRow li:nth-child(2) a",
2448      ".modal--container .fw--cart form .content .variant-id .right-column .title",
2449      ".panel div form .content .variant-id .right-column .title",
2450      ".shopify-section .reading-container #cartform ul li .desc .name",
2451      ".cart #shopify-section-cart-template  #cart_form ul li .title_column p a",
2452      ".container-wrap .container #Cart form .cart-table #CartItems .line-item .cart-product-desc a",
2453      ".cartContainer .scroll #Cart form .cart-table #CartItems .line-item .cart-product-desc a",
2454      ".ajaxcart .ajaxcart__inner .ajaxcart__product .ajaxcart.row .desktop-8.tablet-4 p:first-child",
2455      "#shopping-cart #cartform .desktop-8.tablet-6 .cart-title h4",
2456      "form .cart-items tbody .cart-item .cart-item-product .cart-item-title a",
2457      ".ajaxcart .ajaxcart__inner .ajaxcart__product .ajaxcart__row .grid .grid__item:nth-child(2) p .ajaxcart__product-name",
2458      ".cart.table-wrap .cart-table tbody .cart__row td:nth-child(3) a",
2459      ".mm-panels .mm-opened .cart_item .item_info",
2460      ".cart #content_wrapper .main #cart_form .cart_items .omega > p:first-child",
2461      ".ajaxcart__content .cart__body .cart__row:not(:first-child) .cart__item__title p",
2462      ".template-cart .cartForm .cart__body .cart__row .cart__item__title p",
2463      ".cart-wrapper .cart-inner > div .cart-content .clearfix .item-cart .product-details .product-name",
2464      ".cart div .cart-table-wrap .data-table tbody tr .product-name-td .product-name",
2465      ".PageContent > .Cart > .Cart__ItemList > .CartItem > .CartItem__Info > .CartItem__Meta",
2466      ".Drawer__Container .CartItem > .CartItem__Info > .CartItem__Title",
2467      "#shopify-section-cart-template .cart .line-items .line-item .variant-title",
2468      ".static-cart-wrapper .cart .cart-container .cart-container-scrollable .cart-items .cart-item-row .cart-item-col-product .cart-item-column-slide .cart-item-details .cart-item-product-title",
2469      "#site-header-drawer-cart .cart-mini .cart-container .cart-container-scrollable .cart-items .cart-item-row .cart-item-col-product .cart-item-column-slide .cart-item-details .cart-item-product-title",
2470      ".fancybox-skin > div .container .cart_notification_content p:first-child",
2471      "#cart_form ul li .title_column .meta",
2472      "#cart .mm-panels .mm-panel ul.mm-listview .cart_item a .item_info",
2473      "#cart_form .section .cart_items .five.columns.omega p:first-child",
2474      "#cartform .cart-list .item.clearfix .col-desc .text .title",
2475      ".cart_menu form .cart_row ul:not(:first-child) li:nth-child(2) p",
2476      ".cart_tbl form .con_row ul li:nth-child(2) p",
2477      "#site-cart .site-nav-container-last .top .cart .cart-items .cart-item .content .title",
2478      ".site-box-content .cart .cart-items .cart-item .content .title",
2479      "#shopify-section-template-cart form table.cart-items tbody tr.cart-item .cart-item-product .cart
2479-item-product-wrap .cart-variant",
2480      ".cartForm .cart__body .cart__row:last-child .cart__row--table-large:first-child > div .cart__description__wrapper .cart__description a:first-child",
2481      "#cartform .cart-contents .clearfix .cart-col2 .short-desc",
2482      ".has-popup-tab .popup-tab .detail .item .detail .variant",
2483      "#main #cartform .cart-list .item .col-desc .text .title",
2484      "#ajaxifyCart .cart-form .ajaxifyCart--products .ajaxifyCart--product .large--two-thirds .three-quarters p",
2485      ".mini-cart .mini-cart__inner .mini-cart__items .mini-cart__item-wrapper .mini-cart__item .mini-cart-item__info .mini-cart-item__variant",
2486      ".container form .cart__items tbody tr.cart-item .cart-item__product .cart-item__info .cart-item__title",
2487      "#cart_form > div .cart_content_info h3",
2488      ".cart_container .cart_content form.js-cart_content__form .js-cart_items .cart_item .cart_item__title a",
2489      "#cartform table.desktop-9 tbody tr td .cart-item .cart-title p:last-child",
2490      ".ajaxcart__form .ajaxcart__inner .ajaxcart__products .ajaxcart__product .ajaxcart__row > div .o-layout__item:nth-child(2) .ajaxcart__product-meta",
2491      ".cart-form .cart__products .cart__product .cart__row > div .o-layout__item:nth-child(2) .cart__product-meta",
2492      ".container-widget .shopping-cart-table tbody tr td:nth-child(2) .shopping-cart-table__product-name",
2493    ],
2494    "cart_line_remove": [
2495      '.cart-items__quantity .cart-items__remove',
2496      'a[href*="quantity=0"]'
2497    ],
2498    "cart_line_qty": [
2499      "tr.cart-items__table-row > td.cart-items__quantity",
2500      "quantity-popover",
2501      "cart-item-quantity",
2502      ".cart-items__quantity quantity-selector-component input",
2503      "td.cart-item__quantity",
2504      '[name="updates[]"]'
2505    ],
2506    "cart_count": [
2507      ".cart-bubble__text-count",
2508      "#cart-icon-bubble .cart-count-bubble span[aria-hidden]"
2509    ],
2510    "product_qty": [
2511      "form .row.clearfix .column.full:last-child .product-form .quadd-wrapper .quantity-area .quantity",
2512      ".product_form .shopify-product-form .productForm__quantity .productForm__quantityInput",
2513      "#add-item-form-product-template .purchase-section div.four:first-child .quantity .item-qty",
2514      ".product-form .product-action .product-form__item--quantity .wrapQtyBtn .qtyField .product-form__input",
2515      ".shopify-product-form .quanity-cart-row .quantity #quantity",
2516      ".product-form .product-detail__quantity-row .input-wrapper .quantity-proxy",
2517      ".product-form .quantity-selector .js-qty__num",
2518      ".product-form .payment-and-quantity--with-quantity .quantity .select-on-focus",
2519      ".shopify-product-form .product-quantity .form-label .form-input",
2520      ".shopify-product-form .items--center .js-qty-wrapper .js-qty .relative .js-qty__num",
2521      ".main-content > div .grid .product-aside .purchase-box .product-form .shopify-product-form .variant > div .input-wrapper .quantity",
2522      ".product-form .product-add-to-cart .product-quantity .quantity-field",
2523      ".shopify-product-form .js-qty .js-qty__controls .table .full--w .js-qty__num:first-child",
2524      ".shopify-product-form .quantity .qty-group input:first-child",
2525      ".product-shop div #add-to-cart-form #quantity",
2526      ".product-form--alt div form .product-form--atc .product-form--atc-qty .form-field--qty-select .form-field-select-wrapper select.form-field-input",
2527      ".product-form div:nth-child(1) .select2-container .selection .select2-selection .select2-selection__rendered",
2528      ".product_form #product-add .js-qty .js-qty__num",
2529      ".product-sticky-wrapper .product-details-wrapper .product-details--form-wrapper #AddToCartForm .js-qty #Quantity",
2530      ".product__form .product__buy .form__control .product__quantity:first-child",
2531      ".shopify-product-form .row .product-form__item #Quantity-product-template",
2532      ".shopify-product-form .product-options .product-option-quantity",
2533      ".product-menu .product-menu-buttons .product-menu-buttons-content .product-menu-buttons-addtocart .product-menu-quantity .quantity-input",
2534      ".shopify-product-form .product-selectors .quantity-selector:last-child",
2535      ".product__form .product__buy .product__quantity input",
2536      ".shopify-product-form .buttons-holder .quantity-selector",
2537      ".AddToCartForm .quantity-wrapper .js-qty .js-qty__num",
2538      ".product-form .product-form-nav .product-quantity .number-input-field #quantity",
2539      ".section-product-template .form-vertical .product-template__container .product-details .quantity-selector .qty",
2540      ".product-form .productoptions .with-payment-button div .quantity",
2541      ".product .product_section .product__description .product_form .shopify-product-form .purchase-details .quantity",
2542      "#AddToCartForm .product-add .js-qty .js-qty__num",
2543      ".grid__item .product-form .variants-wrapper .qtydiv .quantity-input",
2544      "#shopify-section-product #ProductSection-product .product-single #productInfo-product .shopify-product-form .quantity-selector__wrapper .QuantityInput",
2545      ".product-form .product-options-bottom .add-to-cart-box .input-box .quantity-selector",
2546      ".ProductForm .ProductForm__Variants .ProductForm__QuantitySelector .QuantitySelector .QuantitySelector__CurrentQuantity",
2547      "#shopify-section-product-template .shopify-product-form #quantity",
2548      ".product-form > div .product-form-atc .form-element-wrapper .form-element-quantity-submit .form-element",
2549      ".shopify-product-form .purchase-details .purchase-details__quantity .quantity:first-child",
2550      ".feedback-go_to_cart .cf .product-detail__form__options .quantity-wrapper #quantity",
2551      ".shopify-section > div .shopify-product-form .desc_blk .desc_blk_bot .product-page-qty .txtbox",
2552      ".shopify-product-form .cart-functions .quantity-selector-holder .quantity-selector",
2553      ".shopify-product-form .input-wrapper .product-quantity-container .product-quantity-input",
2554      ".shopify-product-form .product__submit .js-qty .js-qty__num",
2555      ".shopify-product-form .quick-actions .qty-field input",
2556      "form .quantity-submit-row .quantity-submit-row__quantity #quantity",
2557      ".grid__cell .product__details .product__form .form__control .quantity-selector .quantity-selector__current-quantity",
2558      ".shopify-product-form .purchase-details .purchase-details__quantity .quantity:first-child",
2559      ".shopify-product-form .quantity-selector .quantity",
2560      ".js-product-form .product-single__qty .product-single__qty-input .js-qty .js-qty__num",
2561      "#add-item-form .wrapper .pull-left:nth-child(2) .qty-input",
2562      'form[action="/cart/add"] [name="quantity"]',
2563      'quantity-input .quantity__input',
2564      "quantity-selector-component input",
2565      ".quantity__input",
2566      ".quantity-selector__input",
2567    ],
2568    "shopify_variants": [
2569      'form[action="/cart/add"] [name="id"]',
2570    ],
2571    "visible_variants": [
2572      'form[action="/cart/add"] .product-form__controls-group select.single-option-selector',
2573      'form[action="/cart/add"] .variant-wrapper select.single-option-selector-product-template',
2574      ".no-js-hidden .product-form__input label",
2575      ".variant-picker__form .variant-option .variant-option__button-label",
2576      ".block-swatch-list .block-swatch .label",
2577      "variant-selects .product-form__input label",
2578      ".swatch-element label",
2579      ".variant-picker__option-values input",
2580      ".block-swatch-list .block-swatch",
2581    ],
2582    "buy_it_now": [
2583      ".shopify-payment-button"
2584    ],
2585    "place_options": [
2586      ".mws-options"
2587    ],
2588    "sticky_add_to_cart": [
2589      ".hdt-sticky-atc__submit",
2590      "#product-sticky-add-to-cart",
2591      "#t4s-sticky-atc__atc",
2592      ".t4s-sticky-atc__atc",
2593      "form[id^='sticky-addcart-form-template'] .product-form__buttons .product-form__submit",
2594      "[data-sticky-addtocart] .t4s-sticky-atc__atc",
2595      ".footbar-product .footbar-product__controls .footbar-product__button-add-to-cart .btn--status",
2596      "form[id^='product-sticky-form-template'] .product-form__buttons .product__add__cart__button .button",
2597      ".tt-fixed-product-wrapper .col-item .btn",
2598      ".fkt-cart-plus.add_to_cart_button.addItemAjax",
2599      "#satcb_bar .satcb_btn .product-form__submit",
2600      ".sticky-add-to-cart__button",
2601    ],
2602    "gallery_container": [
2603      ".product__modal-opener .product__media",
2604      "media-gallery .media-gallery__grid .product-media-container .product-media",
2605      "slideshow-container slideshow-slides slideshow-slide .product-media"
2606    ],
2607    "gallery_image": [
2608      ".product__modal-opener .product__media img",
2609      "media-gallery .media-gallery__grid .product-media-container .product-media img",
2610      "slideshow-container slideshow-slides slideshow-slide .product-media img"
2611    ],
2612  };
2613</script>
2613
2614
2615<script>
2616
2617</script>
2617
2618
2619<script type="application/json" id="mwsApoInventoryVariants">
2620  
2621  
2622    {
2623    
2624    }
2625  
2626</script>
2626
2627
2628<script type="application/json" id="mwsApoProduct">
2629  
2630  
2631    null
2632  
2633</script>
2633
2634
2635<script>
2636  (function() {
2637    const config = {"cache_hash":"1524da3b9257485e8bead43c58aaceec","settings":{"currency_format":"amount","selectors":{"place_options":"","add_to_cart":".product-form__buttons .product-form__submit","sticky_add_to_cart":"","quantity":" .product-form__quantity .quantity .quantity__input","price":".product__info-container .price__regular .price-item.price-item--regular , .product__info-wrapper .price__sale .price-item--sale ","compare_price":"","gallery_container":".product__media ","gallery_image":".product__media img","variants":"","visible_variants":"","form":"","buy_it_now":"","lines":"","line_quantity":"","line_remove":"","cart_count":"","own_variants":""},"translations":{"i18n_configure_link":"Edit Options","i18n_buy_again_link":"Buy again","i18n_buy_again_modal_submit_btn":"Add to cart","i18n_buy_again_reopen_error":"Your cart or options have changed. Refresh the cart and reopen Buy again.","i18n_buy_again_recovery_error":"Your cart has an unfinished update. Please refresh the cart and check your items before trying again.","i18n_buy_again_refresh_cart_btn":"Refresh cart","i18n_separator_title_value":",","i18n_separator_sku":"-","i18n_modal_cancel_btn":"Cancel","i18n_modal_submit_btn":"Submit","i18n_qty_label":"Qty: ","i18n_characters_left":"Characters left: ","i18n_per_character":"per character","i18n_default_select_title":"-- Please Select --","i18n_select_compare_at_title":"(Compare at: [compare_at_price])","i18n_allowed_extensions":"Allowed extensions: ","i18n_required_option_warning":"\"[option_name_or_option_title]\" is required","i18n_selection_limit_warning":"Selection limit, min=[option_limit_min]; max=[option_limit_max]","i18n_number_range_warning":"Number range, min=[option_range_min]; max=[option_range_max]","i18n_length_range_warning":"Length range, min=[option_length_min]; max=[option_length_max]","i18n_buy_now_button":"Buy now","i18n_reset_to_default":"Reset to defaults","i18n_not_available":"Not available","i18n_add_to_cart_error":"Sorry, we could not add this to your cart. Please try again.","i18n_phone_required_warning":"Please enter a number","i18n_phone_invalid_dial_code_warning":"Invalid dial code","i18n_phone_too_short_warning":"Too short","i18n_phone_too_long_warning":"Too long","i18n_phone_invalid_number_warning":"Invalid number","i18n_phone_optional_invalid_warning":"Please enter a valid phone number or clear the field","i18n_cta_bundle_title":"","i18n_custom_price_label":"Total:","i18n_file_upload_select_files":"Select files","i18n_file_upload_or_drop_here":"Or drop here","i18n_file_upload_per_file":"per file","i18n_min_files_to_upload_warning":"Min number of files to be uploaded: {{num}}","i18n_upload_below_files_warning":"Please upload below {{num}} file.","i18n_max_files_allowed_warning":"The max number of files allowed is {{num}}.","i18n_file_upload_limit_warning":"Upload limit: min:{{min}}; max:{{max}}","i18n_max_files_to_upload_warning":"Max number of files to be uploaded: {{num}}","i18n_share_config_btn":"Share Configuration","i18n_share_config_copied":"Configuration link copied","i18n_share_config_error":"Could not copy share link"},"custom_css_mode":"on","custom_css":".mw-apo-configure-link {\n  color: black;\n  font-size: smaller;\n  position: absolute;\n  top: 5px;\n  white-space: nowrap;\n}\n\n.cart-item__media {\n  position: relative;\n}\n\n@media screen and (max-width: 749px) {\n  .mw-apo-configure-link {\ntop: 110px;\n  }\n}\n","custom_js_mode":"no","custom_js":"","beta_features":{"use_buy_now":"no","use_custom_select":"no","multi_currency":"no","multi_currency_warning":"The actual price in the cart may vary slightly due to conversion rate fluctuations","sync_inventory":null,"show_full_sku":"no","full_sku_placement":"above_options","full_sku_selector":""},"dev_settings":{"cart_request":"no","show_options_for_out_of_stock":"no","update_cart_ignore_form":"no","force_calc_set_qty":false,"extended_step_title":false,"skip_cart_child_validation":false,"report_cart_errors":false,"server_timing":false,"early_start":false},"i18n":null,"swatch_custom_style":{"enabled":false,"shape":"square","spacing":"12","corner_radius":"20","unselected_border":"1","selected_border":"2","unselected_border_color":"#C9CCCF","selected_border_color":"#0070C9","swatch_width":"40","swatch_height":"60","border_padding_size":"0","design_version":"base"},"button_custom_style":{"design_version":"base","button_height":"36","button_radius":"4","unselected_border":"2","unselected_border_color":"#C9CCCF","unselected_background_color":"#FFFFFF","unselected_text_color":"#202223","selected_border":"2","selected_border_color":"#0070C9","selected_background_color":"#FFFFFF","selected_text_color":"#202223"},"is_create_variant_cta":false,"store_front_token":"7c456caeca2b7d02e84001fdbfc5e444","wide_image_card_style":{"swatch_size":"30","border_padding":"10","swatch_radius":"4","card_radius":"4","button_background_color":"#121212","button_border_color":"#121212","button_text_color":"#FFFFFF","selected_button_background_color":"#FFFFFF","selected_button_border_color":"#121212","selected_button_text_color":"#121212","card_spacing":"12","card_border":"1","swatch_border":"1","card_border_color":"#C9CCCF","swatch_border_color":"#C9CCCF","card_background_color":"#FFFFFF","text_color":"#121212","link_color":"#005BD3","selected_card_border":"2","selected_swatch_border":"1","selected_card_border_color":"#121212","selected_swatch_border_color":"#C9CCCF","selected_card_background_color":"#FFFFFF","selected_text_color":"#121212","selected_link_color":"#005BD3"},"tile_card_style":{"corner_radius":"4","button_background_color":"#121212","tile_spacing":"12","card_border":"1","card_background_color":"#FFFFFF","card_border_color":"#C9CCCF","text_color":"#121212","radio_button_border_color":"#C9CCCF","selected_card_border":"2","selected_card_background_color":"#FFFFFF","selected_card_border_color":"#121212","selected_text_color":"#121212","selected_radio_button_background_color":"#121212","selected_radio_button_tick_color":"#FFFFFF"},"modal_style":{"button_image_size":24,"button_image_radius":0,"button_border_padding":6,"button_text_size":14,"button_background_color":"#FFFFFF","button_border_color":"#121212","button_text_color":"#121212","button_radius":0,"button_border_size":1,"modal_background_color":"#FFFFFF","modal_title_color":"#121212","modal_close_icon_color":"#4A4A4A","modal_title_size":14,"modal_corner_radius":10,"link_text_color":"#121212","link_text_size":14,"link_image_size":24},"uses_option_visibility":false,"reset_to_default_enabled":false,"buy_again_enabled":false,"share_enabled":false,"share_default_state":"Copy custom product link","share_default_color":"#005BD3","share_success_state":"Custom product link copied","share_success_color":"#29845A","calendar_format":"m\/d\/Y","calendar_disable_mobile":"no","currency_html_format":"without_currency"}};
2638
2639    if (config.settings.button_custom_style && config.settings.button_custom_style.design_version === 'version-1') {
2640      const buttonSettings = config.settings.button_custom_style;
2641      const buttonRadius = Math.min(16, Math.max(0, Number(buttonSettings.button_radius) || 0));
2642      const styleEl = document.createElement('style');
2643      styleEl.setAttribute('data-mw-apo-button-custom-style', '');
2644      styleEl.textContent = `
2645        .mw-option--button-style-version-1 .mw-option__container {
2646          gap: 10px;
2647          margin-top: 0;
2648          margin-left: 0;
2649          align-items: flex-start;
2650        }
2651
2652        .mw-option--button-style-version-1 .mw-option__value,
2653        .mw-option--button-style-version-1 .mw-option__value.mw-option__value--has-media,
2654        .mw-option--button-style-version-1 .mw-option__value.mw-option__value--has-media:first-child {
2655          margin-top: 0;
2656          margin-left: 0;
2657        }
2658
2659        .mw-option--button-style-version-1 .mw-option__button {
2660          --mw-apo-button-border-radius: ${buttonRadius}
2660px;
2661          --mw-apo-color-border: ${buttonSettings.unselected_border_color};
2662          --mw-apo-color-interactive: ${buttonSettings.selected_border_color};
2663          box-sizing: border-box;
2664          display: flex;
2665          align-items: center;
2666          min-height: ${buttonSettings.button_height}px;
2667          border-radius: var(--mw-apo-button-border-radius);
2668          border: ${buttonSettings.unselected_border}px solid var(--mw-apo-color-border);
2669          background-color: ${buttonSettings.unselected_background_color};
2670          color: ${buttonSettings.unselected_text_color};
2671        }
2672
2673        .mw-option--button-style-version-1 .mw-option__button .mw-text {
2674          color: inherit;
2675        }
2676
2677        .mw-option--button-style-version-1 .mw-option__control:checked + .mw-option__button,
2678        .mw-option--button-style-version-1 .mw-option__value--selected .mw-option__button {
2679          border: ${buttonSettings.selected_border}px solid var(--mw-apo-color-interactive);
2680          background-color: ${buttonSettings.selected_background_color};
2681          color: ${buttonSettings.selected_text_color};
2682          box-shadow: none;
2683        }
2684      `;
2685      document.body.appendChild(styleEl);
2686    }
2687
2688    if (['on', 'yes'].includes(config.settings.custom_css_mode) && config.settings.custom_css.length) {
2689      const styleEl = document.createElement('style');
2690      styleEl.innerHTML = config.settings.custom_css;
2691      document.body.appendChild(styleEl);
2692    }
2693
2694    // Merchant-supplied custom JS (gated, OFF by default). The code is wrapped in
2695    // a try/catch so a runtime error in it can never break the storefront page.
2696    if (['on', 'yes'].includes(config.settings.custom_js_mode) && config.settings.custom_js && config.settings.custom_js.length) {
2697      const runCustomJs = function() {
2698        if (window.__mwApoCustomJsInjected) return;
2699        window.__mwApoCustomJsInjected = true;
2700        const scriptEl = document.createElement('script');
2701        scriptEl.setAttribute('data-mw-apo-custom-js', '');
2702        scriptEl.textContent = 'try{' + config.settings.custom_js + '}catch(e){if(window.console&&console.error)console.error("[APO] custom JS error:",e);}';
2703        (document.body || document.head).appendChild(scriptEl);
2704      };
2705      if (document.readyState === 'complete') runCustomJs();
2706      else window.addEventListener('load', runCustomJs);
2707    }
2708
2709    if (config.settings.swatch_custom_style && config.settings.swatch_custom_style.enabled) {
2710      const des_settings = config.settings.swatch_custom_style;
2711      const borderPaddingSize = config.settings.swatch_custom_style.border_padding_size && Number(config.settings.swatch_custom_style.border_padding_size) > 0;
2712
2713      const borderRadius = config.settings.swatch_custom_style.shape !== 'circle' ? `${config.settings.swatch_custom_style.corner_radius}%` : '50%';
2714      const styleEl = document.createElement('style');
2715      const swatchStyles = `.mw-option__swatch-image--padding { border-radius: ${borderPaddingSize ? borderRadius : 'inherit'}; padding: ${`${borderPaddingSize ? config.settings.swatch_custom_style.border_padding_size : 0}px;`}} .mw-option__swatch-color--padding {border-radius: ${borderPaddingSize ? borderRadius: 'inherit'}; background-clip: padding-box; box-shadow: ${borderPaddingSize ? `inset 0px 0px 0px ${config.settings.swatch_custom_style.border_padding_size}px #fff;` : `none`}} .mw-option--type-swatch .mw-option__value, .mw-option--type-multiswatch .mw-option__value {margin-left: 0;} .mw-option--type-swatch .mw-option__container, .mw-option--type-multiswatch .mw-option__container { margin-left: 0; } .mw-option--type-swatch .mw-option__container, .mw-option--type-multiswatch .mw-option__container {column-gap: ${des_settings.spacing}px; row-gap: ${des_settings.spacing}px; } .mw-option__value .mw-stack__item .mw-option__swatch-media.mw-option__swatch-media--swatch-custom-style {border: ${des_settings.unselected_border}px solid ${des_settings.unselected_border_color}; border-radius: ${borderRadius}} .mw-option__value.mw-option__value--selected .mw-stack__item .mw-option__swatch-media.mw-option__swatch-media--swatch-custom-style {box-shadow: none; border: ${des_settings.selected_border}px solid ${des_settings.selected_border_color}; border-radius: ${borderRadius}}`;
2716      styleEl.innerHTML = swatchStyles;
2717      document.body.appendChild(styleEl);
2718    }
2719
2720    if (config.settings.wide_image_card_style) {
2721        const des_settings = config.settings.wide_image_card_style;
2722        const borderRadius = `${des_settings.card_radius}px`;
2723        const padding = `${des_settings.border_padding}px`;
2724        const selectedColorLink = des_settings.selected_link_color;
2725        const colorLink = des_settings.link_color;
2726
2727        const styleEl = document.createElement('style');
2728
2729        const сardStyles = `
2730          .mw-option--type-wideimagecard .mw-option__value .mw-label__c
2730ard-wrapper,
2731          .mw-option--type-multiwideimagecard .mw-option__value .mw-label__card-wrapper {
2732            display: flex;
2733            flex-direction: row;
2734            width: 100%;
2735            min-width: auto;
2736            border-radius: ${borderRadius};
2737            padding: ${padding};
2738            margin-left: 0;
2739          }
2740
2741          .mw-option--type-multiwideimagecard .mw-option__container, .mw-option--type-wideimagecard .mw-option__container {
2742            gap: ${des_settings.card_spacing}px;
2743          }
2744
2745          .mw-option--type-wideimagecard .mw-option__value .mw-stack--wide__media,
2746          .mw-option--type-multiwideimagecard .mw-option__value .mw-stack--wide__media {
2747            flex: 0 0 ${des_settings.swatch_size}%;
2748            aspect-ratio: 1 / 1;
2749            position: relative;
2750            overflow: hidden;
2751            border-radius: ${des_settings.swatch_radius}%;
2752            display: flex;
2753          }
2754
2755          .mw-option--type-wideimagecard .mw-option__value:not(.mw-option__value--selected),
2756          .mw-option--type-multiwideimagecard .mw-option__value:not(.mw-option__value--selected) {
2757            border-radius: ${borderRadius};
2758            border: ${des_settings.card_border}px solid ${des_settings.card_border_color};
2759            background-color: ${des_settings.card_background_color};
2760            color: ${des_settings.text_color};
2761          }
2762
2763          .mw-option--type-wideimagecard .mw-option__value:not(.mw-option__value--selected) .mw-stack--wide__media,
2764          .mw-option--type-multiwideimagecard .mw-option__value:not(.mw-option__value--selected) .mw-stack--wide__media {
2765            border: ${des_settings.swatch_border}px solid ${des_settings.swatch_border_color};
2766          }
2767
2768          .mw-option--type-wideimagecard .mw-option__value:not(.mw-option__value--selected) .mw-stack--wide__content-link a:-webkit-any-link,
2769          .mw-option--type-multiwideimagecard .mw-option__value:not(.mw-option__value--selected) .mw-stack--wide__content-link a:-webkit-any-link {
2770            color: ${colorLink};
2771          }
2772
2773          .mw-option--type-wideimagecard .mw-option__value.mw-option__value--selected .mw-stack--wide__content-link a:-webkit-any-link,
2774          .mw-option--type-multiwideimagecard .mw-option__value.mw-option__value--selected .mw-stack--wide__content-link a:-webkit-any-link {
2775            color: ${selectedColorLink};
2776          }
2777
2778          .mw-option--type-wideimagecard .mw-option__value.mw-option__value--selected,
2779          .mw-option--type-multiwideimagecard .mw-option__value.mw-option__value--selected {
2780            border-radius: ${borderRadius};
2781            border: ${des_settings.selected_card_border}px solid ${des_settings.selected_card_border_color};
2782            background-color: ${des_settings.selected_card_background_color};
2783            color: ${des_settings.selected_text_color};
2784          }
2785
2786          .mw-option--type-wideimagecard .mw-option__value.mw-option__value--selected .mw-stack--wide__media,
2787          .mw-option--type-multiwideimagecard .mw-option__value.mw-option__value--selected .mw-stack--wide__media {
2788            border: ${des_settings.selected_swatch_border}px solid ${des_settings.selected_swatch_border_color};
2789          }
2790
2791          .mw-option--type-wideimagecard .mw-stack--wide__content-button--select,
2792          .mw-option--type-multiwideimagecard .mw-stack--wide__content-button--select {
2793            color: ${des_settings.button_text_color};
2794            border: 1px solid ${des_settings.button_border_color};
2795            background: ${des_settings.button_background_color};
2796          }
2797
2798          .mw-option--type-wideimagecard .mw-option__value-qty--with-buttons,
2799          .mw-option--type-multiwideimagecard .mw-option__value-qty--with-buttons {
2800            border: 1px solid ${des_settings.button_border_color};
2801            background: ${des_settings.button_background_color};
2802          }
2803
2804          .mw-option--type-wideimagecard .mw-stack__item--qty .mw-option__value-qty-control,
2805          .mw-option--type-wideimagecard .mw-stack__item--qty .mw-option__value-qty-button,
2806          .mw-option--type-multiwideimagecard .mw-stack__item--qty .mw-option__value-qty-control,
2807          .mw-option--type-multiwideimagecard .mw-stack__item--qty .mw-option__value-qty-button {
2808            color: ${des_settings.button_text_color};
2809          }
2810
2811          .mw-option--type-wideimagecard .mw-stack--wide__content-button--unselect,
2812          .mw-option--type-multiwideimagecard .mw-stack--wide__content-button--unselect {
2813            color: ${des_settings.selected_button_text_color};
2814            border: 1px solid ${des_settings.selected_button_border_color};
2815            background: ${des_settings.selected_button_background_color};
2816          }
2817
2818          .mw-option--type-wideimagecard .mw-option__value--selected .mw-option__value-qty--with-buttons,
2819          .mw-option--type-multiwideimagecard .mw-option__value--selected .mw-option__value-qty--with-buttons {
2820            border: 1px solid ${des_settings.selected_button_border_color};
2821            background: ${des_settings.selected_button_background_color};
2822          }
2823
2824          .mw-option--type-wideimagecard .mw-option__value--selected .mw-stack__item--qty .mw-option__value-qty-control,
2825          .mw-option--type-wideimagecard .mw-option__value--selected .mw-stack__item--qty .mw-option__value-qty-button,
2826          .mw-option--type-multiwideimagecard .mw-option__value--selected .mw-stack__item--qty .mw-option__value-qty-control,
2827          .mw-option--type-multiwideimagecard .mw-option__value--selected .mw-stack__item--qty .mw-option__value-qty-button {
2828            color: ${des_settings.selected_button_text_color};
2829          }
2830        `;
2831
2832
2833      styleEl.innerHTML = сardStyles;
2834      document.body.appendChild(styleEl);
2835    }
2836
2837    if (config.settings.tile_card_style) {
2838      const tileSettings = config.settings.tile_card_style;
2839      const borderRadius = `${tileSettings.corner_radius}px`;
2840      const tileSpacing = `${tileSettings.tile_spacing}px`;
2841
2842      const styleEl = document.createElement('style');
2843
2844      styleEl.innerHTML = `
2845        .mw-option--type-choicetile .mw-option__container,
2846        .mw-option--type-multichoicetile .mw-option__container {
2847          gap: ${tileSpacing};
2848        }
2849
2850        .mw-option--type-choicetile .mw-option__container .mw-label__c
2850ard-wrapper,
2851        .mw-option--type-multichoicetile .mw-option__container .mw-label__card-wrapper,
2852        .mw-option--type-choicetile .mw-option__container .mw-apo-expand-button,
2853        .mw-option--type-multichoicetile .mw-option__container .mw-apo-expand-button {
2854          background-color: ${tileSettings.card_background_color};
2855          border: ${tileSettings.card_border}px solid ${tileSettings.card_border_color};
2856          color: ${tileSettings.text_color};
2857          border-radius: ${tileSettings.corner_radius}px;
2858        }
2859
2860        .mw-option--type-choicetile .mw-option__value--selected .mw-label__card-wrapper,
2861        .mw-option--type-multichoicetile .mw-option__value--selected .mw-label__card-wrapper {
2862          border: ${tileSettings.selected_card_border}px solid ${tileSettings.selected_card_border_color};
2863          background-color: ${tileSettings.selected_card_background_color};
2864          color: ${tileSettings.selected_text_color};
2865        }
2866
2867        .mw-option--type-choicetile .mw-stack--card__radio,
2868        .mw-option--type-multichoicetile .mw-stack--card__radio {
2869            border: 1px solid ${tileSettings.radio_button_border_color};
2870        }
2871
2872        .mw-option--type-choicetile .mw-option__value--selected .mw-stack--card__radio,
2873        .mw-option--type-multichoicetile .mw-option__value--selected .mw-stack--card__radio {
2874             background-color: ${tileSettings.selected_radio_button_background_color};
2875        }
2876
2877        .mw-option--type-choicetile .mw-option__value--selected .mw-stack--card__radio:after,
2878        .mw-option--type-multichoicetile .mw-option__value--selected .mw-stack--card__radio:after {
2879             border-color: ${tileSettings.selected_radio_button_tick_color};
2880        }
2881
2882        .mw-option--type-choicetile .mw-stack--card__title,
2883        .mw-option--type-multichoicetile .mw-stack--card__title {
2884          font-weight: 700;
2885          font-size: 14px;
2886          white-space: normal;
2887        }
2888
2889        .mw-option--type-choicetile .mw-stack--card__description,
2890        .mw-option--type-multichoicetile .mw-stack--card__description {
2891          font-size: 13px;
2892          opacity: 0.7;
2893          white-space: normal;
2894          overflow-wrap: break-word;
2895          word-break: break-word;
2896          line-height: 1.4;
2897        }
2898      `;
2899
2900      document.body.appendChild(styleEl);
2901    }
2902
2903
2904    const curr_loc = {"shop_locale":{"locale":"en","enabled":true,"primary":true,"published":true}};
2905
2906    const getSelectors = () => {
2907      return window.mwApoSelectors || {};
2908    };
2909
2910    // The product and the inventory map are already printed above, in the
2911    // #mwsApoProduct / #mwsApoInventoryVariants tags (entry.ts re-reads those
2912    // two on SPA navigation, so they have to stay). Printing them a second time
2913    // here doubled the weight of every product page: on a large catalogue the
2914    // product JSON alone is hundreds of KB, and gzip cannot dedupe the copies
2915    // because its 32 KB window does not reach that far back.
2916    const readInlineJson = (id) => {
2917      const el = document.getElementById(id);
2918      if (!el) return null;
2919      try {
2920        return JSON.parse(el.textContent);
2921      } catch (e) {
2922        if (window.console && console.error) console.error('[APO] bad inline JSON in #' + id, e);
2923        return null;
2924      }
2925    };
2926
2927    window.mwApoInit = window.mwApoInit || Object.assign({
2928      "version": "1.1",
2929      "product": readInlineJson('mwsApoProduct'),
2930      "mws_inventory": readInlineJson('mwsApoInventoryVariants') || {},
2931      "cart": {"note":null,"attributes":{},"original_total_price":0,"total_price":0,"total_discount":0,"total_weight":0.0,"item_count":0,"items":[],"requires_shipping":false,"currency":"USD","items_subtotal_price":0,"cart_level_discount_applications":[],"checkout_charge_amount":0},
2932      "template_name": "index",
2933      "shop_domain": "the-joinery-pdx.myshopify.com",
2934      "shop_domain_primary": "thejoinery.com",
2935      "shop_money_format": "${{amount}}",
2936      "shop_money_with_currency_format": "${{amount}} USD",
2937      "shop_currency": "USD",
2938      "locale": curr_loc && curr_loc["shop_locale"] ? curr_loc["shop_locale"]["locale"] : "",
2939      "locale_primary": curr_loc && curr_loc["shop_locale"] ? curr_loc["shop_locale"]["primary"] : "",
2940      "customer_tags": [],
2941      "market_id": 46055948576,
2942      "selectors": getSelectors()
2943      }, config);
2944  })();
2945</script>
2945
2946
2947<script>
2948  // Start the options request now instead of when the bundle gets to it: the
2949  // bundle only runs after the page is parsed and every deferred script above it
2950  // ran. The url is built the same way as loadOptions() in front/src/entry.ts
2951  // does it; the bundle uses this response only when its own url is identical,
2952  // otherwise it sends the request itself, so a mismatch costs one cached GET.
2953  (function() {
2954    try {
2955      var init = window.mwApoInit;
2956      var apiUrl = "https:\/\/apo-admin.mageworx.com\/front";
2957      if (!/^https?:\/\/[^\s<>"']+$/.test(apiUrl) || !window.fetch || !init || init.template_name !== 'product' || !init.product || !init.cache_hash) return;
2958
2959      var settings = init.settings || {};
2960      var devSettings = settings.dev_settings || {};
2961      var variantId = null;
2962      if (!variantId) return;
2963
2964      var variant = (init.product.variants || []).filter(function(v) { return String(v.id) === String(variantId); })[0];
2965      if (!variant || String(variant.title).indexOf('#MWS Options') !== -1) return;
2966      if (devSettings.show_options_for_out_of_stock === 'no' && !variant.available) return;
2967
2968      var toBase64Url = function(obj) {
2969        var bytes = new TextEncoder().encode(JSON.stringify(obj));
2970        return btoa(String.fromCharCode.apply(null, bytes)).replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
2971      };
2972
2973      // getMultiCurrencyObj() in front/src/utils/currency.ts
2974      var multiCurrency = null;
2975      var betaFeatures = settings.beta_features || {};
2976      var isCta = settings.is_create_variant_cta;
2977      var shopifyCurrency = window.Shopify && window.Shopify.currency;
2978      if ((betaFeatures.multi_currency && betaFeatures.multi_currency !== 'no') || isCta) {
2979        var currencyChanged = shopifyCurrency && init.shop_currency !== shopifyCurrency.active;
2980        if (isCta !== undefined || (currencyChanged && shopifyCurrency && shopifyCurrency.rate)) {
2981          var ctaMode = isCta !== undefined ? isCta : false;
2982          var rate = shopifyCurrency && shopifyCurrency.rate != null ? shopifyCurrency.rate : '';
2983          if (ctaMode || Number(rate) !== 1) {
2984            multiCurrency = {
2985              curr: shopifyCurrency && shopifyCurrency.active != null ? shopifyCurrency.active : '',
2986              curr_rate: rate,
2987              fmt_money: init.shop_money_format,
2988              fmt_money_curr: init.shop_money_with_currency_format
2989            };
2990          }
2991        }
2992      }
2993
2994      var url = apiUrl + '/product/' + init.shop_domain + '/' + String(init.cache_hash) + '/' + String(init.product.id) + '/' + String(variantId) + '.js';
2995      var params = new URLSearchParams();
2996      if (multiCurrency) params.append('curr_hash', toBase64Url(multiCurrency));
2997      if (!init.locale_primary && init.locale) params.append('locale', init.locale);
2998      if (settings.uses_option_visibility === true) {
2999        params.append('visibility_hash', toBase64Url({
3000          customer_tags: init.customer_tags != null ? init.customer_tags : [],
3001          market_id: init.market_id != null ? init.market_id : null
3002        }));
3003      }
3004      var query = params.toString();
3005      if (query) url += '?' + query;
3006
3007      var promise = fetch(url).then(function(response) {
3008        if (response.status === 204) return { status: 204, data: '' };
3009        if (!response.ok) throw new Error('APO options prefetch failed with status ' + response.status);
3010        return response.json().then(function(data) { return { status: response.status, data: data }; });
3011      });
3012      // The bundle falls back to its own request on failure; keep a rejection
3013      // that nobody consumed out of the console.
3014      promise.catch(function() {});
3015      window.mwApoOptionsPrefetch = { url: url, promise: promise };
3016    } catch (e) {
3017      if (window.console && console.warn) console.warn('[APO] options prefetch skipped', e);
3018    }
3019  })();
3020
3021  // Everything the bundle needs is on the page now; an early-started bundle waits for this.
3022  window.mwApoInitReady = true;
3023  document.dispatchEvent(new Event('mwApo:init-ready'));
3024</script>
3024
3025
3026
3027</div>
3027<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
3027
3028</body>
3029</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.