PageSourceSearch

https://printroom.co/

html printroom.co collected 2026-10-04 08:38:22 UTC 630,025 bytes, 11,356 lines download raw bytes

1<!doctype html><html class="no-js" lang="en">
2  <head>
3
4
5<script type="application/vnd.locksmith+json" data-locksmith>{"version":"v346","locked":false,"initialized":true,"scope":"index","access_granted":true,"access_denied":false,"requires_customer":false,"manual_lock":false,"remote_lock":false,"has_timeout":false,"remote_rendered":null,"hide_resource":false,"hide_links_to_resource":false,"hide_price":false,"hide_add_to_cart":false,"transparent":true,"locks":{"all":[],"opened":[]},"keys":[],"keys_signature":"a6111dc4847a5059d4622e3d27b184dd5cbae461b5d6fc459feab12efb47932d","state":{"template":"index","theme":151830298694,"product":null,"collection":null,"page":null,"blog":null,"article":null,"app":null},"now":1791103101,"path":"\/","locale_root_url":"\/","canonical_url":"https:\/\/printroom.co\/","customer_id":null,"customer_id_signature":"a6111dc4847a5059d4622e3d27b184dd5cbae461b5d6fc459feab12efb47932d","cart":null}</script>
5<script data-locksmith>!function(){undefined;!function(){var s=window.Locksmith={},e=document.querySelector('script[type="application/vnd.locksmith+json"]'),n=e&&e.innerHTML;if(s.state={},s.util={},s.loading=!1,n)try{s.state=JSON.parse(n)}catch(d){}if(document.addEventListener&&document.querySelector){var o,a,i,t=[76,79,67,75,83,77,73,84,72,49,49],c=function(){a=t.slice(0)},l="style",r=function(e){e&&27!==e.keyCode&&"click"!==e.type||(document.removeEventListener("keydown",r),document.removeEventListener("click",r),o&&document.body.removeChild(o),o=null)};c(),document.addEventListener("keyup",function(e){if(e.keyCode===a[0]){if(clearTimeout(i),a.shift(),0<a.length)return void(i=setTimeout(c,1e3));c(),r(),(o=document.createElement("div"))[l].width="50%",o[l].maxWidth="1000px",o[l].height="85%",o[l].border="1px rgba(0, 0, 0, 0.2) solid",o[l].background="rgba(255, 255, 255, 0.99)",o[l].borderRadius="4px",o[l].position="fixed",o[l].top="50%",o[l].left="50%",o[l].transform="translateY(-50%) translateX(-50%)",o[l].boxShadow="0 2px 5px rgba(0, 0, 0, 0.3), 0 0 100vh 100vw rgba(0, 0, 0, 0.5)",o[l].zIndex="2147483645";var t=document.createElement("textarea");t.value=JSON.stringify(JSON.parse(n),null,2),t[l].border="none",t[l].display="block",t[l].boxSizing="border-box",t[l].width="100%",t[l].height="100%",t[l].background="transparent",t[l].padding="22px",t[l].fontFamily="monospace",t[l].fontSize="14px",t[l].color="#333",t[l].resize="none",t[l].outline="none",t.readOnly=!0,o.appendChild(t),document.body.appendChild(o),t.addEventListener("click",function(e){e.stopImmediatePropagation()}),t.select(),document.addEventListener("keydown",r),document.addEventListener("click",r)}})}s.isEmbedded=-1!==window.location.search.indexOf("_ab=0&_fd=0&_sc=1"),s.path=s.state.path||window.location.pathname,s.basePath=s.state.locale_root_url.concat("/apps/locksmith").replace(/^\/\//,"/"),s.reloading=!1,s.util.console=window.console||{log:function(){},error:function(){}},s.util.makeUrl=function(e,t){var n,o=s.basePath+e,a=[],i=s.cache();for(n in i)a.push(n+"="+encodeURIComponent(i[n]));for(n in t)a.push(n+"="+encodeURIComponent(t[n]));return s.state.customer_id&&(a.push("customer_id="+encodeURIComponent(s.state.customer_id)),a.push("customer_id_signature="+encodeURIComponent(s.state.customer_id_signature))),o+=(-1===o.indexOf("?")?"?":"&")+a.join("&")},s._initializeCallbacks=[],s.on=function(e,t){if("initialize"!==e)throw'Locksmith.on() currently only supports the "initialize" event';s._initializeCallbacks.push(t)},s.initializeSession=function(e){if(!s.isEmbedded){var t=!1,n=!0,o=!0;(e=e||{}).silent&&(o=n=!(t=!0)),s.ping({silent:t,spinner:n,reload:o,callback:function(){s._initializeCallbacks.forEach(function(e){e()})}})}},s.cache=function(e){var t={};try{var n=function a(e){return(document.cookie.match("(^|; )"+e+"=([^;]*)")||0)[2]};t=JSON.parse(decodeURIComponent(n("locksmith-params")||"{}"))}catch(d){}if(e){for(var o in e)t[o]=e[o];document.cookie="locksmith-params=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/",document.cookie="locksmith-params="+encodeURIComponent(JSON.stringify(t))+"; path=/"}return t},s.cache.cart=s.state.cart,s.cache.cartLastSaved=null,s.params=s.cache(),s.util.reload=function(){s.reloading=!0;try{window.location.href=window.location.href.replace(/#.*/,"")}catch(d){s.util.console.error("Preferred reload method failed",d),window.location.reload()}},s.cache.saveCart=function(e){if(!s.cache.cart||s.cache.cart===s.cache.cartLastSaved)return e?e():null;var t=s.cache.cartLastSaved;s.cache.cartLastSaved=s.cache.cart,fetch("/cart/update.js",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({attributes:{locksmith:s.cache.cart}})}).then(function(e){if(!e.ok)throw new Error("Cart update failed: "+e.status);return e.json()}).then(function(){e&&e()})["catch"](function(e){if(s.cache.cartLastSaved=t,!s.reloading)throw e})},s.util.spinnerHTML='<style>body{background:#FFF}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}#loading{display:flex;width:100%;height:50vh;
5color:#777;align-items:center;justify-content:center}#loading .spinner{display:block;animation:spin 600ms linear infinite;position:relative;width:50px;height:50px}#loading .spinner-ring{stroke:currentColor;stroke-dasharray:100%;stroke-width:2px;stroke-linecap:round;fill:none}</style><div id="loading"><div class="spinner"><svg width="100%" height="100%"><svg preserveAspectRatio="xMinYMin"><circle class="spinner-ring" cx="50%" cy="50%" r="45%"></circle></svg></svg></div></div>',s.util.clobberBody=function(e){document.body.innerHTML=e},s.util.clobberDocument=function(e){e.responseText&&(e=e.responseText),document.documentElement&&document.removeChild(document.documentElement);var t=document.open("text/html","replace");t.writeln(e),t.close(),setTimeout(function(){var e=t.querySelector("[autofocus]");e&&e.focus()},100)},s.util.serializeForm=function(e){if(e&&"FORM"===e.nodeName){var t,n,o={};for(t=e.elements.length-1;0<=t;t-=1)if(""!==e.elements[t].name)switch(e.elements[t].nodeName){case"INPUT":switch(e.elements[t].type){default:case"text":case"hidden":case"password":case"button":case"reset":case"submit":o[e.elements[t].name]=e.elements[t].value;break;case"checkbox":case"radio":e.elements[t].checked&&(o[e.elements[t].name]=e.elements[t].value);break;case"file":}break;case"TEXTAREA":o[e.elements[t].name]=e.elements[t].value;break;case"SELECT":switch(e.elements[t].type){case"select-one":o[e.elements[t].name]=e.elements[t].value;break;case"select-multiple":for(n=e.elements[t].options.length-1;0<=n;n-=1)e.elements[t].options[n].selected&&(o[e.elements[t].name]=e.elements[t].options[n].value)}break;case"BUTTON":switch(e.elements[t].type){case"reset":case"submit":case"button":o[e.elements[t].name]=e.elements[t].value}}return o}},s.util.on=function(e,i,s,t){t=t||document;var c="locksmith-"+e+i,n=function(e){var t=e.target,n=e.target.parentElement,o=t&&t.className&&(t.className.baseVal||t.className)||"",a=n&&n.className&&(n.className.baseVal||n.className)||"";("string"==typeof o&&-1!==o.split(/\s+/).indexOf(i)||"string"==typeof a&&-1!==a.split(/\s+/).indexOf(i))&&!e[c]&&(e[c]=!0,s(e))};t.attachEvent?t.attachEvent(e,n):t.addEventListener(e,n,!1)},s.util.enableActions=function(e){s.util.on("click","locksmith-action",function(e){e.preventDefault();var t=e.target;t.dataset.confirmWith&&!confirm(t.dataset.confirmWith)||(t.disabled=!0,t.innerText=t.dataset.disableWith,s.post("/action",t.dataset.locksmithParams,{spinner:!1,type:"text",success:function(e){(e=JSON.parse(e.responseText)).message&&alert(e.message),s.util.reload()}}))},e)},s.util.inject=function(e,t){var n=["data","locksmith","append"];if(-1!==t.indexOf(n.join("-"))){var o=document.createElement("div");o.innerHTML=t,e.appendChild(o)}else e.innerHTML=t;var a,i,s=e.querySelectorAll("script");for(i=0;i<s.length;++i){a=s[i];var c=document.createElement("script");if(a.type&&(c.type=a.type),a.src)c.src=a.src;else{var l=document.createTextNode(a.innerHTML);c.appendChild(l)}e.appendChild(c)}var r=e.querySelector("[autofocus]");r&&r.focus()},s.post=function(e,t,n){!1!==(n=n||{}).spinner&&s.util.clobberBody(s.util.spinnerHTML);var o={};n.container===document?(o.layout=1,n.success=function(e){s.util.clobberDocument(e)}):n.container&&(o.layout=0,n.success=function(e){var t="string"==typeof n.container?document.getElementById(n.container):n.container;t&&(s.util.inject(t,e),t.id===t.firstChild.id&&t.parentElement.replaceChild(t.firstChild,t))}),n.form_type&&(t.form_type=n.form_type),n.include_layout_classes!==undefined&&(t.include_layout_classes=n.include_layout_classes),n.lock_id!==undefined&&(t.lock_id=n.lock_id),s.loading=!0;var a=s.util.makeUrl(e,o),i="json"===n.type||"text"===n.type;fetch(a,{method:"POST",headers:{"Content-Type":"application/json",Accept:i?"application/json":"text/html"},body:JSON.stringify(t)}).then(function(e){if(!e.ok)throw new Error("Request failed: "+e.status);return e.text()}).then(function(e){var t=n.success||s.util.clobberDocument;t(i?{responseText:e}:e)})["catch"](function(e){if(!s.reloading)if("dashboard.weglot.com"!==window.location.host){if(!n.silent)throw alert("Something went wrong! Please refresh and try again."),e;console.error(e)}else console.error(e)})["finally"](function(){s.loading=!1})},s.postResource=function(e,t){e.path=s.path,e.search=window.location.search,e.state=s.state,e.passcode&&(e.passcode=e.passcode.trim()),e.email&&(e.email=e.email.trim()),e.state.cart=s.cache.cart,e.locksmith_json=s.jsonTag,e.locksmith_json_signature=s.jsonTagSignature,s.post("/resource",e,t)},s.ping=function(t){if(!s.isEmbedded){t=t||{};var n=function(){t.reload?s.util.reload():"function"==typeof t.callback&&t.callback()};s.post("/ping",{path:s.path,search:window.location.search,state:s.state},{spinner:!!t.spinner,silent:"undefined"==typeof t.silent||t.silent,type:"text",success:function(e){e&&e.responseText?((e=JSON.parse(e.responseText)).messages&&0<e.messages.length&&s.showMessages(e.messages),e.cart&&s.cache.cart!==e.cart?(s.cache.cart=e.cart,s.cache.saveCart(function(){e.cart&&e.cart.match(/^.+:/)?(t.reload||"function"!=typeof t.callback||t.callback(),s.util.reload()):n()})):n()):console.error("[Locksmith] Invalid result in ping callback:",e)}})}},s.timeoutMonitor=function(){var e=s.cache.cart;s.ping({callback:function(){e!==s.cache.cart||setTimeout(function(){s.timeoutMonitor()},6e4)}})},s.showMessages=function(e){var t=document.createElement("div");t.style.position="fixed",t.style.left=0,t.style.right=0,t.style.bottom="-50px",t.style.opacity=0,t.style.background="#191919",t.style.color="#ddd",t.style.transition="bottom 0.2s, opacity 0.2s",t.style.zIndex=999999,t.innerHTML=["<style>","  .locksmith-ab .locksmith-b { display: none; }","  .locksmith-ab.toggled .locksmith-b { display: flex; }","  .locksmith-ab.toggled .locksmith-a { display: none; }","  .locksmith-flex { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; padding: 10px 20px; }","  .locksmith-message + .locksmith-message { border-top: 1px #555 solid; }","  .locksmith-message a { color: inherit; font-weight: bold; }","  .locksmith-message a:hover { color: inherit; opacity: 0.8; }","  a.locksmith-ab-toggle { font-weight: inherit; text-decoration: underline; }","  .locksmith-text { flex-grow: 1; }","  .locksmith-cta { flex-grow: 0; text-align: right; }","  .locksmith-cta button { transform: scale(0.8); transform-origin: left; }","  .locksmith-cta > * { display: block; }","  .locksmith-cta > * + * { margin-top: 10px; }","  .locksmith-message a.locksmith-close { flex-grow: 0; text-decoration: none; margin-left: 15px; font-size: 30px; font-family: monospace; display: block; padding: 2px 10px; }","  @media screen and (max-width: 600px) {","    .locksmith-wide-only { display: none !important; }","    .locksmith-flex { padding: 0 15px; }","    .locksmith-flex > * { margin-top: 5px; margin-bottom: 5px; }","    .locksmith-cta { text-align: left; }","  }","  @media screen and (min-width: 601px) {","    .locksmith-narrow-only { display: none !important; }","  }","</style>"].join("")+e.map(function(e){return'<div class="locksmith-message">'+e+"</div>"}).join(""),document.body.appendChild(t),document.body.style.position="relative",document.body.parentElement.style.paddingBottom=t.offsetHeight+"px",setTimeout(function(){t.style.bottom=0,t.style.opacity=1},50),s.util.on("click","locksmith-ab-toggle",function(e){e.preventDefault();for(var t=e.target.parentElement;-1===t.className.split(" ").indexOf("locksmith-ab");)t=t.parentElement;-1!==t.className.split(" ").indexOf("toggled")?t.className=t.className.replace("toggled",""):t.className=t.className+" toggled"}),s.util.enableActions(t)}}()}();</script>
5
6      
6<script data-locksmith>Locksmith.cache.cart=null</script>
6
7
8  
8<script data-locksmith>Locksmith.jsonTag="{\"version\":\"v346\",\"locked\":false,\"initialized\":true,\"scope\":\"index\",\"access_granted\":true,\"access_denied\":false,\"requires_customer\":false,\"manual_lock\":false,\"remote_lock\":false,\"has_timeout\":false,\"remote_rendered\":null,\"hide_resource\":false,\"hide_links_to_resource\":false,\"hide_price\":false,\"hide_add_to_cart\":false,\"transparent\":true,\"locks\":{\"all\":[],\"opened\":[]},\"keys\":[],\"keys_signature\":\"a6111dc4847a5059d4622e3d27b184dd5cbae461b5d6fc459feab12efb47932d\",\"state\":{\"template\":\"index\",\"theme\":151830298694,\"product\":null,\"collection\":null,\"page\":null,\"blog\":null,\"article\":null,\"app\":null},\"now\":1791103101,\"path\":\"\\\/\",\"locale_root_url\":\"\\\/\",\"canonical_url\":\"https:\\\/\\\/printroom.co\\\/\",\"customer_id\":null,\"customer_id_signature\":\"a6111dc4847a5059d4622e3d27b184dd5cbae461b5d6fc459feab12efb47932d\",\"cart\":null}";Locksmith.jsonTagSignature="176d87d0d7a683bcb5a8133c209a9ff2cf0e86e7a055c5fa4a3bdf556316073b"</script>
8
9<meta name="google-site-verification" content="r89mOlbEOfEjECOwEHOd5jrv5jGOJeGHPXM78LaGLXY" />
10    
11    <meta charset="utf-8">
12    <meta http-equiv="X-UA-Compatible" content="IE=edge">
13    <meta name="viewport" content="width=device-width,initial-scale=1">
14    <meta name="theme-color" content="">
15<script>
16    window.dataLayer = window.dataLayer || [];
17    window.dataLayer.push({
18      store_access: 'public',
19      store_type: 'main',
20      page_template: "index"
21    });
22    window.prTrackLead = window.prTrackLead || function (detail) {
23      try {
24        detail = detail || {};
25        var ud = detail.user_data || {};
26        var email = (ud.email || '').toString().trim().toLowerCase();
27        var phone = (ud.phone_number || '').toString().replace(/[^0-9+]/g, '');
28        window.dataLayer.push({
29          event: 'generate_lead',
30          lead_type: detail.lead_type || 'unknown',
31          form_id: detail.form_id || null,
32          page_path: window.location.pathname,
33          /* Enhanced Conversions for Leads — GTM's user-provided-data variable reads
34             user_data.{email,phone_number}; Google hashes (SHA-256) client-side.
35             Same key shape as the quote/book-a-call pushes in global.bundle.js so ONE
36             GTM variable covers every lead type. */
37          user_data: {
38            email: email || undefined,
39            phone_number: phone || undefined
40          }
41        });
42      } catch (e) {}
43    };
44  </script>
44<script>
45    if (!window.__prGtmLoaded) {
46      window.__prGtmLoaded = true;
vendor: 455 bytes, lines 46-56
46
47      (function (w, d, s, l, i) {
48        w[l] = w[l] || [];
49        w[l].push({ 'gtm.start': new Date().getTime(), event: 'gtm.js' });
50        var f = d.getElementsByTagName(s)[0],
51          j = d.createElement(s),
52          dl = l != 'dataLayer' ? '&l=' + l : '';
53        j.async = true;
54        j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;
55        f.parentNode.insertBefore(j, f);
56      })(window, document, 'script', 'dataLayer', '
56GTM-W9DFFGB
vendor: 8 bytes, lines 56-57
56');
57    
57}
58  </script>
58
59
60    <link rel="canonical" href="https://printroom.co/">
61    
62    
63    
64
65    <link rel="preconnect" href="https://cdn.shopify.com" crossorigin>
66
67    <link rel="preload" as="image"
68        href="//printroom.co/cdn/shop/t/59/assets/The-Print-Room-November-2023-10-_1__m.jpg?v=1737129601&width=800?v=39003"
69        type="image/jpeg"
70        fetchpriority="high">
71
72<script>
73(function() {
74  'use strict';
75  var observer = new MutationObserver(function(mutations) {
76    mutations.forEach(function(mutation) {
77      mutation.addedNodes.forEach(function(node) {
78        if (node.tagName === 'SCRIPT' && node.src && node.src.includes('popt.in')) {
79          node.remove();
80        }
81      });
82    });
83  });
84  observer.observe(document.documentElement, { childList: true, subtree: true });
85})();
86</script>
86<script>
87document.addEventListener('DOMContentLoaded', function() {
88  var scripts = document.querySelectorAll('script[data-block-script]');
89  if (!scripts.length) return;
90  if (window.Shopify && window.Shopify.designMode) {
91    scripts.forEach(function(s) {
92      var real = document.createElement('script');
93      real.textContent = s.textContent;
94      s.parentNode.replaceChild(real, s);
95    });
96    return;
97  }
98  var io = new IntersectionObserver(function(entries) {
99    entries.forEach(function(entry) {
100      if (!entry.isIntersecting) return;
101      io.unobserve(entry.target);
102      var pending = entry.target.querySelector('script[data-block-script]');
103      if (pending) {
104        var real = document.createElement('script');
105        real.textContent = pending.textContent;
106        pending.parentNode.replaceChild(real, pending);
107      }
108    });
109  }, { rootMargin: '300px' });
110  scripts.forEach(function(s) {
111    var block = s.closest('[data-ai-block]') || s.parentElement;
112    io.observe(block);
113  });
114});
115</script>
115<script>
116setTimeout(function() {
117  'use strict';
118
119  // Google Tag Manager loads early + reliably via the 'gtm-head' snippet
120  // (settings.gtm_container_id). The old "remove existing GTM then re-inject after
121  // 3s" hack saved ~922ms but delayed the Ads Conversion Linker (breaking gclid
122  // attribution) and dropped fast-bounce visitors from analytics. Do NOT re-add it.
123
124  // LAZY LOAD THIRD-PARTY ANALYTICS
125  var loadThirdPartyScripts = function() {
126    if (typeof fbq === 'undefined') {
127      !function(f,b,e,v,n,t,s){
128        if(f.fbq)return;n=f.fbq=function(){n.callMethod?
129        n.callMethod.apply(n,arguments):n.queue.push(arguments)};
130        if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
131        n.queue=[];t=b.createElement(e);t.async=!0;
132        t.src=v;s=b.getElementsByTagName(e)[0];
133        s.parentNode.insertBefore(t,s)
134      }(window,document,'script','https://connect.facebook.net/en_US/fbevents.js');
135    }
136    if (typeof clarity === 'undefined' && window.clarityCode) {
137      (function(c,l,a,r,i,t,y){
138        c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
139        t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
140        y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
141      })(window,document,"clarity","script",window.clarityCode);
142    }
143  };
144  if ('requestIdleCallback' in window) {
145    requestIdleCallback(loadThirdPartyScripts, { timeout: 5000 });
146  } else {
147    setTimeout(loadThirdPartyScripts, 5000);
148  }
149
150  // LINK PREFETCH ON HOVER
151  var NO_PREFETCH = ['/cart','/checkout','/account','/admin','/password','/challenge','/apps/','/tools/','/services/'];
152  var prefetched = {};
153  var hoverTimer = null;
154
155  function shouldPrefetch(href) {
156    try {
157      var url = new URL(href, location.origin);
158      if (url.origin !== location.origin) return false;
159      if (url.pathname === location.pathname) return false;
160      if (prefetched[url.pathname]) return false;
161      if (navigator.connection && navigator.connection.saveData) return false;
162      for (var i = 0; i < NO_PREFETCH.length; i++) {
163        if (url.pathname.indexOf(NO_PREFETCH[i]) === 0) return false;
164      }
165      var ext = url.pathname.split('.').pop();
166      if (['jpg','jpeg','png','gif','svg','webp','pdf','zip','css','js'].indexOf(ext) !== -1) return false;
167      return true;
168    } catch (e) {
169      return false;
170    }
171  }
172
173  function prefetchUrl(href) {
174    var url = new URL(href, location.origin);
175    if (prefetched[url.pathname]) return;
176    prefetched[url.pathname] = true;
177    var link = document.createElement('link');
178    link.rel = 'prefetch';
179    link.href = href;
180    link.as = 'document';
181    document.head.appendChild(link);
182  }
183
184  document.addEventListener('pointerenter', function(e) {
185    var a = e.target.closest ? e.target.closest('a[href]') : null;
186    if (!a || !shouldPrefetch(a.href)) return;
187    var delay = e.pointerType === 'mouse' ? 65 : 0;
188    hoverTimer = setTimeout(function() { prefetchUrl(a.href); }, delay);
189  }, { capture: true, passive: true });
190
191  document.addEventListener('pointerleave', function() {
192    if (hoverTimer) { clearTimeout(hoverTimer); hoverTimer = null; }
193  }, { capture: true, passive: true });
194
195  if ('requestIdleCallback' in window) {
196    requestIdleCallback(function() {
197      var navLinks = document.querySelectorAll('nav a[href], [data-theme-header] a[href]');
198      var count = 0;
199      navLinks.forEach(function(a) {
200        if (count < 5 && shouldPrefetch(a.href)) {
201          prefetchUrl(a.href);
202          count++;
203        }
204      });
205    }, { timeout: 3000 });
206  }
207
208  // BFCACHE SUPPORT
209  window.addEventListener('pageshow', function(event) {
210    if (event.persisted) {
211      fetch('/cart.js').then(function(r) { return r.json(); }).then(function(data) {
212        document.querySelectorAll('[data-cart-count]').forEach(function(el) {
213          el.textContent = data.item_count;
214        });
215        if (window.Alpine && window.Alpine.store && window.Alpine.store('cartCount')) {
216          window.Alpine.store('cartCount').count = data.item_count;
217        }
218      }).catch(function() {});
219    }
220  });
221}, 0);
222</script>
222<script type="speculationrules">
223{
224  "prerender": [{
225    "where": {
226      "and": [
227        { "href_matches": "/*" },
228        { "not": { "href_matches": [
229          "/cart", "/cart/*",
230          "/checkout", "/checkout/*",
231          "/account", "/account/*",
232          "/admin/*",
233          "/password",
234          "/challenge/*",
235          "/apps/*",
236          "/tools/*",
237          "/services/*"
238        ] } },
239        { "not": { "selector_matches": "[target=_blank]" } }
240      ]
241    },
242    "eagerness": "moderate"
243  }],
244  "prefetch": [{
245    "where": {
246      "and": [
247        { "href_matches": "/*" },
248        { "not": { "href_matches": [
249          "/cart", "/cart/*",
250          "/checkout", "/checkout/*",
251          "/account", "/account/*"
252        ] } }
253      ]
254    },
255    "eagerness": "moderate"
256  }]
257}
258</script>
258
259
260
261<style>
262      .hero-image, [data-hero-image] { aspect-ratio: 16/9; width: 100%; height: auto; background-color: #f0f0f0; }
263      .product-image { aspect-ratio: 1/1; background-color: #fafafa; }
264      header, .header { min-height: 60px; }
265      main { min-height: 100vh; }
266      .skeleton { animation: skeleton-loading 1.5s infinite ease-in-out; background: linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%); background-size: 200% 100%; }
267      @keyframes skeleton-loading { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }
268      @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; } }
269      @media (max-width: 1023px) { .hero-image-mobile, [data-hero-image-mobile] { aspect-ratio: 9/16; } }
270    </style><link
271        rel="icon"
272        type="image/png"
273        href="//printroom.co/cdn/shop/files/pr_branding_logo_favicon_flag-01_11ede80e-5ae5-41fe-8eb2-87dee0e48e14.png?crop=center&height=32&v=1646960588&width=32"
274      ><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin>
275    
276
277    
278
279 <!-- default to true --><!-- pageTitleTemplate: Custom Merch Partner Australia | Premium Branded Merchandise -->
280  <!-- pageTitleToParse": Custom T-Shirt Printing, Embroidery &amp; Promo Products NZ | Print Room -->
281  <!-- pageTitleTruncateApplicable: true -->
282
283  <!-- pluginseo_pageTitleTemplateApplyToAll: true -->
284  <!-- pageTitleTruncateApplicable: true --><!-- Custom page title: Yes --><title>Custom Merch Partner Australia | Premium Branded Merchandise</title> <!-- default to true --><!-- metaDescriptionTemplate: Australia's premium merch partner for custom branded merchandise, in-house screen printing, embroidery, water-based inks and fast Australia-wide delivery. -->
285  <!-- metaDescriptionToParse": NZ’s experts in custom t-shirt printing, tote bags, uniforms, and branded merchandise. Print Room offers high-quality screen printing and embroidery using eco-friendly inks. Fast turnaround, sustainable production, and trusted by leading New Zealand brands. -->
286  <!-- metaDescriptionTruncateApplicable: true -->
287
288  <!-- pluginseo_metaDescriptionTemplateApplyToAll: true -->
289  <!-- metaDescriptionTruncateApplicable: true --><!-- Yes --><meta name="description" content="Australia&#39;s premium merch partner for custom branded merchandise, in-house screen printing, embroidery, water-based inks and fast Australia-wide delivery." />
290<script data-desc="seo-organization" type="application/ld+json">
291  {
292    "@context": "http://schema.org",
293    "@type": "Organization",
294    "additionalType": "https://schema.org/OnlineStore",
295    "@id": "https://printroom.co#organization",
296    "name": "The Print Room",
297    "url": "https://printroom.co",
298    "description": "Australia&#39;s premium merch partner for custom branded merchandise, in-house screen printing, embroidery, water-based inks and fast Australia-wide delivery.","logo": {
299        "type": "ImageObject",
300        "url": "https://printroom.co/cdn/shop/t/59/assets/pluginseo_structuredDataLogo_small.png?v=39003"
301      },
302      "image": "https://printroom.co/cdn/shop/t/59/assets/pluginseo_structuredDataLogo_small.png?v=39003","areaServed": [{ "@type": "Country", "name": "Australia" },
303    { "@type": "Country", "name": "New Zealand" }],
304    "sameAs": ["https://www.linkedin.com/company/theprintroom"]
305  }
306</script>
306<script data-desc="seo-website" type="application/ld+json">
307  {
308    "@context": "http://schema.org",
309    "@type": "WebSite",
310    "name": "The Print Room",
311    "url": "https://printroom.co",
312    "inLanguage": "en",
313    "potentialAction": {
314      "@type": "SearchAction",
315      "target": "https://printroom.co/search?q={search_term_string}",
316      "query-input": "required name=search_term_string"
317    }
318  }
319</script>
319<meta name="pluginseo" content="Plug in SEO Plus" data-ptf="s-te_ix" data-mdf="s-te_ix" />
320
321
322    
322<script type="esms-options">
323  {
324    "noLoadEventRetriggers": true
325  }
326</script>
326
327
328<script>
329  if (
330    !(HTMLScriptElement.supports && HTMLScriptElement.supports('importmap'))
331  ) {
332    const importMapShimScriptEl = document.createElement('script');
333    importMapShimScriptEl.src = '//printroom.co/cdn/shop/t/59/assets/es-module-shims.bundle.min.js?v=98603786603752121101787098437'
334    importMapShimScriptEl.async = true;
335
336    document.currentScript.after(importMapShimScriptEl);
337  }
338</script>
vendor: 1 bytes, line 338
338
339<script async crossorigin fetchpriority="high" src="/cdn/shopifycloud/importmap-polyfill/es-modules-shim.2.4.0.js"></script>
vendor: 1 bytes, line 339
339
340<script type="importmap">
341  {
342    "imports": {
343      "vendor": "//printroom.co/cdn/shop/t/59/assets/vendor.bundle.min.js?v=124729801276099409011787098433",
344      "deferrable-data": "//printroom.co/cdn/shop/t/59/assets/deferrable-data.bundle.js?v=160370895301608380811787098437",
345      "@supabase/supabase-js": "//printroom.co/cdn/shop/t/59/assets/supabase-js.bundle.js?v=151185893978749678631787098436",
346      "product": "//printroom.co/cdn/shop/t/59/assets/island-product.bundle.js?v=53162399053546849101790733316",
347      "quick-buy": "//printroom.co/cdn/shop/t/59/assets/island-quick-buy.bundle.js?v=147469616221971819701787098437",
348      "ai-chatbot": "//printroom.co/cdn/shop/t/59/assets/ai-chatbot.bundle.js?v=114215721854634402901788472409",
349      "leavers-quote-builder": "//printroom.co/cdn/shop/t/59/assets/leavers-quote-builder.bundle.js?v=140741536858912509621787098436",
350      "leavers-product-grid": "//printroom.co/cdn/shop/t/59/assets/leavers-product-grid.bundle.js?v=101839867699394922961787098435"
351    }
352  }
353</script>
353
354
355<script>
356      (function() {
357        var _originalAlert = window.alert;
358        window.alert = function(message) {
359          if (message && message.toLowerCase().includes('personalized text')) {
360            message = 'This field is required to place an order.';
361          }
362          _originalAlert.call(window, message);
363        };
364      })();
365    </script>
365
366
367    
367<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
367<meta name="google-site-verification" content="r89mOlbEOfEjECOwEHOd5jrv5jGOJeGHPXM78LaGLXY">
368<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/7054289/digital_wallets/dialog">
369<meta id="in-context-paypal-metadata" data-shop-id="7054289" data-venmo-supported="false" data-environment="production" data-locale="en_US" data-paypal-v4="true" data-currency="USD">
370<link rel="ucp" href="/.well-known/ucp" version="2026-08-25"><link rel="alternate" hreflang="x-default" href="https://theprintroom.nz/">
371<link rel="alternate" hreflang="en" href="https://theprintroom.nz/">
372<link rel="alternate" hreflang="en-AU" href="https://printroom.co/en-au">
373<link rel="alternate" hreflang="en-CN" href="https://printroom.co/">
374<link rel="alternate" hreflang="en-FR" href="https://printroom.co/">
375<link rel="alternate" hreflang="en-GB" href="https://printroom.co/">
376<link rel="alternate" hreflang="en-US" href="https://printroom.co/">
377<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=488013894"></script>
377
378<link rel="preconnect" href="https://shop.app" crossorigin="anonymous">
379<script async="async" src="https://shop.app/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=488013894&shop_id=7054289" crossorigin="anonymous"></script>
vendor: 1 bytes, line 379
379
380<script id="apple-pay-shop-capabilities" type="application/json">{"shopId":7054289,"countryCode":"NZ","currencyCode":"USD","merchantCapabilities":["supports3DS"],"merchantId":"gid:\/\/shopify\/Shop\/7054289","merchantName":"The Print Room","requiredBillingContactFields":["postalAddress","email","phone"],"requiredShippingContactFields":["postalAddress","email","phone"],"shippingType":"shipping","supportedNetworks":["visa","masterCard","amex","jcb"],"total":{"type":"pending","label":"The Print Room","amount":"1.00"},"shopifyPaymentsEnabled":true,"supportsSubscriptions":true}</script>
vendor: 1 bytes, line 380
380
381<script id="shopify-features" type="application/json">{"accessToken":"0a03320998ce9cf7ffe404a489cfebbd","betas":["rich-media-storefront-analytics"],"domain":"printroom.co","predictiveSearch":true,"shopId":7054289,"locale":"en"}</script>
vendor: 1 bytes, line 381
381
382<script>var Shopify = Shopify || {};
383Shopify.shop = "the-print-room.myshopify.com";
384Shopify.locale = "en";
385Shopify.currency = {"active":"USD","rate":"0.57265452"};
386Shopify.country = "US";
387Shopify.theme = {"name":"Print_Room_Co","id":151830298694,"schema_name":"Baseline","schema_version":"3.3.1","theme_store_id":null,"role":"main"};
388Shopify.theme.handle = "null";
389Shopify.theme.style = {"id":null,"handle":null};
390Shopify.cdnHost = "printroom.co/cdn";
391Shopify.routes = Shopify.routes || {};
392Shopify.routes.root = "/";
393Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
394Shopify.SignInWithShop = Shopify.SignInWithShop || {};
395Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
396Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 396
396
397<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 397
397
398<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 398
398
399<script>
400  window.ShopifyPay = window.ShopifyPay || {};
401  window.ShopifyPay.apiHost = "shop.app\/pay";
402  window.ShopifyPay.redirectState = null;
403</script>
vendor: 1 bytes, line 403
403
404<script>
405  window.Shopify = window.Shopify || {};
406  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
407  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
408  window.Shopify.SignInWithShop.eligible = true;
409</script>
vendor: 1 bytes, line 409
409
410<script id="shop-js-analytics" type="application/json">{"pageType":"index"}</script>
vendor: 1 bytes, line 410
410
411<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 411
411
412<script type="module">
413  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
414
415  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
416
417</script>
vendor: 1 bytes, line 417
417
418<script>
419  window.Shopify = window.Shopify || {};
420  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
421  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"]};
422</script>
vendor: 1 bytes, line 422
422
423<script>(function() {
424  var isLoaded = false;
425  function asyncLoad() {
426    if (isLoaded) return;
427    isLoaded = true;
428    var urls = ["\/\/d1liekpayvooaz.cloudfront.net\/apps\/customizery\/customizery.js?shop=the-print-room.myshopify.com","https:\/\/app.carboncheckout.com\/assets\/api\/shopify.min.js?shop=the-print-room.myshopify.com","https:\/\/static.klaviyo.com\/onsite\/js\/klaviyo.js?company_id=WkJ8Uf\u0026shop=the-print-room.myshopify.com","https:\/\/cdn.nfcube.com\/instafeed-dfc514f941e0dbcfd9799eba509c69d2.js?shop=the-print-room.myshopify.com","\/\/d1liekpayvooaz.cloudfront.net\/apps\/uploadery\/uploadery.js?shop=the-print-room.myshopify.com","https:\/\/cdn.grw.reputon.com\/assets\/widget.js?shop=the-print-room.myshopify.com","https:\/\/chimpstatic.com\/mcjs-connected\/js\/users\/3ec9f5a684c36f6bf11dc30fc\/1a983ba3b184a8fb5b6da3882.js?shop=the-print-room.myshopify.com","https:\/\/cdn.hextom.com\/js\/quickannouncementbar.js?shop=the-print-room.myshopify.com","https:\/\/app.popt.in\/pixel.js?id=e7ff5c60e84fb\u0026shop=the-print-room.myshopify.com"];
429    for (var i = 0; i < urls.length; i++) {
430      var s = document.createElement('script');
431      s.type = 'text/javascript';
432      s.async = true;
433      s.src = urls[i];
434      var x = document.getElementsByTagName('script')[0];
435      x.parentNode.insertBefore(s, x);
436    }
437  };
438  if(window.attachEvent) {
439    window.attachEvent('onload', asyncLoad);
440  } else {
441    window.addEventListener('load', asyncLoad, false);
442  }
443})();</script>
vendor: 1 bytes, line 443
443
444<script id="__st">var __st={"a":7054289,"offset":46800,"reqid":"cde7d174-c61c-45ba-8501-b6db499c8199-1791103101","pageurl":"printroom.co\/","u":"a59023f56c33","p":"home"};</script>
vendor: 1 bytes, line 444
444
445<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 445
445
446<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 446
446
447<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//printroom.co/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 447
447
448<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 = "//printroom.co/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>
448<script crossorigin="anonymous" defer="defer" src="//printroom.co/cdn/shopifycloud/storefront/assets/shopify_pay/storefront-616277c7.js?v=20250812"></script>
vendor: 1 bytes, line 448
448
449<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 449
449
450<script>
451  window.Shopify = window.Shopify || {};
452  window.Shopify.MCP = window.Shopify.MCP || {};
453  window.Shopify.MCP.enabled = true;
454  window.Shopify.MCP.shop = "the-print-room.myshopify.com";
455  window.Shopify.MCP.mcpEndpoint = "https:\/\/printroom.co\/api\/mcp";
456  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"]}}];
457</script>
vendor: 1 bytes, line 457
457
458<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("\/\/printroom.co\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
459</script>
vendor: 1 bytes, line 459
459
460<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://printroom.co/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
461</script>
vendor: 1 bytes, line 461
461
462<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
463  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);
464</script>
vendor: 1 bytes, line 464
464
465<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})}}));
466</script>
466
467<link id="shopify-accelerated-checkout-styles" rel="stylesheet" media="screen" href="https://printroom.co/cdn/shopifycloud/portable-wallets/latest/accelerated-checkout-backwards-compat.css" crossorigin="anonymous">
468<style id="shopify-accelerated-checkout-cart">
469        #shopify-buyer-consent {
470  margin-top: 1em;
471  display: inline-block;
472  width: 100%;
473}
474
475#shopify-buyer-consent.hidden {
476  display: none;
477}
478
479#shopify-subscription-policy-button {
480  background: none;
481  border: none;
482  padding: 0;
483  text-decoration: underline;
484  font-size: inherit;
485  cursor: pointer;
486}
487
488#shopify-subscription-policy-button::before {
489  box-shadow: none;
490}
491
492      </style>
493
494<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
494
495
496      
497
498
499  <link
500    rel="preload"
501    as="font"
502    href="//printroom.co/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2"
503    type="font/woff2"
504    crossorigin
505  >
506
507
508
509  <link
510    rel="preload"
511    as="font"
512    href="//printroom.co/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2"
513    type="font/woff2"
514    crossorigin
515  >
516
517
518
519<style data-shopify>
520  @font-face {
521  font-family: "DM Sans";
522  font-weight: 400;
523  font-style: normal;
524  font-display: swap;
525  src: url("//printroom.co/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2") format("woff2"),
526       url("//printroom.co/cdn/fonts/dm_sans/dmsans_n4.87bdd914d8a61247b911147ae68e754d695c58a6.woff") format("woff");
527}
528
529  @font-face {
530  font-family: "DM Sans";
531  font-weight: 500;
532  font-style: normal;
533  font-display: swap;
534  src: url("//printroom.co/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"),
535       url("//printroom.co/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff");
536}
537
538@font-face {
539  font-family: "DM Sans";
540  font-weight: 700;
541  font-style: normal;
542  font-display: swap;
543  src: url("//printroom.co/cdn/fonts/dm_sans/dmsans_n7.97e21d81502002291ea1de8aefb79170c6946ce5.woff2") format("woff2"),
544       url("//printroom.co/cdn/fonts/dm_sans/dmsans_n7.af5c214f5116410ca1d53a2090665620e78e2e1b.woff") format("woff");
545}
546@font-face {
547  font-family: "DM Sans";
548  font-weight: 400;
549  font-style: italic;
550  font-display: swap;
551  src: url("//printroom.co/cdn/fonts/dm_sans/dmsans_i4.b8fe05e69ee95d5a53155c346957d8cbf5081c1a.woff2") format("woff2"),
552       url("//printroom.co/cdn/fonts/dm_sans/dmsans_i4.403fe28ee2ea63e142575c0aa47684d65f8c23a0.woff") format("woff");
553}
554@font-face {
555  font-family: "DM Sans";
556  font-weight: 700;
557  font-style: italic;
558  font-display: swap;
559  src: url("//printroom.co/cdn/fonts/dm_sans/dmsans_i7.52b57f7d7342eb7255084623d98ab83fd96e7f9b.woff2") format("woff2"),
560       url("//printroom.co/cdn/fonts/dm_sans/dmsans_i7.d5e14ef18a1d4a8ce78a4187580b4eb1759c2eda.woff") format("woff");
561}
562@font-face {
563  font-family: "DM Sans";
564  font-weight: 700;
565  font-style: normal;
566  font-display: swap;
567  src: url("//printroom.co/cdn/fonts/dm_sans/dmsans_n7.97e21d81502002291ea1de8aefb79170c6946ce5.woff2") format("woff2"),
568       url("//printroom.co/cdn/fonts/dm_sans/dmsans_n7.af5c214f5116410ca1d53a2090665620e78e2e1b.woff") format("woff");
569}
570</style>
571
572<style>:root {
573
574      --font-size-xs: 0.64rem;
575      --font-size-sm: 0.8rem;
576      --font-size-base: 1rem;
577      --font-size-lg: 1.25rem;
578      --font-size-xl: 1.563rem;
579      --font-size-2xl: 1.953rem;
580      --font-size-3xl: 2.441rem;
581      --font-size-4xl: 3.052rem;
582      --font-size-5xl: 3.815rem;
583      --font-size-6xl: 4.768rem;
584      --font-size-7xl: 5.96rem;
585      --font-size-8xl: 7.451rem;
586      --font-size-9xl: 9.313rem;
587
588      --type-scale-n-2: var(--font-size-xs);
589      --type-scale-n-1: var(--font-size-sm);
590      --type-scale-n0: var(--font-size-base);
591      --type-scale-n1: var(--font-size-lg);
592      --type-scale-n2: var(--font-size-xl);
593      --type-scale-n3: var(--font-size-2xl);
594      --type-scale-n4: var(--font-size-3xl);
595      --type-scale-n5: var(--font-size-4xl);
596      --type-scale-n6: var(--font-size-5xl);
597      --type-scale-n7: var(--font-size-6xl);
598      --type-scale-n8: var(--font-size-7xl);
599      --type-scale-n9: var(--font-size-8xl);
600      --type-scale-n10: var(--font-size-9xl);
601
602      --base-font-size: 93.75%;
603      --base-font-size-from-settings: 15;
604      --base-line-height: 1.2;
605      --heading-line-height: 1;
606
607      font-size: var(--base-font-size);
608      line-height: var(--base-line-height);
609
610      --heading-font-stack: "DM Sans", sans-serif;
611      --heading-font-weight: 500;
612      --heading-font-style: normal;
613
614
615      --body-font-stack: "DM Sans", sans-serif;
616      --body-font-weight: 400;
617      --body-font-bold: FontDrop;
618      --body-font-bold-italic: FontDrop;
619
620      --color-gridline: 30 35 38;
621      --gridline-width: 0px;
622
623      --text-border-width: 1px;
624      --checkbox-width: 1px;
625
626      --font-heading: "DM Sans", sans-serif;
627      --font-body: "DM Sans", sans-serif;
628      --font-body-weight: 400;
629      --font-body-style: normal;
630      --font-body-bold-weight: bold;
631
632      --heading-letterspacing: -0.025em;
633      --heading-capitalize: none;
634      --heading-decoration: none;
635
636      --standard-heading-size: var(--type-scale-n3);
637      --feature-heading-size: var(--type-scale-n4);
638      --secondary-heading-size: var(--type-scale-n2);
639
640      --body-copy-transform: none;
641
642      --wrapperWidth: 100vw;
643      --gutter: 0px;
644      --rowHeight: calc((var(--wrapperWidth) - (11 * var(--gutter))) / 12);
645
646      --global-scrolling-items-speed-multiplier: 1;
647
648      --add-to-cart-button-height: 44px;
649      --checkout-button-height: 44px;
650
651      --spacing: 1rem;
652      --spacing-double: 2rem;
653      --spacing-half: 0.5rem;
654
655      /* Equivalent to px-2 */
656      --section-horizontal-spacing-mobile: 0.5rem;
657      /* Equivalent to px-4 */
658      --section-horizontal-spacing-desktop: 1rem;
659
660      --section-horizontal-spacing: var(--section-horizontal-spacing-mobile);
661
662      --icon-thickness: 1.5;
663
664      /**
665       * Buttons
666       */
667      --button-text-transform: none;
668      --button-after-content: '\00a0\2192';
669      --button-border-radius: 9999px;
670
671      /**
672       * Links
673       */
674      --links-bottom-border-width: var(--text-border-width);
675      --links-bottom-padding: 0.25rem;
676      --links-text-transform: none;
677      --links-after-content: '\00a0\2192';
678      --links-before-content: '\2190\00a0';
679
680      background-color: rgb(var(--color-scheme-background));
681      color: rgb(var(--color-scheme-text));
682    }
683
684    @media (min-width: 1024px) {
685      :root {
686        --standard-heading-size: var(--type-scale-n5);
687        --feature-heading-size: var(--type-scale-n6);
688        --secondary-heading-size: var(--type-scale-n3);
689
690        --section-horizontal-spacing: var(--section-horizontal-spacing-desktop);
691      }
692    }
693
694    :root,
695      
696      [data-color-scheme="scheme1"] {
697        --color-scheme-text: 43 57 144;
698        --color-scheme-background: 255 255 255;
699        --color-scheme-accent: 248 250 244;
700        --color-scheme-accent-contrast:  43 57 144;
701        --color-scheme-secondary: 30 35 38;
702      }
703  
704      [data-color-scheme="scheme2"] {
705        --color-scheme-text: 30 35 38;
706        --color-scheme-background: 241 255 165;
707        --color-scheme-accent: 194 194 194;
708        --color-scheme-accent-contrast:  30 35 38;
709        --color-scheme-secondary: 30 35 38;
710      }
711  
712      [data-color-scheme="scheme3"] {
713        --color-scheme-text: 248 250 244;
714        --color-scheme-background: 43 57 144;
715        --color-scheme-accent: 248 250 244;
716        --color-scheme-accent-contrast:  241 255 165;
717        --color-scheme-secondary: 43 57 144;
718      }
719  
720      [data-color-scheme="scheme4"] {
721        --color-scheme-text: 248 250 244;
722        --color-scheme-background: 30 35 38;
723        --color-scheme-accent: 248 250 244;
724        --color-scheme-accent-contrast:  30 35 38;
725        --color-scheme-secondary: 248 250 244;
726      }
727  
728      [data-color-scheme="scheme5"] {
729        --color-scheme-text: 30 35 38;
730        --color-scheme-background: 255 255 255;
731        --color-scheme-accent: 30 35 38;
732        --color-scheme-accent-contrast:  255 255 255;
733        --color-scheme-secondary: 30 35 38;
734      }
735  
736      [data-color-scheme="scheme-62a93d7b-1ea3-42af-a18d-30461b13240a"] {
737        --color-scheme-text: 255 255 255;
738        --color-scheme-background: 255 255 255;
739        --color-scheme-accent: 255 255 255;
740        --color-scheme-accent-contrast:  255 255 255;
741        --color-scheme-secondary: 255 255 255;
742      }
743  
744      [data-color-scheme="scheme-7c315ead-1873-415d-a1a8-a7722419ef69"] {
745        --color-scheme-text: 43 57 144;
746        --color-scheme-background: 255 255 255;
747        --color-scheme-accent: 30 35 38;
748        --color-scheme-accent-contrast:  30 35 38;
749        --color-scheme-secondary: 30 35 38;
750      }
751  
752      [data-color-scheme="scheme-6641fd8c-0fdd-4ed9-bd94-b490824d6125"] {
753        --color-scheme-text: 30 35 38;
754        --color-scheme-background: 72 127 249;
755        --color-scheme-accent: 248 250 244;
756        --color-scheme-accent-contrast:  30 35 38;
757        --color-scheme-secondary: 30 35 38;
758      }
759  
760
761    [data-color-scheme] {
762      --payment-terms-background-color: rgb(var(--color-scheme-background));
763
764      --button-color-border: var(--color-scheme-text);
765      --button-color-background: var(--color-scheme-accent);
766      --button-color-text: var(--color-scheme-accent-contrast);
767      --button-color-border-hover: var(--color-scheme-text);
768      --button-color-background-hover: var(--color-scheme-text);
769      --button-color-text-hover: var(--color-scheme-background);
770    }
771
772    ::selection {
773      background-color: rgb(var(--color-scheme-accent));
774      color: rgb(var(--color-scheme-accent-contrast));
775    }
776
777    @keyframes scrolling-items {
778      0% {
779        transform: translate3d(0, 0, 0);
780      }
781
782      100% {
783        transform: translate3d(-50%, 0, 0);
784      }
785    }
786</style>
787
788<style id="generated-critical-css">
789image-with-placeholder{display:block}.theme-button,.theme-button--secondary{cursor:pointer;font-size:var(--font-size-base);line-height:var(--base-line-height);overflow-wrap:anywhere;padding:.5rem 2rem;text-transform:var(--button-text-transform);word-break:normal}.theme-button--secondary:after,.theme-button:after{--tw-content:var(--button-after-content);content:var(--tw-content)}.theme-button{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(var(--button-color-background)/var(--tw-bg-opacity,1));border-color:rgb(var(--button-color-border)/var(--tw-border-opacity,1));border-radius:var(--button-border-radius);border-width:var(--text-border-width);color:rgb(var(--button-color-text)/var(--tw-text-opacity,1))}@media (hover:hover) and (pointer:fine){.theme-button:hover{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(var(--button-color-background-hover)/var(--tw-bg-opacity,1));border-color:rgb(var(--button-color-border-hover)/var(--tw-border-opacity,1));color:rgb(var(--button-color-text-hover)/var(--tw-text-opacity,1))}}.theme-button--secondary{--tw-border-opacity:1;--tw-bg-opacity:1;--tw-text-opacity:1;background-color:rgb(var(--color-scheme-background)/var(--tw-bg-opacity,1));border-color:rgb(var(--color-scheme-text)/var(--tw-border-opacity,1));border-radius:var(--button-border-radius);border-width:var(--text-border-width);color:rgb(var(--color-scheme-text)/var(--tw-text-opacity,1))}[data-color-scheme] .theme-button--secondary.rte a:hover,[data-color-scheme].theme-button--secondary .rte a:hover,[data-color-scheme].theme-button--secondary.rte a:hover{color:rgb(var(--color-scheme-accent));text-decoration-color:rgb(var(--color-scheme-accent))}[data-color-scheme] .theme-button--secondary.rte blockquote,[data-color-scheme].theme-button--secondary .rte blockquote,[data-color-scheme].theme-button--secondary.rte blockquote{background:rgb(var(--color-scheme-text));color:rgb(var(--color-scheme-background))}@media (hover:hover) and (pointer:fine){.theme-button--secondary:hover{--tw-border-opacity:1;--tw-text-opacity:1;border-color:rgb(var(--color-scheme-accent)/var(--tw-border-opacity,1));color:rgb(var(--color-scheme-accent)/var(--tw-text-opacity,1))}}[data-shopify-xr-hidden]{display:none}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.shopify-payment-button__button--hidden{display:none!important}.splide:not(.is-active) .\[\.splide\:not\(\.is-active\)_\&\]\:pointer-events-none{pointer-events:none}.splide:not(.is-active) .\[\.splide\:not\(\.is-active\)_\&\]\:invisible{visibility:hidden}.splide:not(.is-active) .\[\.splide\:not\(\.is-active\)_\&\]\:\!flex{display:flex!important}.splide:not(.is-active) .\[\.splide\:not\(\.is-active\)_\&\]\:gap-gridline{gap:var(--gridline-width)}@media not all and (min-width:1024px){.splide:not(.is-active) .max-lg\:\[\.splide\:not\(\.is-active\)_\&\]\:hidden{display:none}}
790</style>
791<style id="manual-critical-css">
792  html {
793    background-color: rgb(var(--color-primary-background));
794    color: rgb(var(--color-primary-text));
795    font-size: var(--base-font-size);
796    line-height: var(--base-line-height);
797  }
798
799  [x-cloak] {
800    display: none;
801  }
802
803  data-island {
804    display: block;
805  }
806
807  html.no-js [x-cloak].no-js-undo-cloak {
808    display: revert;
809  }
810
811  body {
812    display: flex;
813    flex-direction: column;
814    min-height: 100vh;
815  }
816
817  @media (min-width: 768px) {
818    [md\:undo-x-cloak-block] {
819      display: block;
820    }
821  }
822
823  @media (max-width: 767px) {
824    [max-md\:undo-x-cloak-block] {
825      display: block;
826    }
827  }
828</style>
829
830      <style>
831  :root {
832    /* ── Colors ── */
833    --pr-blue: #2B3990;
834    --pr-blue-hover: #232e75;
835    --pr-bright-blue: #487FF9;       /* matches product-page volume-pricing table */
836    --pr-bright-blue-hover: #3D6CD4;
837    --pr-bright-blue-rgb: 72 127 249;
838    --pr-bright-blue-hover-rgb: 61 108 212;
839    --dusky-purple: #4B4D72;
840    --dusky-purple-hover: #3d3f5e;
841    --slider-green: #658a6a;
842    --off-white: #FBFBF6;
843    --pill-bg: #EEE;
844    --pill-bg-hover: #e2e2e2;
845    --cant-find-bg: #EFFE9C;
846
847    /* ── Typography ── */
848    --font-family: 'DM Sans', sans-serif;
849    --title-modal-size: 2.75rem;       /* 44px */
850    --title-modal-tracking: -0.05em;   /* -2.2px */
851    --title-drawer-size: 41px;
852    --title-drawer-tracking: -2px;
853    --body-size: 0.9375rem;            /* 15px */
854    --label-size: 0.8125rem;           /* 13px */
855    --pill-font-size: 0.66rem;         /* ~10.65px */
856    --cta-font-size: 1.5rem;           /* 24px */
857    --submit-font-size: 1.5rem;        /* 24px */
858    --input-font-size: 0.875rem;       /* 14px */
859
860    /* ── Borders ── */
861    --border-modal: 2px solid black;
862    --border-drawer-left: 2px solid black;
863    --border-pill: 0.666px solid black;
864    --border-input: 1px solid black;
865    --border-cta: 2px solid var(--dusky-purple);
866    --border-chip: 0.4px solid black;
867
868    /* ── Radii ── */
869    --radius-modal: 27px;
870    --radius-pill: 9999px;
871    --radius-input: 9999px;
872    --radius-textarea: 10px;
873    --radius-submit: 50px;
874    --radius-cta: 40px;
875    --radius-chip: 24px;
876    --radius-popover: 16px;
877
878    /* ── Shadows ── */
879    --shadow-modal: 0 4px 13px 2px rgba(0, 0, 0, 0.1);
880    --shadow-popover: 0 10px 25px rgba(0, 0, 0, 0.1);
881    --shadow-slider-thumb: 0 2px 6px rgba(0, 0, 0, 0.15);
882    --shadow-focus: 0 0 0 3px rgba(43, 57, 144, 0.1);
883
884    /* ── Sizing ── */
885    --product-image-drawer: 90px;
886    --product-image-modal: 53px;
887    --pill-height: 23px;
888    --submit-height: 70px;
889    --submit-max-width: 351px;
890    --start-quote-height: 79px;
891    --input-min-height: 2.75rem;       /* 44px */
892    --slider-thumb-size: 24px;
893    --slider-track-height: 6px;
894    --cta-width: 153px;
895    --cta-height: 47px;
896    --chip-width: 90px;
897    --chip-height: 21px;
898
899    /* ── Aliases (backward compat) ── */
900    --color-quote-accent: var(--pr-blue);
901  }
902</style>
903
904
905    <link rel="preload" href="//printroom.co/cdn/shop/t/59/assets/base.bundle.css?v=77867960145098054751787098434" as="style" onload="this.onload=null;this.rel='stylesheet'">
906    <noscript><link rel="stylesheet" href="//printroom.co/cdn/shop/t/59/assets/base.bundle.css?v=77867960145098054751787098434"></noscript>
907
908    <link rel="preload" href="//printroom.co/cdn/shop/t/59/assets/styles.css?v=1691680456440492591789529106" as="style" onload="this.onload=null;this.rel='stylesheet'">
909    <noscript><link rel="stylesheet" href="//printroom.co/cdn/shop/t/59/assets/styles.css?v=1691680456440492591789529106"></noscript>
910
911<meta property="og:site_name" content="The Print Room">
912<meta property="og:locale" content="en"><meta property="og:locale:alternate" content="en_NZ"><meta property="og:url" content="https://printroom.co/"><meta property="og:title" content="
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927Custom Merch Partner Australia | Premium Branded Merchandise
928">
929<meta property="og:type" content="website">
930<meta property="og:description" content="Australia&#39;s premium merch partner for custom branded merchandise, in-house screen printing, embroidery, water-based inks and fast Australia-wide delivery.">
931<meta property="og:image" content="https://printroom.co/cdn/shop/files/PrintRoomNovember2024-13_507c1311-d6fa-40ae-ae11-a74b59c4faec.jpg?v=1753319129">
932<meta
933    property="og:image:secure_url"
934    content="https://printroom.co/cdn/shop/files/PrintRoomNovember2024-13_507c1311-d6fa-40ae-ae11-a74b59c4faec.jpg?v=1753319129"
935  >
936  <meta property="og:image:width" content="2048">
937  <meta property="og:image:height" content="1367"><meta name="twitter:card" content="summary_large_image"><meta name="twitter:title" content="
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952Custom Merch Partner Australia | Premium Branded Merchandise
953">
954<meta name="twitter:description" content="Australia&#39;s premium merch partner for custom branded merchandise, in-house screen printing, embroidery, water-based inks and fast Australia-wide delivery.">
955<script>
956  window.THEMENAME = 'Baseline';
957  window.THEMEVERSION = '3.0.0';
958
959  document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
960
961  function debounce(fn, wait) {
962    let t;
963    return (...args) => {
964      clearTimeout(t);
965      t = setTimeout(() => fn.apply(this, args), wait);
966    };
967  }
968
969  window.theme = {
970    strings: {
971      loading: "Loading",
972      itemCountOne: "{{ count }} item",
973      itemCountOther: "{{ count }} items",
974      addToCart: "Add to cart",
975      soldOut: "Sold out",
976      unavailable: "Unavailable",
977      regularPrice: "Regular price",
978      salePrice: "Sale price",
979      sale: "Sale",
980      unitPrice: "Unit price",
981      unitPriceSeparator: "per",
982      cartEmpty: "Your cart is currently empty.",
983      cartCookies: "Enable cookies to use the shopping cart",
984      update: "Update",
985      quantity: "Quantity",
986      discountedTotal: "Discounted total",
987      regularTotal: "Regular total",
988      priceColumn: "See Price column for discount details.",
989      addedToCart: "Added to Cart!",
990      cartError: "There was an error while updating your cart. Please try again.",
991      cartAddError: "All {{ title }} are in your cart.",
992      shippingCalculatorResultsTitleOne: "There is 1 rate:",
993      shippingCalculatorResultsTitleMany: "There are {{ count }} rates:",
994    },
995    routes: {
996      root_url: "\/",
997      predictive_search_url: "\/search\/suggest",
998      cart_url: "\/cart",
999      cart_add_url: "\/cart\/add",
1000      cart_change_url: "\/cart\/change",
1001      cart_update_url: "\/cart\/update",
1002      cart_clear_url: "\/cart\/clear",
1003    },
1004    moneyFormat: "${{amount}}",
1005    moneyWithCurrencyFormat: "${{amount}} USD",
1006    get defaultMoneyFormat() {
1007      return this.moneyFormat;
1008    },
1009    cartItemCount: 0,
1010    settings: {
1011      cartType: "page",
1012      openDrawerOnAddToCart: false
1013    },
1014    info: {
1015      name: 'Baseline',
1016    }
1017  };
1018</script>
vendor: 1 bytes, line 1018
1018
1019<script src="//printroom.co/cdn/shop/t/59/assets/utils.js?v=84782252304122448471787098437" defer></script>
1019
1020    
1020<script src="//printroom.co/cdn/shop/t/59/assets/images.js?v=56710371490645595961787098434" defer></script>
1020
1021    
1021<script>
1022      window.themeEventsDebugMode = false;
1023    </script>
1023
1024    
1024<script src="//printroom.co/cdn/shop/t/59/assets/theme-events.js?v=133344252210966700221787098437" defer></script>
1024
1025
1026    
1027
1028    
1029  
1030  <!-- "snippets/shogun-head.liquid" was not rendered, the associated app was uninstalled -->
1031  
1031<script type="text/javascript">
1032window.PunchoutSettings = {
1033            "cloud_url": "https://cloud.punchoutexpress.com",
1034            "token": "ba56ba1530c75285dc7e1f854b4ad1a1",
1035            "checkout_selector": "#main-cart-footer div.items-center",
1036            "checkout_text": "Transfer Cart",
1037            "cancel_selector": "#main-cart-footer div.items-center",
1038            "cancel_text": "Cancel",
1039            "hide_selector": "*[name=\"checkout\"],.shopify-payment-button,.additional-checkout-buttons,.additional-checkout-button, #main-cart-footer button.theme-button--secondary, #main-cart-footer button.text-button",
1040            "cart_container_selector": "#CartContainer,#CartDrawer,#ajaxifyModal"
1041        };
1042</script>
1042
1043
1044  <!-- Punchout Cloud -->
1045<script src="https://cdn.cloud.punchoutexpress.com/cloud/assets-shopify/0.2.0/punchout.min.js?v5_24_0" defer="defer"></script>
1045
1046<style type="text/css">.btn-punchout-cancel {margin-left: 10px;}</style>
1047<!-- /Punchout Cloud -->
1048
1049  
1050
1051<script>
1052(function() {
1053  console.log('[TWOA Punchout] Script loaded');
1054  
1055  // Check if we're on the Te Wananga page and Locksmith is present
1056  const isTWOAPage = window.location.pathname.includes('te-wananga-o-aotearoa');
1057  console.log('[TWOA Punchout] Is TWOA page:', isTWOAPage);
1058  console.log('[TWOA Punchout] Current path:', window.location.pathname);
1059  
1060  if (isTWOAPage) {
1061    // Check if punchout session is already active
1062    const urlParams = new URLSearchParams(window.location.search);
1063    const hasPunchoutSession = urlParams.has('punchout_sess_id');
1064    console.log('[TWOA Punchout] Has punchout session:', hasPunchoutSession);
1065    
1066    if (!hasPunchoutSession) {
1067      console.log('[TWOA Punchout] No punchout session detected, will auto-activate');
1068      
1069      // Wait for page to fully load, then activate punchout
1070      window.addEventListener('load', function() {
1071        // Check if there's a Locksmith password form visible
1072        const hasPasswordForm = document.querySelector('form[data-locksmith-form], input[type="password"][name*="lock"]');
1073        
1074        console.log('[TWOA Punchout] Page loaded - Has password form:', !!hasPasswordForm);
1075        
1076        if (!hasPasswordForm) {
1077          // No password form = user has access, activate punchout immediately
1078          console.log('[TWOA Punchout] ✓ Access granted - activating punchout session');
1079          const punchoutId = Date.now().toString() + Math.random().toString(36).substring(2, 15);
1080          const newUrl = new URL(window.location.href);
1081          newUrl.searchParams.set('punchout_sess_id', punchoutId);
1082          
1083          // Store in sessionStorage to persist across page navigation
1084          sessionStorage.setItem('twoa_punchout_active', 'true');
1085          sessionStorage.setItem('twoa_punchout_id', punchoutId);
1086          console.log('[TWOA Punchout] Session ID:', punchoutId);
1087          
1088          // Redirect with punchout parameter
1089          console.log('[TWOA Punchout] Redirecting to:', newUrl.toString());
1090          window.location.href = newUrl.toString();
1091        } else {
1092          console.log('[TWOA Punchout] Password form detected, waiting for login...');
1093          
1094          // Watch for form submission / successful login
1095          const checkForAccess = setInterval(function() {
1096            const formStillVisible = document.querySelector('form[data-locksmith-form], input[type="password"][name*="lock"]');
1097            
1098            if (!formStillVisible) {
1099              console.log('[TWOA Punchout] ✓ Password form disappeared - activating punchout');
1100              clearInterval(checkForAccess);
1101              
1102              const punchoutId = Date.now().toString() + Math.random().toString(36).substring(2, 15);
1103              sessionStorage.setItem('twoa_punchout_active', 'true');
1104              sessionStorage.setItem('twoa_punchout_id', punchoutId);
1105              
1106              const newUrl = new URL(window.location.href);
1107              newUrl.searchParams.set('punchout_sess_id', punchoutId);
1108              window.location.href = newUrl.toString();
1109            }
1110          }, 500);
1111          
1112          // Stop after 30 seconds
1113          setTimeout(() => clearInterval(checkForAccess), 30000);
1114        }
1115      });
1116    } else {
1117      // If punchout is already active, store it in session
1118      console.log('[TWOA Punchout] Punchout already active, storing in session');
1119      sessionStorage.setItem('twoa_punchout_active', 'true');
1120      sessionStorage.setItem('twoa_punchout_id', urlParams.get('punchout_sess_id'));
1121    }
1122  }
1123  
1124  // Apply punchout session to all pages if Te Wananga session is active
1125  const storedPunchoutActive = sessionStorage.getItem('twoa_punchout_active');
1126  const storedPunchoutId = sessionStorage.getItem('twoa_punchout_id');
1127  console.log('[TWOA Punchout] Session storage - Active:', storedPunchoutActive, 'ID:', storedPunchoutId);
1128  
1129  if (storedPunchoutActive === 'true' && storedPunchoutId) {
1130    const urlParams = new URLSearchParams(window.location.search);
1131    if (!urlParams.has('punchout_sess_id')) {
1132      console.log('[TWOA Punchout] Applying stored punchout session to current page');
1133      const newUrl = new URL(window.location.href);
1134      newUrl.searchParams.set('punchout_sess_id', storedPunchoutId);
1135      window.history.replaceState({}, '', newUrl.toString());
1136      console.log('[TWOA Punchout] URL updated:', newUrl.toString());
1137      
1138      // Reinitialize punchout if the script is loaded
1139      if (window.PunchoutCloud && window.PunchoutCloud.init) {
1140        console.log('[TWOA Punchout] Reinitializing PunchoutCloud');
1141        window.PunchoutCloud.init();
1142      }
1143    }
1144  }
1145})();
1146</script>
1146
1147
1148<!-- BEGIN app block: shopify://apps/one-tree-planted/blocks/index/1cbac389-d687-4afb-9e8a-26b6535fa1c2 -->
1148<script src="https://cdn.shopify.com/extensions/01a0f89b-d3f4-7fbc-a0d8-5474ae165888/reforestation-app-16/assets/script.js" defer></script>
1148
1149<!-- END app block -->
1149<script src="https://cdn.shopify.com/extensions/019d45d2-6a70-7eed-8da1-d1e8fd0fae86/fulfillment-fee-app-100/assets/fulfillment-fee-manager.js" type="text/javascript" defer="defer"></script>
1149
1150<link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1151<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: 7054289,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 1151
1151
1152<script>
1153  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
1154</script>
vendor: 1 bytes, line 1154
1154
1155<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}
1155).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: 7054289,storefrontBaseUrl: "https://printroom.co",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://printroom.co/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b","7ee89bf1"],webPixelsConfigList: [{"id":"2246574150","configuration":"{\"accountID\":\"SWPcHh\",\"webPixelConfig\":\"eyJlbmFibGVBZGRlZFRvQ2FydEV2ZW50cyI6IHRydWV9\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"c63c5b72c8d77be5f2d27d14c081da38","type":"APP","apiClientId":123074,"privacyPurposes":["ANALYTICS","MARKETING"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":[]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"id":"2207776838","configuration":"{\"tagID\":\"2612346888626\"}","eventPayloadVersion":"v1","runtimeContext":"STRICT","scriptVersion":"7ae565e198624b39e0856d352b9a6b4c","type":"APP","apiClientId":3009811,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized"}
1155,{"id":"1975877702","configuration":"{\"mailchimp_store_id\":\"store_sgk5l8njdgd17w61safe\", \"mailchimp_user_id\":\"33995925\",\"mailchimp_list_id\":\"ef9b0a5c04\"}","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":"462651462","configuration":"{\"config\":\"{\\\"google_tag_ids\\\":[\\\"G-7N7TTE08E9\\\",\\\"GT-KD7KB7H4\\\"],\\\"target_country\\\":\\\"ZZ\\\",\\\"gtag_events\\\":[{\\\"type\\\":\\\"search\\\",\\\"action_label\\\":\\\"G-7N7TTE08E9\\\"},{\\\"type\\\":\\\"begin_checkout\\\",\\\"action_label\\\":\\\"G-7N7TTE08E9\\\"},{\\\"type\\\":\\\"remove_from_cart\\\",\\\"action_label\\\":\\\"G-7N7TTE08E9\\\"},{\\\"type\\\":\\\"view_item\\\",\\\"action_label\\\":[\\\"G-7N7TTE08E9\\\",\\\"MC-1HQ5JHVSZ0\\\"]},{\\\"type\\\":\\\"purchase\\\",\\\"action_label\\\":[\\\"G-7N7TTE08E9\\\",\\\"MC-1HQ5JHVSZ0\\\"]},{\\\"type\\\":\\\"add_shipping_info\\\",\\\"action_label\\\":\\\"G-7N7TTE08E9\\\"},{\\\"type\\\":\\\"page_view\\\",\\\"action_label\\\":[\\\"G-7N7TTE08E9\\\",\\\"MC-1HQ5JHVSZ0\\\"]},{\\\"type\\\":\\\"view_item_list\\\",\\\"action_label\\\":\\\"G-7N7TTE08E9\\\"},{\\\"type\\\":\\\"add_payment_info\\\",\\\"action_label\\\":\\\"G-7N7TTE08E9\\\"},{\\\"type\\\":\\\"add_to_cart\\\",\\\"action_label\\\":\\\"G-7N7TTE08E9\\\"},{\\\"type\\\":\\\"view_cart\\\",\\\"action_label\\\":\\\"G-7N7TTE08E9\\\"}],\\\"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":"171573318","configuration":"{\"pixel_id\":\"1516354578649796\",\"pixel_type\":\"facebook_pixel\",\"metaapp_system_user_token\":\"-\"}","eventPayloadVersion":"v1","runtimeContext":"OPEN","scriptVersion":"96420dbe9ea96c426a1b7f364f977719","type":"APP","apiClientId":2329312,"privacyPurposes":["ANALYTICS","MARKETING","SALE_OF_DATA"],"dataSharingAdjustments":{"protectedCustomerApprovalScopes":["read_customer_address","read_customer_email","read_customer_name","read_customer_personal_data","read_customer_phone"],"dataSharingControls":["share_all_events"]},"dataSharingState":"optimized","enabledFlags":["9a3ed68a"]},{"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 Print Room","paymentSettings":{"currencyCode":"NZD"},"myshopifyDomain":"the-print-room.myshopify.com","countryCode":"NZ","storefrontUrl":"https:\/\/printroom.co"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[{"id":"4166829736006","handle":"stencil-hood","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"50500308959302","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8274958123078","handle":"surf-cap","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"50500227629126","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8274971885638","handle":"weekend-tote-bag","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"46076560605254","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8310098493510","handle":"milk-mug","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"44797553672262","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"7832314249286","handle":"heavy-tee","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"50500307976262","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8274999083078","handle":"custom-business-sock","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"44707158786118","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8394549297222","handle":"utility-tote-bag-16oz-colour","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"45031957561414","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]},{"id":"8275027722310","handle":"wo-s-maple-tee","isCollective":null,"title":null,"type":null,"untranslatedTitle":null,"url":null,"vendor":null,"remoteShopId":null,"variants":[{"id":"50500294475846","image":null,"price":null,"sku":null,"title":null,"untranslatedTitle":null}]}],"purchasingCompany":null},},"https://printroom.co/cdn","5982071ew7ea472e3p69b68784m2150dfea",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"151830298694","themePublished":"true","eventMetadataId":"e94b596c-0011-483c-9755-996bc430ce85","pageType":"home","shopId":"7054289","storefrontBaseUrl":"https:\/\/printroom.co","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>
1155<script>
1156  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
1157  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
1158  window.ShopifyAnalytics.meta.currency = 'USD';
1159  var meta = {"page":{"pageType":"home","requestId":"cde7d174-c61c-45ba-8501-b6db499c8199-1791103101"}};
1160  for (var attr in meta) {
1161    window.ShopifyAnalytics.meta[attr] = meta[attr];
1162  }
1163</script>
vendor: 1 bytes, line 1163
1163
1164<script class="analytics">
1165  (function () {
1166    var customDocumentWrite = function(content) {
1167      var jquery = null;
1168
1169      if (window.jQuery) {
1170        jquery = window.jQuery;
1171      } else if (window.Checkout && window.Checkout.$) {
1172        jquery = window.Checkout.$;
1173      }
1174
1175      if (jquery) {
1176        jquery('body').append(content);
1177      }
1178    };
1179
1180    var hasLoggedConversion = function(token) {
1181      if (token) {
1182        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
1183      }
1184      return false;
1185    }
1186
1187    var setCookieIfConversion = function(token) {
1188      if (token) {
1189        var twoMonthsFromNow = new Date(Date.now());
1190        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
1191
1192        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
1193      }
1194    }
1195
1196    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
1197    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
1198    if (trekkie.integrations) {
1199      return;
1200    }
1201    trekkie.methods = [
1202      'identify',
1203      'page',
1204      'ready',
1205      'track',
1206      'trackForm',
1207      'trackLink'
1208    ];
1209    trekkie.factory = function(method) {
1210      return function() {
1211        var args = Array.prototype.slice.call(arguments);
1212        args.unshift(method);
1213        trekkie.push(args);
1214        if (method == 'track' || method == 'page') {
1215          var pageUrl;
1216          try {
1217            pageUrl = window.location.href;
1218          } catch (e) {}
1219          var pageReferrer;
1220          try {
1221            pageReferrer = document.referrer;
1222          } catch (e) {}
1223          try {
1224            if (window.__TREKKIE_SHIM_QUEUE == null) {
1225              window.__TREKKIE_SHIM_QUEUE = [];
1226            }
1227            window.__TREKKIE_SHIM_QUEUE.push({
1228              from: 'trekkie-stub',
1229              method: method,
1230              args: args.slice(1),
1231              pageContext: {
1232                url: pageUrl,
1233                referrer: pageReferrer
1234              }
1235            });
1236          } catch (e) {
1237            // no-op
1238          }
1239        }
1240        return trekkie;
1241      };
1242    };
1243    for (var i = 0; i < trekkie.methods.length; i++) {
1244      var key = trekkie.methods[i];
1245      trekkie[key] = trekkie.factory(key);
1246    }
1247    trekkie.load = function(config) {
1248      trekkie.config = config || {};
1249      trekkie.config.initialDocumentCookie = document.cookie;
1250      var first = document.getElementsByTagName('script')[0];
1251var script = document.createElement('script');
1252script.type = 'text/javascript';
1253script.onerror = function(e) {
1254  var scriptFallback = document.createElement('script');
1255  scriptFallback.type = 'text/javascript';
1256  scriptFallback.onerror = function(error) {
1257          var Monorail = {
1258      produce: function produce(monorailDomain, schemaId, payload) {
1259        var currentMs = new Date().getTime();
1260        var event = {
1261          schema_id: schemaId,
1262          payload: payload,
1263          metadata: {
1264            event_created_at_ms: currentMs,
1265            event_sent_at_ms: currentMs
1266          }
1267        };
1268        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
1269      },
1270      sendRequest: function sendRequest(endpointUrl, payload) {
1271        // Try the sendBeacon API
1272        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
1273          var blobData = new window.Blob([payload], {
1274            type: 'text/plain'
1275          });
1276
1277          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
1278            return true;
1279          } // sendBeacon was not successful
1280
1281        } // XHR beacon
1282
1283        var xhr = new XMLHttpRequest();
1284
1285        try {
1286          xhr.open('POST', endpointUrl);
1287          xhr.setRequestHeader('Content-Type', 'text/plain');
1288          xhr.send(payload);
1289        } catch (e) {
1290          console.log(e);
1291        }
1292
1293        return false;
1294      },
1295      isIos12: function isIos12() {
1296        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
1297      }
1298    };
1299    Monorail.produce('monorail-edge.shopifysvc.com',
1300      'trekkie_storefront_load_errors/1.1',
1301      {shop_id: 7054289,
1302      theme_id: 151830298694,
1303      app_name: "storefront",
1304      context_url: window.location.href,
1305      source_url: "//printroom.co/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js"});
1306
1307  };
1308  scriptFallback.async = true;
1309  scriptFallback.src = '//printroom.co/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1310  first.parentNode.insertBefore(scriptFallback, first);
1311};
1312script.async = true;
1313script.src = '//printroom.co/cdn/s/trekkie.storefront.2f6d7d7ede7d24234881a9cd5f47e679642fa1f6.min.js';
1314first.parentNode.insertBefore(script, first);
1315
1316    };
1317    trekkie.load(
1318      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":7054289,"isMerchantRequest":null,"themeId":151830298694,"themeCityHash":"18288446332362764096","contentLanguage":"en","currency":"USD","eventMetadataId":"e94b596c-0011-483c-9755-996bc430ce85"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","7ee89bf1","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}}
1319    );
1320
1321    var loaded = false;
1322    trekkie.ready(function() {
1323      if (loaded) return;
1324      loaded = true;
1325
1326      window.ShopifyAnalytics.lib = window.trekkie;
1327
1328      var originalDocumentWrite = document.write;
1329      document.write = customDocumentWrite;
1330      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
1331      document.write = originalDocumentWrite;
1332
1333      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
1334      var token = match? match[1]: undefined;
1335      if (!hasLoggedConversion(token)) {
1336        setCookieIfConversion(token);
1337        
1338      }
1339    });
1340
1341    window.ShopifyAnalytics.lib.page(null,{"pageType":"home","requestId":"cde7d174-c61c-45ba-8501-b6db499c8199-1791103101","shopifyEmitted":true});
1342
1343    var eventsListenerScript = document.createElement('script');
1344    eventsListenerScript.async = true;
1345    eventsListenerScript.src = "//printroom.co/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
1346    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
1347})();</script>
1347
1348  
1348<script>
1349  if (!window.ga || (window.ga && typeof window.ga !== 'function')) {
1350    window.ga = function ga() {
1351      (window.ga.q = window.ga.q || []).push(arguments);
1352      if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
1353        window.Shopify.analytics.publish("ga_stub_called", {}, {sendTo: "google_osp_migration"});
1354      }
1355      console.error("Shopify's Google Analytics stub called with:", Array.from(arguments), "\nSee https://help.shopify.com/manual/promoting-marketing/pixels/pixel-migration#google for more information.");
1356    };
1357    if (window.Shopify && window.Shopify.analytics && typeof window.Shopify.analytics.publish === 'function') {
1358      window.Shopify.analytics.publish("ga_stub_initialized", {}, {sendTo: "google_osp_migration"});
1359    }
1360  }
1361</script>
vendor: 1 bytes, line 1361
1361
1362<script
1363  defer
1364  src="https://printroom.co/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.4.min.js"
1365  data-application="storefront-renderer"
1366  data-shop-id="7054289"
1367  data-render-region="gcp-us-central1"
1368  data-page-type="index"
1369  data-theme-instance-id="151830298694"
1370  data-theme-name="Baseline"
1371  data-theme-version="3.3.1"
1372  data-monorail-region="shop_domain"
1373  data-resource-timing-sampling-rate="10"
1374  data-shs="true"
1375  data-shs-beacon="true"
1376  data-shs-export-with-fetch="true"
1377  data-shs-logs-sample-rate="1"
1378  data-shs-beacon-endpoint="https://printroom.co/api/collect"
1379></script>
1379
1380<meta name="shopify-y" content="37d6d304-f8a0-4dbc-9dae-45523c3eb190" data-expiration="1822660701000"><meta name="shopify-s" content="d834ed81-c0e9-423d-8889-f9f55e254f16" data-expiration="1791104901000"><meta name="new-cookie-storage-activated" content="t">
1381</head>
1382
1383  <body>
1384<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W9DFFGB"
1385    height="0" width="0" style="display:none;visibility:hidden" title="gtm"></iframe></noscript>
1386
1387    <a class="skip-link" href="#MainContent">Skip to content</a>
1388    
1389    <!-- BEGIN sections: header-group -->
1390<div id="shopify-section-sections--21296457187398__geo_market_banner" class="shopify-section shopify-section-group-header-group contents">
1391  <style data-shopify>
1392    #shopify-section-sections--21296457187398__geo_market_banner [data-geo-market-banner] {
1393      position: sticky;
1394      top: 0;
1395      left: 0;
1396      right: 0;
1397      z-index: 40;
1398      display: block;
1399      width: 100%;
1400      padding: 0;
1401      border-bottom: 1px solid rgba(248, 250, 244, 0.18);
1402      background: #2b3990;
1403      color: #f8faf4;
1404      box-shadow: 0 14px 30px rgba(19, 27, 68, 0.18);
1405      pointer-events: auto;
1406    }
1407
1408    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__inner {
1409      display: grid;
1410      grid-template-columns: minmax(0, 1fr) auto;
1411      align-items: center;
1412      gap: 1rem 1.5rem;
1413      padding: 0.95rem var(--section-horizontal-spacing);
1414    }
1415
1416    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__message {
1417      margin: 0;
1418      max-width: 48rem;
1419      color: inherit;
1420      font-family: var(--font-body);
1421      font-size: var(--font-size-base);
1422      font-style: var(--font-body-style);
1423      font-weight: 500;
1424      letter-spacing: -0.01em;
1425      line-height: 1.45;
1426    }
1427
1428    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__actions {
1429      display: flex;
1430      flex-wrap: wrap;
1431      align-items: center;
1432      justify-content: flex-end;
1433      gap: 0.75rem;
1434      justify-self: end;
1435    }
1436
1437    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__button,
1438    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__dismiss {
1439      display: inline-flex;
1440      min-height: 2.875rem;
1441      align-items: center;
1442      justify-content: center;
1443      gap: 0.45rem;
1444      border-style: solid;
1445      border-width: var(--text-border-width);
1446      border-radius: var(--button-border-radius);
1447      font-family: var(--font-body);
1448      font-size: var(--font-size-base);
1449      font-style: var(--font-body-style);
1450      font-weight: 600;
1451      line-height: 1;
1452      text-decoration: none;
1453      text-transform: var(--button-text-transform);
1454      white-space: nowrap;
1455      transition:
1456        transform 0.18s ease,
1457        box-shadow 0.18s ease,
1458        background-color 0.18s ease,
1459        border-color 0.18s ease,
1460        color 0.18s ease,
1461        opacity 0.18s ease;
1462    }
1463
1464    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__button {
1465      padding: 0.8rem 1.35rem;
1466      border: 1px solid rgba(255, 255, 255, 0.12);
1467      background: #fbfbf6;
1468      box-shadow: 0 12px 24px rgba(14, 21, 52, 0.14);
1469      color: #2b3990;
1470    }
1471
1472    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__dismiss {
1473      padding: 0.8rem 1rem;
1474      border-color: rgba(248, 250, 244, 0.32);
1475      background: rgba(248, 250, 244, 0.08);
1476      box-shadow: none;
1477      color: inherit;
1478      opacity: 0.96;
1479    }
1480
1481    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__dismiss-icon {
1482      font-size: 0.95rem;
1483      line-height: 1;
1484    }
1485
1486    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__button:focus-visible,
1487    #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__dismiss:focus-visible {
1488      outline: 2px solid #f8faf4;
1489      outline-offset: 2px;
1490    }
1491
1492    @media (hover: hover) and (pointer: fine) {
1493      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__button:hover,
1494      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__dismiss:hover {
1495        transform: translateY(-1px);
1496      }
1497
1498      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__button:hover {
1499        background: #ffffff;
1500        box-shadow: 0 16px 30px rgba(14, 21, 52, 0.18);
1501      }
1502
1503      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__dismiss:hover {
1504        border-color: rgba(248, 250, 244, 0.56);
1505        background: rgba(248, 250, 244, 0.16);
1506        opacity: 1;
1507      }
1508    }
1509
1510    @media (max-width: 767px) {
1511      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__inner {
1512        grid-template-columns: 1fr;
1513        align-items: stretch;
1514        gap: 0.9rem;
1515      }
1516
1517      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__message {
1518        max-width: none;
1519      }
1520
1521      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__actions {
1522        width: 100%;
1523        display: grid;
1524        grid-template-columns: 1fr;
1525        justify-content: stretch;
1526        justify-self: stretch;
1527      }
1528
1529      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__button {
1530        width: 100%;
1531      }
1532
1533      #shopify-section-sections--21296457187398__geo_market_banner .geo-market-banner__dismiss {
1534        justify-self: start;
1535      }
1536    }
1537  </style>
1538
1539  <data-island
1540    data-color-scheme="scheme3"
1541    x-data="GeoMarketBanner({
1542    enabled: true,
1543    nzTargetUrl: &quot;https:\/\/theprintroom.nz&quot;,
1544    intlTargetUrl: &quot;https:\/\/printroom.co&quot;,
1545    auTargetUrl: &quot;https:\/\/www.printroom.co\/en-au&quot;,
1546    messages: {
1547      fromInternational: &quot;You&#39;re on our international site.&quot;,
1548      fromNz: &quot;You&#39;re on our New Zealand site.&quot;,
1549      fromAu: &quot;You&#39;re on our Australia site.&quot;,
1550      switchToNz: &quot;Switch to New Zealand&quot;,
1551      switchToAu: &quot;Switch to Australia&quot;,
1552      switchToInternational: &quot;Switch to international&quot;,
1553      dismiss: &quot;Dismiss&quot;
1554    }
1555  })"
1556    role="region"
1557    aria-label="Regional site selector"
1558    x-show="shown"
1559    x-transition:enter="transition duration-300 motion-reduce:duration-0 outline-0"
1560    x-transition:enter-start="-translate-y-full"
1561    x-transition:enter-end="translate-y-0"
1562    x-transition:leave="transition duration-200 motion-reduce:duration-0 outline-0"
1563    x-transition:leave-start="translate-y-0"
1564    x-transition:leave-end="-translate-y-full"
1565    @keydown.escape.window="dismiss"
1566    id="sections--21296457187398__geo_market_banner"
1567    data-geo-market-banner
1568    style="display: none;"
1569    on="idle"
1570    src="//printroom.co/cdn/shop/t/59/assets/island-geo-market-banner.bundle.js?v=76971093760605141431787098434"
1571  >
1572    <div class="geo-market-banner__inner">
1573      <p class="geo-market-banner__message">
1574        <span x-text="message"></span>
1575      </p>
1576      <div class="geo-market-banner__actions">
1577        <a
1578          class="geo-market-banner__button"
1579          :href="targetUrl"
1580          x-text="ctaLabel"
1581          @click="acceptSwitch($event)"
1582        ></a>
1583        <button
1584          class="geo-market-banner__dismiss"
1585          type="button"
1586          @click="dismiss"
1587          :aria-label="dismissLabel"
1588        >
1589          <span x-text="dismissLabel"></span>
1590          <span class="geo-market-banner__dismiss-icon" aria-hidden="true">×</span>
1591        </button>
1592      </div>
1593    </div>
1594  </data-island>
1595
1596
1597
1598</div><div id="shopify-section-sections--21296457187398__header" class="shopify-section shopify-section-group-header-group section-header relative z-20">
1599
1600
1601<style data-shopify>
1602  
1603    #shopify-section-sections--21296457187398__header {
1604      position: sticky;
1605      top: 0;
1606      z-index: 30;
1607    }
1608
1609    :root {
1610      --sticky-header-height: 66px;
1611    }
1612  
1613
1614  #shopify-section-sections--21296457187398__header {
1615    --logo-max-width: 80px;
1616  }
1617  @media (min-width: 1024px) {
1618    #shopify-section-sections--21296457187398__header {
1619      --logo-max-width: 90px;
1620    }
1621  }
1622</style>
1623
1624<data-island
1625  x-data="Header"
1626  class="block"
1627  :class="{ 'is-stuck' : isStuck }"
1628  
1629    data-sticky="true"
1630  
1631  
1632  data-color-scheme="scheme1"
1633  data-overlay-header-with-sticky="false"
1634  data-overlay-text-color-scheme="scheme1"
1635  id="sections--21296457187398__header"
1636  role="banner"
1637  data-theme-header
1638>
1639  
1640    <sticky-header-height-helper hidden></sticky-header-height-helper>
1641  
1642  <header
1643    x-ref="header"
1644    class="relative z-10 text-scheme-text header-glass"
1645    data-color-scheme="scheme1"
1646  >
1647    <nav
1648      class="relative hidden lg:block"
1649      aria-label="Primary"
1650    >
1651      <div class="flex items-stretch px-section-horizontal-spacing justify-between flex-wrap ">
1652        <div class="flex items-stretch">
1653          
1654            <div class="flex">
1655              <a
1656    href="/"
1657    class="break-word my-auto inline-block py-4"
1658  >
1659    
1660      <h1 class="contents">
1661    
1662    
1663      <div class="max-w-[var(--logo-max-width)]">
1664        
1665<img
1666            src="//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=90"
1667            srcset="//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=80 80w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=160 160w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=240 240w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=90 90w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=180 180w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=270 270w
1668            "
1669            width="543"
1670            height="397"
1671            loading="eager"
1672            
1673              sizes="(min-width: 1024px) 90px, 80px"
1674            
1675            alt="The Print Room"
1676            
1677          >
1678        
1679
1680        
1681      </div>
1682    
1683    
1684      </h1>
1685    
1686  </a>
1687            </div>
1688          
1689          
1690        </div>
1691
1692        
1693          
1694
1695
1696        <a
1697          
1698          class="flex py-4 relative self-stretch inline-flex flex-col"
1699          href="/collections/product-library"
1700        >
1701          <span class="m-auto inline-block">Products</span></a>
1702      
1703    
1704<data-island
1705        x-data="{
1706          expanded: false,
1707          hoverTimeout: null,
1708          openDropdown() {
1709            clearTimeout(this.hoverTimeout);
1710            this.expanded = true;
1711            this.$nextTick(() => {
1712              const header = this.$el.closest('header');
1713              const dd = this.$el.querySelector('.dropdown-glass');
1714              if (header && dd) {
1715                header.style.setProperty('--dropdown-h', dd.offsetHeight + 'px');
1716              }
1717            });
1718          },
1719          closeDropdown() {
1720            this.hoverTimeout = setTimeout(() => {
1721              this.expanded = false;
1722            }, 150);
1723          }
1724        }"
1725        @mouseenter="openDropdown()"
1726        @mouseleave="closeDropdown()"
1727        @focusin="openDropdown()"
1728        @focusout="if ($event.relatedTarget && !$el.contains($event.relatedTarget)) closeDropdown()"
1729        class="no-js-focus-wrapper flex self-stretch header-dropdown"
1730        
1731      >
1732        <button
1733          class="inline-flex py-4 items-center header-menu-item"
1734          @click="expanded = !expanded"
1735          :aria-expanded="expanded ? true : 'false'"
1736          aria-controls="menu0"
1737        >
1738          <span class="inline-block pr-1">Services</span><span
1739              class="mr-1 inline-block h-3 w-3 origin-center align-middle"
1740              x-show="!expanded"
1741            ><svg
1742  class="theme-icon"
1743  xmlns="http://www.w3.org/2000/svg"
1744  fill="none"
1745  viewBox="0 0 24 24"
1746>
1747  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
1748</svg>
1749</span>
1750            <span
1751              class="mr-1 inline-block h-3 w-3 origin-center align-middle"
1752              x-show="expanded"
1753              style="display: none;"
1754            ><svg
1755  class="theme-icon"
1756  xmlns="http://www.w3.org/2000/svg"
1757  fill="none"
1758  viewBox="0 0 24 24"
1759>
1760  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
1761</svg>
1762</span></button>
1763        <div
1764          id="menu0"
1765          class="no-js-focus-container absolute top-full z-20 dropdown-glass text-scheme-text bottom-auto left-0 w-full"
1766          x-cloak
1767          x-show="expanded"
1768          x-transition:enter="transition ease-out duration-300 motion-reduce:duration-0"
1769          x-transition:enter-start="opacity-0 -translate-y-2 scale-[0.98]"
1770          x-transition:enter-end="opacity-100 translate-y-0 scale-100"
1771          x-transition:leave="transition ease-in duration-200 motion-reduce:duration-0"
1772          x-transition:leave-start="opacity-100 translate-y-0 scale-100"
1773          x-transition:leave-end="opacity-0 -translate-y-1 scale-[0.99]"
1774          style="transform-origin: top center;"
1775          data-color-scheme=""
1776        ><div class=" text-left"><div class="grid gap-gutter bg-gridline-color grid-cols-4">
1777                
1778        <div class="bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text">
1779          <a
1780            
1781            class="font-heading inline-block py-1"
1782            href="/pages/services"
1783          >
1784            Services
1785          </a>
1786        </div>
1787      
1788                
1789
1790
1791<div class="bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text">
1792              <h2 class="font-heading mb-2">
1793                
1794                  <a
1795                    
1796                    class="inline-block py-1"
1797                    href="/pages/product-capabilities"
1798                    
1799                  >
1800                    Production capabilities
1801                  </a>
1802                
1803              </h2>
1804              <ul><li class="">
1805                    <a
1806                      
1807                      class="inline-block py-1"
1808                      href="/pages/custom-manufactured"
1809                    >Custom-manufactured</a>
1810                  </li><li class="">
1811                    <a
1812                      
1813                      class="inline-block py-1"
1814                      href="/pages/screen-printing"
1815                    >Screen printing</a>
1816                  </li><li class="">
1817                    <a
1818                      
1819                      class="inline-block py-1"
1820                      href="/pages/embroidery"
1821                    >Embroidery</a>
1822                  </li><li class="">
1823                    <a
1824                      
1825                      class="inline-block py-1"
1826                      href="/pages/heat-transfers"
1827                    >Heat transfers</a>
1828                  </li><li class="">
1829                    <a
1830                      
1831                      class="inline-block py-1"
1832                      href="/pages/finishing"
1833                    >Finishing</a>
1834                  </li></ul>
1835            </div><div class="bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text">
1836              <h2 class="font-heading mb-2">
1837                
1838                  <a
1839                    
1840                    class="inline-block py-1"
1841                    href="/pages/partner-services"
1842                    
1843                  >
1844                    Partner services
1845                  </a>
1846                
1847              </h2>
1848              <ul><li class="">
1849                    <a
1850                      
1851                      class="inline-block py-1"
1852                      href="/pages/client-portal"
1853                    >Client portal</a>
1854                  </li><li class="">
1855                    <a
1856                      
1857                      class="inline-block py-1"
1858                      href="/pages/fundraising-pre-orders"
1859                    >Fundraise & pre-order</a>
1860                  </li><li class="">
1861                    <a
1862                      
1863                      class="inline-block py-1"
1864                      href="/pages/repurpose-initiative"
1865                    >Repurpose initiative</a>
1866                  </li></ul>
1867            </div><div class="bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text">
1868              <h2 class="font-heading mb-2">
1869                
1870                  <a
1871                    
1872                    class="inline-block py-1"
1873                    href="/pages/popular-services"
1874                    
1875                  >
1876                    Popular services
1877                  </a>
1878                
1879              </h2>
1880              <ul><li class="">
1881                    <a
1882                      
1883                      class="inline-block py-1"
1884                      href="/pages/school-leavers-gear"
1885                    >School leavers gear</a>
1886                  </li><li class="">
1887                    <a
1888                      
1889                      class="inline-block py-1"
1890                      href="/pages/tshirt-printing"
1891                    >Custom t-shirt printing</a>
1892                  </li></ul>
1893            </div>
1894</div></div></div>
1895      </data-island>
1896
1897
1898
1899
1900        <a
1901          
1902          class="flex py-4 relative self-stretch inline-flex flex-col"
1903          href="/pages/responsibility"
1904        >
1905          <span class="m-auto inline-block">Responsibility</span></a>
1906      
1907    
1908<data-island
1909        x-data="{
1910          expanded: false,
1911          hoverTimeout: null,
1912          openDropdown() {
1913            clearTimeout(this.hoverTimeout);
1914            this.expanded = true;
1915            this.$nextTick(() => {
1916              const header = this.$el.closest('header');
1917              const dd = this.$el.querySelector('.dropdown-glass');
1918              if (header && dd) {
1919                header.style.setProperty('--dropdown-h', dd.offsetHeight + 'px');
1920              }
1921            });
1922          },
1923          closeDropdown() {
1924            this.hoverTimeout = setTimeout(() => {
1925              this.expanded = false;
1926            }, 150);
1927          }
1928        }"
1929        @mouseenter="openDropdown()"
1930        @mouseleave="closeDropdown()"
1931        @focusin="openDropdown()"
1932        @focusout="if ($event.relatedTarget && !$el.contains($event.relatedTarget)) closeDropdown()"
1933        class="no-js-focus-wrapper flex self-stretch header-dropdown"
1934        style="position: relative;"
1935      >
1936        <button
1937          class="inline-flex py-4 items-center header-menu-item"
1938          @click="expanded = !expanded"
1939          :aria-expanded="expanded ? true : 'false'"
1940          aria-controls="menu1"
1941        >
1942          <span class="inline-block pr-1">Our story</span><span
1943              class="mr-1 inline-block h-3 w-3 origin-center align-middle"
1944              x-show="!expanded"
1945            ><svg
1946  class="theme-icon"
1947  xmlns="http://www.w3.org/2000/svg"
1948  fill="none"
1949  viewBox="0 0 24 24"
1950>
1951  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
1952</svg>
1953</span>
1954            <span
1955              class="mr-1 inline-block h-3 w-3 origin-center align-middle"
1956              x-show="expanded"
1957              style="display: none;"
1958            ><svg
1959  class="theme-icon"
1960  xmlns="http://www.w3.org/2000/svg"
1961  fill="none"
1962  viewBox="0 0 24 24"
1963>
1964  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
1965</svg>
1966</span></button>
1967        <div
1968          id="menu1"
1969          class="no-js-focus-container absolute top-full z-20 dropdown-glass text-scheme-text gs-dropdown-content nav-dropdown-content"
1970          x-cloak
1971          x-show="expanded"
1972          x-transition:enter="transition ease-out duration-300 motion-reduce:duration-0"
1973          x-transition:enter-start="opacity-0 -translate-y-2 scale-[0.98]"
1974          x-transition:enter-end="opacity-100 translate-y-0 scale-100"
1975          x-transition:leave="transition ease-in duration-200 motion-reduce:duration-0"
1976          x-transition:leave-start="opacity-100 translate-y-0 scale-100"
1977          x-transition:leave-end="opacity-0 -translate-y-1 scale-[0.99]"
1978          style="transform-origin: top left;"
1979          data-color-scheme=""
1980        ><a
1981                href="/pages/in-good-company-with"
1982                
1983              >In good company with…</a><a
1984                href="/pages/about-print-room"
1985                
1986              >Our origins</a></div>
1987      </data-island>
1988
1989<data-island
1990          x-data="{
1991            expanded: false,
1992            hoverTimeout: null,
1993            openDropdown() {
1994              clearTimeout(this.hoverTimeout);
1995              this.expanded = true;
1996              this.$nextTick(() => {
1997                const header = this.$el.closest('header');
1998                const dd = this.$el.querySelector('.dropdown-glass');
1999                if (header && dd) {
2000                  header.style.setProperty('--dropdown-h', dd.offsetHeight + 'px');
2001                }
2002              });
2003            },
2004            closeDropdown() {
2005              this.hoverTimeout = setTimeout(() => {
2006                this.expanded = false;
2007              }, 150);
2008            }
2009          }"
2010          @mouseenter="openDropdown()"
2011          @mouseleave="closeDropdown()"
2012          @focusin="openDropdown()"
2013          @focusout="if ($event.relatedTarget && !$el.contains($event.relatedTarget)) closeDropdown()"
2014          class="no-js-focus-wrapper flex items-center self-stretch header-dropdown"
2015          style="position: relative;"
2016        >
2017          <button
2018            class="gs-pill"
2019            :class="{ 'is-active': expanded }"
2020            @click="expanded = !expanded"
2021            :aria-expanded="expanded ? 'true' : 'false'"
2022          >
2023            <span>Get started +</span>
2024          </button>
2025          <div
2026            class="no-js-focus-container absolute top-full z-20 dropdown-glass text-scheme-text gs-dropdown-content"
2027            x-cloak
2028            x-show="expanded"
2029            x-transition:enter="transition ease-out duration-300 motion-reduce:duration-0"
2030            x-transition:enter-start="opacity-0 -translate-y-2"
2031            x-transition:enter-end="opacity-100 translate-y-0"
2032            x-transition:leave="transition ease-in duration-200 motion-reduce:duration-0"
2033            x-transition:leave-start="opacity-100 translate-y-0"
2034            x-transition:leave-end="opacity-0 -translate-y-1"
2035            style="transform-origin: top left;"
2036            data-color-scheme=""
2037          ><a href="/collections/product-library">Start a project</a><a href="/pages/book-a-call">Book a call</a></div>
2038        </data-island>
2039
2040        
2041<div class="flex items-stretch justify-end gap-x-4 text-right "><div class="ml-4 my-auto shrink-0"><form method="post" action="/localization" id="header-localization-form" accept-charset="UTF-8" class="shopify-localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/" /><div class="flex gap-4 justify-end max-lg:hidden"><div class="inline-block shrink-0 select-none">
2042        <h2 class="sr-only" id="country-heading-header">
2043          Country/region
2044        </h2>
2045        <data-island
2046          class="relative"
2047          x-data="{ expanded: false }"
2048          @keydown.escape.prevent.stop="expanded = false"
2049          @click.outside="expanded = false"
2050        >
2051          <button
2052            type="button"
2053            class="text-base py-4"
2054            :aria-expanded="expanded"
2055            aria-controls="country-list-header"
2056            aria-describedby="country-heading-header"
2057            @click.prevent="expanded = ! expanded"
2058          >
2059            United States (USD
2060            $)
2061            <span
2062              class="rotate ml-1 inline-block w-3 origin-center transform fill-current transition"
2063              :class="{ 'rotate-180': expanded }"
2064            >
2065              <svg
2066  class="theme-icon"
2067  xmlns="http://www.w3.org/2000/svg"
2068  fill="none"
2069  viewBox="0 0 24 24"
2070>
2071  <path stroke="currentColor" d="M1.5 7 12 17.5 22.5 7" vector-effect="non-scaling-stroke"/>
2072</svg>
2073
2074            </span>
2075          </button>
2076          <div
2077            class="absolute top-full left-0 right-auto"
2078            x-show="expanded"
2079            style="display: none;"
2080          >
2081            <ul
2082              id="country-list-header"
2083              class="relative z-10 flex max-h-[30vh] w-max max-w-[theme(spacing.64)] snap-y snap-mandatory flex-col gap-[--text-border-width] overflow-y-auto border-text border-gridline-color bg-gridline-color text-base"
2084              x-transition:enter="transition ease duration-300"
2085              x-transition:enter-start="opacity-0"
2086              x-transition:enter-end="opacity-100"
2087              x-transition:leave="transition ease duration-300"
2088              x-transition:leave-start="opacity-100"
2089              x-transition:leave-end="opacity-0"
2090              :aria-hidden="! expanded"
2091            >
2092              
2093                <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2094                  <button
2095                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2096                    type="button"
2097                    
2098                    @click.prevent="$refs.input.value = 'AU'; $root.closest('form').submit();"
2099                  >
2100                    <span class="border-transparent border-b-text">Australia (AUD
2101                      $)</span
2102                    >
2103                  </button>
2104                </li>
2105                <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2106                  <button
2107                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2108                    type="button"
2109                    
2110                    @click.prevent="$refs.input.value = 'CN'; $root.closest('form').submit();"
2111                  >
2112                    <span class="border-transparent border-b-text">China (CNY
2113                      ¥)</span
2114                    >
2115                  </button>
2116                </li>
2117                <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2118                  <button
2119                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2120                    type="button"
2121                    
2122                    @click.prevent="$refs.input.value = 'FR'; $root.closest('form').submit();"
2123                  >
2124                    <span class="border-transparent border-b-text">France (EUR
2125                      €)</span
2126                    >
2127                  </button>
2128                </li>
2129                <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2130                  <button
2131                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2132                    type="button"
2133                    
2134                    @click.prevent="$refs.input.value = 'NZ'; $root.closest('form').submit();"
2135                  >
2136                    <span class="border-transparent border-b-text">New Zealand (NZD
2137                      $)</span
2138                    >
2139                  </button>
2140                </li>
2141                <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2142                  <button
2143                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2144                    type="button"
2145                    
2146                    @click.prevent="$refs.input.value = 'GB'; $root.closest('form').submit();"
2147                  >
2148                    <span class="border-transparent border-b-text">United Kingdom (GBP
2149                      £)</span
2150                    >
2151                  </button>
2152                </li>
2153                <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2154                  <button
2155                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2156                    type="button"
2157                    
2158                      aria-current="true"
2159                    
2160                    @click.prevent="$refs.input.value = 'US'; $root.closest('form').submit();"
2161                  >
2162                    <span class="border-scheme-text border-b-text">United States (USD
2163                      $)</span
2164                    >
2165                  </button>
2166                </li></ul>
2167          </div>
2168
2169          <input
2170            x-ref="input"
2171            type="hidden"
2172            name="country_code"
2173            id="CountrySelector"
2174            value="US"
2175          >
2176        </data-island>
2177      </div></div></form></div>
2178            <div class="flex items-stretch whitespace-nowrap">
2179              <data-island
2180  x-data="{ searchOpen: false }"
2181  class="contents"
2182>
2183  <a
2184    x-ref="searchToggle"
2185    @click.prevent="searchOpen = true"
2186    @keydown.space.prevent="searchOpen = true"
2187    class="inline-flex py-4 h-full"
2188    href="/search"
2189    :role="`button`"
2190  ><span class="sr-only">Search</span>
2191      <span class="my-auto inline-block h-6 w-6 align-middle"><svg
2192  class="theme-icon"
2193  xmlns="http://www.w3.org/2000/svg"
2194  fill="none"
2195  viewBox="0 0 24 24"
2196>
2197  <path stroke="currentColor" d="M2 11a9 9 0 1 0 18 0 9 9 0 0 0-18 0Zm15.364 6.364L22 22" vector-effect="non-scaling-stroke"/>
2198</svg>
2199</span></a>
2200
2201  <data-island
2202    class="absolute z-20 border-y-gridline border-gridline-color bg-scheme-background px-section-horizontal-spacing py-2 text-scheme-text  w-full top-full bottom-auto left-0"
2203    x-cloak
2204    x-show="searchOpen"
2205    x-transition:enter="ease duration-200"
2206    x-transition:enter-start="opacity-0"
2207    x-transition:enter-end="opacity-100"
2208    x-transition:leave="ease duration-200"
2209    x-transition:leave-start="opacity-100"
2210    x-transition:leave-end="opacity-0"
2211    
2212      x-data="PredictiveSearch('product,collection,article,page,query')"
2213      x-trap.inert.noscroll="resultsOpen"
2214      @keyup="onKeyup"
2215      @keydown="onKeydown"
2216      @click.outside.prevent="close()"
2217      @keyup.escape.prevent.stop="close(true, $refs.searchToggle)"
2218      @focusin.window="( searchOpen && ! $root.contains($event.target) ) && close()"
2219      style="--results-height: calc(100vh - var(--header-group-height) - var(--search-bar-height) + var(--gridline-width));"
2220      src="//printroom.co/cdn/shop/t/59/assets/island-predictive-search.bundle.js?v=181601895277339900721787098435"
2221    
2222    x-ref="searchComponent"
2223    data-color-scheme="scheme1"
2224    on="idle"
2225  >
2226    <div
2227      class="w-full whitespace-normal"
2228    >
2229      <form
2230        action="/search"
2231        method="get"
2232        class="predictive-search-form input-group search"
2233        role="search"
2234      >
2235        <input type="hidden" name="options[prefix]" value="last"><label
2236          for="search-logo_left_menu_spread-desktop"
2237          class="hidden"
2238        >Submit</label>
2239
2240        <div
2241          class="flex items-center justify-between"
2242        >
2243          <button
2244            class="mr-4 py-2"
2245            aria-label="Submit"
2246            type="submit"
2247          >
2248            <span class="inline-block h-6 w-6 align-middle"><svg
2249  class="theme-icon"
2250  xmlns="http://www.w3.org/2000/svg"
2251  fill="none"
2252  viewBox="0 0 24 24"
2253>
2254  <path stroke="currentColor" d="M2 11a9 9 0 1 0 18 0 9 9 0 0 0-18 0Zm15.364 6.364L22 22" vector-effect="non-scaling-stroke"/>
2255</svg>
2256</span>
2257            <span class="sr-only">Submit</span>
2258          </button>
2259          <input
2260            id="search-logo_left_menu_spread-desktop"
2261            type="search"
2262            name="q"
2263            value=""
2264            placeholder="Search"
2265            class="font-body block w-full bg-transparent placeholder-current"
2266            aria-label="Search"
2267            data-search-input
2268            
2269              :aria-expanded="resultsOpen"
2270              :aria-activedescendant="resultsOpen ? 'predictive-search-results' : false"
2271              aria-owns="predictive-search-results"
2272              aria-controls="predictive-search-results"
2273              aria-autocomplete="list"
2274              autocorrect="off"
2275              autocomplete="off"
2276              autocapitalize="off"
2277              spellcheck="false"
2278              x-ref="input"
2279              x-model.debounce.300="rawQuery"
2280              @focus="onFocus"
2281            
2282          >
2283          <button
2284            class="ml-4 py-2"
2285            
2286              @click="close()"
2287            
2288            type="button"
2289          >
2290            <span class="sr-only">Close</span>
2291            <span class="inline-block h-6 w-6 align-middle"><svg
2292  class="theme-icon"
2293  xmlns="http://www.w3.org/2000/svg"
2294  fill="none"
2295  viewBox="0 0 24 24"
2296>
2297  <path stroke="currentColor" d="m1.5 1.5 21 21m0-21-21 21" vector-effect="non-scaling-stroke"/>
2298</svg>
2299</span>
2300          </button>
2301        </div><div
2302            tabindex="-1"
2303            x-cloak
2304            class="predictive-search-results absolute left-0 right-0 top-[calc(100%_+_var(--gridline-width))] z-50 h-screen text-scheme-text transition-colors duration-300 ease-out"
2305          >
2306            <template x-if="loading">
2307              <div class="border-b-gridline border-gridline-color bg-scheme-background">
2308                <div
2309                  class="mx-auto py-6 text-center"
2310                >
2311                  <div>Loading&hellip;</div>
2312                </div>
2313              </div>
2314            </template>
2315            <template x-if="resultsOpen">
2316              <div
2317                x-show="!loading && resultsHTML && resultsOpen"
2318                class="px-section max-h-[--results-height] scroll-py-5 overflow-hidden overflow-y-auto border-b-gridline border-gridline-color bg-scheme-background"
2319                x-html-if-set="resultsHTML"
2320              ></div>
2321            </template>
2322          </div>
2323          <span
2324            class="predictive-search-status sr-only"
2325            role="status"
2326            aria-hidden="true"
2327          ></span></form>
2328    </div>
2329  </data-island>
2330</data-island>
2331
2332            </div>
2333          
2334
2335          <div class="flex items-stretch whitespace-nowrap gap-4"><style>
2336  @keyframes quote-badge-pulse {
2337    0% { transform: scale(1); }
2338    50% { transform: scale(1.22); }
2339    100% { transform: scale(1); }
2340  }
2341
2342  @keyframes quote-icon-pulse {
2343    0% { transform: scale(1); }
2344    50% { transform: scale(1.12); }
2345    100% { transform: scale(1); }
2346  }
2347
2348  .quote-badge-animate {
2349    animation: quote-badge-pulse 0.4s ease-in-out;
2350  }
2351  .quote-icon-animate {
2352    animation: quote-icon-pulse 0.4s ease-in-out;
2353  }
2354  .quote-badge {
2355    min-width: 1.3rem;
2356    padding-inline: 0.22rem;
2357    box-shadow: 0 10px 24px rgba(43, 57, 144, 0.22);
2358  }
2359  .quote-tooltip {
2360    position: absolute;
2361    top: calc(100% + 8px);
2362    right: -10px;
2363    width: 152px;
2364    padding: 15px 16px;
2365    border-radius: 20px;
2366    font-size: 14px;
2367    font-style: italic;
2368    line-height: 17px;
2369    color: #000;
2370    background: #FBFBF6;
2371    border: 1px solid #000;
2372    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
2373    z-index: 1000;
2374    cursor: pointer;
2375    white-space: normal;
2376    text-align: left;
2377  }
2378  .quote-tooltip::before {
2379    content: '';
2380    position: absolute;
2381    top: -7px;
2382    right: 24px;
2383    width: 14px;
2384    height: 14px;
2385    background: #FBFBF6;
2386    border-top: 1px solid #000;
2387    border-left: 1px solid #000;
2388    transform: rotate(45deg);
2389  }
2390  @media (max-width: 640px) {
2391    .quote-tooltip {
2392      right: -10px;
2393    }
2394  }
2395</style>
2396
2397<div
2398  class="relative"
2399  x-data="{
2400    showTooltip: false,
2401    tooltipDismissed: false,
2402    animating: false,
2403    tooltipTimer: null,
2404    dismissTooltip() {
2405      this.showTooltip = false;
2406      this.tooltipDismissed = true;
2407      if (this.tooltipTimer) clearTimeout(this.tooltipTimer);
2408      if (this.tooltipDelayTimer) clearTimeout(this.tooltipDelayTimer);
2409    },
2410    tooltipDelayTimer: null,
2411    triggerTooltip() {
2412      try {
2413        if (this.tooltipDismissed || sessionStorage.getItem('psstShown')) return;
2414      } catch (error) {
2415        if (this.tooltipDismissed) return;
2416      }
2417      if (this.tooltipDelayTimer) clearTimeout(this.tooltipDelayTimer);
2418      this.tooltipDelayTimer = setTimeout(() => {
2419        if (this.tooltipDismissed) return;
2420        try { sessionStorage.setItem('psstShown', '1'); } catch(e) {}
2421        this.showTooltip = true;
2422        if (this.tooltipTimer) clearTimeout(this.tooltipTimer);
2423        this.tooltipTimer = setTimeout(() => { this.showTooltip = false; }, 15000);
2424      }, 5000);
2425    },
2426    pulseIcon() {
2427      this.animating = true;
2428      setTimeout(() => { this.animating = false; }, 450);
2429    }
2430  }"
2431  @quote-item-added.document="pulseIcon(); triggerTooltip()"
2432>
2433  <a
2434    href="/pages/general-quote"
2435    class="inline-flex min-h-10 items-center py-4 h-full"
2436    :role="`button`"
2437    :aria-expanded="$store.modals.rightDrawer.contents === 'favorites'"
2438    @click.prevent="$store.modals.open('favorites'); dismissTooltip(); window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'quote_drawer_opened', quote_count: $store.favorites.count, page_path: window.location.pathname })"
2439    @keydown.space.prevent="$store.modals.open('favorites'); dismissTooltip()"
2440    aria-label="Open your quote"
2441  ><div class="pointer-events-none relative my-auto align-middle" :class="{ 'quote-icon-animate': animating }"><span class="inline-block h-6 w-6 align-top [&_*]:pointer-events-none"><span class="h-full w-full">
2442  <svg
2443    aria-hidden="true"
2444    focusable="false"
2445    role="presentation"
2446    class="icon icon-quote-list-outline"
2447    viewBox="0 0 24 24"
2448    fill="none"
2449  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
2450    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
2451    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
2452    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
2453    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
2454    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
2455    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
2456    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
2457  </svg>
2458</span>
2459</span><span
2460          x-show="$store.favorites.count > 0"
2461          x-cloak
2462          class="quote-badge absolute flex items-center justify-center rounded-full text-[10px] font-bold"
2463          style="background-color: #4B4D72; color: #fff; width: 18px; height: 18px; top: -7px; right: -8px;"
2464          :class="{ 'quote-badge-animate': animating }"
2465          x-text="$store.favorites.count"
2466        ></span>
2467        <span class="sr-only" x-text="'Your Quote: ' + $store.favorites.countWithText()">
2468          Your Quote: 0 items
2469        </span>
2470      </div></a><div
2471    x-show="showTooltip"
2472    x-transition:enter="transition ease-out duration-200"
2473    x-transition:enter-start="opacity-0 translate-y-1"
2474    x-transition:enter-end="opacity-100 translate-y-0"
2475    x-transition:leave="transition ease-in duration-150"
2476    x-transition:leave-start="opacity-100"
2477    x-transition:leave-end="opacity-0"
2478    x-cloak
2479    class="quote-tooltip"
2480    @click="dismissTooltip()"
2481  >
2482    Hi, your favourite products are here.
2483  </div>
2484</div>
2485
2486  <a
2487    href="/cart"
2488    class="inline-flex py-4 h-full"
2489    
2490  ><div class="pointer-events-none relative my-auto align-middle">
2491        <span
2492          x-show="$store.cartCount.count > 0"
2493          class="absolute right-0 top-1 h-2 w-2 rounded-full"
2494          style="background-color: #f1ffa5;"
2495        ></span>
2496        <span class="inline-block h-6 w-6 fill-current align-top [&_*]:pointer-events-none"><svg
2497  class="theme-icon"
2498  xmlns="http://www.w3.org/2000/svg"
2499  fill="none"
2500  viewBox="0 0 24 24"
2501>
2502  <path stroke="currentColor" d="M2 7h20v15H2V7Zm15 0v-.2A4.8 4.8 0 0 0 12.2 2h-.4A4.8 4.8 0 0 0 7 6.8V7" vector-effect="non-scaling-stroke"/>
2503</svg>
2504</span>
2505        <span class="sr-only" x-text="$store.cartCount.countWithText()">
2506          
25070 items
2508        </span>
2509      </div></a>
2510          </div>
2511        </div>
2512      </div>
2513
2514      
2515    </nav>
2516
2517    
2518    <nav
2519      aria-label="Header"
2520      class="lg:hidden"
2521    >
2522      <div class="flex items-center justify-between px-section-horizontal-spacing lg:relative">
2523        <div class="flex gap-2 items-center">
2524          
2525            <div>
2526              <a
2527    href="/"
2528    class="break-word my-auto inline-block py-4"
2529  >
2530    
2531      <h1 class="contents">
2532    
2533    
2534      <div class="max-w-[var(--logo-max-width)]">
2535        
2536<img
2537            src="//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=90"
2538            srcset="//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=80 80w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=160 160w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=240 240w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=90 90w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=180 180w,//printroom.co/cdn/shop/files/printroom_primary_logo.svg?v=1704916358&width=270 270w
2539            "
2540            width="543"
2541            height="397"
2542            loading="eager"
2543            
2544              sizes="(min-width: 1024px) 90px, 80px"
2545            
2546            alt="The Print Room"
2547            
2548          >
2549        
2550
2551        
2552      </div>
2553    
2554    
2555      </h1>
2556    
2557  </a>
2558            </div>
2559          
2560          
2561        </div>
2562
2563        
2564
2565        <div class="flex justify-end gap-2 text-right">
2566          
2567            <button
2568    class="inline-block no-js:hidden py-4"
2569    :aria-expanded="$store.modals.leftDrawer.contents === 'sidebar'"
2570    @click="$store.modals.open('sidebar')"
2571  ><span class="sr-only pointer-events-none">Menu</span>
2572      <span class="pointer-events-none inline-block h-6 w-6 align-middle"><svg
2573  class="theme-icon"
2574  xmlns="http://www.w3.org/2000/svg"
2575  fill="none"
2576  viewBox="0 0 24 24"
2577>
2578  <path stroke="currentColor" d="M1 7.364h22M1 15.636h22" vector-effect="non-scaling-stroke"/>
2579</svg>
2580</span></button>
2581          
2582
2583          
2584
2585          
2586            <div class="whitespace-nowrap lg:ml-4">
2587              <data-island
2588  x-data="{ searchOpen: false }"
2589  class="contents"
2590>
2591  <a
2592    x-ref="searchToggle"
2593    @click.prevent="searchOpen = true"
2594    @keydown.space.prevent="searchOpen = true"
2595    class="inline-flex py-4 h-full"
2596    href="/search"
2597    :role="`button`"
2598  ><span class="sr-only">Search</span>
2599      <span class="my-auto inline-block h-6 w-6 align-middle"><svg
2600  class="theme-icon"
2601  xmlns="http://www.w3.org/2000/svg"
2602  fill="none"
2603  viewBox="0 0 24 24"
2604>
2605  <path stroke="currentColor" d="M2 11a9 9 0 1 0 18 0 9 9 0 0 0-18 0Zm15.364 6.364L22 22" vector-effect="non-scaling-stroke"/>
2606</svg>
2607</span></a>
2608
2609  <data-island
2610    class="absolute z-20 border-y-gridline border-gridline-color bg-scheme-background px-section-horizontal-spacing py-2 text-scheme-text  w-full top-full bottom-auto left-0"
2611    x-cloak
2612    x-show="searchOpen"
2613    x-transition:enter="ease duration-200"
2614    x-transition:enter-start="opacity-0"
2615    x-transition:enter-end="opacity-100"
2616    x-transition:leave="ease duration-200"
2617    x-transition:leave-start="opacity-100"
2618    x-transition:leave-end="opacity-0"
2619    
2620      x-data="PredictiveSearch('product,collection,article,page,query')"
2621      x-trap.inert.noscroll="resultsOpen"
2622      @keyup="onKeyup"
2623      @keydown="onKeydown"
2624      @click.outside.prevent="close()"
2625      @keyup.escape.prevent.stop="close(true, $refs.searchToggle)"
2626      @focusin.window="( searchOpen && ! $root.contains($event.target) ) && close()"
2627      style="--results-height: calc(100vh - var(--header-group-height) - var(--search-bar-height) + var(--gridline-width));"
2628      src="//printroom.co/cdn/shop/t/59/assets/island-predictive-search.bundle.js?v=181601895277339900721787098435"
2629    
2630    x-ref="searchComponent"
2631    data-color-scheme="scheme1"
2632    on="idle"
2633  >
2634    <div
2635      class="w-full whitespace-normal"
2636    >
2637      <form
2638        action="/search"
2639        method="get"
2640        class="predictive-search-form input-group search"
2641        role="search"
2642      >
2643        <input type="hidden" name="options[prefix]" value="last"><label
2644          for="search-logo_left_menu_spread-mobile"
2645          class="hidden"
2646        >Submit</label>
2647
2648        <div
2649          class="flex items-center justify-between"
2650        >
2651          <button
2652            class="mr-4 py-2"
2653            aria-label="Submit"
2654            type="submit"
2655          >
2656            <span class="inline-block h-6 w-6 align-middle"><svg
2657  class="theme-icon"
2658  xmlns="http://www.w3.org/2000/svg"
2659  fill="none"
2660  viewBox="0 0 24 24"
2661>
2662  <path stroke="currentColor" d="M2 11a9 9 0 1 0 18 0 9 9 0 0 0-18 0Zm15.364 6.364L22 22" vector-effect="non-scaling-stroke"/>
2663</svg>
2664</span>
2665            <span class="sr-only">Submit</span>
2666          </button>
2667          <input
2668            id="search-logo_left_menu_spread-mobile"
2669            type="search"
2670            name="q"
2671            value=""
2672            placeholder="Search"
2673            class="font-body block w-full bg-transparent placeholder-current"
2674            aria-label="Search"
2675            data-search-input
2676            
2677              :aria-expanded="resultsOpen"
2678              :aria-activedescendant="resultsOpen ? 'predictive-search-results' : false"
2679              aria-owns="predictive-search-results"
2680              aria-controls="predictive-search-results"
2681              aria-autocomplete="list"
2682              autocorrect="off"
2683              autocomplete="off"
2684              autocapitalize="off"
2685              spellcheck="false"
2686              x-ref="input"
2687              x-model.debounce.300="rawQuery"
2688              @focus="onFocus"
2689            
2690          >
2691          <button
2692            class="ml-4 py-2"
2693            
2694              @click="close()"
2695            
2696            type="button"
2697          >
2698            <span class="sr-only">Close</span>
2699            <span class="inline-block h-6 w-6 align-middle"><svg
2700  class="theme-icon"
2701  xmlns="http://www.w3.org/2000/svg"
2702  fill="none"
2703  viewBox="0 0 24 24"
2704>
2705  <path stroke="currentColor" d="m1.5 1.5 21 21m0-21-21 21" vector-effect="non-scaling-stroke"/>
2706</svg>
2707</span>
2708          </button>
2709        </div><div
2710            tabindex="-1"
2711            x-cloak
2712            class="predictive-search-results absolute left-0 right-0 top-[calc(100%_+_var(--gridline-width))] z-50 h-screen text-scheme-text transition-colors duration-300 ease-out"
2713          >
2714            <template x-if="loading">
2715              <div class="border-b-gridline border-gridline-color bg-scheme-background">
2716                <div
2717                  class="mx-auto py-6 text-center"
2718                >
2719                  <div>Loading&hellip;</div>
2720                </div>
2721              </div>
2722            </template>
2723            <template x-if="resultsOpen">
2724              <div
2725                x-show="!loading && resultsHTML && resultsOpen"
2726                class="px-section max-h-[--results-height] scroll-py-5 overflow-hidden overflow-y-auto border-b-gridline border-gridline-color bg-scheme-background"
2727                x-html-if-set="resultsHTML"
2728              ></div>
2729            </template>
2730          </div>
2731          <span
2732            class="predictive-search-status sr-only"
2733            role="status"
2734            aria-hidden="true"
2735          ></span></form>
2736    </div>
2737  </data-island>
2738</data-island>
2739
2740            </div>
2741          
2742<div class="inline-block shrink-0 select-none whitespace-nowrap lg:ml-4">
2743            <data-island
2744              class="relative"
2745              x-data="{ expanded: false }"
2746              @keydown.escape.prevent.stop="expanded = false"
2747              @click.outside="expanded = false"
2748            >
2749              <button
2750                type="button"
2751                class="inline-flex py-4 h-full"
2752                :aria-expanded="expanded"
2753                aria-controls="currency-list-header"
2754                @click.prevent="expanded = ! expanded"
2755                aria-label="Currency selector"
2756              >
2757                <span class="my-auto inline-flex items-center gap-1">
2758                  <span class="inline-block h-6 w-6 align-middle">
2759                    <svg class="theme-icon" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24">
2760  <circle cx="12" cy="12" r="10" stroke="currentColor" stroke-width="1.5" vector-effect="non-scaling-stroke" fill="none"/>
2761  <path stroke="currentColor" stroke-width="1.5" d="M12 6v12M8 10h8M8 14h8" vector-effect="non-scaling-stroke"/>
2762</svg>
2763                  </span>
2764                  <span class="text-xs font-medium">USD</span>
2765                </span>
2766                <span
2767                  class="rotate ml-1 inline-block w-3 origin-center transform fill-current transition my-auto"
2768                  :class="{ 'rotate-180': expanded }"
2769                >
2770                  <svg
2771  class="theme-icon"
2772  xmlns="http://www.w3.org/2000/svg"
2773  fill="none"
2774  viewBox="0 0 24 24"
2775>
2776  <path stroke="currentColor" d="M1.5 7 12 17.5 22.5 7" vector-effect="non-scaling-stroke"/>
2777</svg>
2778
2779                </span>
2780              </button>
2781              <div
2782                class="absolute top-full right-0"
2783                x-show="expanded"
2784                style="display: none;"
2785              >
2786                <form method="post" action="/localization" accept-charset="UTF-8" enctype="multipart/form-data">
2787                  <input type="hidden" name="form_type" value="localization">
2788                  <input type="hidden" name="utf8" value="✓">
2789                  <input type="hidden" name="_method" value="put">
2790                  <input type="hidden" name="return_to" value="/">
2791                  <ul
2792                    id="currency-list-header"
2793                    class="relative z-50 flex max-h-[30vh] w-max max-w-[theme(spacing.64)] snap-y snap-mandatory flex-col gap-[--text-border-width] overflow-y-auto border-text border-gridline-color bg-gridline-color text-base"
2794                    x-transition:enter="transition ease duration-300"
2795                    x-transition:enter-start="opacity-0"
2796                    x-transition:enter-end="opacity-100"
2797                    x-transition:leave="transition ease duration-300"
2798                    x-transition:leave-start="opacity-100"
2799                    x-transition:leave-end="opacity-0"
2800                    :aria-hidden="! expanded"
2801                  >
2802                    
2803                      <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2804                        <button
2805                          class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2806                          type="submit"
2807                          name="country_code"
2808                          value="AU"
2809                          
2810                        >
2811                          <span class="border-transparent border-b-text">AUD $<span class="ml-2 text-xs opacity-70">Australia</span></span
2812                          >
2813                        </button>
2814                      </li>
2815                      <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2816                        <button
2817                          class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2818                          type="submit"
2819                          name="country_code"
2820                          value="CN"
2821                          
2822                        >
2823                          <span class="border-transparent border-b-text">CNY ¥<span class="ml-2 text-xs opacity-70">China</span></span
2824                          >
2825                        </button>
2826                      </li>
2827                      <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2828                        <button
2829                          class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2830                          type="submit"
2831                          name="country_code"
2832                          value="FR"
2833                          
2834                        >
2835                          <span class="border-transparent border-b-text">EUR €<span class="ml-2 text-xs opacity-70">France</span></span
2836                          >
2837                        </button>
2838                      </li>
2839                      <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2840                        <button
2841                          class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2842                          type="submit"
2843                          name="country_code"
2844                          value="NZ"
2845                          
2846                        >
2847                          <span class="border-transparent border-b-text">NZD $<span class="ml-2 text-xs opacity-70">New Zealand</span></span
2848                          >
2849                        </button>
2850                      </li>
2851                      <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2852                        <button
2853                          class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2854                          type="submit"
2855                          name="country_code"
2856                          value="GB"
2857                          
2858                        >
2859                          <span class="border-transparent border-b-text">GBP £<span class="ml-2 text-xs opacity-70">United Kingdom</span></span
2860                          >
2861                        </button>
2862                      </li>
2863                      <li class="flex items-center bg-scheme-background px-4 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
2864                        <button
2865                          class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
2866                          type="submit"
2867                          name="country_code"
2868                          value="US"
2869                          
2870                            aria-current="true"
2871                          
2872                        >
2873                          <span class="border-scheme-text border-b-text">USD $<span class="ml-2 text-xs opacity-70">United States</span></span
2874                          >
2875                        </button>
2876                      </li></ul>
2877                </form>
2878              </div>
2879            </data-island>
2880          </div><div class="flex items-center whitespace-nowrap gap-2 lg:ml-4"><style>
2881  @keyframes quote-badge-pulse {
2882    0% { transform: scale(1); }
2883    50% { transform: scale(1.22); }
2884    100% { transform: scale(1); }
2885  }
2886
2887  @keyframes quote-icon-pulse {
2888    0% { transform: scale(1); }
2889    50% { transform: scale(1.12); }
2890    100% { transform: scale(1); }
2891  }
2892
2893  .quote-badge-animate {
2894    animation: quote-badge-pulse 0.4s ease-in-out;
2895  }
2896  .quote-icon-animate {
2897    animation: quote-icon-pulse 0.4s ease-in-out;
2898  }
2899  .quote-badge {
2900    min-width: 1.3rem;
2901    padding-inline: 0.22rem;
2902    box-shadow: 0 10px 24px rgba(43, 57, 144, 0.22);
2903  }
2904  .quote-tooltip {
2905    position: absolute;
2906    top: calc(100% + 8px);
2907    right: -10px;
2908    width: 152px;
2909    padding: 15px 16px;
2910    border-radius: 20px;
2911    font-size: 14px;
2912    font-style: italic;
2913    line-height: 17px;
2914    color: #000;
2915    background: #FBFBF6;
2916    border: 1px solid #000;
2917    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
2918    z-index: 1000;
2919    cursor: pointer;
2920    white-space: normal;
2921    text-align: left;
2922  }
2923  .quote-tooltip::before {
2924    content: '';
2925    position: absolute;
2926    top: -7px;
2927    right: 24px;
2928    width: 14px;
2929    height: 14px;
2930    background: #FBFBF6;
2931    border-top: 1px solid #000;
2932    border-left: 1px solid #000;
2933    transform: rotate(45deg);
2934  }
2935  @media (max-width: 640px) {
2936    .quote-tooltip {
2937      right: -10px;
2938    }
2939  }
2940</style>
2941
2942<div
2943  class="relative"
2944  x-data="{
2945    showTooltip: false,
2946    tooltipDismissed: false,
2947    animating: false,
2948    tooltipTimer: null,
2949    dismissTooltip() {
2950      this.showTooltip = false;
2951      this.tooltipDismissed = true;
2952      if (this.tooltipTimer) clearTimeout(this.tooltipTimer);
2953      if (this.tooltipDelayTimer) clearTimeout(this.tooltipDelayTimer);
2954    },
2955    tooltipDelayTimer: null,
2956    triggerTooltip() {
2957      try {
2958        if (this.tooltipDismissed || sessionStorage.getItem('psstShown')) return;
2959      } catch (error) {
2960        if (this.tooltipDismissed) return;
2961      }
2962      if (this.tooltipDelayTimer) clearTimeout(this.tooltipDelayTimer);
2963      this.tooltipDelayTimer = setTimeout(() => {
2964        if (this.tooltipDismissed) return;
2965        try { sessionStorage.setItem('psstShown', '1'); } catch(e) {}
2966        this.showTooltip = true;
2967        if (this.tooltipTimer) clearTimeout(this.tooltipTimer);
2968        this.tooltipTimer = setTimeout(() => { this.showTooltip = false; }, 15000);
2969      }, 5000);
2970    },
2971    pulseIcon() {
2972      this.animating = true;
2973      setTimeout(() => { this.animating = false; }, 450);
2974    }
2975  }"
2976  @quote-item-added.document="pulseIcon(); triggerTooltip()"
2977>
2978  <a
2979    href="/pages/general-quote"
2980    class="inline-flex min-h-10 items-center py-4 h-full"
2981    :role="`button`"
2982    :aria-expanded="$store.modals.rightDrawer.contents === 'favorites'"
2983    @click.prevent="$store.modals.open('favorites'); dismissTooltip(); window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'quote_drawer_opened', quote_count: $store.favorites.count, page_path: window.location.pathname })"
2984    @keydown.space.prevent="$store.modals.open('favorites'); dismissTooltip()"
2985    aria-label="Open your quote"
2986  ><div class="pointer-events-none relative my-auto align-middle" :class="{ 'quote-icon-animate': animating }"><span class="inline-block h-6 w-6 align-top [&_*]:pointer-events-none"><span class="h-full w-full">
2987  <svg
2988    aria-hidden="true"
2989    focusable="false"
2990    role="presentation"
2991    class="icon icon-quote-list-outline"
2992    viewBox="0 0 24 24"
2993    fill="none"
2994  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
2995    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
2996    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
2997    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
2998    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
2999    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
3000    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
3001    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
3002  </svg>
3003</span>
3004</span><span
3005          x-show="$store.favorites.count > 0"
3006          x-cloak
3007          class="quote-badge absolute flex items-center justify-center rounded-full text-[10px] font-bold"
3008          style="background-color: #4B4D72; color: #fff; width: 18px; height: 18px; top: -7px; right: -8px;"
3009          :class="{ 'quote-badge-animate': animating }"
3010          x-text="$store.favorites.count"
3011        ></span>
3012        <span class="sr-only" x-text="'Your Quote: ' + $store.favorites.countWithText()">
3013          Your Quote: 0 items
3014        </span>
3015      </div></a><div
3016    x-show="showTooltip"
3017    x-transition:enter="transition ease-out duration-200"
3018    x-transition:enter-start="opacity-0 translate-y-1"
3019    x-transition:enter-end="opacity-100 translate-y-0"
3020    x-transition:leave="transition ease-in duration-150"
3021    x-transition:leave-start="opacity-100"
3022    x-transition:leave-end="opacity-0"
3023    x-cloak
3024    class="quote-tooltip"
3025    @click="dismissTooltip()"
3026  >
3027    Hi, your favourite products are here.
3028  </div>
3029</div>
3030
3031  <a
3032    href="/cart"
3033    class="inline-flex py-4 h-full"
3034    
3035  ><div class="pointer-events-none relative my-auto align-middle">
3036        <span
3037          x-show="$store.cartCount.count > 0"
3038          class="absolute right-0 top-1 h-2 w-2 rounded-full"
3039          style="background-color: #f1ffa5;"
3040        ></span>
3041        <span class="inline-block h-6 w-6 fill-current align-top [&_*]:pointer-events-none"><svg
3042  class="theme-icon"
3043  xmlns="http://www.w3.org/2000/svg"
3044  fill="none"
3045  viewBox="0 0 24 24"
3046>
3047  <path stroke="currentColor" d="M2 7h20v15H2V7Zm15 0v-.2A4.8 4.8 0 0 0 12.2 2h-.4A4.8 4.8 0 0 0 7 6.8V7" vector-effect="non-scaling-stroke"/>
3048</svg>
3049</span>
3050        <span class="sr-only" x-text="$store.cartCount.countWithText()">
3051          
30520 items
3053        </span>
3054      </div></a>
3055          </div>
3056        </div>
3057      </div>
3058    </nav>
3059  </header>
3060</data-island><noscript>
3061  <style data-shopify>
3062    .no-js-focus-wrapper:focus-within .no-js-focus-container {
3063      display: block !important;
3064    }
3065
3066    </style>
3067</noscript>
3068
3069<style>
3070  /* ── Get Started pill + dropdown ── */
3071  .gs-pill {
3072    display: inline-flex;
3073    align-items: center;
3074    padding: 0 20px;
3075    height: 39px;
3076    border: 1px solid #2a3a8e;
3077    border-radius: 40px;
3078    background: transparent;
3079    color: #2a3a8e;
3080    font-size: 17.3px;
3081    font-family: 'DM Sans', sans-serif;
3082    font-weight: 400;
3083    line-height: 24px;
3084    cursor: pointer;
3085    white-space: nowrap;
3086    transition: background-color 0.25s ease, color 0.25s ease;
3087  }
3088
3089  .gs-pill:hover,
3090  .gs-pill.is-active {
3091    background-color: #2b3990;
3092    color: #f9fafb;
3093  }
3094
3095  .gs-dropdown-content {
3096    display: flex;
3097    flex-direction: column;
3098    gap: 6px;
3099    padding: 10px 20px 14px;
3100    left: 0;
3101  }
3102
3103  .gs-dropdown-content a {
3104    color: #2a3a8e;
3105    font-size: 17.3px;
3106    font-family: 'DM Sans', sans-serif;
3107    font-weight: 400;
3108    text-decoration: none;
3109    white-space: nowrap;
3110    line-height: 32px;
3111  }
3112
3113  .gs-dropdown-content a:hover {
3114    opacity: 0.7;
3115  }
3116
3117  /* Nav dropdowns (e.g. "Our story") nudged left to sit under the menu label */
3118  .nav-dropdown-content {
3119    left: -12px;
3120  }
3121
3122  .quote-pill-button {
3123    display: inline-block;
3124    padding: 1rem 2rem;
3125    border-radius: 9999px;
3126    cursor: pointer;
3127    border: 0;
3128    background-color: #f1ffa5;
3129    transition: all 0.5s ease;
3130    color: #1F2937;
3131    text-decoration: none;
3132    font-weight: 600;
3133    font-size: 1.1em;
3134  }
3135
3136  .quote-pill-button:hover {
3137    transform: scale(1.2);
3138  }
3139
3140  .quote-pill-button:active {
3141    transform: scale(1.07);
3142    transition: 100ms;
3143  }
3144
3145  .start-design-button {
3146    display: inline-block;
3147    padding: 1rem 2rem;
3148    border-radius: 9999px;
3149    cursor: pointer;
3150    border: 0;
3151    background-color: #2b3990;
3152    transition: all 0.5s ease;
3153    color: #ffffff;
3154    text-decoration: none;
3155    font-weight: 600;
3156    font-size: 1.1em;
3157  }
3158
3159  .start-design-button:hover {
3160    transform: scale(1.2);
3161  }
3162
3163  .start-design-button:active {
3164    transform: scale(1.07);
3165    transition: 100ms;
3166  }
3167
3168  @keyframes float {
3169    0%, 100% {
3170      transform: translateY(0px);
3171    }
3172    50% {
3173      transform: translateY(-6px);
3174    }
3175  }
3176
3177  .beta-badge {
3178    position: absolute;
3179    top: -8px;
3180    right: -8px;
3181    background-color: #f1ffa5;
3182    color: #1e2326;
3183    font-size: 0.65em;
3184    font-weight: 700;
3185    padding: 0.25rem 0.5rem;
3186    border-radius: 9999px;
3187    text-transform: uppercase;
3188    letter-spacing: 0.5px;
3189    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
3190    z-index: 10;
3191    animation: float 2s ease-in-out infinite;
3192  }
3193</style>
3194
3195
3196
3197  
3197<script>
3198  if (!customElements.get('sticky-header-height-helper')) {
3199    class StickyHeaderHeightHelper extends HTMLElement {
3200      constructor() {
3201        super();
3202      }
3203
3204      connectedCallback() {
3205        const headerEl = this.closest('[data-theme-header]');
3206
3207        if (headerEl && headerEl.getAttribute('data-sticky')) {
3208          document.documentElement.style.setProperty(
3209            '--sticky-header-height',
3210            `${headerEl.getBoundingClientRect().height}px`
3211          );
3212        } else {
3213          
3214          document.documentElement.style.setProperty(
3215            '--sticky-header-height',
3216            '0px'
3217          );
3218        }
3219      }
3220    }
3221
3222    customElements.define(
3223      'sticky-header-height-helper',
3224      StickyHeaderHeightHelper
3225    );
3226  }
3227  </script>
3227
3228
3229
3230<style> #shopify-section-sections--21296457187398__header .bg-scheme-background {border-bottom: 1px solid #2b3990;} </style></div>
3231<!-- END sections: header-group -->
3232<div id="shopify-section-menu-drawer" class="shopify-section">
3233
3234<data-island
3235  
3236    x-data
3237  
3238  x-init="initTeleport($root); $store.modals.register('sidebar', 'leftDrawer');"
3239  on="idle"
3240>
3241  <template data-should-teleport="#left-drawer-slot">
3242    <template
3243      id="sidebar"
3244      x-if="$store.modals.leftDrawer.contents === 'sidebar'"
3245    >
3246      
3247  <div
3248    
3249    data-modal-label="Menu"
3250  >
3251    <div class="sticky top-0 z-1 flex items-center justify-between border-b-gridline border-gridline-color px-section-horizontal-spacing py-4">
3252      <div aria-hidden="true">&nbsp;</div>
3253      <button
3254        @click.prevent="$store.modals.close('sidebar')"
3255        class="absolute right-0 top-0 block h-full"
3256        type="button"
3257      >
3258        <span class="sr-only">Close</span>
3259        <div class="my-auto mr-section-horizontal-spacing h-6 w-6"><svg
3260  class="theme-icon"
3261  xmlns="http://www.w3.org/2000/svg"
3262  fill="none"
3263  viewBox="0 0 24 24"
3264>
3265  <path stroke="currentColor" d="m1.5 1.5 21 21m0-21-21 21" vector-effect="non-scaling-stroke"/>
3266</svg>
3267</div>
3268      </button>
3269    </div>
3270    <nav
3271      
3272      aria-label="Primary"
3273    >
3274      <ul><li
3275            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gridline-color first-of-type:border-t-0"
3276          ><a class="inline-block py-4 w-full text-heading-standard" href="/collections/product-library">
3277                Products
3278              </a></li><li
3279            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gridline-color first-of-type:border-t-0"
3280          ><data-island class="contents" x-data="{ expanded: false }"><button
3281                  class="relative block w-full text-left inline-block py-4 w-full text-heading-standard ease pr-10 transition font-body"
3282                  x-bind:aria-expanded="expanded ? true : 'false'"
3283                  @click="expanded = ! expanded"
3284                  aria-controls="accordion0"
3285                >
3286                  Services
3287                  <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3288                        class="inline-block w-full origin-center"
3289                        x-show="!expanded"
3290                      ><svg
3291  class="theme-icon"
3292  xmlns="http://www.w3.org/2000/svg"
3293  fill="none"
3294  viewBox="0 0 24 24"
3295>
3296  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3297</svg>
3298</span>
3299                      <span
3300                        class="inline-block w-full origin-center"
3301                        x-show="expanded"
3302                        style="display: none;"
3303                      ><svg
3304  class="theme-icon"
3305  xmlns="http://www.w3.org/2000/svg"
3306  fill="none"
3307  viewBox="0 0 24 24"
3308>
3309  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
3310</svg>
3311</span></span>
3312                </button>
3313                <ul
3314                  id="accordion0"
3315                  class="no-js-focus-container pb-2 pl-4"
3316                  x-show="expanded"
3317                  x-cloak
3318                ><li class="no-js-focus-wrapper"><data-island class="contents" x-data="{ expanded: false }" >
3319                          <button
3320                            class="relative w-full text-left inline-block py-1  pr-10"
3321                            x-bind:aria-expanded="expanded ? true : 'false'"
3322                            @click="expanded = ! expanded"
3323                            aria-controls="accordion1"
3324                          >
3325                            Production capabilities
3326                            <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3327                                  class="inline-block w-full origin-center"
3328                                  x-show="!expanded"
3329                                ><svg
3330  class="theme-icon"
3331  xmlns="http://www.w3.org/2000/svg"
3332  fill="none"
3333  viewBox="0 0 24 24"
3334>
3335  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3336</svg>
3337</span>
3338                                <span
3339                                  class="inline-block w-full origin-center"
3340                                  x-show="expanded"
3341                                  style="display: none;"
3342                                ><svg
3343  class="theme-icon"
3344  xmlns="http://www.w3.org/2000/svg"
3345  fill="none"
3346  viewBox="0 0 24 24"
3347>
3348  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
3349</svg>
3350</span></span>
3351                          </button>
3352                          <ul
3353                            id="accordion1"
3354                            class="no-js-focus-container px-2 pb-2 pt-1"
3355                            x-show="expanded"
3356                            x-cloak
3357                          ><li>
3358                                <a
3359                                  class="inline-block py-1 "
3360                                  href="/pages/custom-manufactured"
3361                                >
3362                                  Custom-manufactured
3363                                </a>
3364                              </li><li>
3365                                <a
3366                                  class="inline-block py-1 "
3367                                  href="/pages/screen-printing"
3368                                >
3369                                  Screen printing
3370                                </a>
3371                              </li><li>
3372                                <a
3373                                  class="inline-block py-1 "
3374                                  href="/pages/embroidery"
3375                                >
3376                                  Embroidery
3377                                </a>
3378                              </li><li>
3379                                <a
3380                                  class="inline-block py-1 "
3381                                  href="/pages/heat-transfers"
3382                                >
3383                                  Heat transfers
3384                                </a>
3385                              </li><li>
3386                                <a
3387                                  class="inline-block py-1 "
3388                                  href="/pages/finishing"
3389                                >
3390                                  Finishing
3391                                </a>
3392                              </li></ul>
3393                        </data-island></li><li class="no-js-focus-wrapper"><data-island class="contents" x-data="{ expanded: false }" >
3394                          <button
3395                            class="relative w-full text-left inline-block py-1  pr-10"
3396                            x-bind:aria-expanded="expanded ? true : 'false'"
3397                            @click="expanded = ! expanded"
3398                            aria-controls="accordion2"
3399                          >
3400                            Partner services
3401                            <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3402                                  class="inline-block w-full origin-center"
3403                                  x-show="!expanded"
3404                                ><svg
3405  class="theme-icon"
3406  xmlns="http://www.w3.org/2000/svg"
3407  fill="none"
3408  viewBox="0 0 24 24"
3409>
3410  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3411</svg>
3412</span>
3413                                <span
3414                                  class="inline-block w-full origin-center"
3415                                  x-show="expanded"
3416                                  style="display: none;"
3417                                ><svg
3418  class="theme-icon"
3419  xmlns="http://www.w3.org/2000/svg"
3420  fill="none"
3421  viewBox="0 0 24 24"
3422>
3423  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
3424</svg>
3425</span></span>
3426                          </button>
3427                          <ul
3428                            id="accordion2"
3429                            class="no-js-focus-container px-2 pb-2 pt-1"
3430                            x-show="expanded"
3431                            x-cloak
3432                          ><li>
3433                                <a
3434                                  class="inline-block py-1 "
3435                                  href="/pages/client-portal"
3436                                >
3437                                  Client portal
3438                                </a>
3439                              </li><li>
3440                                <a
3441                                  class="inline-block py-1 "
3442                                  href="/pages/fundraising-pre-orders"
3443                                >
3444                                  Fundraise & pre-order
3445                                </a>
3446                              </li><li>
3447                                <a
3448                                  class="inline-block py-1 "
3449                                  href="/pages/repurpose-initiative"
3450                                >
3451                                  Repurpose initiative
3452                                </a>
3453                              </li></ul>
3454                        </data-island></li><li class="no-js-focus-wrapper"><data-island class="contents" x-data="{ expanded: false }" >
3455                          <button
3456                            class="relative w-full text-left inline-block py-1  pr-10"
3457                            x-bind:aria-expanded="expanded ? true : 'false'"
3458                            @click="expanded = ! expanded"
3459                            aria-controls="accordion3"
3460                          >
3461                            Popular services
3462                            <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3463                                  class="inline-block w-full origin-center"
3464                                  x-show="!expanded"
3465                                ><svg
3466  class="theme-icon"
3467  xmlns="http://www.w3.org/2000/svg"
3468  fill="none"
3469  viewBox="0 0 24 24"
3470>
3471  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3472</svg>
3473</span>
3474                                <span
3475                                  class="inline-block w-full origin-center"
3476                                  x-show="expanded"
3477                                  style="display: none;"
3478                                ><svg
3479  class="theme-icon"
3480  xmlns="http://www.w3.org/2000/svg"
3481  fill="none"
3482  viewBox="0 0 24 24"
3483>
3484  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
3485</svg>
3486</span></span>
3487                          </button>
3488                          <ul
3489                            id="accordion3"
3490                            class="no-js-focus-container px-2 pb-2 pt-1"
3491                            x-show="expanded"
3492                            x-cloak
3493                          ><li>
3494                                <a
3495                                  class="inline-block py-1 "
3496                                  href="/pages/school-leavers-gear"
3497                                >
3498                                  School leavers gear
3499                                </a>
3500                              </li><li>
3501                                <a
3502                                  class="inline-block py-1 "
3503                                  href="/pages/tshirt-printing"
3504                                >
3505                                  Custom t-shirt printing
3506                                </a>
3507                              </li></ul>
3508                        </data-island></li></ul>
3509              </data-island></li><li
3510            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gridline-color first-of-type:border-t-0"
3511          ><a class="inline-block py-4 w-full text-heading-standard" href="/pages/responsibility">
3512                Responsibility
3513              </a></li><li
3514            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gridline-color first-of-type:border-t-0"
3515          ><data-island class="contents" x-data="{ expanded: false }"><button
3516                  class="relative block w-full text-left inline-block py-4 w-full text-heading-standard ease pr-10 transition font-body"
3517                  x-bind:aria-expanded="expanded ? true : 'false'"
3518                  @click="expanded = ! expanded"
3519                  aria-controls="accordion4"
3520                >
3521                  Our story
3522                  <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3523                        class="inline-block w-full origin-center"
3524                        x-show="!expanded"
3525                      ><svg
3526  class="theme-icon"
3527  xmlns="http://www.w3.org/2000/svg"
3528  fill="none"
3529  viewBox="0 0 24 24"
3530>
3531  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3532</svg>
3533</span>
3534                      <span
3535                        class="inline-block w-full origin-center"
3536                        x-show="expanded"
3537                        style="display: none;"
3538                      ><svg
3539  class="theme-icon"
3540  xmlns="http://www.w3.org/2000/svg"
3541  fill="none"
3542  viewBox="0 0 24 24"
3543>
3544  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
3545</svg>
3546</span></span>
3547                </button>
3548                <ul
3549                  id="accordion4"
3550                  class="no-js-focus-container pb-2 pl-4"
3551                  x-show="expanded"
3552                  x-cloak
3553                ><li class="no-js-focus-wrapper"><a
3554                          class="inline-block py-1 "
3555                          href="/pages/in-good-company-with"
3556                        >
3557                          In good company with…
3558                        </a></li><li class="no-js-focus-wrapper"><a
3559                          class="inline-block py-1 "
3560                          href="/pages/about-print-room"
3561                        >
3562                          Our origins
3563                        </a></li></ul>
3564              </data-island></li><li
3565            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gr
3565idline-color first-of-type:border-t-0"
3566          ><data-island class="contents" x-data="{ expanded: false }"><button
3567                  class="relative block w-full text-left inline-block py-4 w-full text-heading-standard ease pr-10 transition font-body"
3568                  x-bind:aria-expanded="expanded ? true : 'false'"
3569                  @click="expanded = ! expanded"
3570                  aria-controls="accordion5"
3571                >
3572                  Get started
3573                  <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3574                        class="inline-block w-full origin-center"
3575                        x-show="!expanded"
3576                      ><svg
3577  class="theme-icon"
3578  xmlns="http://www.w3.org/2000/svg"
3579  fill="none"
3580  viewBox="0 0 24 24"
3581>
3582  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3583</svg>
3584</span>
3585                      <span
3586                        class="inline-block w-full origin-center"
3587                        x-show="expanded"
3588                        style="display: none;"
3589                      ><svg
3590  class="theme-icon"
3591  xmlns="http://www.w3.org/2000/svg"
3592  fill="none"
3593  viewBox="0 0 24 24"
3594>
3595  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
3596</svg>
3597</span></span>
3598                </button>
3599                <ul
3600                  id="accordion5"
3601                  class="no-js-focus-container pb-2 pl-4"
3602                  x-show="expanded"
3603                  x-cloak
3604                ><li class="no-js-focus-wrapper"><a
3605                          class="inline-block py-1 "
3606                          href="/collections/product-library"
3607                        >
3608                          Start a project
3609                        </a></li><li class="no-js-focus-wrapper"><a
3610                          class="inline-block py-1 "
3611                          href="/pages/book-a-call"
3612                        >
3613                          Book a call
3614                        </a></li></ul>
3615              </data-island></li></ul>
3616    </nav>
3617    <div class="border-t-gridline border-gridline-color">
3618      <nav class="my-6" aria-label="Secondary">
3619        <ul></ul>
3620      </nav>
3621
3622      
3623        <div class="my-6 px-section-horizontal-spacing">
3624          <form method="post" action="/localization" id="sidebar-localization-form" accept-charset="UTF-8" class="shopify-localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/" /><div class="flex gap-4 flex-col gap-y-0"><div class="inline-block shrink-0 select-none">
3625        <h2 class="sr-only" id="country-heading-sidebar">
3626          Country/region
3627        </h2>
3628        <data-island
3629          class="relative"
3630          x-data="{ expanded: false }"
3631          @keydown.escape.prevent.stop="expanded = false"
3632          @click.outside="expanded = false"
3633        >
3634          <button
3635            type="button"
3636            class="text-base py-2"
3637            :aria-expanded="expanded"
3638            aria-controls="country-list-sidebar"
3639            aria-describedby="country-heading-sidebar"
3640            @click.prevent="expanded = ! expanded"
3641          >
3642            United States (USD
3643            $)
3644            <span
3645              class="rotate ml-1 inline-block w-3 origin-center transform fill-current transition"
3646              :class="{ 'rotate-180': expanded }"
3647            >
3648              <svg
3649  class="theme-icon"
3650  xmlns="http://www.w3.org/2000/svg"
3651  fill="none"
3652  viewBox="0 0 24 24"
3653>
3654  <path stroke="currentColor" d="M1.5 7 12 17.5 22.5 7" vector-effect="non-scaling-stroke"/>
3655</svg>
3656
3657            </span>
3658          </button>
3659          <div
3660            class="absolute bottom-[calc(100%_+_0.5rem)] right-auto left-0"
3661            x-show="expanded"
3662            style="display: none;"
3663          >
3664            <ul
3665              id="country-list-sidebar"
3666              class="relative z-10 flex max-h-[30vh] w-max max-w-[theme(spacing.52)] snap-y snap-mandatory flex-col gap-[--text-border-width] overflow-y-auto border-text border-gr
3666idline-color bg-gridline-color text-base"
3667              x-transition:enter="transition ease duration-300"
3668              x-transition:enter-start="opacity-0"
3669              x-transition:enter-end="opacity-100"
3670              x-transition:leave="transition ease duration-300"
3671              x-transition:leave-start="opacity-100"
3672              x-transition:leave-end="opacity-0"
3673              :aria-hidden="! expanded"
3674            >
3675              
3676                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
3677                  <button
3678                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
3679                    type="button"
3680                    
3681                    @click.prevent="$refs.input.value = 'AU'; $root.closest('form').submit();"
3682                  >
3683                    <span class="border-transparent border-b-text">Australia (AUD
3684                      $)</span
3685                    >
3686                  </button>
3687                </li>
3688                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
3689                  <button
3690                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
3691                    type="button"
3692                    
3693                    @click.prevent="$refs.input.value = 'CN'; $root.closest('form').submit();"
3694                  >
3695                    <span class="border-transparent border-b-text">China (CNY
3696                      ¥)</span
3697                    >
3698                  </button>
3699                </li>
3700                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
3701                  <button
3702                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
3703                    type="button"
3704                    
3705                    @click.prevent="$refs.input.value = 'FR'; $root.closest('form').submit();"
3706                  >
3707                    <span class="border-transparent border-b-text">France (EUR
3708                      €)</span
3709                    >
3710                  </button>
3711                </li>
3712                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
3713                  <button
3714                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
3715                    type="button"
3716                    
3717                    @click.prevent="$refs.input.value = 'NZ'; $root.closest('form').submit();"
3718                  >
3719                    <span class="border-transparent border-b-text">New Zealand (NZD
3720                      $)</span
3721                    >
3722                  </button>
3723                </li>
3724                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
3725                  <button
3726                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
3727                    type="button"
3728                    
3729                    @click.prevent="$refs.input.value = 'GB'; $root.closest('form').submit();"
3730                  >
3731                    <span class="border-transparent border-b-text">United Kingdom (GBP
3732                      £)</span
3733                    >
3734                  </button>
3735                </li>
3736                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
3737                  <button
3738                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
3739                    type="button"
3740                    
3741                      aria-current="true"
3742                    
3743                    @click.prevent="$refs.input.value = 'US'; $root.closest('form').submit();"
3744                  >
3745                    <span class="border-scheme-text border-b-text">United States (USD
3746                      $)</span
3747                    >
3748                  </button>
3749                </li></ul>
3750          </div>
3751
3752          <input
3753            x-ref="input"
3754            type="hidden"
3755            name="country_code"
3756            id="CountrySelector"
3757            value="US"
3758          >
3759        </data-island>
3760      </div></div></form>
3761        </div>
3762      
3763
3764      
3765<form
3766          class="my-6 px-section-horizontal-spacing"
3767          action="/search"
3768          method="get"
3769          role="search"
3770        >
3771          <div class="flex w-full max-w-xs items-end">
3772            <label for="menu-drawer-search" class="sr-only">Search</label>
3773            <input
3774              class="min-w-0 flex-auto border-b-text border-current bg-transparent py-1.5 placeholder-current"
3775              id="menu-drawer-search"
3776              type="text"
3777              name="q"
3778              placeholder="Search"
3779            >
3780            <button
3781              class="px-1"
3782              type="submit"
3783            >
3784              <span class="inline-block h-6 w-6"><svg
3785  class="theme-icon"
3786  xmlns="http://www.w3.org/2000/svg"
3787  fill="none"
3788  viewBox="0 0 24 24"
3789>
3790  <path stroke="currentColor" d="M2 11a9 9 0 1 0 18 0 9 9 0 0 0-18 0Zm15.364 6.364L22 22" vector-effect="non-scaling-stroke"/>
3791</svg>
3792</span>
3793              <span class="sr-only">Submit</span>
3794            </button>
3795          </div>
3796        </form>
3797    </div>
3798  </div>
3799
3800    </template>
3801  </template>
3802</data-island>
3803
3804<noscript>
3805  <section class="section-sidebar">
3806    <div class="px-section-horizontal-spacing py-2 text-right">
3807      <button
3808        class="inline-flex items-center justify-center py-2 "
3809        data-menu-drawer-toggle
3810      >
3811        <span class="mr-2 inline-block h-6 w-6 align-middle"><svg
3812  class="theme-icon"
3813  xmlns="http://www.w3.org/2000/svg"
3814  fill="none"
3815  viewBox="0 0 24 24"
3816>
3817  <path stroke="currentColor" d="M1 4.545h22M1 12h22M1 19.455h22" vector-effect="non-scaling-stroke"/>
3818</svg>
3819</span>
3820        <span>Menu</span>
3821      </button>
3822    </div>
3823    <div class="sidebar-container z-80 border-r-grid border-grid-color fixed bottom-0 left-0 top-0 w-11/12 max-w-xl transform overflow-y-auto bg-scheme-background text-scheme-text transition-transform">
3824      
3825  <div
3826    
3827    data-modal-label="Menu"
3828  >
3829    <div class="sticky top-0 z-1 flex items-center justify-between border-b-gridline border-gridline-color px-section-horizontal-spacing py-4">
3830      <div aria-hidden="true">&nbsp;</div>
3831      <button
3832        @click.prevent="$store.modals.close('sidebar')"
3833        class="absolute right-0 top-0 block h-full"
3834        type="button"
3835      >
3836        <span class="sr-only">Close</span>
3837        <div class="my-auto mr-section-horizontal-spacing h-6 w-6"><svg
3838  class="theme-icon"
3839  xmlns="http://www.w3.org/2000/svg"
3840  fill="none"
3841  viewBox="0 0 24 24"
3842>
3843  <path stroke="currentColor" d="m1.5 1.5 21 21m0-21-21 21" vector-effect="non-scaling-stroke"/>
3844</svg>
3845</div>
3846      </button>
3847    </div>
3848    <nav
3849      
3850      aria-label="Primary"
3851    >
3852      <ul><li
3853            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gridline-color first-of-type:border-t-0"
3854          ><a class="inline-block py-4 w-full text-heading-standard" href="/collections/product-library">
3855                Products
3856              </a></li><li
3857            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gridline-color first-of-type:border-t-0"
3858          ><data-island class="contents" x-data="{ expanded: false }"><button
3859                  class="relative block w-full text-left inline-block py-4 w-full text-heading-standard ease pr-10 transition font-body"
3860                  x-bind:aria-expanded="expanded ? true : 'false'"
3861                  @click="expanded = ! expanded"
3862                  aria-controls="accordion0"
3863                >
3864                  Services
3865                  <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3866                        class="inline-block w-full origin-center"
3867                        x-show="!expanded"
3868                      ><svg
3869  class="theme-icon"
3870  xmlns="http://www.w3.org/2000/svg"
3871  fill="none"
3872  viewBox="0 0 24 24"
3873>
3874  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3875</svg>
3876</span>
3877                      <span
3878                        class="inline-block w-full origin-center"
3879                        x-show="expanded"
3880                        style="display: none;"
3881                      ><svg
3882  class="theme-icon"
3883  xmlns="http://www.w3.org/2000/svg"
3884  fill="none"
3885  viewBox="0 0 24 24"
3886>
3887  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
3888</svg>
3889</span></span>
3890                </button>
3891                <ul
3892                  id="accordion0"
3893                  class="no-js-focus-container pb-2 pl-4"
3894                  x-show="expanded"
3895                  x-cloak
3896                ><li class="no-js-focus-wrapper"><data-island class="contents" x-data="{ expanded: false }" >
3897                          <button
3898                            class="relative w-full text-left inline-block py-1  pr-10"
3899                            x-bind:aria-expanded="expanded ? true : 'false'"
3900                            @click="expanded = ! expanded"
3901                            aria-controls="accordion1"
3902                          >
3903                            Production capabilities
3904                            <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3905                                  class="inline-block w-full origin-center"
3906                                  x-show="!expanded"
3907                                ><svg
3908  class="theme-icon"
3909  xmlns="http://www.w3.org/2000/svg"
3910  fill="none"
3911  viewBox="0 0 24 24"
3912>
3913  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3914</svg>
3915</span>
3916                                <span
3917                                  class="inline-block w-full origin-center"
3918                                  x-show="expanded"
3919                                  style="display: none;"
3920                                ><svg
3921  class="theme-icon"
3922  xmlns="http://www.w3.org/2000/svg"
3923  fill="none"
3924  viewBox="0 0 24 24"
3925>
3926  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
3927</svg>
3928</span></span>
3929                          </button>
3930                          <ul
3931                            id="accordion1"
3932                            class="no-js-focus-container px-2 pb-2 pt-1"
3933                            x-show="expanded"
3934                            x-cloak
3935                          ><li>
3936                                <a
3937                                  class="inline-block py-1 "
3938                                  href="/pages/custom-manufactured"
3939                                >
3940                                  Custom-manufactured
3941                                </a>
3942                              </li><li>
3943                                <a
3944                                  class="inline-block py-1 "
3945                                  href="/pages/screen-printing"
3946                                >
3947                                  Screen printing
3948                                </a>
3949                              </li><li>
3950                                <a
3951                                  class="inline-block py-1 "
3952                                  href="/pages/embroidery"
3953                                >
3954                                  Embroidery
3955                                </a>
3956                              </li><li>
3957                                <a
3958                                  class="inline-block py-1 "
3959                                  href="/pages/heat-transfers"
3960                                >
3961                                  Heat transfers
3962                                </a>
3963                              </li><li>
3964                                <a
3965                                  class="inline-block py-1 "
3966                                  href="/pages/finishing"
3967                                >
3968                                  Finishing
3969                                </a>
3970                              </li></ul>
3971                        </data-island></li><li class="no-js-focus-wrapper"><data-island class="contents" x-data="{ expanded: false }" >
3972                          <button
3973                            class="relative w-full text-left inline-block py-1  pr-10"
3974                            x-bind:aria-expanded="expanded ? true : 'false'"
3975                            @click="expanded = ! expanded"
3976                            aria-controls="accordion2"
3977                          >
3978                            Partner services
3979                            <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
3980                                  class="inline-block w-full origin-center"
3981                                  x-show="!expanded"
3982                                ><svg
3983  class="theme-icon"
3984  xmlns="http://www.w3.org/2000/svg"
3985  fill="none"
3986  viewBox="0 0 24 24"
3987>
3988  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
3989</svg>
3990</span>
3991                                <span
3992                                  class="inline-block w-full origin-center"
3993                                  x-show="expanded"
3994                                  style="display: none;"
3995                                ><svg
3996  class="theme-icon"
3997  xmlns="http://www.w3.org/2000/svg"
3998  fill="none"
3999  viewBox="0 0 24 24"
4000>
4001  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
4002</svg>
4003</span></span>
4004                          </button>
4005                          <ul
4006                            id="accordion2"
4007                            class="no-js-focus-container px-2 pb-2 pt-1"
4008                            x-show="expanded"
4009                            x-cloak
4010                          ><li>
4011                                <a
4012                                  class="inline-block py-1 "
4013                                  href="/pages/client-portal"
4014                                >
4015                                  Client portal
4016                                </a>
4017                              </li><li>
4018                                <a
4019                                  class="inline-block py-1 "
4020                                  href="/pages/fundraising-pre-orders"
4021                                >
4022                                  Fundraise & pre-order
4023                                </a>
4024                              </li><li>
4025                                <a
4026                                  class="inline-block py-1 "
4027                                  href="/pages/repurpose-initiative"
4028                                >
4029                                  Repurpose initiative
4030                                </a>
4031                              </li></ul>
4032                        </data-island></li><li class="no-js-focus-wrapper"><data-island class="contents" x-data="{ expanded: false }" >
4033                          <button
4034                            class="relative w-full text-left inline-block py-1  pr-10"
4035                            x-bind:aria-expanded="expanded ? true : 'false'"
4036                            @click="expanded = ! expanded"
4037                            aria-controls="accordion3"
4038                          >
4039                            Popular services
4040                            <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
4041                                  class="inline-block w-full origin-center"
4042                                  x-show="!expanded"
4043                                ><svg
4044  class="theme-icon"
4045  xmlns="http://www.w3.org/2000/svg"
4046  fill="none"
4047  viewBox="0 0 24 24"
4048>
4049  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
4050</svg>
4051</span>
4052                                <span
4053                                  class="inline-block w-full origin-center"
4054                                  x-show="expanded"
4055                                  style="display: none;"
4056                                ><svg
4057  class="theme-icon"
4058  xmlns="http://www.w3.org/2000/svg"
4059  fill="none"
4060  viewBox="0 0 24 24"
4061>
4062  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
4063</svg>
4064</span></span>
4065                          </button>
4066                          <ul
4067                            id="accordion3"
4068                            class="no-js-focus-container px-2 pb-2 pt-1"
4069                            x-show="expanded"
4070                            x-cloak
4071                          ><li>
4072                                <a
4073                                  class="inline-block py-1 "
4074                                  href="/pages/school-leavers-gear"
4075                                >
4076                                  School leavers gear
4077                                </a>
4078                              </li><li>
4079                                <a
4080                                  class="inline-block py-1 "
4081                                  href="/pages/tshirt-printing"
4082                                >
4083                                  Custom t-shirt printing
4084                                </a>
4085                              </li></ul>
4086                        </data-island></li></ul>
4087              </data-island></li><li
4088            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gridline-color first-of-type:border-t-0"
4089          ><a class="inline-block py-4 w-full text-heading-standard" href="/pages/responsibility">
4090                Responsibility
4091              </a></li><li
4092            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gridline-color first-of-type:border-t-0"
4093          ><data-island class="contents" x-data="{ expanded: false }"><button
4094                  class="relative block w-full text-left inline-block py-4 w-full text-heading-standard ease pr-10 transition font-body"
4095                  x-bind:aria-expanded="expanded ? true : 'false'"
4096                  @click="expanded = ! expanded"
4097                  aria-controls="accordion4"
4098                >
4099                  Our story
4100                  <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
4101                        class="inline-block w-full origin-center"
4102                        x-show="!expanded"
4103                      ><svg
4104  class="theme-icon"
4105  xmlns="http://www.w3.org/2000/svg"
4106  fill="none"
4107  viewBox="0 0 24 24"
4108>
4109  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
4110</svg>
4111</span>
4112                      <span
4113                        class="inline-block w-full origin-center"
4114                        x-show="expanded"
4115                        style="display: none;"
4116                      ><svg
4117  class="theme-icon"
4118  xmlns="http://www.w3.org/2000/svg"
4119  fill="none"
4120  viewBox="0 0 24 24"
4121>
4122  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
4123</svg>
4124</span></span>
4125                </button>
4126                <ul
4127                  id="accordion4"
4128                  class="no-js-focus-container pb-2 pl-4"
4129                  x-show="expanded"
4130                  x-cloak
4131                ><li class="no-js-focus-wrapper"><a
4132                          class="inline-block py-1 "
4133                          href="/pages/in-good-company-with"
4134                        >
4135                          In good company with…
4136                        </a></li><li class="no-js-focus-wrapper"><a
4137                          class="inline-block py-1 "
4138                          href="/pages/about-print-room"
4139                        >
4140                          Our origins
4141                        </a></li></ul>
4142              </data-island></li><li
4143            class="no-js-focus-wrapper break-word px-section-horizontal-spacing border-t-gridline border-gr
4143idline-color first-of-type:border-t-0"
4144          ><data-island class="contents" x-data="{ expanded: false }"><button
4145                  class="relative block w-full text-left inline-block py-4 w-full text-heading-standard ease pr-10 transition font-body"
4146                  x-bind:aria-expanded="expanded ? true : 'false'"
4147                  @click="expanded = ! expanded"
4148                  aria-controls="accordion5"
4149                >
4150                  Get started
4151                  <span class="absolute right-0 top-1/2 flex h-6 w-6 -translate-y-1/2 transform items-center"><span
4152                        class="inline-block w-full origin-center"
4153                        x-show="!expanded"
4154                      ><svg
4155  class="theme-icon"
4156  xmlns="http://www.w3.org/2000/svg"
4157  fill="none"
4158  viewBox="0 0 24 24"
4159>
4160  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
4161</svg>
4162</span>
4163                      <span
4164                        class="inline-block w-full origin-center"
4165                        x-show="expanded"
4166                        style="display: none;"
4167                      ><svg
4168  class="theme-icon"
4169  xmlns="http://www.w3.org/2000/svg"
4170  fill="none"
4171  viewBox="0 0 24 24"
4172>
4173  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
4174</svg>
4175</span></span>
4176                </button>
4177                <ul
4178                  id="accordion5"
4179                  class="no-js-focus-container pb-2 pl-4"
4180                  x-show="expanded"
4181                  x-cloak
4182                ><li class="no-js-focus-wrapper"><a
4183                          class="inline-block py-1 "
4184                          href="/collections/product-library"
4185                        >
4186                          Start a project
4187                        </a></li><li class="no-js-focus-wrapper"><a
4188                          class="inline-block py-1 "
4189                          href="/pages/book-a-call"
4190                        >
4191                          Book a call
4192                        </a></li></ul>
4193              </data-island></li></ul>
4194    </nav>
4195    <div class="border-t-gridline border-gridline-color">
4196      <nav class="my-6" aria-label="Secondary">
4197        <ul></ul>
4198      </nav>
4199
4200      
4201        <div class="my-6 px-section-horizontal-spacing">
4202          <form method="post" action="/localization" id="sidebar-localization-form" accept-charset="UTF-8" class="shopify-localization-form" enctype="multipart/form-data"><input type="hidden" name="form_type" value="localization" /><input type="hidden" name="utf8" value="✓" /><input type="hidden" name="_method" value="put" /><input type="hidden" name="return_to" value="/" /><div class="flex gap-4 flex-col gap-y-0"><div class="inline-block shrink-0 select-none">
4203        <h2 class="sr-only" id="country-heading-sidebar">
4204          Country/region
4205        </h2>
4206        <data-island
4207          class="relative"
4208          x-data="{ expanded: false }"
4209          @keydown.escape.prevent.stop="expanded = false"
4210          @click.outside="expanded = false"
4211        >
4212          <button
4213            type="button"
4214            class="text-base py-2"
4215            :aria-expanded="expanded"
4216            aria-controls="country-list-sidebar"
4217            aria-describedby="country-heading-sidebar"
4218            @click.prevent="expanded = ! expanded"
4219          >
4220            United States (USD
4221            $)
4222            <span
4223              class="rotate ml-1 inline-block w-3 origin-center transform fill-current transition"
4224              :class="{ 'rotate-180': expanded }"
4225            >
4226              <svg
4227  class="theme-icon"
4228  xmlns="http://www.w3.org/2000/svg"
4229  fill="none"
4230  viewBox="0 0 24 24"
4231>
4232  <path stroke="currentColor" d="M1.5 7 12 17.5 22.5 7" vector-effect="non-scaling-stroke"/>
4233</svg>
4234
4235            </span>
4236          </button>
4237          <div
4238            class="absolute bottom-[calc(100%_+_0.5rem)] right-auto left-0"
4239            x-show="expanded"
4240            style="display: none;"
4241          >
4242            <ul
4243              id="country-list-sidebar"
4244              class="relative z-10 flex max-h-[30vh] w-max max-w-[theme(spacing.52)] snap-y snap-mandatory flex-col gap-[--text-border-width] overflow-y-auto border-text border-gr
4244idline-color bg-gridline-color text-base"
4245              x-transition:enter="transition ease duration-300"
4246              x-transition:enter-start="opacity-0"
4247              x-transition:enter-end="opacity-100"
4248              x-transition:leave="transition ease duration-300"
4249              x-transition:leave-start="opacity-100"
4250              x-transition:leave-end="opacity-0"
4251              :aria-hidden="! expanded"
4252            >
4253              
4254                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
4255                  <button
4256                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
4257                    type="button"
4258                    
4259                    @click.prevent="$refs.input.value = 'AU'; $root.closest('form').submit();"
4260                  >
4261                    <span class="border-transparent border-b-text">Australia (AUD
4262                      $)</span
4263                    >
4264                  </button>
4265                </li>
4266                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
4267                  <button
4268                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
4269                    type="button"
4270                    
4271                    @click.prevent="$refs.input.value = 'CN'; $root.closest('form').submit();"
4272                  >
4273                    <span class="border-transparent border-b-text">China (CNY
4274                      ¥)</span
4275                    >
4276                  </button>
4277                </li>
4278                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
4279                  <button
4280                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
4281                    type="button"
4282                    
4283                    @click.prevent="$refs.input.value = 'FR'; $root.closest('form').submit();"
4284                  >
4285                    <span class="border-transparent border-b-text">France (EUR
4286                      €)</span
4287                    >
4288                  </button>
4289                </li>
4290                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
4291                  <button
4292                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
4293                    type="button"
4294                    
4295                    @click.prevent="$refs.input.value = 'NZ'; $root.closest('form').submit();"
4296                  >
4297                    <span class="border-transparent border-b-text">New Zealand (NZD
4298                      $)</span
4299                    >
4300                  </button>
4301                </li>
4302                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
4303                  <button
4304                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
4305                    type="button"
4306                    
4307                    @click.prevent="$refs.input.value = 'GB'; $root.closest('form').submit();"
4308                  >
4309                    <span class="border-transparent border-b-text">United Kingdom (GBP
4310                      £)</span
4311                    >
4312                  </button>
4313                </li>
4314                <li class="flex items-center bg-scheme-background px-2 py-2 coarse-pointer:min-h-[44px] coarse-pointer:min-w-[44px]">
4315                  <button
4316                    class="break-word text-left [text-wrap:balance] hover:text-scheme-accent"
4317                    type="button"
4318                    
4319                      aria-current="true"
4320                    
4321                    @click.prevent="$refs.input.value = 'US'; $root.closest('form').submit();"
4322                  >
4323                    <span class="border-scheme-text border-b-text">United States (USD
4324                      $)</span
4325                    >
4326                  </button>
4327                </li></ul>
4328          </div>
4329
4330          <input
4331            x-ref="input"
4332            type="hidden"
4333            name="country_code"
4334            id="CountrySelector"
4335            value="US"
4336          >
4337        </data-island>
4338      </div></div></form>
4339        </div>
4340      
4341
4342      
4343<form
4344          class="my-6 px-section-horizontal-spacing"
4345          action="/search"
4346          method="get"
4347          role="search"
4348        >
4349          <div class="flex w-full max-w-xs items-end">
4350            <label for="menu-drawer-search" class="sr-only">Search</label>
4351            <input
4352              class="min-w-0 flex-auto border-b-text border-current bg-transparent py-1.5 placeholder-current"
4353              id="menu-drawer-search"
4354              type="text"
4355              name="q"
4356              placeholder="Search"
4357            >
4358            <button
4359              class="px-1"
4360              type="submit"
4361            >
4362              <span class="inline-block h-6 w-6"><svg
4363  class="theme-icon"
4364  xmlns="http://www.w3.org/2000/svg"
4365  fill="none"
4366  viewBox="0 0 24 24"
4367>
4368  <path stroke="currentColor" d="M2 11a9 9 0 1 0 18 0 9 9 0 0 0-18 0Zm15.364 6.364L22 22" vector-effect="non-scaling-stroke"/>
4369</svg>
4370</span>
4371              <span class="sr-only">Submit</span>
4372            </button>
4373          </div>
4374        </form>
4375    </div>
4376  </div>
4377
4378    </div>
4379  </section>
4380
4381  <style>
4382    .section-sidebar {
4383      display: block !important;
4384    }
4385
4386    @media (min-width: 1024px) {
4387      .section-sidebar {
4388        display: none !important;
4389      }
4390    }
4391
4392    .sidebar-container {
4393      position: static;
4394      width: 100%;
4395      max-width: 100%;
4396      border-right: 0;
4397      display: none;
4398    }
4399
4400    .section-sidebar:focus-within .sidebar-container {
4401      display: block !important;
4402    }
4403  </style>
4404</noscript>
4405
4406
4407</div>
4407<script>
4408  const calculateHeaderHeights = () => {
4409    const headerGroupHeights = [];
4410
4411    document
4412      .querySelectorAll('.shopify-section-group-header-group')
4413      .forEach((headerGroupSectionEl) => {
4414        headerGroupHeights.push(
4415          headerGroupSectionEl.getBoundingClientRect().height
4416        );
4417      });
4418
4419    document.documentElement.style.setProperty(
4420      '--header-group-height',
4421      `${headerGroupHeights.reduce((subtotal, a) => subtotal + a, 0)}px`
4422    );
4423  };
4424
4425  calculateHeaderHeights();
4426
4427  if (document.readyState === 'loading') {
4428    document.addEventListener('DOMContentLoaded', calculateHeaderHeights);
4429  }
4430  window.addEventListener('load', calculateHeaderHeights);
4431
4432  const debouncedCalculateHeaderHeights = debounce(calculateHeaderHeights, 300);
4433
4434  window.addEventListener('resize', debouncedCalculateHeaderHeights);
4435</script>
4435
4436
4437
4438
4439<style>
4440  #MainContent
4441    > .shopify-section.banner-section:first-child
4442    [data-media-container].h-screen {
4443    height: calc(100vh - var(--header-group-height));
4444  }
4445
4446  @media (min-width: 990px) {
4447    #MainContent
4448      > .shopify-section.banner-section:first-child
4449      [data-media-container].lg\:h-auto {
4450      height: auto;
4451    }
4452
4453    #MainContent
4454      > .shopify-section.banner-section:first-child
4455      [data-media-container].lg\:h-screen {
4456      height: calc(100vh - var(--header-group-height));
4457    }
4458  }
4459</style>
4460
4461    
4462
4463    <main id="MainContent">
4464      <div id="shopify-section-template--21296459743302__16472007381b96c8a2" class="shopify-section"><section
4465  class="snap-section"
4466  x-data="{ visible: false }"
4467  x-intersect:enter.threshold.10="visible = true"
4468  x-intersect:leave.threshold.10="visible = false"
4469>
4470<div
4471  class="bg-scheme-background border-b-gridline border-gridline-color relative group overflow-hidden h-screen-less-gridline first-section:h-screen-less-header-group-less-gridline"
4472  style="height: calc(100dvh - var(--header-group-height, 0px) - (var(--gridline-width, 0px) * 2));"
4473  data-color-scheme="scheme1"
4474>
4475  
4476    <a href="/collections/product-library" class="absolute inset-0 z-11"
4477      ><span class="sr-only">Start your project</span></a
4478    >
4479  
4480  <div
4481    class="text-scheme-text  bg-scheme-background p-2 lg:p-4 h-full w-full"
4482    data-color-scheme="scheme1"
4483  >
4484    <div class="relative h-full w-full">
4485      
4486        <div
4487          
4488            class="hidden lg:block"
4489          
4490        >
4491          
4492            <image-with-placeholder>
4493  <img src="//printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=3000" alt="Custom t shirt printing, tote bags nz, embroidery, supacolour, screen printing nz" srcset="//printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=200 200w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=350 350w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=450 450w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=750 750w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=850 850w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=960 960w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=1280 1280w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=1440 1440w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=1536 1536w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=1706 1706w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=1782 1782w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=1920 1920w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=2560 2560w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=2880 2880w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1_64bb0a56-25b7-40f8-b4f7-85efc956818d.jpg?v=1739305060&amp;width=3000 3000w" width="3000" height="1500" class="peer/image block absolute inset-0 w-full h-full object-cover" sizes="100vw">
4494  
4495    <div
4496      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
4497    ></div>
4498  
4499</image-with-placeholder>
4500
4501          
4502        </div>
4503
4504        
4505          <div class="lg:hidden">
4506            
4507            
4508              <image-with-placeholder>
4509  <img src="//printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=3000" alt="Custom t shirt printing, tote bags nz, embroidery, supacolour, screen printing nz" srcset="//printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=200 200w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=350 350w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=450 450w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=750 750w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=850 850w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=960 960w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=1280 1280w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=1440 1440w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=1536 1536w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=1706 1706w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=1782 1782w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=1920 1920w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=2560 2560w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=2880 2880w, //printroom.co/cdn/shop/files/The-Print-Room-November-2023-10-_1__m.jpg?v=1739305074&amp;width=3000 3000w" width="3000" height="4500" loading="eager" fetchpriority="high" class="peer/image block absolute inset-0 w-full h-full object-cover" sizes="100vw">
4510  
4511    <div
4512      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
4513    ></div>
4514  
4515</image-with-placeholder>
4516
4517            
4518          </div>
4519        
4520      
4521    </div>
4522  </div>
4523
4524  <div
4525    class="group absolute bottom-0 left-0 right-0 top-0 z-10 px-section-horizontal-spacing py-section-vertical-spacing"
4526    data-color-scheme="scheme1"
4527    data-animate="fade"
4528    :class="{ 'is-visible': visible }"
4529  >
4530    <div class="flex h-full w-full justify-center items-center text-center p-2 lg:p-4">
4531      <div
4532        class="lg:w-1/2 text-scheme-text"
4533      >
4534        
4535
4536        
4537          <div class="rte mt-4 text-base">
4538            <h1><strong>Makers </strong>of<strong> better </strong>merch.</h1><p><br/></p><h2>Custom branded and built goods.</h2>
4539          </div>
4540        
4541
4542        
4543          <div class="mt-8 text-0"><span
4544                  class="theme-button theme-button--in-group inline-block"
4545                >Start your project</span></div>
4546        
4547      </div>
4548    </div>
4549  </div>
4550</div>
4551</section>
4552
4553
4554<style> #shopify-section-template--21296459743302__16472007381b96c8a2 .text-base {background: #f8faf4; border-style: solid; border-width: 1px; border-color: #2b3990; padding: 40px; border-radius: 35px;} </style></div><div id="shopify-section-template--21296459743302__scrolling_text_Lpxqey" class="shopify-section">
4555
4556<section
4557  class="border-b-gridline border-gridline-color bg-scheme-background text-scheme-text"
4558  data-color-scheme="scheme4"
4559>
4560  
4561
4562
4563
4564
4565
4566<div
4567  class="py-2 lg:py-3.5 overflow-hidden"
4568>
4569    
4570  <scrolling-items-container class="block">
4571    <scrolling-items
4572      style="
4573        --base-scrolling-items-speed: 18s;
4574        --local-scrolling-items-speed-multiplier: 1;
4575        --scrolling-items-speed: calc(
4576            var(--base-scrolling-items-speed) * var(--global-scrolling-items-speed-multiplier) *
4577              var(--local-scrolling-items-speed-multiplier)
4578          );
4579        --scrolling-items-direction: normal;"
4580      class="block w-max whitespace-nowrap motion-safe:animate-[scrolling-items_var(--scrolling-items-speed)_linear_infinite_var(--scrolling-items-direction)] motion-safe:focus-within:[animation-play-state:paused] motion-safe:hover:[animation-play-state:paused] font-body text-scale-n3 lg:text-scale-n3 motion-reduce:block motion-reduce:whitespace-normal motion-reduce:px-section-horizontal-spacing motion-reduce:text-center  motion-reduce:-translate-x-1/4"
4581    >
4582      <scrolling-items-surface class="flex flex-nowrap items-center">
4583        <scrolling-items-content class="grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></scrolling-items-content>
4584          <noscript>
4585            
4586            
4587              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4588            
4589              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4590            
4591              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4592            
4593              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4594            
4595              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4596            
4597              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4598            
4599              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4600            
4601              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4602            
4603              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4604            
4605              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4606            
4607              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:pl-4">THE STUFF YOUR MATES WILL "BORROW"<span class="pl-2 lg:pl-4">&middot;</span></span>
4608            
4609          </noscript>
4610      </scrolling-items-surface>
4611    </scrolling-items>
4612  </scrolling-items-container>
4613
4614  
4615</div>
4616
4617</section>
4618
4619
4620</div><div id="shopify-section-template--21296459743302__featured_collection_CppVMU" class="shopify-section"><section
4621  class="featured-collection border-b-gridline border-gridline-color"
4622  data-color-scheme="scheme5"
4623>
4624  
4625
4626  <div class="bg-scheme-background">
4627    <ul class="grid grid-cols-2 lg:grid-cols-12 gap-gutter bg-gridline-color">
4628
4629        <li class="col-span-1 lg:col-span-3 bg-scheme-background text-scheme-text">
4630          
4631<data-island
4632  class="relative flex h-full flex-col text-center hover:text-scheme-accent"
4633  
4634  data-color-scheme="scheme5"
4635>
4636  <div
4637    class="relative"
4638  ><div
4639      class="group w-full pt-2 lg:pt-4 px-section-horizontal-spacing "
4640      
4641    >
4642      <div class="relative z-0">
4643        <a
4644          href="/products/stencil-hood"
4645          
4646          class="absolute inset-0 z-40"
4647        >
4648          <span class="sr-only">Stencil Hood</span>
4649        </a>
4650
4651        
4652<div
4653            class="relative"
4654            style="padding-top: 100%;"
4655          ><image-with-placeholder>
4656  <img src="//printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=3000" alt="Custom green hoodie on a white background" srcset="//printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=200 200w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=350 350w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=450 450w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=750 750w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=850 850w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=960 960w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593&amp;width=3000 3000w" width="3000" height="3000" loading="eager" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
4657  
4658    <div
4659      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
4660    ></div>
4661  
4662</image-with-placeholder>
4663</div>
4664
4665        <image-with-placeholder>
4666  <img src="//printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=3000" alt="Green hoodie on a white background" srcset="//printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=200 200w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=350 350w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=450 450w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=750 750w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=850 850w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=960 960w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_2.jpg?v=1772581594&amp;width=3000 3000w" width="3000" height="3000" loading="eager" class="peer/image block absolute inset-0 w-full h-full object-contain z-35 bg-scheme-background opacity-0 transition-opacity duration-200 ease-in-out group-hover:opacity-100 group-focus-within:opacity-100" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
4667  
4668    <div
4669      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
4670    ></div>
4671  
4672</image-with-placeholder>
4673
4674</div>
4675    </div>
4676
4677    
4678    <div
4679      class="relative justify-between py-4 px-section-horizontal-spacing  text-center text-sm lg:text-base"
4680    >
4681      <a
4682        href="/products/stencil-hood"
4683        
4684        class="absolute inset-0 z-10"
4685      >
4686        <span class="sr-only">Stencil Hood</span>
4687      </a>
4688      <div class="text-center break-word">
4689        
4690          <p class="mb-1 text-scheme-secondary">
4691            AS Colour
4692          </p>
4693        
4694        <p
4695          aria-hidden="true"
4696          class="font-bold"
4697        >
4698          Stencil Hood
4699        </p>
4700
4701        
4702        
4703
4704
4705
4706
4707
4708
4709        
4710      </div>
4711      <div class="text-center mt-1 lg:mt-2">
4712        
4713          
4714          
4715            
4716<span>from $31.00</span>
4717            
4718          
4719        
4720        
4721</div>
4722
4723      <div class="mt-2 text-center"><data-island x-data on="idle" style="display: inline-block;">
4724    <button
4725      type="button"
4726      :style="'display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:DM Sans,sans-serif; font-size:10px; font-weight:400; line-height:16px; border-radius:24px; cursor:pointer; white-space:nowrap; position:relative; z-index:10; transition:transform 0.2s ease-out,background-color 0.2s ease-out,border-color 0.2s ease-out,color 0.2s ease-out,box-shadow 0.2s ease-out;' + ($store.favorites.has(4166829736006)
4727        ? 'border:0.4px solid #4B4D72; background:#4B4D72; color:#fff; box-shadow:0 4px 14px rgba(75,77,114,0.18);'
4728        : 'border:0.4px solid #000; background:transparent; color:#000; box-shadow:none;')"
4729      style="display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; line-height:16px; border:0.4px solid #000; border-radius:24px; background:transparent; color:#000; cursor:pointer; white-space:nowrap; position:relative; z-index:10;"
4730      @click.prevent.stop='if ($store.favorites.has(4166829736006)) { $store.modals.open("favorites") } else { $store.favorites.add({
4731        id: 4166829736006,
4732        handle: &quot;stencil-hood&quot;,
4733        title: &quot;Stencil Hood&quot;,
4734        vendor: &quot;AS Colour&quot;,
4735        hasColours: true,
4736        variantId: null,
4737        colour: null,
4738        sizeOptions: [&quot;XS&quot;,&quot;S&quot;,&quot;M&quot;,&quot;L&quot;,&quot;XL&quot;,&quot;2XL&quot;,&quot;3XL&quot;,&quot;4XL&quot;,&quot;5XL&quot;],
4739        price: 3100,
4740        compare_at_price: null,
4741        image: "\/\/printroom.co\/cdn\/shop\/files\/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593\u0026width=200",
4742        productImage: "\/\/printroom.co\/cdn\/shop\/files\/product_a9061c96-f012-4c1b-8a13-dc512b72304b_slot_1.jpg?v=1772581593\u0026width=200",
4743        url: "/products/stencil-hood",
4744        moq: 24
4745      }) }'
4746      :aria-label="$store.favorites.has(4166829736006) ? 'Open quote list' : 'Add Stencil Hood to quote'"
4747    >
4748      <span style="width:10px; height:10px; flex-shrink:0;" x-show="!$store.favorites.has(4166829736006)"><span class="h-full w-full">
4749  <svg
4750    aria-hidden="true"
4751    focusable="false"
4752    role="presentation"
4753    class="icon icon-quote-list-outline"
4754    viewBox="0 0 24 24"
4755    fill="none"
4756  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
4757    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
4758    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
4759    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
4760    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
4761    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
4762    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
4763    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
4764  </svg>
4765</span>
4766</span>
4767      <span x-text="$store.favorites.has(4166829736006) ? 'In quote ✓' : 'Add to quote'">Add to quote</span>
4768    </button>
4769  </data-island></div>
4770    </div>
4771  </div>
4772</data-island>
4773
4774        </li>
4775      
4776
4777        <li class="col-span-1 lg:col-span-3 bg-scheme-background text-scheme-text">
4778          
4779<data-island
4780  class="relative flex h-full flex-col text-center hover:text-scheme-accent"
4781  
4782  data-color-scheme="scheme5"
4783>
4784  <div
4785    class="relative"
4786  ><div
4787      class="group w-full pt-2 lg:pt-4 px-section-horizontal-spacing "
4788      
4789    >
4790      <div class="relative z-0">
4791        <a
4792          href="/products/surf-cap"
4793          
4794          class="absolute inset-0 z-40"
4795        >
4796          <span class="sr-only">Surf Cap</span>
4797        </a>
4798
4799        
4800<div
4801            class="relative"
4802            style="padding-top: 100%;"
4803          ><image-with-placeholder>
4804  <img src="//printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=3000" alt="Custom orange cap on white background" srcset="//printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=200 200w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=350 350w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=450 450w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=750 750w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=850 850w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=960 960w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556&amp;width=3000 3000w" width="3000" height="3000" loading="eager" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
4805  
4806    <div
4807      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
4808    ></div>
4809  
4810</image-with-placeholder>
4811</div>
4812
4813        <image-with-placeholder>
4814  <img src="//printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=3000" alt="orange cap on white background" srcset="//printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=200 200w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=350 350w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=450 450w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=750 750w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=850 850w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=960 960w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_2.jpg?v=1772654559&amp;width=3000 3000w" width="3000" height="3000" loading="eager" class="peer/image block absolute inset-0 w-full h-full object-contain z-35 bg-scheme-background opacity-0 transition-opacity duration-200 ease-in-out group-hover:opacity-100 group-focus-within:opacity-100" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
4815  
4816    <div
4817      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
4818    ></div>
4819  
4820</image-with-placeholder>
4821
4822</div>
4823    </div>
4824
4825    
4826    <div
4827      class="relative justify-between py-4 px-section-horizontal-spacing  text-center text-sm lg:text-base"
4828    >
4829      <a
4830        href="/products/surf-cap"
4831        
4832        class="absolute inset-0 z-10"
4833      >
4834        <span class="sr-only">Surf Cap</span>
4835      </a>
4836      <div class="text-center break-word">
4837        
4838          <p class="mb-1 text-scheme-secondary">
4839            AS Colour
4840          </p>
4841        
4842        <p
4843          aria-hidden="true"
4844          class="font-bold"
4845        >
4846          Surf Cap
4847        </p>
4848
4849        
4850        
4851
4852
4853
4854
4855
4856
4857        
4858      </div>
4859      <div class="text-center mt-1 lg:mt-2">
4860        
4861          
4862          
4863            
4864<span>from $13.00</span>
4865            
4866          
4867        
4868        
4869</div>
4870
4871      <div class="mt-2 text-center"><data-island x-data on="idle" style="display: inline-block;">
4872    <button
4873      type="button"
4874      :style="'display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:DM Sans,sans-serif; font-size:10px; font-weight:400; line-height:16px; border-radius:24px; cursor:pointer; white-space:nowrap; position:relative; z-index:10; transition:transform 0.2s ease-out,background-color 0.2s ease-out,border-color 0.2s ease-out,color 0.2s ease-out,box-shadow 0.2s ease-out;' + ($store.favorites.has(8274958123078)
4875        ? 'border:0.4px solid #4B4D72; background:#4B4D72; color:#fff; box-shadow:0 4px 14px rgba(75,77,114,0.18);'
4876        : 'border:0.4px solid #000; background:transparent; color:#000; box-shadow:none;')"
4877      style="display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; line-height:16px; border:0.4px solid #000; border-radius:24px; background:transparent; color:#000; cursor:pointer; white-space:nowrap; position:relative; z-index:10;"
4878      @click.prevent.stop='if ($store.favorites.has(8274958123078)) { $store.modals.open("favorites") } else { $store.favorites.add({
4879        id: 8274958123078,
4880        handle: &quot;surf-cap&quot;,
4881        title: &quot;Surf Cap&quot;,
4882        vendor: &quot;AS Colour&quot;,
4883        hasColours: true,
4884        variantId: null,
4885        colour: null,
4886        sizeOptions: [&quot;One Size&quot;],
4887        price: 1300,
4888        compare_at_price: null,
4889        image: "\/\/printroom.co\/cdn\/shop\/files\/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556\u0026width=200",
4890        productImage: "\/\/printroom.co\/cdn\/shop\/files\/product_a75e485f-b314-489e-9bd6-e48e7b180d7f_slot_1.jpg?v=1772654556\u0026width=200",
4891        url: "/products/surf-cap",
4892        moq: 24
4893      }) }'
4894      :aria-label="$store.favorites.has(8274958123078) ? 'Open quote list' : 'Add Surf Cap to quote'"
4895    >
4896      <span style="width:10px; height:10px; flex-shrink:0;" x-show="!$store.favorites.has(8274958123078)"><span class="h-full w-full">
4897  <svg
4898    aria-hidden="true"
4899    focusable="false"
4900    role="presentation"
4901    class="icon icon-quote-list-outline"
4902    viewBox="0 0 24 24"
4903    fill="none"
4904  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
4905    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
4906    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
4907    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
4908    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
4909    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
4910    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
4911    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
4912  </svg>
4913</span>
4914</span>
4915      <span x-text="$store.favorites.has(8274958123078) ? 'In quote ✓' : 'Add to quote'">Add to quote</span>
4916    </button>
4917  </data-island></div>
4918    </div>
4919  </div>
4920</data-island>
4921
4922        </li>
4923      
4924
4925        <li class="col-span-1 lg:col-span-3 bg-scheme-background text-scheme-text">
4926          
4927<data-island
4928  class="relative flex h-full flex-col text-center hover:text-scheme-accent"
4929  
4930  data-color-scheme="scheme5"
4931>
4932  <div
4933    class="relative"
4934  ><div
4935      class="group w-full pt-2 lg:pt-4 px-section-horizontal-spacing "
4936      
4937    >
4938      <div class="relative z-0">
4939        <a
4940          href="/products/weekend-tote-bag"
4941          
4942          class="absolute inset-0 z-40"
4943        >
4944          <span class="sr-only">Weekend Tote Bag</span>
4945        </a>
4946
4947        
4948<div
4949            class="relative"
4950            style="padding-top: 100%;"
4951          ><image-with-placeholder>
4952  <img src="//printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=3000" alt="Printed Print Room Weekend tote bag on white background" srcset="//printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=200 200w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=350 350w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=450 450w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=750 750w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=850 850w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=960 960w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
4953  
4954    <div
4955      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
4956    ></div>
4957  
4958</image-with-placeholder>
4959</div>
4960
4961        <image-with-placeholder>
4962  <img src="//printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=3000" alt="Print Room Weekend Tote Bag PRTBWE Bag made to order nz" srcset="//printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=200 200w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=350 350w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=450 450w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=750 750w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=850 850w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=960 960w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=1280 1280w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=1440 1440w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=1536 1536w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=1706 1706w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=1782 1782w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=1920 1920w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=2560 2560w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=2880 2880w, //printroom.co/cdn/shop/files/pr_weekend_tote_utopia_ice_ltd_8accac43-5fcb-4ebb-8b20-4405e0db4d55.jpg?v=1790555505&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain z-35 bg-scheme-background opacity-0 transition-opacity duration-200 ease-in-out group-hover:opacity-100 group-focus-within:opacity-100" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
4963  
4964    <div
4965      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
4966    ></div>
4967  
4968</image-with-placeholder>
4969
4970</div>
4971    </div>
4972
4973    
4974    <div
4975      class="relative justify-between py-4 px-section-horizontal-spacing  text-center text-sm lg:text-base"
4976    >
4977      <a
4978        href="/products/weekend-tote-bag"
4979        
4980        class="absolute inset-0 z-10"
4981      >
4982        <span class="sr-only">Weekend Tote Bag</span>
4983      </a>
4984      <div class="text-center break-word">
4985        
4986          <p class="mb-1 text-scheme-secondary">
4987            Print Room
4988          </p>
4989        
4990        <p
4991          aria-hidden="true"
4992          class="font-bold"
4993        >
4994          Weekend Tote Bag
4995        </p>
4996
4997        
4998        
4999
5000
5001
5002
5003
5004
5005        
5006      </div>
5007      <div class="text-center mt-1 lg:mt-2">
5008        
5009          
5010          
5011            
5012<span>from $11.00</span>
5013            
5014          
5015        
5016        
5017</div>
5018
5019      <div class="mt-2 text-center"><data-island x-data on="idle" style="display: inline-block;">
5020    <button
5021      type="button"
5022      :style="'display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:DM Sans,sans-serif; font-size:10px; font-weight:400; line-height:16px; border-radius:24px; cursor:pointer; white-space:nowrap; position:relative; z-index:10; transition:transform 0.2s ease-out,background-color 0.2s ease-out,border-color 0.2s ease-out,color 0.2s ease-out,box-shadow 0.2s ease-out;' + ($store.favorites.has(8274971885638)
5023        ? 'border:0.4px solid #4B4D72; background:#4B4D72; color:#fff; box-shadow:0 4px 14px rgba(75,77,114,0.18);'
5024        : 'border:0.4px solid #000; background:transparent; color:#000; box-shadow:none;')"
5025      style="display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; line-height:16px; border:0.4px solid #000; border-radius:24px; background:transparent; color:#000; cursor:pointer; white-space:nowrap; position:relative; z-index:10;"
5026      @click.prevent.stop='if ($store.favorites.has(8274971885638)) { $store.modals.open("favorites") } else { $store.favorites.add({
5027        id: 8274971885638,
5028        handle: &quot;weekend-tote-bag&quot;,
5029        title: &quot;Weekend Tote Bag&quot;,
5030        vendor: &quot;Print Room&quot;,
5031        hasColours: true,
5032        variantId: null,
5033        colour: null,
5034        sizeOptions: &quot;&quot;,
5035        price: 1100,
5036        compare_at_price: null,
5037        image: "\/\/printroom.co\/cdn\/shop\/files\/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689\u0026width=200",
5038        productImage: "\/\/printroom.co\/cdn\/shop\/files\/product_d08ffcb8-611f-401c-87a2-0711b56b28e2_slot_1.jpg?v=1772657689\u0026width=200",
5039        url: "/products/weekend-tote-bag",
5040        moq: 50
5041      }) }'
5042      :aria-label="$store.favorites.has(8274971885638) ? 'Open quote list' : 'Add Weekend Tote Bag to quote'"
5043    >
5044      <span style="width:10px; height:10px; flex-shrink:0;" x-show="!$store.favorites.has(8274971885638)"><span class="h-full w-full">
5045  <svg
5046    aria-hidden="true"
5047    focusable="false"
5048    role="presentation"
5049    class="icon icon-quote-list-outline"
5050    viewBox="0 0 24 24"
5051    fill="none"
5052  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
5053    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5054    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
5055    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5056    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
5057    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5058    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
5059    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5060  </svg>
5061</span>
5062</span>
5063      <span x-text="$store.favorites.has(8274971885638) ? 'In quote ✓' : 'Add to quote'">Add to quote</span>
5064    </button>
5065  </data-island></div>
5066    </div>
5067  </div>
5068</data-island>
5069
5070        </li>
5071      
5072
5073        <li class="col-span-1 lg:col-span-3 bg-scheme-background text-scheme-text">
5074          
5075<data-island
5076  class="relative flex h-full flex-col text-center hover:text-scheme-accent"
5077  
5078  data-color-scheme="scheme5"
5079>
5080  <div
5081    class="relative"
5082  ><div
5083      class="group w-full pt-2 lg:pt-4 px-section-horizontal-spacing "
5084      
5085    >
5086      <div class="relative z-0">
5087        <a
5088          href="/products/milk-mug"
5089          
5090          class="absolute inset-0 z-40"
5091        >
5092          <span class="sr-only">Milk Mug</span>
5093        </a>
5094
5095        
5096<div
5097            class="relative"
5098            style="padding-top: 100%;"
5099          ><image-with-placeholder>
5100  <img src="//printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=3000" alt="Milk Mug - Custom Clothing | T Shirt Printing | Embroidery | Screen Printing | Print Room NZ" srcset="//printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=200 200w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=350 350w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=450 450w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=750 750w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=850 850w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=960 960w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=1280 1280w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=1440 1440w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=1536 1536w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=1706 1706w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=1782 1782w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=1920 1920w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=2560 2560w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=2880 2880w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin.jpg?v=1785739796&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5101  
5102    <div
5103      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5104    ></div>
5105  
5106</image-with-placeholder>
5107</div>
5108
5109        <image-with-placeholder>
5110  <img src="//printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=3000" alt="Milk Mug - Custom Clothing | T Shirt Printing | Embroidery | Screen Printing | Print Room NZ" srcset="//printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=200 200w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=350 350w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=450 450w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=750 750w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=850 850w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=960 960w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=1280 1280w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=1440 1440w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=1536 1536w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=1706 1706w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=1782 1782w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=1920 1920w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=2560 2560w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=2880 2880w, //printroom.co/cdn/shop/files/mto_milk_mug_scroggin_2.jpg?v=1785739796&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain z-35 bg-scheme-background opacity-0 transition-opacity duration-200 ease-in-out group-hover:opacity-100 group-focus-within:opacity-100" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5111  
5112    <div
5113      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5114    ></div>
5115  
5116</image-with-placeholder>
5117
5118</div>
5119    </div>
5120
5121    
5122    <div
5123      class="relative justify-between py-4 px-section-horizontal-spacing  text-center text-sm lg:text-base"
5124    >
5125      <a
5126        href="/products/milk-mug"
5127        
5128        class="absolute inset-0 z-10"
5129      >
5130        <span class="sr-only">Milk Mug</span>
5131      </a>
5132      <div class="text-center break-word">
5133        
5134          <p class="mb-1 text-scheme-secondary">
5135            Made to order
5136          </p>
5137        
5138        <p
5139          aria-hidden="true"
5140          class="font-bold"
5141        >
5142          Milk Mug
5143        </p>
5144
5145        
5146        
5147
5148
5149
5150
5151
5152
5153        
5154      </div>
5155      <div class="text-center mt-1 lg:mt-2">
5156        
5157          
5158          
5159            
5160<span>from $13.00</span>
5161            
5162          
5163        
5164        
5165</div>
5166
5167      <div class="mt-2 text-center"><data-island x-data on="idle" style="display: inline-block;">
5168    <button
5169      type="button"
5170      :style="'display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:DM Sans,sans-serif; font-size:10px; font-weight:400; line-height:16px; border-radius:24px; cursor:pointer; white-space:nowrap; position:relative; z-index:10; transition:transform 0.2s ease-out,background-color 0.2s ease-out,border-color 0.2s ease-out,color 0.2s ease-out,box-shadow 0.2s ease-out;' + ($store.favorites.has(8310098493510)
5171        ? 'border:0.4px solid #4B4D72; background:#4B4D72; color:#fff; box-shadow:0 4px 14px rgba(75,77,114,0.18);'
5172        : 'border:0.4px solid #000; background:transparent; color:#000; box-shadow:none;')"
5173      style="display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; line-height:16px; border:0.4px solid #000; border-radius:24px; background:transparent; color:#000; cursor:pointer; white-space:nowrap; position:relative; z-index:10;"
5174      @click.prevent.stop='if ($store.favorites.has(8310098493510)) { $store.modals.open("favorites") } else { $store.favorites.add({
5175        id: 8310098493510,
5176        handle: &quot;milk-mug&quot;,
5177        title: &quot;Milk Mug&quot;,
5178        vendor: &quot;Made to order&quot;,
5179        hasColours: false,
5180        variantId: null,
5181        colour: null,
5182        sizeOptions: &quot;&quot;,
5183        price: 1300,
5184        compare_at_price: null,
5185        image: "\/\/printroom.co\/cdn\/shop\/files\/mto_milk_mug_scroggin.jpg?v=1785739796\u0026width=200",
5186        productImage: "\/\/printroom.co\/cdn\/shop\/files\/mto_milk_mug_scroggin.jpg?v=1785739796\u0026width=200",
5187        url: "/products/milk-mug",
5188        moq: 50
5189      }) }'
5190      :aria-label="$store.favorites.has(8310098493510) ? 'Open quote list' : 'Add Milk Mug to quote'"
5191    >
5192      <span style="width:10px; height:10px; flex-shrink:0;" x-show="!$store.favorites.has(8310098493510)"><span class="h-full w-full">
5193  <svg
5194    aria-hidden="true"
5195    focusable="false"
5196    role="presentation"
5197    class="icon icon-quote-list-outline"
5198    viewBox="0 0 24 24"
5199    fill="none"
5200  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
5201    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5202    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
5203    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5204    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
5205    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5206    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
5207    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5208  </svg>
5209</span>
5210</span>
5211      <span x-text="$store.favorites.has(8310098493510) ? 'In quote ✓' : 'Add to quote'">Add to quote</span>
5212    </button>
5213  </data-island></div>
5214    </div>
5215  </div>
5216</data-island>
5217
5218        </li>
5219      
5220
5221        <li class="col-span-1 lg:col-span-3 bg-scheme-background text-scheme-text">
5222          
5223<data-island
5224  class="relative flex h-full flex-col text-center hover:text-scheme-accent"
5225  
5226  data-color-scheme="scheme5"
5227>
5228  <div
5229    class="relative"
5230  ><div
5231      class="group w-full pt-2 lg:pt-4 px-section-horizontal-spacing "
5232      
5233    >
5234      <div class="relative z-0">
5235        <a
5236          href="/products/heavy-tee"
5237          
5238          class="absolute inset-0 z-40"
5239        >
5240          <span class="sr-only">Heavy Tee</span>
5241        </a>
5242
5243        
5244<div
5245            class="relative"
5246            style="padding-top: 100%;"
5247          ><image-with-placeholder>
5248  <img src="//printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=3000" alt="Butter coloured tee on a white background with a red print" srcset="//printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=200 200w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=350 350w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=450 450w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=750 750w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=850 850w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=960 960w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5249  
5250    <div
5251      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5252    ></div>
5253  
5254</image-with-placeholder>
5255</div>
5256
5257        <image-with-placeholder>
5258  <img src="//printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=3000" alt="Butter coloured tee on a white background" srcset="//printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=200 200w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=350 350w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=450 450w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=750 750w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=850 850w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=960 960w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_2.jpg?v=1772678121&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain z-35 bg-scheme-background opacity-0 transition-opacity duration-200 ease-in-out group-hover:opacity-100 group-focus-within:opacity-100" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5259  
5260    <div
5261      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5262    ></div>
5263  
5264</image-with-placeholder>
5265
5266</div>
5267    </div>
5268
5269    
5270    <div
5271      class="relative justify-between py-4 px-section-horizontal-spacing  text-center text-sm lg:text-base"
5272    >
5273      <a
5274        href="/products/heavy-tee"
5275        
5276        class="absolute inset-0 z-10"
5277      >
5278        <span class="sr-only">Heavy Tee</span>
5279      </a>
5280      <div class="text-center break-word">
5281        
5282          <p class="mb-1 text-scheme-secondary">
5283            AS Colour
5284          </p>
5285        
5286        <p
5287          aria-hidden="true"
5288          class="font-bold"
5289        >
5290          Heavy Tee
5291        </p>
5292
5293        
5294        
5295
5296
5297
5298
5299
5300
5301        
5302      </div>
5303      <div class="text-center mt-1 lg:mt-2">
5304        
5305          
5306          
5307            
5308<span>from $16.00</span>
5309            
5310          
5311        
5312        
5313</div>
5314
5315      <div class="mt-2 text-center"><data-island x-data on="idle" style="display: inline-block;">
5316    <button
5317      type="button"
5318      :style="'display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:DM Sans,sans-serif; font-size:10px; font-weight:400; line-height:16px; border-radius:24px; cursor:pointer; white-space:nowrap; position:relative; z-index:10; transition:transform 0.2s ease-out,background-color 0.2s ease-out,border-color 0.2s ease-out,color 0.2s ease-out,box-shadow 0.2s ease-out;' + ($store.favorites.has(7832314249286)
5319        ? 'border:0.4px solid #4B4D72; background:#4B4D72; color:#fff; box-shadow:0 4px 14px rgba(75,77,114,0.18);'
5320        : 'border:0.4px solid #000; background:transparent; color:#000; box-shadow:none;')"
5321      style="display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; line-height:16px; border:0.4px solid #000; border-radius:24px; background:transparent; color:#000; cursor:pointer; white-space:nowrap; position:relative; z-index:10;"
5322      @click.prevent.stop='if ($store.favorites.has(7832314249286)) { $store.modals.open("favorites") } else { $store.favorites.add({
5323        id: 7832314249286,
5324        handle: &quot;heavy-tee&quot;,
5325        title: &quot;Heavy Tee&quot;,
5326        vendor: &quot;AS Colour&quot;,
5327        hasColours: true,
5328        variantId: null,
5329        colour: null,
5330        sizeOptions: [&quot;S&quot;,&quot;M&quot;,&quot;L&quot;,&quot;XL&quot;,&quot;2XL&quot;,&quot;3XL&quot;,&quot;4XL&quot;,&quot;5XL&quot;],
5331        price: 1600,
5332        compare_at_price: null,
5333        image: "\/\/printroom.co\/cdn\/shop\/files\/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118\u0026width=200",
5334        productImage: "\/\/printroom.co\/cdn\/shop\/files\/product_b4bbb6a0-b0d8-441b-a70c-2a0dfeba3923_slot_1.jpg?v=1772678118\u0026width=200",
5335        url: "/products/heavy-tee",
5336        moq: 24
5337      }) }'
5338      :aria-label="$store.favorites.has(7832314249286) ? 'Open quote list' : 'Add Heavy Tee to quote'"
5339    >
5340      <span style="width:10px; height:10px; flex-shrink:0;" x-show="!$store.favorites.has(7832314249286)"><span class="h-full w-full">
5341  <svg
5342    aria-hidden="true"
5343    focusable="false"
5344    role="presentation"
5345    class="icon icon-quote-list-outline"
5346    viewBox="0 0 24 24"
5347    fill="none"
5348  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
5349    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5350    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
5351    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5352    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
5353    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5354    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
5355    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5356  </svg>
5357</span>
5358</span>
5359      <span x-text="$store.favorites.has(7832314249286) ? 'In quote ✓' : 'Add to quote'">Add to quote</span>
5360    </button>
5361  </data-island></div>
5362    </div>
5363  </div>
5364</data-island>
5365
5366        </li>
5367      
5368
5369        <li class="col-span-1 lg:col-span-3 bg-scheme-background text-scheme-text">
5370          
5371<data-island
5372  class="relative flex h-full flex-col text-center hover:text-scheme-accent"
5373  
5374  data-color-scheme="scheme5"
5375>
5376  <div
5377    class="relative"
5378  ><div
5379      class="group w-full pt-2 lg:pt-4 px-section-horizontal-spacing "
5380      
5381    >
5382      <div class="relative z-0">
5383        <a
5384          href="/products/custom-business-sock"
5385          
5386          class="absolute inset-0 z-40"
5387        >
5388          <span class="sr-only">Business Sock</span>
5389        </a>
5390
5391        
5392<div
5393            class="relative"
5394            style="padding-top: 100%;"
5395          ><image-with-placeholder>
5396  <img src="//printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=3000" alt="Light green business socks on a white background" srcset="//printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=200 200w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=350 350w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=450 450w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=750 750w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=850 850w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=960 960w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077&amp;width=3000 3000w" width="3000" height="3002" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5397  
5398    <div
5399      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5400    ></div>
5401  
5402</image-with-placeholder>
5403</div>
5404
5405        <image-with-placeholder>
5406  <img src="//printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=3000" alt="Outline of a sock with measurements on a white background" srcset="//printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=200 200w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=350 350w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=450 450w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=750 750w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=850 850w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=960 960w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=1280 1280w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=1440 1440w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=1536 1536w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=1706 1706w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=1782 1782w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=1920 1920w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=2560 2560w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=2880 2880w, //printroom.co/cdn/shop/files/business_socks_1fe2bdfd-21dd-4b1a-b3ba-d8d3b2786d80.jpg?v=1773194204&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain z-35 bg-scheme-background opacity-0 transition-opacity duration-200 ease-in-out group-hover:opacity-100 group-focus-within:opacity-100" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5407  
5408    <div
5409      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5410    ></div>
5411  
5412</image-with-placeholder>
5413
5414</div>
5415    </div>
5416
5417    
5418    <div
5419      class="relative justify-between py-4 px-section-horizontal-spacing  text-center text-sm lg:text-base"
5420    >
5421      <a
5422        href="/products/custom-business-sock"
5423        
5424        class="absolute inset-0 z-10"
5425      >
5426        <span class="sr-only">Business Sock</span>
5427      </a>
5428      <div class="text-center break-word">
5429        
5430          <p class="mb-1 text-scheme-secondary">
5431            Made to order
5432          </p>
5433        
5434        <p
5435          aria-hidden="true"
5436          class="font-bold"
5437        >
5438          Business Sock
5439        </p>
5440
5441        
5442        
5443
5444
5445
5446
5447
5448
5449        
5450      </div>
5451      <div class="text-center mt-1 lg:mt-2">
5452        
5453          
5454          
5455            
5456<span>from $10.00</span>
5457            
5458          
5459        
5460        
5461</div>
5462
5463      <div class="mt-2 text-center"><data-island x-data on="idle" style="display: inline-block;">
5464    <button
5465      type="button"
5466      :style="'display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:DM Sans,sans-serif; font-size:10px; font-weight:400; line-height:16px; border-radius:24px; cursor:pointer; white-space:nowrap; position:relative; z-index:10; transition:transform 0.2s ease-out,background-color 0.2s ease-out,border-color 0.2s ease-out,color 0.2s ease-out,box-shadow 0.2s ease-out;' + ($store.favorites.has(8274999083078)
5467        ? 'border:0.4px solid #4B4D72; background:#4B4D72; color:#fff; box-shadow:0 4px 14px rgba(75,77,114,0.18);'
5468        : 'border:0.4px solid #000; background:transparent; color:#000; box-shadow:none;')"
5469      style="display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; line-height:16px; border:0.4px solid #000; border-radius:24px; background:transparent; color:#000; cursor:pointer; white-space:nowrap; position:relative; z-index:10;"
5470      @click.prevent.stop='if ($store.favorites.has(8274999083078)) { $store.modals.open("favorites") } else { $store.favorites.add({
5471        id: 8274999083078,
5472        handle: &quot;custom-business-sock&quot;,
5473        title: &quot;Business Sock&quot;,
5474        vendor: &quot;Made to order&quot;,
5475        hasColours: false,
5476        variantId: null,
5477        colour: null,
5478        sizeOptions: &quot;&quot;,
5479        price: 1000,
5480        compare_at_price: null,
5481        image: "\/\/printroom.co\/cdn\/shop\/files\/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077\u0026width=200",
5482        productImage: "\/\/printroom.co\/cdn\/shop\/files\/product_f2ebe561-6eac-4409-bebb-680590bead7d_slot_1.png?v=1772666077\u0026width=200",
5483        url: "/products/custom-business-sock",
5484        moq: 100
5485      }) }'
5486      :aria-label="$store.favorites.has(8274999083078) ? 'Open quote list' : 'Add Business Sock to quote'"
5487    >
5488      <span style="width:10px; height:10px; flex-shrink:0;" x-show="!$store.favorites.has(8274999083078)"><span class="h-full w-full">
5489  <svg
5490    aria-hidden="true"
5491    focusable="false"
5492    role="presentation"
5493    class="icon icon-quote-list-outline"
5494    viewBox="0 0 24 24"
5495    fill="none"
5496  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
5497    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5498    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
5499    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5500    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
5501    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5502    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
5503    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5504  </svg>
5505</span>
5506</span>
5507      <span x-text="$store.favorites.has(8274999083078) ? 'In quote ✓' : 'Add to quote'">Add to quote</span>
5508    </button>
5509  </data-island></div>
5510    </div>
5511  </div>
5512</data-island>
5513
5514        </li>
5515      
5516
5517        <li class="col-span-1 lg:col-span-3 bg-scheme-background text-scheme-text">
5518          
5519<data-island
5520  class="relative flex h-full flex-col text-center hover:text-scheme-accent"
5521  
5522  data-color-scheme="scheme5"
5523>
5524  <div
5525    class="relative"
5526  ><div
5527      class="group w-full pt-2 lg:pt-4 px-section-horizontal-spacing "
5528      
5529    >
5530      <div class="relative z-0">
5531        <a
5532          href="/products/utility-tote-bag-16oz-colour"
5533          
5534          class="absolute inset-0 z-40"
5535        >
5536          <span class="sr-only">Utility Tote Bag 16oz Colour</span>
5537        </a>
5538
5539        
5540<div
5541            class="relative"
5542            style="padding-top: 100%;"
5543          ><image-with-placeholder>
5544  <img src="//printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=3000" alt="Made to order Utility Tote Bag 16oz Colour MTOUT16C Bag custom merch nz" srcset="//printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=200 200w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=350 350w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=450 450w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=750 750w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=850 850w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=960 960w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5545  
5546    <div
5547      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5548    ></div>
5549  
5550</image-with-placeholder>
5551</div>
5552
5553        <image-with-placeholder>
5554  <img src="//printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=3000" alt="Made to order Utility Tote Bag 16oz Colour MTOUT16C Bag promo products nz" srcset="//printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=200 200w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=350 350w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=450 450w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=750 750w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=850 850w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=960 960w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_10.jpg?v=1778567194&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain z-35 bg-scheme-background opacity-0 transition-opacity duration-200 ease-in-out group-hover:opacity-100 group-focus-within:opacity-100" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5555  
5556    <div
5557      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5558    ></div>
5559  
5560</image-with-placeholder>
5561
5562</div>
5563    </div>
5564
5565    
5566    <div
5567      class="relative justify-between py-4 px-section-horizontal-spacing  text-center text-sm lg:text-base"
5568    >
5569      <a
5570        href="/products/utility-tote-bag-16oz-colour"
5571        
5572        class="absolute inset-0 z-10"
5573      >
5574        <span class="sr-only">Utility Tote Bag 16oz Colour</span>
5575      </a>
5576      <div class="text-center break-word">
5577        
5578          <p class="mb-1 text-scheme-secondary">
5579            Made to order
5580          </p>
5581        
5582        <p
5583          aria-hidden="true"
5584          class="font-bold"
5585        >
5586          Utility Tote Bag 16oz Colour
5587        </p>
5588
5589        
5590        
5591
5592
5593
5594
5595
5596
5597        
5598      </div>
5599      <div class="text-center mt-1 lg:mt-2">
5600        
5601          
5602          
5603            
5604<span>from $13.00</span>
5605            
5606          
5607        
5608        
5609</div>
5610
5611      <div class="mt-2 text-center"><data-island x-data on="idle" style="display: inline-block;">
5612    <button
5613      type="button"
5614      :style="'display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:DM Sans,sans-serif; font-size:10px; font-weight:400; line-height:16px; border-radius:24px; cursor:pointer; white-space:nowrap; position:relative; z-index:10; transition:transform 0.2s ease-out,background-color 0.2s ease-out,border-color 0.2s ease-out,color 0.2s ease-out,box-shadow 0.2s ease-out;' + ($store.favorites.has(8394549297222)
5615        ? 'border:0.4px solid #4B4D72; background:#4B4D72; color:#fff; box-shadow:0 4px 14px rgba(75,77,114,0.18);'
5616        : 'border:0.4px solid #000; background:transparent; color:#000; box-shadow:none;')"
5617      style="display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; line-height:16px; border:0.4px solid #000; border-radius:24px; background:transparent; color:#000; cursor:pointer; white-space:nowrap; position:relative; z-index:10;"
5618      @click.prevent.stop='if ($store.favorites.has(8394549297222)) { $store.modals.open("favorites") } else { $store.favorites.add({
5619        id: 8394549297222,
5620        handle: &quot;utility-tote-bag-16oz-colour&quot;,
5621        title: &quot;Utility Tote Bag 16oz Colour&quot;,
5622        vendor: &quot;Made to order&quot;,
5623        hasColours: false,
5624        variantId: null,
5625        colour: null,
5626        sizeOptions: &quot;&quot;,
5627        price: 1300,
5628        compare_at_price: null,
5629        image: "\/\/printroom.co\/cdn\/shop\/files\/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170\u0026width=200",
5630        productImage: "\/\/printroom.co\/cdn\/shop\/files\/product_0ab74ef0-355d-466b-80b8-6d324cf996f0_slot_1.jpg?v=1778567170\u0026width=200",
5631        url: "/products/utility-tote-bag-16oz-colour",
5632        moq: 500
5633      }) }'
5634      :aria-label="$store.favorites.has(8394549297222) ? 'Open quote list' : 'Add Utility Tote Bag 16oz Colour to quote'"
5635    >
5636      <span style="width:10px; height:10px; flex-shrink:0;" x-show="!$store.favorites.has(8394549297222)"><span class="h-full w-full">
5637  <svg
5638    aria-hidden="true"
5639    focusable="false"
5640    role="presentation"
5641    class="icon icon-quote-list-outline"
5642    viewBox="0 0 24 24"
5643    fill="none"
5644  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
5645    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5646    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
5647    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5648    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
5649    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5650    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
5651    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5652  </svg>
5653</span>
5654</span>
5655      <span x-text="$store.favorites.has(8394549297222) ? 'In quote ✓' : 'Add to quote'">Add to quote</span>
5656    </button>
5657  </data-island></div>
5658    </div>
5659  </div>
5660</data-island>
5661
5662        </li>
5663      
5664
5665        <li class="col-span-1 lg:col-span-3 bg-scheme-background text-scheme-text">
5666          
5667<data-island
5668  class="relative flex h-full flex-col text-center hover:text-scheme-accent"
5669  
5670  data-color-scheme="scheme5"
5671>
5672  <div
5673    class="relative"
5674  ><div
5675      class="group w-full pt-2 lg:pt-4 px-section-horizontal-spacing "
5676      
5677    >
5678      <div class="relative z-0">
5679        <a
5680          href="/products/wo-s-maple-tee"
5681          
5682          class="absolute inset-0 z-40"
5683        >
5684          <span class="sr-only">Wo's Maple Tee</span>
5685        </a>
5686
5687        
5688<div
5689            class="relative"
5690            style="padding-top: 100%;"
5691          ><image-with-placeholder>
5692  <img src="//printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=3000" alt="Pink pineapple on a black t-shirt" srcset="//printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=200 200w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=350 350w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=450 450w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=750 750w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=850 850w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=960 960w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5693  
5694    <div
5695      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5696    ></div>
5697  
5698</image-with-placeholder>
5699</div>
5700
5701        <image-with-placeholder>
5702  <img src="//printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=3000" alt="AS Colour Wo&#39;s maple tee" srcset="//printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=200 200w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=350 350w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=450 450w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=750 750w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=850 850w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=960 960w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=1280 1280w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=1440 1440w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=1536 1536w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=1706 1706w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=1782 1782w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=1920 1920w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=2560 2560w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=2880 2880w, //printroom.co/cdn/shop/files/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_2.jpg?v=1772676978&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain z-35 bg-scheme-background opacity-0 transition-opacity duration-200 ease-in-out group-hover:opacity-100 group-focus-within:opacity-100" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
5703  
5704    <div
5705      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5706    ></div>
5707  
5708</image-with-placeholder>
5709
5710</div>
5711    </div>
5712
5713    
5714    <div
5715      class="relative justify-between py-4 px-section-horizontal-spacing  text-center text-sm lg:text-base"
5716    >
5717      <a
5718        href="/products/wo-s-maple-tee"
5719        
5720        class="absolute inset-0 z-10"
5721      >
5722        <span class="sr-only">Wo's Maple Tee</span>
5723      </a>
5724      <div class="text-center break-word">
5725        
5726          <p class="mb-1 text-scheme-secondary">
5727            AS Colour
5728          </p>
5729        
5730        <p
5731          aria-hidden="true"
5732          class="font-bold"
5733        >
5734          Wo's Maple Tee
5735        </p>
5736
5737        
5738        
5739
5740
5741
5742
5743
5744
5745        
5746      </div>
5747      <div class="text-center mt-1 lg:mt-2">
5748        
5749          
5750          
5751            
5752<span>from $12.00</span>
5753            
5754          
5755        
5756        
5757</div>
5758
5759      <div class="mt-2 text-center"><data-island x-data on="idle" style="display: inline-block;">
5760    <button
5761      type="button"
5762      :style="'display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:DM Sans,sans-serif; font-size:10px; font-weight:400; line-height:16px; border-radius:24px; cursor:pointer; white-space:nowrap; position:relative; z-index:10; transition:transform 0.2s ease-out,background-color 0.2s ease-out,border-color 0.2s ease-out,color 0.2s ease-out,box-shadow 0.2s ease-out;' + ($store.favorites.has(8275027722310)
5763        ? 'border:0.4px solid #4B4D72; background:#4B4D72; color:#fff; box-shadow:0 4px 14px rgba(75,77,114,0.18);'
5764        : 'border:0.4px solid #000; background:transparent; color:#000; box-shadow:none;')"
5765      style="display:inline-flex; align-items:center; justify-content:center; gap:0.25rem; width:110px; height:26px; padding:0 0.625rem; font-family:'DM Sans',sans-serif; font-size:10px; font-weight:400; line-height:16px; border:0.4px solid #000; border-radius:24px; background:transparent; color:#000; cursor:pointer; white-space:nowrap; position:relative; z-index:10;"
5766      @click.prevent.stop='if ($store.favorites.has(8275027722310)) { $store.modals.open("favorites") } else { $store.favorites.add({
5767        id: 8275027722310,
5768        handle: &quot;wo-s-maple-tee&quot;,
5769        title: &quot;Wo&#39;s Maple Tee&quot;,
5770        vendor: &quot;AS Colour&quot;,
5771        hasColours: true,
5772        variantId: null,
5773        colour: null,
5774        sizeOptions: [&quot;XS&quot;,&quot;S&quot;,&quot;M&quot;,&quot;L&quot;,&quot;XL&quot;,&quot;2XL&quot;,&quot;3XL&quot;],
5775        price: 1200,
5776        compare_at_price: null,
5777        image: "\/\/printroom.co\/cdn\/shop\/files\/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976\u0026width=200",
5778        productImage: "\/\/printroom.co\/cdn\/shop\/files\/product_365f70b4-ad30-43ea-892f-db320032b39b_slot_1.jpg?v=1772676976\u0026width=200",
5779        url: "/products/wo-s-maple-tee",
5780        moq: 24
5781      }) }'
5782      :aria-label="$store.favorites.has(8275027722310) ? 'Open quote list' : 'Add Wo&#39;s Maple Tee to quote'"
5783    >
5784      <span style="width:10px; height:10px; flex-shrink:0;" x-show="!$store.favorites.has(8275027722310)"><span class="h-full w-full">
5785  <svg
5786    aria-hidden="true"
5787    focusable="false"
5788    role="presentation"
5789    class="icon icon-quote-list-outline"
5790    viewBox="0 0 24 24"
5791    fill="none"
5792  ><rect x="3" y="1" width="18" height="22" rx="2.5" ry="2.5" stroke="currentColor" stroke-width="1.5"></rect><circle cx="7.5" cy="7.5" r="1" fill="currentColor"></circle>
5793    <line x1="10" y1="7.5" x2="17.5" y2="7.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5794    <circle cx="7.5" cy="11" r="1" fill="currentColor"></circle>
5795    <line x1="10" y1="11" x2="17.5" y2="11" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5796    <circle cx="7.5" cy="14.5" r="1" fill="currentColor"></circle>
5797    <line x1="10" y1="14.5" x2="17.5" y2="14.5" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5798    <circle cx="7.5" cy="18" r="1" fill="currentColor"></circle>
5799    <line x1="10" y1="18" x2="17.5" y2="18" stroke="currentColor" stroke-width="1.4" stroke-linecap="round"></line>
5800  </svg>
5801</span>
5802</span>
5803      <span x-text="$store.favorites.has(8275027722310) ? 'In quote ✓' : 'Add to quote'">Add to quote</span>
5804    </button>
5805  </data-island></div>
5806    </div>
5807  </div>
5808</data-island>
5809
5810        </li>
5811      
5812</ul>
5813  </div></section>
5814
5815
5816<style> #shopify-section-template--21296459743302__featured_collection_CppVMU .text-scheme-text {padding-top: 70px;} </style></div><div id="shopify-section-template--21296459743302__rich_text_NdfPeb" class="shopify-section"><section
5817  class="overflow-hidden border-b-gridline border-gridline-color bg-scheme-background text-scheme-text snap-section"
5818  data-color-scheme="scheme5"
5819  x-data="{ visible: false }"
5820  x-intersect:enter.threshold.25="visible = true"
5821  x-intersect:leave="visible = false"
5822  data-animate="fade"
5823  :class="{ 'is-visible': visible }"
5824>
5825  <div class="px-section-horizontal-spacing py-section-vertical-spacing">
5826    <div class="flex text-center justify-start">
5827      <div class="w-full lg:w-full"><h2 class="font-heading text-heading-standard">
5828            "What do I actually want?"
5829          </h2><div class="rte mt-4  break-word">
5830          <h2>Ask yourself that, explore our product library and get an easy quote when you're ready.</h2>
5831        </div></div>
5832    </div>
5833  </div>
5834</section>
5835
5836
5837<style> #shopify-section-template--21296459743302__rich_text_NdfPeb .text-scheme-text {padding-left: 10px; padding-right: 10px; padding-top: 60px;} #shopify-section-template--21296459743302__rich_text_NdfPeb h2.text-heading-standard {font-size: 50px !important;} @media (min-width: 768px) {#shopify-section-template--21296459743302__rich_text_NdfPeb h2.text-heading-standard {font-size: 50px !important; }} @media (min-width: 1024px) {#shopify-section-template--21296459743302__rich_text_NdfPeb h2.text-heading-standard {font-size: 105px !important; }} </style></div><div id="shopify-section-template--21296459743302__rich_text_9imnVH" class="shopify-section"><section
5838  class="overflow-hidden border-b-gridline border-gridline-color bg-scheme-background text-scheme-text snap-section"
5839  data-color-scheme="scheme5"
5840  x-data="{ visible: false }"
5841  x-intersect:enter.threshold.25="visible = true"
5842  x-intersect:leave="visible = false"
5843  data-animate="fade"
5844  :class="{ 'is-visible': visible }"
5845>
5846  <div class="px-section-horizontal-spacing py-section-vertical-spacing">
5847    <div class="flex text-center justify-center">
5848      <div class="w-full lg:w-full"><div class="rte   break-word">
5849          
5850        </div><div class="mt-4 text-0"><a
5851                  href="/collections/product-library"
5852                  class="theme-button inline-block"
5853                >Discover the full library</a></div></div>
5854    </div>
5855  </div>
5856</section>
5857
5858
5859<style> #shopify-section-template--21296459743302__rich_text_9imnVH .text-scheme-text {padding-left: 30px; padding-right: 30px; padding-bottom: 35px; border-bottom: 1px solid black;} </style></div><div id="shopify-section-template--21296459743302__rich_text_7KcFGK" class="shopify-section"><section
5860  class="overflow-hidden border-b-gridline border-gridline-color bg-scheme-background text-scheme-text snap-section"
5861  data-color-scheme="scheme2"
5862  x-data="{ visible: false }"
5863  x-intersect:enter.threshold.25="visible = true"
5864  x-intersect:leave="visible = false"
5865  data-animate="fade"
5866  :class="{ 'is-visible': visible }"
5867>
5868  <div class="px-section-horizontal-spacing py-section-vertical-spacing">
5869    <div class="flex text-left justify-start">
5870      <div class="w-full lg:w-3/4"><div class="rte   break-word">
5871          <h2>Whether you want <strong>custom t-shirts</strong>, <strong>tote bags</strong>, <strong>embroidery</strong> or <strong>screen printing</strong>–our expertise will help bring your ideas to life.</h2><h2><br/></h2>
5872        </div><div class="mt-4 text-0"><a
5873                  href="/pages/services"
5874                  class="theme-button inline-block"
5875                >Browse our services</a></div></div>
5876    </div>
5877  </div>
5878</section>
5879
5880
5881<style> #shopify-section-template--21296459743302__rich_text_7KcFGK .theme-link {font-size: 40px; font-style: italic;} #shopify-section-template--21296459743302__rich_text_7KcFGK .theme-button {font-size: 25px; font-style: italic;} #shopify-section-template--21296459743302__rich_text_7KcFGK .mt-4 {padding-top: 30px; padding-bottom: 15px;} #shopify-section-template--21296459743302__rich_text_7KcFGK .text-scheme-text {padding-left: 30px; padding-right: 30px; padding-top: 80px;} </style></div><div id="shopify-section-template--21296459743302__text_columns_with_images_zLhk6U" class="shopify-section"><section
5882  class="border-b-gridline border-gridline-color bg-gridline-color snap-section"
5883  x-data="{ visible: false }"
5884  x-intersect:enter.threshold.25="visible = true"
5885  x-intersect:leave="visible = false"
5886>
5887  
5888
5889  <ul class="grid grid-cols-1 gap-gridline lg:grid-cols-12" data-stagger>
5890    
5891<li
5892        class="lg:col-span-4 bg-scheme-background text-base text-scheme-text text-left"
5893        
5894        data-color-scheme="scheme2"
5895        data-animate="slide-up"
5896        :class="{ 'is-visible': visible }"
5897      ><a
5898    href="/pages/bespoke-merch"
5899    class="group block"
5900    aria-label="Custom-built products"
5901  >
5902    <div class="bg-scheme-background p-2 lg:p-4 transition-transform group-hover:scale-105">
5903  
5904  <image-with-placeholder
5905    class="relative w-full"
5906    style="padding-bottom: 100%;"
5907  ><img src="//printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=3000" alt="Custom tote bags nz, embroidery, supacolour, screen printing nz" srcset="//printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=200 200w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=350 350w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=450 450w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=750 750w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=850 850w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=960 960w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=1280 1280w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=1440 1440w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=1536 1536w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=1706 1706w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=1782 1782w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=1920 1920w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=2560 2560w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=2880 2880w, //printroom.co/cdn/shop/files/ebb_tote_hero_image_cropped.jpg?v=1748982416&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image absolute inset-0 w-full h-full object-cover" sizes="(min-width: 1024px) calc(100vw / 12 * 4), 100vw">
5908    <div
5909      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5910    ></div>
5911  </image-with-placeholder>
5912
5913</div>
5914  </a><div class="px-section-horizontal-spacing py-section-vertical-spacing">
5915          
5916  <a
5917    href="/pages/bespoke-merch"
5918    class="block hover:opacity-90"
5919  >
5920    <h2 class="font-heading text-heading-secondary">Custom-built products</h2>
5921  </a>
5922
5923
5924          <div class="rte mt-2">
5925            
5926          </div>
5927          
5928            <div class="mt-4">
5929              <a
5930                class="theme-link inline-block text-scheme-text hover:text-scheme-accent"
5931                href="/pages/bespoke-merch"
5932              >More on me</a>
5933            </div>
5934          
5935        </div>
5936      </li>
5937    
5938<li
5939        class="lg:col-span-4 bg-scheme-background text-base text-scheme-text text-left"
5940        
5941        data-color-scheme="scheme2"
5942        data-animate="slide-up"
5943        :class="{ 'is-visible': visible }"
5944      ><a
5945    href="/pages/screen-printing"
5946    class="group block"
5947    aria-label="Screen printing"
5948  >
5949    <div class="bg-scheme-background p-2 lg:p-4 transition-transform group-hover:scale-105">
5950  
5951  <image-with-placeholder
5952    class="relative w-full"
5953    style="padding-bottom: 100%;"
5954  ><img src="//printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=3000" alt="Custom hoodies nz, embroidery, supacolour, screen printing nz" srcset="//printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=200 200w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=350 350w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=450 450w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=750 750w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=850 850w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=960 960w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=1280 1280w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=1440 1440w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=1536 1536w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=1706 1706w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=1782 1782w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=1920 1920w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=2560 2560w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=2880 2880w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-11_c90564f9-aa55-40c9-973d-b22719e913a8.jpg?v=1736884065&amp;width=3000 3000w" width="3000" height="3750" loading="lazy" class="peer/image absolute inset-0 w-full h-full object-cover" sizes="(min-width: 1024px) calc(100vw / 12 * 4), 100vw">
5955    <div
5956      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
5957    ></div>
5958  </image-with-placeholder>
5959
5960</div>
5961  </a><div class="px-section-horizontal-spacing py-section-vertical-spacing">
5962          
5963  <a
5964    href="/pages/screen-printing"
5965    class="block hover:opacity-90"
5966  >
5967    <h2 class="font-heading text-heading-secondary">Screen printing</h2>
5968  </a>
5969
5970
5971          <div class="rte mt-2">
5972            
5973          </div>
5974          
5975            <div class="mt-4">
5976              <a
5977                class="theme-link inline-block text-scheme-text hover:text-scheme-accent"
5978                href="/pages/screen-printing"
5979              >More on me</a>
5980            </div>
5981          
5982        </div>
5983      </li>
5984    
5985<li
5986        class="lg:col-span-4 bg-scheme-background text-base text-scheme-text text-left"
5987        
5988        data-color-scheme="scheme2"
5989        data-animate="slide-up"
5990        :class="{ 'is-visible': visible }"
5991      ><a
5992    href="/pages/embroidery"
5993    class="group block"
5994    aria-label="Embroidery"
5995  >
5996    <div class="bg-scheme-background p-2 lg:p-4 transition-transform group-hover:scale-105">
5997  
5998  <image-with-placeholder
5999    class="relative w-full"
6000    style="padding-bottom: 100%;"
6001  ><img src="//printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=3000" alt="Custom socks nz, embroidery, supacolour," srcset="//printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=200 200w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=350 350w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=450 450w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=750 750w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=850 850w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=960 960w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=1280 1280w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=1440 1440w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=1536 1536w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=1706 1706w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=1782 1782w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=1920 1920w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=2560 2560w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=2880 2880w, //printroom.co/cdn/shop/files/PrintRoomMay2024Image-10_bea9c998-ee40-4b13-a391-942882430df9.jpg?v=1736886974&amp;width=3000 3000w" width="3000" height="3750" loading="lazy" class="peer/image absolute inset-0 w-full h-full object-cover" sizes="(min-width: 1024px) calc(100vw / 12 * 4), 100vw">
6002    <div
6003      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
6004    ></div>
6005  </image-with-placeholder>
6006
6007</div>
6008  </a><div class="px-section-horizontal-spacing py-section-vertical-spacing">
6009          
6010  <a
6011    href="/pages/embroidery"
6012    class="block hover:opacity-90"
6013  >
6014    <h2 class="font-heading text-heading-secondary">Embroidery</h2>
6015  </a>
6016
6017
6018          <div class="rte mt-2">
6019            
6020          </div>
6021          
6022            <div class="mt-4">
6023              <a
6024                class="theme-link inline-block text-scheme-text hover:text-scheme-accent"
6025                href="/pages/embroidery"
6026              >More on me</a>
6027            </div>
6028          
6029        </div>
6030      </li>
6031    
6032  </ul>
6033</section>
6034
6035
6036<style> #shopify-section-template--21296459743302__text_columns_with_images_zLhk6U .absolute {border-radius: 25px;} #shopify-section-template--21296459743302__text_columns_with_images_zLhk6U .font-heading {text-align: center;} #shopify-section-template--21296459743302__text_columns_with_images_zLhk6U .rte {text-align: center;} #shopify-section-template--21296459743302__text_columns_with_images_zLhk6U .mt-4 {text-align: center;} #shopify-section-template--21296459743302__text_columns_with_images_zLhk6U .theme-link {font-style: italic; padding-top: 5px;} #shopify-section-template--21296459743302__text_columns_with_images_zLhk6U .text-base {border-bottom: 1px solid black; padding-top: 15px;} </style></div><div id="shopify-section-template--21296459743302__image_with_text_HMY9np" class="shopify-section"><section
6037  class="grid grid-flow-row-dense grid-cols-1 gap-gutter overflow-hidden border-b-gridline border-gr
6037idline-color bg-gridline-color lg:grid-cols-12 snap-section"
6038  x-data="{ visible: false }"
6039  x-intersect:enter.threshold.25="visible = true"
6040  x-intersect:leave="visible = false"
6041>
6042  <div
6043    class="bg-scheme-background lg:col-start-7 lg:col-end-13 p-2 lg:p-4 h-full w-full "
6044    data-color-scheme="scheme4"
6045  >
6046    <div class="relative min-h-full"><div class="relative">
6047            
6048  
6049  <image-with-placeholder
6050    class="relative w-full"
6051    style="padding-bottom: 100%;"
6052  ><img src="//printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=200 200w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=350 350w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=450 450w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=750 750w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=850 850w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=960 960w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=1280 1280w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=1440 1440w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=1536 1536w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=1706 1706w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=1782 1782w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=1920 1920w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=2560 2560w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=2880 2880w, //printroom.co/cdn/shop/files/parrotdog-merch.webp?v=1761632458&amp;width=3000 3000w" width="3000" height="3750" loading="lazy" class="peer/image absolute inset-0 w-full h-full object-cover" sizes="(min-width: 1024px) 50vw, 100vw">
6053    <div
6054      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
6055    ></div>
6056  </image-with-placeholder>
6057
6058
6059          </div></div>
6060  </div>
6061
6062  <div
6063    class="lg:col-span-6 relative flex bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text items-end"
6064    data-color-scheme="scheme4"
6065    data-animate="slide-up"
6066    :class="{ 'is-visible': visible }"
6067  >
6068    <div class="text-left break-word w-full"><h2 class="font-heading text-heading-standard">
6069          Waaay more than just "custom t-shirts"
6070        </h2><div class="rte text-base mt-4 font-body">
6071          <h3><br/></h3><p></p><ul><li><h3>Full service team with in-house print, embroidery & supacolour.</h3></li><li><h3>Award-winning screen printing using exclusively water-based inks.</h3></li><li><h3>Dedicated account management for specialised support. </h3></li><li><h3>Quality and considered  products from brands such as AS Colour, Cloke, Gildan and many more.</h3></li><li><h3>Fast turnarounds with rush options available.<br/><br/><br/></h3></li></ul>
6072        </div><div class="mt-4 text-0"><a
6073                href="/pages/book-a-call"
6074                class="theme-button inline-block"
6075              >Book a call</a></div></div>
6076  </div>
6077</section>
6078
6079
6080<style> #shopify-section-template--21296459743302__image_with_text_HMY9np .break-word {max-width: 700px; padding-left: 30px; padding-right: 30px;} </style></div><div id="shopify-section-template--21296459743302__white_space_dQRxtC" class="shopify-section"><section
6081  id="section-template--21296459743302__white_space_dQRxtC"
6082  class=" overflow-hidden border-b-gridline border-gridline-color bg-scheme-background text-scheme-text"
6083  data-color-scheme="scheme5"
6084></section><style data-shopify>#section-template--21296459743302__white_space_dQRxtC {
6085    height: calc(var(--spacing) * (3 - 1));
6086  }
6087
6088  @media screen and (min-width: 768px) {
6089    #section-template--21296459743302__white_space_dQRxtC {
6090      height: calc(var(--spacing) * 3);
6091    }
6092  }</style>
6093</div><div id="shopify-section-template--21296459743302__rich_text_xPMznH" class="shopify-section"><section
6094  class="overflow-hidden border-b-gridline border-gridline-color bg-scheme-background text-scheme-text snap-section"
6095  data-color-scheme="scheme5"
6096  x-data="{ visible: false }"
6097  x-intersect:enter.threshold.25="visible = true"
6098  x-intersect:leave="visible = false"
6099  data-animate="fade"
6100  :class="{ 'is-visible': visible }"
6101>
6102  <div class="px-section-horizontal-spacing py-section-vertical-spacing">
6103    <div class="flex text-center justify-center">
6104      <div class="w-full lg:w-full"><div class="rte   break-word">
6105          <h2><strong>Trusted by the best.</strong></h2>
6106        </div></div>
6107    </div>
6108  </div>
6109</section>
6110
6111
6112</div><div id="shopify-section-template--21296459743302__logo_list_VX7K46" class="shopify-section"><section
6113  class="border-b-gridline border-gridline-color bg-gridline-color snap-section"
6114  style="--logo-width: 120px"
6115  x-data="{ visible: false }"
6116  x-intersect:enter.threshold.25="visible = true"
6117  x-intersect:leave="visible = false"
6118>
6119  
6120
6121  
6122
6123  
6124    <div
6125      class="overflow-hidden bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text"
6126      data-color-scheme="scheme5"
6127    >
6128      <scrolling-items-container class="block">
6129        <scrolling-items
6130          style="
6131            --base-scrolling-items-speed: 17s;
6132            --local-scrolling-items-speed-multiplier: 1;
6133            --scrolling-items-speed: calc(
6134                var(--base-scrolling-items-speed) * var(--global-scrolling-items-speed-multiplier) *
6135                  var(--local-scrolling-items-speed-multiplier)
6136              );
6137            --scrolling-items-direction: normal;
6138          "
6139          class="block w-max whitespace-nowrap motion-safe:animate-[scrolling-items_var(--scrolling-items-speed)_linear_infinite_var(--scrolling-items-direction)] motion-safe:hover:[animation-play-state:paused] text-scale-n0 lg:text-scale-n0 motion-reduce:block motion-reduce:-translate-x-1/4 motion-reduce:whitespace-normal motion-reduce:px-section-horizontal-spacing motion-reduce:text-center"
6140        >
6141          <scrolling-items-surface class="flex flex-nowrap items-center">
6142            <scrolling-items-content class="grow-0 shrink-0 ">
6143              <div class="flex items-center">
6144
6145        
6146
6147        <div
6148          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6149        >
6150          <div class="relative" style="padding-top: 100%;">
6151            <image-with-placeholder>
6152  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6153  
6154</image-with-placeholder>
6155
6156          </div>
6157        
6158</div>
6159      
6160
6161        
6162
6163        <div
6164          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6165        >
6166          <div class="relative" style="padding-top: 100%;">
6167            <image-with-placeholder>
6168  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6169  
6170</image-with-placeholder>
6171
6172          </div>
6173        
6174</div>
6175      
6176
6177        
6178
6179        <div
6180          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6181        >
6182          <div class="relative" style="padding-top: 100%;">
6183            <image-with-placeholder>
6184  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6185  
6186</image-with-placeholder>
6187
6188          </div>
6189        
6190</div>
6191      
6192
6193        
6194
6195        <div
6196          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6197        >
6198          <div class="relative" style="padding-top: 100%;">
6199            <image-with-placeholder>
6200  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6201  
6202</image-with-placeholder>
6203
6204          </div>
6205        
6206</div>
6207      
6208
6209        
6210
6211        <div
6212          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6213        >
6214          <div class="relative" style="padding-top: 100%;">
6215            <image-with-placeholder>
6216  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6217  
6218</image-with-placeholder>
6219
6220          </div>
6221        
6222</div>
6223      
6224
6225        
6226
6227        <div
6228          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6229        >
6230          <div class="relative" style="padding-top: 100%;">
6231            <image-with-placeholder>
6232  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6233  
6234</image-with-placeholder>
6235
6236          </div>
6237        
6238</div>
6239      
6240</div>
6241            </scrolling-items-content>
6242            <noscript>
6243              
6244                <span
6245                  class="motion-reduce:hidden grow-0 shrink-0 "
6246                  aria-hidden="true"
6247                >
6248
6249        
6250
6251        <div
6252          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6253        >
6254          <div class="relative" style="padding-top: 100%;">
6255            <image-with-placeholder>
6256  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6257  
6258</image-with-placeholder>
6259
6260          </div>
6261        
6262</div>
6263      
6264
6265        
6266
6267        <div
6268          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6269        >
6270          <div class="relative" style="padding-top: 100%;">
6271            <image-with-placeholder>
6272  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6273  
6274</image-with-placeholder>
6275
6276          </div>
6277        
6278</div>
6279      
6280
6281        
6282
6283        <div
6284          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6285        >
6286          <div class="relative" style="padding-top: 100%;">
6287            <image-with-placeholder>
6288  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6289  
6290</image-with-placeholder>
6291
6292          </div>
6293        
6294</div>
6295      
6296
6297        
6298
6299        <div
6300          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6301        >
6302          <div class="relative" style="padding-top: 100%;">
6303            <image-with-placeholder>
6304  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6305  
6306</image-with-placeholder>
6307
6308          </div>
6309        
6310</div>
6311      
6312
6313        
6314
6315        <div
6316          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6317        >
6318          <div class="relative" style="padding-top: 100%;">
6319            <image-with-placeholder>
6320  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6321  
6322</image-with-placeholder>
6323
6324          </div>
6325        
6326</div>
6327      
6328
6329        
6330
6331        <div
6332          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6333        >
6334          <div class="relative" style="padding-top: 100%;">
6335            <image-with-placeholder>
6336  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6337  
6338</image-with-placeholder>
6339
6340          </div>
6341        
6342</div>
6343      
6344</span>
6345              
6346                <span
6347                  class="motion-reduce:hidden grow-0 shrink-0 "
6348                  aria-hidden="true"
6349                >
6350
6351        
6352
6353        <div
6354          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6355        >
6356          <div class="relative" style="padding-top: 100%;">
6357            <image-with-placeholder>
6358  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6359  
6360</image-with-placeholder>
6361
6362          </div>
6363        
6364</div>
6365      
6366
6367        
6368
6369        <div
6370          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6371        >
6372          <div class="relative" style="padding-top: 100%;">
6373            <image-with-placeholder>
6374  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6375  
6376</image-with-placeholder>
6377
6378          </div>
6379        
6380</div>
6381      
6382
6383        
6384
6385        <div
6386          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6387        >
6388          <div class="relative" style="padding-top: 100%;">
6389            <image-with-placeholder>
6390  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6391  
6392</image-with-placeholder>
6393
6394          </div>
6395        
6396</div>
6397      
6398
6399        
6400
6401        <div
6402          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6403        >
6404          <div class="relative" style="padding-top: 100%;">
6405            <image-with-placeholder>
6406  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6407  
6408</image-with-placeholder>
6409
6410          </div>
6411        
6412</div>
6413      
6414
6415        
6416
6417        <div
6418          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6419        >
6420          <div class="relative" style="padding-top: 100%;">
6421            <image-with-placeholder>
6422  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6423  
6424</image-with-placeholder>
6425
6426          </div>
6427        
6428</div>
6429      
6430
6431        
6432
6433        <div
6434          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6435        >
6436          <div class="relative" style="padding-top: 100%;">
6437            <image-with-placeholder>
6438  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6439  
6440</image-with-placeholder>
6441
6442          </div>
6443        
6444</div>
6445      
6446</span>
6447              
6448                <span
6449                  class="motion-reduce:hidden grow-0 shrink-0 "
6450                  aria-hidden="true"
6451                >
6452
6453        
6454
6455        <div
6456          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6457        >
6458          <div class="relative" style="padding-top: 100%;">
6459            <image-with-placeholder>
6460  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6461  
6462</image-with-placeholder>
6463
6464          </div>
6465        
6466</div>
6467      
6468
6469        
6470
6471        <div
6472          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6473        >
6474          <div class="relative" style="padding-top: 100%;">
6475            <image-with-placeholder>
6476  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6477  
6478</image-with-placeholder>
6479
6480          </div>
6481        
6482</div>
6483      
6484
6485        
6486
6487        <div
6488          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6489        >
6490          <div class="relative" style="padding-top: 100%;">
6491            <image-with-placeholder>
6492  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6493  
6494</image-with-placeholder>
6495
6496          </div>
6497        
6498</div>
6499      
6500
6501        
6502
6503        <div
6504          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6505        >
6506          <div class="relative" style="padding-top: 100%;">
6507            <image-with-placeholder>
6508  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6509  
6510</image-with-placeholder>
6511
6512          </div>
6513        
6514</div>
6515      
6516
6517        
6518
6519        <div
6520          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6521        >
6522          <div class="relative" style="padding-top: 100%;">
6523            <image-with-placeholder>
6524  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6525  
6526</image-with-placeholder>
6527
6528          </div>
6529        
6530</div>
6531      
6532
6533        
6534
6535        <div
6536          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6537        >
6538          <div class="relative" style="padding-top: 100%;">
6539            <image-with-placeholder>
6540  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6541  
6542</image-with-placeholder>
6543
6544          </div>
6545        
6546</div>
6547      
6548</span>
6549              
6550                <span
6551                  class="motion-reduce:hidden grow-0 shrink-0 "
6552                  aria-hidden="true"
6553                >
6554
6555        
6556
6557        <div
6558          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6559        >
6560          <div class="relative" style="padding-top: 100%;">
6561            <image-with-placeholder>
6562  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6563  
6564</image-with-placeholder>
6565
6566          </div>
6567        
6568</div>
6569      
6570
6571        
6572
6573        <div
6574          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6575        >
6576          <div class="relative" style="padding-top: 100%;">
6577            <image-with-placeholder>
6578  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6579  
6580</image-with-placeholder>
6581
6582          </div>
6583        
6584</div>
6585      
6586
6587        
6588
6589        <div
6590          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6591        >
6592          <div class="relative" style="padding-top: 100%;">
6593            <image-with-placeholder>
6594  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6595  
6596</image-with-placeholder>
6597
6598          </div>
6599        
6600</div>
6601      
6602
6603        
6604
6605        <div
6606          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6607        >
6608          <div class="relative" style="padding-top: 100%;">
6609            <image-with-placeholder>
6610  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6611  
6612</image-with-placeholder>
6613
6614          </div>
6615        
6616</div>
6617      
6618
6619        
6620
6621        <div
6622          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6623        >
6624          <div class="relative" style="padding-top: 100%;">
6625            <image-with-placeholder>
6626  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6627  
6628</image-with-placeholder>
6629
6630          </div>
6631        
6632</div>
6633      
6634
6635        
6636
6637        <div
6638          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6639        >
6640          <div class="relative" style="padding-top: 100%;">
6641            <image-with-placeholder>
6642  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6643  
6644</image-with-placeholder>
6645
6646          </div>
6647        
6648</div>
6649      
6650</span>
6651              
6652                <span
6653                  class="motion-reduce:hidden grow-0 shrink-0 "
6654                  aria-hidden="true"
6655                >
6656
6657        
6658
6659        <div
6660          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6661        >
6662          <div class="relative" style="padding-top: 100%;">
6663            <image-with-placeholder>
6664  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6665  
6666</image-with-placeholder>
6667
6668          </div>
6669        
6670</div>
6671      
6672
6673        
6674
6675        <div
6676          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6677        >
6678          <div class="relative" style="padding-top: 100%;">
6679            <image-with-placeholder>
6680  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6681  
6682</image-with-placeholder>
6683
6684          </div>
6685        
6686</div>
6687      
6688
6689        
6690
6691        <div
6692          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6693        >
6694          <div class="relative" style="padding-top: 100%;">
6695            <image-with-placeholder>
6696  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6697  
6698</image-with-placeholder>
6699
6700          </div>
6701        
6702</div>
6703      
6704
6705        
6706
6707        <div
6708          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6709        >
6710          <div class="relative" style="padding-top: 100%;">
6711            <image-with-placeholder>
6712  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6713  
6714</image-with-placeholder>
6715
6716          </div>
6717        
6718</div>
6719      
6720
6721        
6722
6723        <div
6724          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6725        >
6726          <div class="relative" style="padding-top: 100%;">
6727            <image-with-placeholder>
6728  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6729  
6730</image-with-placeholder>
6731
6732          </div>
6733        
6734</div>
6735      
6736
6737        
6738
6739        <div
6740          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6741        >
6742          <div class="relative" style="padding-top: 100%;">
6743            <image-with-placeholder>
6744  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6745  
6746</image-with-placeholder>
6747
6748          </div>
6749        
6750</div>
6751      
6752</span>
6753              
6754                <span
6755                  class="motion-reduce:hidden grow-0 shrink-0 "
6756                  aria-hidden="true"
6757                >
6758
6759        
6760
6761        <div
6762          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6763        >
6764          <div class="relative" style="padding-top: 100%;">
6765            <image-with-placeholder>
6766  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6767  
6768</image-with-placeholder>
6769
6770          </div>
6771        
6772</div>
6773      
6774
6775        
6776
6777        <div
6778          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6779        >
6780          <div class="relative" style="padding-top: 100%;">
6781            <image-with-placeholder>
6782  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6783  
6784</image-with-placeholder>
6785
6786          </div>
6787        
6788</div>
6789      
6790
6791        
6792
6793        <div
6794          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6795        >
6796          <div class="relative" style="padding-top: 100%;">
6797            <image-with-placeholder>
6798  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6799  
6800</image-with-placeholder>
6801
6802          </div>
6803        
6804</div>
6805      
6806
6807        
6808
6809        <div
6810          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6811        >
6812          <div class="relative" style="padding-top: 100%;">
6813            <image-with-placeholder>
6814  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6815  
6816</image-with-placeholder>
6817
6818          </div>
6819        
6820</div>
6821      
6822
6823        
6824
6825        <div
6826          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6827        >
6828          <div class="relative" style="padding-top: 100%;">
6829            <image-with-placeholder>
6830  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6831  
6832</image-with-placeholder>
6833
6834          </div>
6835        
6836</div>
6837      
6838
6839        
6840
6841        <div
6842          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6843        >
6844          <div class="relative" style="padding-top: 100%;">
6845            <image-with-placeholder>
6846  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6847  
6848</image-with-placeholder>
6849
6850          </div>
6851        
6852</div>
6853      
6854</span>
6855              
6856                <span
6857                  class="motion-reduce:hidden grow-0 shrink-0 "
6858                  aria-hidden="true"
6859                >
6860
6861        
6862
6863        <div
6864          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6865        >
6866          <div class="relative" style="padding-top: 100%;">
6867            <image-with-placeholder>
6868  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6869  
6870</image-with-placeholder>
6871
6872          </div>
6873        
6874</div>
6875      
6876
6877        
6878
6879        <div
6880          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6881        >
6882          <div class="relative" style="padding-top: 100%;">
6883            <image-with-placeholder>
6884  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6885  
6886</image-with-placeholder>
6887
6888          </div>
6889        
6890</div>
6891      
6892
6893        
6894
6895        <div
6896          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6897        >
6898          <div class="relative" style="padding-top: 100%;">
6899            <image-with-placeholder>
6900  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6901  
6902</image-with-placeholder>
6903
6904          </div>
6905        
6906</div>
6907      
6908
6909        
6910
6911        <div
6912          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6913        >
6914          <div class="relative" style="padding-top: 100%;">
6915            <image-with-placeholder>
6916  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6917  
6918</image-with-placeholder>
6919
6920          </div>
6921        
6922</div>
6923      
6924
6925        
6926
6927        <div
6928          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6929        >
6930          <div class="relative" style="padding-top: 100%;">
6931            <image-with-placeholder>
6932  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6933  
6934</image-with-placeholder>
6935
6936          </div>
6937        
6938</div>
6939      
6940
6941        
6942
6943        <div
6944          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6945        >
6946          <div class="relative" style="padding-top: 100%;">
6947            <image-with-placeholder>
6948  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6949  
6950</image-with-placeholder>
6951
6952          </div>
6953        
6954</div>
6955      
6956</span>
6957              
6958                <span
6959                  class="motion-reduce:hidden grow-0 shrink-0 "
6960                  aria-hidden="true"
6961                >
6962
6963        
6964
6965        <div
6966          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6967        >
6968          <div class="relative" style="padding-top: 100%;">
6969            <image-with-placeholder>
6970  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6971  
6972</image-with-placeholder>
6973
6974          </div>
6975        
6976</div>
6977      
6978
6979        
6980
6981        <div
6982          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6983        >
6984          <div class="relative" style="padding-top: 100%;">
6985            <image-with-placeholder>
6986  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
6987  
6988</image-with-placeholder>
6989
6990          </div>
6991        
6992</div>
6993      
6994
6995        
6996
6997        <div
6998          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
6999        >
7000          <div class="relative" style="padding-top: 100%;">
7001            <image-with-placeholder>
7002  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7003  
7004</image-with-placeholder>
7005
7006          </div>
7007        
7008</div>
7009      
7010
7011        
7012
7013        <div
7014          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7015        >
7016          <div class="relative" style="padding-top: 100%;">
7017            <image-with-placeholder>
7018  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7019  
7020</image-with-placeholder>
7021
7022          </div>
7023        
7024</div>
7025      
7026
7027        
7028
7029        <div
7030          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7031        >
7032          <div class="relative" style="padding-top: 100%;">
7033            <image-with-placeholder>
7034  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7035  
7036</image-with-placeholder>
7037
7038          </div>
7039        
7040</div>
7041      
7042
7043        
7044
7045        <div
7046          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7047        >
7048          <div class="relative" style="padding-top: 100%;">
7049            <image-with-placeholder>
7050  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7051  
7052</image-with-placeholder>
7053
7054          </div>
7055        
7056</div>
7057      
7058</span>
7059              
7060                <span
7061                  class="motion-reduce:hidden grow-0 shrink-0 "
7062                  aria-hidden="true"
7063                >
7064
7065        
7066
7067        <div
7068          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7069        >
7070          <div class="relative" style="padding-top: 100%;">
7071            <image-with-placeholder>
7072  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7073  
7074</image-with-placeholder>
7075
7076          </div>
7077        
7078</div>
7079      
7080
7081        
7082
7083        <div
7084          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7085        >
7086          <div class="relative" style="padding-top: 100%;">
7087            <image-with-placeholder>
7088  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7089  
7090</image-with-placeholder>
7091
7092          </div>
7093        
7094</div>
7095      
7096
7097        
7098
7099        <div
7100          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7101        >
7102          <div class="relative" style="padding-top: 100%;">
7103            <image-with-placeholder>
7104  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7105  
7106</image-with-placeholder>
7107
7108          </div>
7109        
7110</div>
7111      
7112
7113        
7114
7115        <div
7116          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7117        >
7118          <div class="relative" style="padding-top: 100%;">
7119            <image-with-placeholder>
7120  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7121  
7122</image-with-placeholder>
7123
7124          </div>
7125        
7126</div>
7127      
7128
7129        
7130
7131        <div
7132          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7133        >
7134          <div class="relative" style="padding-top: 100%;">
7135            <image-with-placeholder>
7136  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7137  
7138</image-with-placeholder>
7139
7140          </div>
7141        
7142</div>
7143      
7144
7145        
7146
7147        <div
7148          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7149        >
7150          <div class="relative" style="padding-top: 100%;">
7151            <image-with-placeholder>
7152  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7153  
7154</image-with-placeholder>
7155
7156          </div>
7157        
7158</div>
7159      
7160</span>
7161              
7162                <span
7163                  class="motion-reduce:hidden grow-0 shrink-0 "
7164                  aria-hidden="true"
7165                >
7166
7167        
7168
7169        <div
7170          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7171        >
7172          <div class="relative" style="padding-top: 100%;">
7173            <image-with-placeholder>
7174  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7175  
7176</image-with-placeholder>
7177
7178          </div>
7179        
7180</div>
7181      
7182
7183        
7184
7185        <div
7186          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7187        >
7188          <div class="relative" style="padding-top: 100%;">
7189            <image-with-placeholder>
7190  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7191  
7192</image-with-placeholder>
7193
7194          </div>
7195        
7196</div>
7197      
7198
7199        
7200
7201        <div
7202          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7203        >
7204          <div class="relative" style="padding-top: 100%;">
7205            <image-with-placeholder>
7206  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7207  
7208</image-with-placeholder>
7209
7210          </div>
7211        
7212</div>
7213      
7214
7215        
7216
7217        <div
7218          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7219        >
7220          <div class="relative" style="padding-top: 100%;">
7221            <image-with-placeholder>
7222  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7223  
7224</image-with-placeholder>
7225
7226          </div>
7227        
7228</div>
7229      
7230
7231        
7232
7233        <div
7234          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7235        >
7236          <div class="relative" style="padding-top: 100%;">
7237            <image-with-placeholder>
7238  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7239  
7240</image-with-placeholder>
7241
7242          </div>
7243        
7244</div>
7245      
7246
7247        
7248
7249        <div
7250          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7251        >
7252          <div class="relative" style="padding-top: 100%;">
7253            <image-with-placeholder>
7254  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7255  
7256</image-with-placeholder>
7257
7258          </div>
7259        
7260</div>
7261      
7262</span>
7263              
7264                <span
7265                  class="motion-reduce:hidden grow-0 shrink-0 "
7266                  aria-hidden="true"
7267                >
7268
7269        
7270
7271        <div
7272          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7273        >
7274          <div class="relative" style="padding-top: 100%;">
7275            <image-with-placeholder>
7276  <img src="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000" alt="otago university  t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=200 200w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=350 350w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=450 450w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=750 750w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=850 850w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=960 960w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1280 1280w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1440 1440w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1536 1536w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1706 1706w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1782 1782w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=1920 1920w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2560 2560w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=2880 2880w, //printroom.co/cdn/shop/files/otago_uni.svg?v=1742352406&amp;width=3000 3000w" width="3000" height="4641" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7277  
7278</image-with-placeholder>
7279
7280          </div>
7281        
7282</div>
7283      
7284
7285        
7286
7287        <div
7288          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7289        >
7290          <div class="relative" style="padding-top: 100%;">
7291            <image-with-placeholder>
7292  <img src="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000" alt="" srcset="//printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=200 200w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=350 350w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=450 450w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=750 750w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=850 850w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=960 960w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1280 1280w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1440 1440w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1536 1536w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1706 1706w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1782 1782w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=1920 1920w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2560 2560w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=2880 2880w, //printroom.co/cdn/shop/files/garage_project.svg?v=1742337697&amp;width=3000 3000w" width="3000" height="1974" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7293  
7294</image-with-placeholder>
7295
7296          </div>
7297        
7298</div>
7299      
7300
7301        
7302
7303        <div
7304          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7305        >
7306          <div class="relative" style="padding-top: 100%;">
7307            <image-with-placeholder>
7308  <img src="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000" alt="les-mills-t-shirt-printing-NZ" srcset="//printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=200 200w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=350 350w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=450 450w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=750 750w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=850 850w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=960 960w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1280 1280w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1440 1440w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1536 1536w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1706 1706w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1782 1782w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=1920 1920w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2560 2560w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=2880 2880w, //printroom.co/cdn/shop/files/lesmills.svg?v=1742337446&amp;width=3000 3000w" width="3000" height="403" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7309  
7310</image-with-placeholder>
7311
7312          </div>
7313        
7314</div>
7315      
7316
7317        
7318
7319        <div
7320          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7321        >
7322          <div class="relative" style="padding-top: 100%;">
7323            <image-with-placeholder>
7324  <img src="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000" alt="real-nz-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=200 200w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=350 350w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=450 450w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=750 750w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=850 850w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=960 960w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1280 1280w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1440 1440w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1536 1536w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1706 1706w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1782 1782w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=1920 1920w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2560 2560w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=2880 2880w, //printroom.co/cdn/shop/files/real_nz.svg?v=1742337578&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7325  
7326</image-with-placeholder>
7327
7328          </div>
7329        
7330</div>
7331      
7332
7333        
7334
7335        <div
7336          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7337        >
7338          <div class="relative" style="padding-top: 100%;">
7339            <image-with-placeholder>
7340  <img src="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000" alt="sharsies-custom-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=200 200w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=350 350w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=450 450w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=750 750w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=850 850w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=960 960w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1280 1280w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1440 1440w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1536 1536w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1706 1706w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1782 1782w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=1920 1920w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2560 2560w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=2880 2880w, //printroom.co/cdn/shop/files/sharsies.svg?v=1742352390&amp;width=3000 3000w" width="3000" height="826" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7341  
7342</image-with-placeholder>
7343
7344          </div>
7345        
7346</div>
7347      
7348
7349        
7350
7351        <div
7352          class="relative block max-w-[--logo-width] w-[--logo-width] mx-5 lg:mt-0"
7353        >
7354          <div class="relative" style="padding-top: 100%;">
7355            <image-with-placeholder>
7356  <img src="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000" alt="te-wananga-t-shirt-printing" srcset="//printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=200 200w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=350 350w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=450 450w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=750 750w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=850 850w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=960 960w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1280 1280w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1440 1440w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1536 1536w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1706 1706w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1782 1782w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=1920 1920w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2560 2560w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=2880 2880w, //printroom.co/cdn/shop/files/te_wananga.svg?v=1742337645&amp;width=3000 3000w" width="3000" height="3236" loading="lazy" class="peer/image block absolute inset-0 w-full h-full object-contain" sizes="120px">
7357  
7358</image-with-placeholder>
7359
7360          </div>
7361        
7362</div>
7363      
7364</span>
7365              
7366            </noscript>
7367          </scrolling-items-surface>
7368        </scrolling-items>
7369      </scrolling-items-container>
7370    </div>
7371  
7372</section>
7373
7374
7375<style> #shopify-section-template--21296459743302__logo_list_VX7K46 .flex {gap: 60px; padding-top: 60px; padding-bottom: 60px;} @media (max-width: 480px) {#shopify-section-template--21296459743302__logo_list_VX7K46 .flex {gap: 30px; padding-top: 60px; padding-bottom: 60px; }} #shopify-section-template--21296459743302__logo_list_VX7K46 .block {background: transparent;} </style></div><div id="shopify-section-template--21296459743302__scrolling_text_UhrYBp" class="shopify-section">
7376
7377<section
7378  class="border-b-gridline border-gridline-color bg-scheme-background text-scheme-text"
7379  data-color-scheme="scheme2"
7380>
7381  
7382
7383
7384
7385
7386
7387<div
7388  class="py-2 lg:py-3.5 overflow-hidden"
7389>
7390    
7391  <scrolling-items-container class="block">
7392    <scrolling-items
7393      style="
7394        --base-scrolling-items-speed: 18s;
7395        --local-scrolling-items-speed-multiplier: 1;
7396        --scrolling-items-speed: calc(
7397            var(--base-scrolling-items-speed) * var(--global-scrolling-items-speed-multiplier) *
7398              var(--local-scrolling-items-speed-multiplier)
7399          );
7400        --scrolling-items-direction: normal;"
7401      class="block w-max whitespace-nowrap motion-safe:animate-[scrolling-items_var(--scrolling-items-speed)_linear_infinite_var(--scrolling-items-direction)] motion-safe:focus-within:[animation-play-state:paused] motion-safe:hover:[animation-play-state:paused] font-body text-scale-n3 lg:text-scale-n4 motion-reduce:block motion-reduce:whitespace-normal motion-reduce:px-section-horizontal-spacing motion-reduce:text-center  motion-reduce:-translate-x-1/4"
7402    >
7403      <scrolling-items-surface class="flex flex-nowrap items-center">
7404        <scrolling-items-content class="grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</scrolling-items-content>
7405          <noscript>
7406            
7407            
7408              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7409            
7410              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7411            
7412              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7413            
7414              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7415            
7416              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7417            
7418              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7419            
7420              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7421            
7422              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7423            
7424              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7425            
7426              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7427            
7428              <span class="motion-reduce:hidden grow-0 shrink-0 pl-2 lg:px-4">Hear what our customers have to say ☺︎</span>
7429            
7430          </noscript>
7431      </scrolling-items-surface>
7432    </scrolling-items>
7433  </scrolling-items-container>
7434
7435  
7436</div>
7437
7438</section>
7439
7440
7441</div><div id="shopify-section-template--21296459743302__text_columns_with_images_4THkEY" class="shopify-section"><section
7442  class="border-b-gridline border-gridline-color bg-gridline-color snap-section"
7443  x-data="{ visible: false }"
7444  x-intersect:enter.threshold.25="visible = true"
7445  x-intersect:leave="visible = false"
7446>
7447  
7448
7449  <ul class="grid grid-cols-1 gap-gridline lg:grid-cols-12" data-stagger>
7450    
7451<li
7452        class="lg:col-span-3 bg-scheme-background text-base text-scheme-text text-left"
7453        
7454        data-color-scheme="scheme4"
7455        data-animate="slide-up"
7456        :class="{ 'is-visible': visible }"
7457      ><a
7458    href=""
7459    class="group block"
7460    aria-label=""
7461  >
7462    <div class="bg-scheme-background p-2 lg:p-4 transition-transform group-hover:scale-105">
7463  
7464  <image-with-placeholder
7465    class="relative w-full"
7466    style="padding-bottom: 100%;"
7467  ><img src="//printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=3000" alt="Custom printed tea towel nz, embroidery, supacolour, screen printing nz" srcset="//printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=200 200w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=350 350w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=450 450w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=750 750w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=850 850w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=960 960w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=1280 1280w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=1440 1440w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=1536 1536w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=1706 1706w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=1782 1782w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=1920 1920w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=2560 2560w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=2880 2880w, //printroom.co/cdn/shop/files/parrotdog_5_69679db7-7392-43f5-b0b4-ae411be27ba6.jpg?v=1752720637&amp;width=3000 3000w" width="3000" height="3589" loading="lazy" class="peer/image absolute inset-0 w-full h-full object-cover" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
7468    <div
7469      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
7470    ></div>
7471  </image-with-placeholder>
7472
7473</div>
7474  </a><div class="px-section-horizontal-spacing py-section-vertical-spacing">
7475          
7476
7477          <div class="rte ">
7478            <p><em>"From the get-go the Print Room has been fantastic to work with, consistently delivering high-quality merch and apparel that embody Parrotdog's brand values and keep our website and shop looking vibrant. Nice."</em></p><h3>- Parrotdog</h3>
7479          </div>
7480          
7481        </div>
7482      </li>
7483    
7484<li
7485        class="lg:col-span-3 bg-scheme-background text-base text-scheme-text text-left"
7486        
7487        data-color-scheme="scheme4"
7488        data-animate="slide-up"
7489        :class="{ 'is-visible': visible }"
7490      ><a
7491    href=""
7492    class="group block"
7493    aria-label=""
7494  >
7495    <div class="bg-scheme-background p-2 lg:p-4 transition-transform group-hover:scale-105">
7496  
7497  <image-with-placeholder
7498    class="relative w-full"
7499    style="padding-bottom: 100%;"
7500  ><img src="//printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=3000" alt="Custom hoodies nz, embroidery, supacolour, screen printing nz" srcset="//printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=200 200w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=350 350w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=450 450w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=750 750w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=850 850w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=960 960w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=1280 1280w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=1440 1440w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=1536 1536w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=1706 1706w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=1782 1782w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=1920 1920w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=2560 2560w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=2880 2880w, //printroom.co/cdn/shop/files/PrintRoomApril2024Image-36.jpg?v=1738097471&amp;width=3000 3000w" width="3000" height="3750" loading="lazy" class="peer/image absolute inset-0 w-full h-full object-cover" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
7501    <div
7502      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
7503    ></div>
7504  </image-with-placeholder>
7505
7506</div>
7507  </a><div class="px-section-horizontal-spacing py-section-vertical-spacing">
7508          
7509
7510          <div class="rte ">
7511            <p><em>"Cardrona loves working with the team at the Print Room. Witnessing our merchandise come to life is always a joy, thanks to their expertise, good vibes and seamless collaboration."</em></p><h3>- Cardrona</h3>
7512          </div>
7513          
7514        </div>
7515      </li>
7516    
7517<li
7518        class="lg:col-span-3 bg-scheme-background text-base text-scheme-text text-left"
7519        
7520        data-color-scheme="scheme4"
7521        data-animate="slide-up"
7522        :class="{ 'is-visible': visible }"
7523      ><a
7524    href=""
7525    class="group block"
7526    aria-label=""
7527  >
7528    <div class="bg-scheme-background p-2 lg:p-4 transition-transform group-hover:scale-105">
7529  
7530  <image-with-placeholder
7531    class="relative w-full"
7532    style="padding-bottom: 100%;"
7533  ><img src="//printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=3000" alt="Custom printed merchandise nz, embroidery" srcset="//printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=200 200w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=350 350w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=450 450w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=750 750w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=850 850w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=960 960w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=1280 1280w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=1440 1440w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=1536 1536w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=1706 1706w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=1782 1782w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=1920 1920w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=2560 2560w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=2880 2880w, //printroom.co/cdn/shop/files/2024.09.16-Fra.2e16d0ba.fill-1280x1360-c100.format-webp.webp?v=1738098172&amp;width=3000 3000w" width="3000" height="3188" loading="lazy" class="peer/image absolute inset-0 w-full h-full object-cover" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
7534    <div
7535      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
7536    ></div>
7537  </image-with-placeholder>
7538
7539</div>
7540  </a><div class="px-section-horizontal-spacing py-section-vertical-spacing">
7541          
7542
7543          <div class="rte ">
7544            <p><em>"The quality of their products exceeds our expectations, and their ability to deliver on time, every time has made our partnership seamless and stress-free. "</em><br/></p><h3>- MTF Finance</h3>
7545          </div>
7546          
7547        </div>
7548      </li>
7549    
7550<li
7551        class="lg:col-span-3 bg-scheme-background text-base text-scheme-text text-left"
7552        
7553        data-color-scheme="scheme4"
7554        data-animate="slide-up"
7555        :class="{ 'is-visible': visible }"
7556      ><a
7557    href=""
7558    class="group block"
7559    aria-label=""
7560  >
7561    <div class="bg-scheme-background p-2 lg:p-4 transition-transform group-hover:scale-105">
7562  
7563  <image-with-placeholder
7564    class="relative w-full"
7565    style="padding-bottom: 100%;"
7566  ><img src="//printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=3000" alt="Custom t shirt printing nz, screen printing nz" srcset="//printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=200 200w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=350 350w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=450 450w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=750 750w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=850 850w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=960 960w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=1280 1280w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=1440 1440w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=1536 1536w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=1706 1706w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=1782 1782w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=1920 1920w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=2560 2560w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=2880 2880w, //printroom.co/cdn/shop/files/BB__5920.webp?v=1753239096&amp;width=3000 3000w" width="3000" height="3000" loading="lazy" class="peer/image absolute inset-0 w-full h-full object-cover" sizes="(min-width: 1024px) calc(100vw / 12 * 3), 100vw">
7567    <div
7568      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
7569    ></div>
7570  </image-with-placeholder>
7571
7572</div>
7573  </a><div class="px-section-horizontal-spacing py-section-vertical-spacing">
7574          
7575
7576          <div class="rte ">
7577            <p><em>"We have been working with the Print Room for years. Their service, quality and customer service is always outstanding. Attention to detail and customer experience is always spot on."</em><br/></p><h3>- Acme</h3>
7578          </div>
7579          
7580        </div>
7581      </li>
7582    
7583  </ul>
7584</section>
7585
7586
7587<style> #shopify-section-template--21296459743302__text_columns_with_images_4THkEY .absolute {border-radius: 25px;} #shopify-section-template--21296459743302__text_columns_with_images_4THkEY .rte {text-align: left;} #shopify-section-template--21296459743302__text_columns_with_images_4THkEY .mt-4 {text-align: center;} #shopify-section-template--21296459743302__text_columns_with_images_4THkEY .text-base {padding-top: 15px;} </style></div><div id="shopify-section-template--21296459743302__image_with_text_overlay_P3p3Jw" class="shopify-section"><section
7588  class="snap-section"
7589  x-data="{ visible: false }"
7590  x-intersect:enter.threshold.10="visible = true"
7591  x-intersect:leave.threshold.10="visible = false"
7592>
7593<div
7594  class="bg-scheme-background border-b-gridline border-gridline-color relative group overflow-hidden h-auto"
7595  
7596  data-color-scheme="scheme1"
7597>
7598  
7599    <a href="/pages/responsibility" class="absolute inset-0 z-11"
7600      ><span class="sr-only">Responsibility in practice</span></a
7601    >
7602  
7603  <div
7604    class="text-scheme-text  bg-scheme-background p-2 lg:p-4 h-full w-full"
7605    data-color-scheme="scheme1"
7606  >
7607    <div class="relative h-full w-full">
7608      
7609        <div
7610          
7611            class="hidden lg:block"
7612          
7613        >
7614          
7615            <image-with-placeholder class="relative"><img src="//printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=3000" alt="Custom socks nz" srcset="//printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=200 200w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=350 350w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=450 450w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=750 750w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=850 850w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=960 960w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=1280 1280w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=1440 1440w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=1536 1536w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=1706 1706w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=1782 1782w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=1920 1920w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=2560 2560w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=2880 2880w, //printroom.co/cdn/shop/files/parrotdog_3.jpg?v=1752720726&amp;width=3000 3000w" width="3000" height="1688" loading="lazy" class="peer/image" sizes="100vw">
7616  
7617    <div
7618      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
7619    ></div>
7620  
7621</image-with-placeholder>
7622
7623          
7624        </div>
7625
7626        
7627          <div class="lg:hidden">
7628            
7629            
7630              <image-with-placeholder class="relative"><img src="//printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=3000" alt="Custom socks nz" srcset="//printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=200 200w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=350 350w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=450 450w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=750 750w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=850 850w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=960 960w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=1280 1280w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=1440 1440w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=1536 1536w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=1706 1706w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=1782 1782w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=1920 1920w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=2560 2560w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=2880 2880w, //printroom.co/cdn/shop/files/parrotdog_6.jpg?v=1752720822&amp;width=3000 3000w" width="3000" height="4200" loading="lazy" class="peer/image" sizes="100vw">
7631  
7632    <div
7633      class="absolute inset-0 h-full w-full bg-scheme-text opacity-[0.05] peer-[.is-complete]/image:opacity-0 no-js:hidden"
7634    ></div>
7635  
7636</image-with-placeholder>
7637
7638            
7639          </div>
7640        
7641      
7642    </div>
7643  </div>
7644
7645  <div
7646    class="group absolute bottom-0 left-0 right-0 top-0 z-10 px-section-horizontal-spacing py-section-vertical-spacing"
7647    data-color-scheme="scheme1"
7648    data-animate="fade"
7649    :class="{ 'is-visible': visible }"
7650  >
7651    <div class="flex h-full w-full justify-start items-end text-left p-2 lg:p-4">
7652      <div
7653        class="lg:w-1/2 text-scheme-text"
7654      >
7655        
7656
7657        
7658          <div class="rte mt-4 text-base">
7659            <h2>How we strive to be <strong>better</strong> producers of high-quality custom merchandise.</h2>
7660          </div>
7661        
7662
7663        
7664          <div class="mt-8 text-0"><span
7665                  class="theme-button theme-button--in-group inline-block"
7666                >Responsibility in practice</span></div>
7667        
7668      </div>
7669    </div>
7670  </div>
7671</div>
7672</section>
7673
7674
7675<style> #shopify-section-template--21296459743302__image_with_text_overlay_P3p3Jw .bg-scheme-background {max-width: 100%; padding: 0;} #shopify-section-template--21296459743302__image_with_text_overlay_P3p3Jw .text-base {background: white; border-width: 5px; border-color: #2b3990; padding: 40px; border-radius: 35px; box-shadow: 0px 5px 5px rgba(43, 57, 144, 0.5);} #shopify-section-template--21296459743302__image_with_text_overlay_P3p3Jw .theme-button {font-size: 20px; font-style: italic;} </style></div><div id="shopify-section-template--21296459743302__testimonials_rhifHX" class="shopify-section"><section
7676  class="border-b-gridline border-gridline-color bg-gridline-color snap-section"
7677  data-color-scheme="scheme5"
7678  x-data="{ visible: false }"
7679  x-intersect:enter.threshold.25="visible = true"
7680  x-intersect:leave="visible = false"
7681>
7682  
7683
7684  <div class="grid bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text  lg:grid-cols-4 gap-10" data-stagger><blockquote class="flex-1 text-left" data-animate="slide-up" :class="{ 'is-visible': visible }">
7685        <div class="font-heading text-heading-secondary [&_a[href]]:underline [&_a[href]]:hover:text-scheme-accent">
7686          <p>I chose Print Room because of their ethos on sustainability. And now, after using them several times these past two years, I can attest that they are, quite literally, the best screen printers we've ever used. <br/><br/></p>
7687        </div>
7688        
7689          <footer class="font-secondary mt-2 text-base">
7690            - AM (Google Review)
7691          </footer>
7692        
7693      </blockquote><blockquote class="flex-1 text-left" data-animate="slide-up" :class="{ 'is-visible': visible }">
7694        <div class="font-heading text-heading-secondary [&_a[href]]:underline [&_a[href]]:hover:text-scheme-accent">
7695          <p>Great - very polite, good communication, shipped in a compostable mailer and the item was top quality.<br/><br/></p>
7696        </div>
7697        
7698          <footer class="font-secondary mt-2 text-base">
7699            - Will Collins (Google Review)
7700          </footer>
7701        
7702      </blockquote><blockquote class="flex-1 text-left" data-animate="slide-up" :class="{ 'is-visible': visible }">
7703        <div class="font-heading text-heading-secondary [&_a[href]]:underline [&_a[href]]:hover:text-scheme-accent">
7704          <p>Exceptional service and product quality - highly recommend The Print Room - the team go above and beyond for their customers!<br/><br/></p>
7705        </div>
7706        
7707          <footer class="font-secondary mt-2 text-base">
7708            - Rachael Van Eunen (Google Review)
7709          </footer>
7710        
7711      </blockquote><blockquote class="flex-1 text-left" data-animate="slide-up" :class="{ 'is-visible': visible }">
7712        <div class="font-heading text-heading-secondary [&_a[href]]:underline [&_a[href]]:hover:text-scheme-accent">
7713          <p>Service, Communication, quality of print, speed of delivery, all a 10/10 - loved working with the Print Room, will come again.<br/><br/></p>
7714        </div>
7715        
7716          <footer class="font-secondary mt-2 text-base">
7717            - M A Von Roy (Google Review)
7718          </footer>
7719        
7720      </blockquote></div>
7720<script type="application/ld+json">
7721      {
7722        "@context": "https://schema.org",
7723        "@type": "LocalBusiness",
7724        "name": "The Print Room",
7725        "review": [{
7726              "@type": "Review",
7727              "reviewBody": "I chose Print Room because of their ethos on sustainability. And now, after using them several times these past two years, I can attest that they are, quite literally, the best screen printers we've ever used. ",
7728              "author": {
7729                "@type": "Person",
7730                "name": "AM (Google Review)"
7731              },
7732              "reviewRating": {
7733                "@type": "Rating",
7734                "ratingValue": 5,
7735                "bestRating": 5
7736              }
7737            },{
7738              "@type": "Review",
7739              "reviewBody": "Great - very polite, good communication, shipped in a compostable mailer and the item was top quality.",
7740              "author": {
7741                "@type": "Person",
7742                "name": "Will Collins (Google Review)"
7743              },
7744              "reviewRating": {
7745                "@type": "Rating",
7746                "ratingValue": 5,
7747                "bestRating": 5
7748              }
7749            },{
7750              "@type": "Review",
7751              "reviewBody": "Exceptional service and product quality - highly recommend The Print Room - the team go above and beyond for their customers!",
7752              "author": {
7753                "@type": "Person",
7754                "name": "Rachael Van Eunen (Google Review)"
7755              },
7756              "reviewRating": {
7757                "@type": "Rating",
7758                "ratingValue": 5,
7759                "bestRating": 5
7760              }
7761            },{
7762              "@type": "Review",
7763              "reviewBody": "Service, Communication, quality of print, speed of delivery, all a 10\/10 - loved working with the Print Room, will come again.",
7764              "author": {
7765                "@type": "Person",
7766                "name": "M A Von Roy (Google Review)"
7767              },
7768              "reviewRating": {
7769                "@type": "Rating",
7770                "ratingValue": 5,
7771                "bestRating": 5
7772              }
7773            }]
7774      }
7775    </script>
7775</section>
7776
7777
7778<style> #shopify-section-template--21296459743302__testimonials_rhifHX .text-scheme-text {padding-left: 30px; padding-right: 30px; padding-top: 70px; padding-bottom: 70px;} </style></div><div id="shopify-section-template--21296459743302__rich_text_rRCjqT" class="shopify-section"><section
7779  class="overflow-hidden border-b-gridline border-gridline-color bg-scheme-background text-scheme-text snap-section"
7780  data-color-scheme="scheme4"
7781  x-data="{ visible: false }"
7782  x-intersect:enter.threshold.25="visible = true"
7783  x-intersect:leave="visible = false"
7784  data-animate="fade"
7785  :class="{ 'is-visible': visible }"
7786>
7787  <div class="px-section-horizontal-spacing py-section-vertical-spacing">
7788    <div class="flex text-left justify-center">
7789      <div class="w-full lg:w-full"><h2 class="font-heading text-heading-standard">
7790            FAQs
7791          </h2><div class="rte mt-4  break-word">
7792          
7793        </div></div>
7794    </div>
7795  </div>
7796</section>
7797
7798
7799<style> #shopify-section-template--21296459743302__rich_text_rRCjqT .text-scheme-text {padding-left: 30px; padding-right: 30px; padding-top: 30px;} </style></div><div id="shopify-section-template--21296459743302__faq_QH8xpq" class="shopify-section"><section
7800  class="overflow-hidden border-b-gridline border-gridline-color bg-scheme-background text-scheme-text snap-section"
7801  data-color-scheme="scheme4"
7802  x-data="{ visible: false }"
7803  x-intersect:enter.threshold.25="visible = true"
7804  x-intersect:leave="visible = false"
7805>
7806  
7807
7808  <ul
7809    
7810      class="lg:hidden"
7811    
7812    data-stagger
7813    data-animate="fade"
7814    :class="{ 'is-visible': visible }"
7815  >
7816    
7817<li
7818  class="border-b-gridline border-gridline-color px-section-horizontal-spacing"
7819>
7820  <data-island class="contents" x-data="{ expanded: false }">
7821    <h2 class="font-heading text-heading-secondary break-word">
7822      <button
7823        type="button"
7824        @click="expanded = ! expanded"
7825        aria-controls="expanded-question_HzaV4G"
7826        :aria-expanded="expanded ? true : 'false'"
7827        class="break-word flex w-full cursor-pointer items-center justify-between py-4 text-left"
7828      >
7829        <div class="break-word flex items-center">What’s your minimum order?</div><div class="flex h-6 w-6 shrink-0 items-center" x-show="!expanded">
7830            <svg
7831  class="theme-icon"
7832  xmlns="http://www.w3.org/2000/svg"
7833  fill="none"
7834  viewBox="0 0 24 24"
7835>
7836  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
7837</svg>
7838
7839          </div>
7840          <div
7841            class="flex h-6 w-6 shrink-0 items-center"
7842            x-show="expanded"
7843            style="display: none;"
7844          ><svg
7845  class="theme-icon"
7846  xmlns="http://www.w3.org/2000/svg"
7847  fill="none"
7848  viewBox="0 0 24 24"
7849>
7850  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
7851</svg>
7852</div></button>
7853    </h2>
7854    <div
7855      id="expanded-question_HzaV4G"
7856      x-show="expanded"
7857      x-collapse
7858      x-cloak
7859    >
7860      <div class="rte richtext break-word pb-theme text-base ">
7861        <p>Most products start at 24 units, with some exceptions based on garment and print types. Supacolour, embroidery, and screen printing all require different setups, which is reflected in our minimum order quantities.</p>
7862      </div>
7863    </div>
7864  </data-island>
7865</li>
7866
7867<li
7868  class="border-b-gridline border-gridline-color px-section-horizontal-spacing"
7869>
7870  <data-island class="contents" x-data="{ expanded: false }">
7871    <h2 class="font-heading text-heading-secondary break-word">
7872      <button
7873        type="button"
7874        @click="expanded = ! expanded"
7875        aria-controls="expanded-question_nY3Q9D"
7876        :aria-expanded="expanded ? true : 'false'"
7877        class="break-word flex w-full cursor-pointer items-center justify-between py-4 text-left"
7878      >
7879        <div class="break-word flex items-center">Is your print shop near me?</div><div class="flex h-6 w-6 shrink-0 items-center" x-show="!expanded">
7880            <svg
7881  class="theme-icon"
7882  xmlns="http://www.w3.org/2000/svg"
7883  fill="none"
7884  viewBox="0 0 24 24"
7885>
7886  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
7887</svg>
7888
7889          </div>
7890          <div
7891            class="flex h-6 w-6 shrink-0 items-center"
7892            x-show="expanded"
7893            style="display: none;"
7894          ><svg
7895  class="theme-icon"
7896  xmlns="http://www.w3.org/2000/svg"
7897  fill="none"
7898  viewBox="0 0 24 24"
7899>
7900  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
7901</svg>
7902</div></button>
7903    </h2>
7904    <div
7905      id="expanded-question_nY3Q9D"
7906      x-show="expanded"
7907      x-collapse
7908      x-cloak
7909    >
7910      <div class="rte richtext break-word pb-theme text-base ">
7911        <p>
7911We run two production tracks. Made-to-order work is hand-finished at our NZ facility and shipped direct to you. Fast Track orders in Australia are decorated by our trusted Melbourne partners so turnaround stays tight and freight stays local. Briefs are handled out of our Melbourne studio in Cremorne (AU) and our NZ HQ — you're working with locals on either side of the Tasman.</p>
7912      </div>
7913    </div>
7914  </data-island>
7915</li>
7916
7917<li
7918  class="border-b-gridline border-gridline-color px-section-horizontal-spacing"
7919>
7920  <data-island class="contents" x-data="{ expanded: false }">
7921    <h2 class="font-heading text-heading-secondary break-word">
7922      <button
7923        type="button"
7924        @click="expanded = ! expanded"
7925        aria-controls="expanded-question_xczrrP"
7926        :aria-expanded="expanded ? true : 'false'"
7927        class="break-word flex w-full cursor-pointer items-center justify-between py-4 text-left"
7928      >
7929        <div class="break-word flex items-center">Do you supply garments?</div><div class="flex h-6 w-6 shrink-0 items-center" x-show="!expanded">
7930            <svg
7931  class="theme-icon"
7932  xmlns="http://www.w3.org/2000/svg"
7933  fill="none"
7934  viewBox="0 0 24 24"
7935>
7936  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
7937</svg>
7938
7939          </div>
7940          <div
7941            class="flex h-6 w-6 shrink-0 items-center"
7942            x-show="expanded"
7943            style="display: none;"
7944          ><svg
7945  class="theme-icon"
7946  xmlns="http://www.w3.org/2000/svg"
7947  fill="none"
7948  viewBox="0 0 24 24"
7949>
7950  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
7951</svg>
7952</div></button>
7953    </h2>
7954    <div
7955      id="expanded-question_xczrrP"
7956      x-show="expanded"
7957      x-collapse
7958      x-cloak
7959    >
7960      <div class="rte richtext break-word pb-theme text-base ">
7961        <p>We supply all garments and do not accept client-supplied items. With access to top-tier brands such as AS Colour, Cloke, Gildan, Biz Collection, Syzmik, and many more, we can produce high-quality t shirt printing, embroidery, tote bags, tea towels, and more.</p>
7962      </div>
7963    </div>
7964  </data-island>
7965</li>
7966
7967<li
7968  class="border-b-gridline border-gridline-color px-section-horizontal-spacing -mb-gridline"
7969>
7970  <data-island class="contents" x-data="{ expanded: false }">
7971    <h2 class="font-heading text-heading-secondary break-word">
7972      <button
7973        type="button"
7974        @click="expanded = ! expanded"
7975        aria-controls="expanded-question_zFPtLz"
7976        :aria-expanded="expanded ? true : 'false'"
7977        class="break-word flex w-full cursor-pointer items-center justify-between py-4 text-left"
7978      >
7979        <div class="break-word flex items-center">Do you offer eco-friendly options?</div><div class="flex h-6 w-6 shrink-0 items-center" x-show="!expanded">
7980            <svg
7981  class="theme-icon"
7982  xmlns="http://www.w3.org/2000/svg"
7983  fill="none"
7984  viewBox="0 0 24 24"
7985>
7986  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
7987</svg>
7988
7989          </div>
7990          <div
7991            class="flex h-6 w-6 shrink-0 items-center"
7992            x-show="expanded"
7993            style="display: none;"
7994          ><svg
7995  class="theme-icon"
7996  xmlns="http://www.w3.org/2000/svg"
7997  fill="none"
7998  viewBox="0 0 24 24"
7999>
8000  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
8001</svg>
8002</div></button>
8003    </h2>
8004    <div
8005      id="expanded-question_zFPtLz"
8006      x-show="expanded"
8007      x-collapse
8008      x-cloak
8009    >
8010      <div class="rte richtext break-word pb-theme text-base ">
8011        <p>Yes, absolutely! We take responsibility for what we produce and how we produce custom merchandise. We exclusively print with water-based inks, prioritise responsibly made products, and reduce waste wherever possible. Learn more about these practices here.</p>
8012      </div>
8013    </div>
8014  </data-island>
8015</li>
8016
8017  </ul><div class="hidden gap-gutter bg-gridline-color lg:-mb-gridline lg:grid lg:grid-cols-2">
8018      <ul class="bg-scheme-background">
8019        
8020<li
8021  class="border-b-gridline border-gridline-color px-section-horizontal-spacing"
8022>
8023  <data-island class="contents" x-data="{ expanded: false }">
8024    <h2 class="font-heading text-heading-secondary break-word">
8025      <button
8026        type="button"
8027        @click="expanded = ! expanded"
8028        aria-controls="expanded-question_HzaV4G-desktop"
8029        :aria-expanded="expanded ? true : 'false'"
8030        class="break-word flex w-full cursor-pointer items-center justify-between py-4 text-left"
8031      >
8032        <div class="break-word flex items-center">What’s your minimum order?</div><div class="flex h-6 w-6 shrink-0 items-center" x-show="!expanded">
8033            <svg
8034  class="theme-icon"
8035  xmlns="http://www.w3.org/2000/svg"
8036  fill="none"
8037  viewBox="0 0 24 24"
8038>
8039  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
8040</svg>
8041
8042          </div>
8043          <div
8044            class="flex h-6 w-6 shrink-0 items-center"
8045            x-show="expanded"
8046            style="display: none;"
8047          ><svg
8048  class="theme-icon"
8049  xmlns="http://www.w3.org/2000/svg"
8050  fill="none"
8051  viewBox="0 0 24 24"
8052>
8053  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
8054</svg>
8055</div></button>
8056    </h2>
8057    <div
8058      id="expanded-question_HzaV4G-desktop"
8059      x-show="expanded"
8060      x-collapse
8061      x-cloak
8062    >
8063      <div class="rte richtext break-word pb-theme text-base ">
8064        <p>Most products start at 24 units, with some exceptions based on garment and print types. Supacolour, embroidery, and screen printing all require different setups, which is reflected in our minimum order quantities.</p>
8065      </div>
8066    </div>
8067  </data-island>
8068</li>
8069
8070
8071<li
8072  class="border-b-gridline border-gridline-color px-section-horizontal-spacing"
8073>
8074  <data-island class="contents" x-data="{ expanded: false }">
8075    <h2 class="font-heading text-heading-secondary break-word">
8076      <button
8077        type="button"
8078        @click="expanded = ! expanded"
8079        aria-controls="expanded-question_xczrrP-desktop"
8080        :aria-expanded="expanded ? true : 'false'"
8081        class="break-word flex w-full cursor-pointer items-center justify-between py-4 text-left"
8082      >
8083        <div class="break-word flex items-center">Do you supply garments?</div><div class="flex h-6 w-6 shrink-0 items-center" x-show="!expanded">
8084            <svg
8085  class="theme-icon"
8086  xmlns="http://www.w3.org/2000/svg"
8087  fill="none"
8088  viewBox="0 0 24 24"
8089>
8090  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
8091</svg>
8092
8093          </div>
8094          <div
8095            class="flex h-6 w-6 shrink-0 items-center"
8096            x-show="expanded"
8097            style="display: none;"
8098          ><svg
8099  class="theme-icon"
8100  xmlns="http://www.w3.org/2000/svg"
8101  fill="none"
8102  viewBox="0 0 24 24"
8103>
8104  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
8105</svg>
8106</div></button>
8107    </h2>
8108    <div
8109      id="expanded-question_xczrrP-desktop"
8110      x-show="expanded"
8111      x-collapse
8112      x-cloak
8113    >
8114      <div class="rte richtext break-word pb-theme text-base ">
8115        <p>We supply all garments and do not accept client-supplied items. With access to top-tier brands such as AS Colour, Cloke, Gildan, Biz Collection, Syzmik, and many more, we can produce high-quality t shirt printing, embroidery, tote bags, tea towels, and more.</p>
8116      </div>
8117    </div>
8118  </data-island>
8119</li>
8120
8121
8122      </ul>
8123      <ul class="bg-scheme-background">
8124        
8125
8126<li
8127  class="border-b-gridline border-gridline-color px-section-horizontal-spacing"
8128>
8129  <data-island class="contents" x-data="{ expanded: false }">
8130    <h2 class="font-heading text-heading-secondary break-word">
8131      <button
8132        type="button"
8133        @click="expanded = ! expanded"
8134        aria-controls="expanded-question_nY3Q9D-desktop"
8135        :aria-expanded="expanded ? true : 'false'"
8136        class="break-word flex w-full cursor-pointer items-center justify-between py-4 text-left"
8137      >
8138        <div class="break-word flex items-center">Is your print shop near me?</div><div class="flex h-6 w-6 shrink-0 items-center" x-show="!expanded">
8139            <svg
8140  class="theme-icon"
8141  xmlns="http://www.w3.org/2000/svg"
8142  fill="none"
8143  viewBox="0 0 24 24"
8144>
8145  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
8146</svg>
8147
8148          </div>
8149          <div
8150            class="flex h-6 w-6 shrink-0 items-center"
8151            x-show="expanded"
8152            style="display: none;"
8153          ><svg
8154  class="theme-icon"
8155  xmlns="http://www.w3.org/2000/svg"
8156  fill="none"
8157  viewBox="0 0 24 24"
8158>
8159  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
8160</svg>
8161</div></button>
8162    </h2>
8163    <div
8164      id="expanded-question_nY3Q9D-desktop"
8165      x-show="expanded"
8166      x-collapse
8167      x-cloak
8168    >
8169      <div class="rte richtext break-word pb-theme text-base ">
8170        <p>
8170We run two production tracks. Made-to-order work is hand-finished at our NZ facility and shipped direct to you. Fast Track orders in Australia are decorated by our trusted Melbourne partners so turnaround stays tight and freight stays local. Briefs are handled out of our Melbourne studio in Cremorne (AU) and our NZ HQ — you're working with locals on either side of the Tasman.</p>
8171      </div>
8172    </div>
8173  </data-island>
8174</li>
8175
8176
8177<li
8178  class="border-b-gridline border-gridline-color px-section-horizontal-spacing"
8179>
8180  <data-island class="contents" x-data="{ expanded: false }">
8181    <h2 class="font-heading text-heading-secondary break-word">
8182      <button
8183        type="button"
8184        @click="expanded = ! expanded"
8185        aria-controls="expanded-question_zFPtLz-desktop"
8186        :aria-expanded="expanded ? true : 'false'"
8187        class="break-word flex w-full cursor-pointer items-center justify-between py-4 text-left"
8188      >
8189        <div class="break-word flex items-center">Do you offer eco-friendly options?</div><div class="flex h-6 w-6 shrink-0 items-center" x-show="!expanded">
8190            <svg
8191  class="theme-icon"
8192  xmlns="http://www.w3.org/2000/svg"
8193  fill="none"
8194  viewBox="0 0 24 24"
8195>
8196  <path stroke="currentColor" d="M12 1v22M1 12h22" vector-effect="non-scaling-stroke"/>
8197</svg>
8198
8199          </div>
8200          <div
8201            class="flex h-6 w-6 shrink-0 items-center"
8202            x-show="expanded"
8203            style="display: none;"
8204          ><svg
8205  class="theme-icon"
8206  xmlns="http://www.w3.org/2000/svg"
8207  fill="none"
8208  viewBox="0 0 24 24"
8209>
8210  <path stroke="currentColor" d="M1 12h22" vector-effect="non-scaling-stroke"/>
8211</svg>
8212</div></button>
8213    </h2>
8214    <div
8215      id="expanded-question_zFPtLz-desktop"
8216      x-show="expanded"
8217      x-collapse
8218      x-cloak
8219    >
8220      <div class="rte richtext break-word pb-theme text-base ">
8221        <p>Yes, absolutely! We take responsibility for what we produce and how we produce custom merchandise. We exclusively print with water-based inks, prioritise responsibly made products, and reduce waste wherever possible. Learn more about these practices here.</p>
8222      </div>
8223    </div>
8224  </data-island>
8225</li>
8226
8227      </ul>
8228    </div>
8228<script type="application/ld+json">
8229      {
8230        "@context": "https://schema.org",
8231        "@type": "FAQPage",
8232        "mainEntity": [{
8233              "@type": "Question",
8234              "name": "What’s your minimum order?",
8235              "acceptedAnswer": {
8236                "@type": "Answer",
8237                "text": "Most products start at 24 units, with some exceptions based on garment and print types. Supacolour, embroidery, and screen printing all require different setups, which is reflected in our minimum order quantities."
8238              }
8239            },{
8240              "@type": "Question",
8241              "name": "Is your print shop near me?",
8242              "acceptedAnswer": {
8243                "@type": "Answer",
8244                "text": "We run two production tracks. Made-to-order work is hand-finished at our NZ facility and shipped direct to you. Fast Track orders in Australia are decorated by our trusted Melbourne partners so turnaround stays tight and freight stays local. Briefs are handled out of our Melbourne studio in Cremorne (AU) and our NZ HQ — you're working with locals on either side of the Tasman."
8245              }
8246            },{
8247              "@type": "Question",
8248              "name": "Do you supply garments?",
8249              "acceptedAnswer": {
8250                "@type": "Answer",
8251                "text": "We supply all garments and do not accept client-supplied items. With access to top-tier brands such as AS Colour, Cloke, Gildan, Biz Collection, Syzmik, and many more, we can produce high-quality t shirt printing, embroidery, tote bags, tea towels, and more."
8252              }
8253            },{
8254              "@type": "Question",
8255              "name": "Do you offer eco-friendly options?",
8256              "acceptedAnswer": {
8257                "@type": "Answer",
8258                "text": "Yes, absolutely! We take responsibility for what we produce and how we produce custom merchandise. We exclusively print with water-based inks, prioritise responsibly made products, and reduce waste wherever possible. Learn more about these practices here."
8259              }
8260            }]
8261      }
8262    </script>
8262</section>
8263
8264
8265<style> #shopify-section-template--21296459743302__faq_QH8xpq .text-scheme-text {padding-left: 30px; padding-right: 30px; padding-bottom: 50px; border-bottom: 1px solid white;} </style></div>
8265<script data-locksmith>
8266    var load = function () {
8267
8268          if (document.querySelectorAll('.locksmith-manual-trigger').length > 0) {
8269            Locksmith.ping();
8270          }
8271
8272
8273      Locksmith.util.on('submit', 'locksmith-resource-form', function (event) {
8274        event.preventDefault();
8275        var data = Locksmith.util.serializeForm(event.target);
8276        var options = { spinner: false, container: 'locksmith-content' };
8277        // a form rendered inline (section replacement) must keep that context
8278        // on resubmit: same enclosing container (there may be several on the
8279        // page), and no layout classes or cancel affordance in the re-render
8280        var inlineContainer = event.target.closest && event.target.closest('[id^="locksmith-content"]');
8281        if (inlineContainer) {
8282          options.container = inlineContainer;
8283        }
8284        if (event.target.getAttribute('data-locksmith-inline') === 'true') {
8285          options.include_layout_classes = false;
8286        }
8287        Locksmith.postResource(data, options);
8288      });
8289
8290      Locksmith.util.on('click', 'locksmith-manual-trigger', function (event) {
8291        event.preventDefault();
8292        Locksmith.postResource({}, { spinner: true, container: document });
8293      });
8294
8295      Locksmith.submitPasscode = function (passcode) {
8296        Locksmith.postResource(
8297          { passcode: passcode },
8298          { spinner: false, container: 'locksmith-content' }
8299        );
8300      };
8301    };
8302
8303    if (typeof Locksmith !== 'undefined') {
8304      load();
8305    } else {
8306      window.addEventListener('load', load);
8307    }
8308  </script>
8308
8309    </main>
8310
8311    <!-- BEGIN sections: footer-group -->
8312<div id="shopify-section-sections--21296457154630__176903720293717250" class="shopify-section shopify-section-group-footer-group">
8313
8314
8315
8316</div><div id="shopify-section-sections--21296457154630__footer" class="shopify-section shopify-section-group-footer-group"><footer
8317  class="bg-scheme-background text-scheme-text"
8318  data-color-scheme="scheme2"
8319  data-theme-footer
8320>
8321  
8322    <section
8323  class="border-b-gridline border-gridline-color bg-scheme-background py-section-vertical-spacing text-scheme-text"
8324  data-color-scheme="scheme2"
8325>
8326  <div class="justify-center px-section-horizontal-spacing lg:flex lg:items-center lg:justify-between">
8327    <div class="text-base">
8328      
8329
8330      
8331        <div class="[&_a[href]]:underline [&_a[href]]:hover:text-scheme-accent">
8332          <h2>We occasionally send out <strong>newsletters</strong>. You should sign up →</h2>
8333        </div>
8334      
8335    </div>
8336
8337    <div class="mt-theme-half lg:mt-0">
8338      <form method="post" action="/contact#Contact-sections--21296457154630__footer" id="Contact-sections--21296457154630__footer" accept-charset="UTF-8" class="contact-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" />
8339        
8340
8341        
8342          <input type="hidden" name="contact[tags]" value="newsletter">
8343          <div class="items-end lg:ml-4 lg:flex">
8344            <label class="sr-only" for="Email-sections--21296457154630__footer">Email address</label>
8345            <input
8346              type="email"
8347              class="font-body block w-full border-b-text border-current bg-transparent pb-1 leading-[inherit] placeholder-current"
8348              name="contact[email]"
8349              id="Email-sections--21296457154630__footer"
8350              value=""
8351              placeholder="Email address"
8352              autocorrect="off"
8353              autocapitalize="off"
8354            >
8355            <button
8356              class="theme-link mt-2 shrink-0 py-1 leading-[inherit] hover:text-scheme-accent lg:ml-2 lg:mt-0"
8357              type="submit"
8358              name="commit"
8359              id="Subscribe"
8360            >Subscribe</button>
8361          </div>
8362        
8363      </form>
8364    </div>
8365  </div>
8366</section>
8367
8368  
8369  
8370    <div class="border-b-gridline border-gridline-color">
8371      <div
8372        class="grid lg:grid-cols-var bg-gridline-color"
8373        style="--grid-cols: 12;"
8374      ><div
8375            class="break-word bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text lg:col-span-var"
8376            style="--col-span: 3;"
8377            
8378          ><div class="inline-block text-left">
8379                  
8380                  
8381                    <h2 class="font-heading mb-4 text-base">
8382                      Explore
8383                    </h2>
8384                  
8385                  <ul class="list-none space-y-1">
8386                    
8387<li>
8388                        <a
8389                          href="/pages/all-products"
8390                          class="hover:text-scheme-accent"
8391                        >
8392                          Products
8393                        </a>
8394                      </li>
8395                    
8396<li>
8397                        <a
8398                          href="/pages/services"
8399                          class="hover:text-scheme-accent"
8400                        >
8401                          Services
8402                        </a>
8403                      </li>
8404                    
8405<li>
8406                        <a
8407                          href="https://www.theprintroom.nz/apps/order-tracker"
8408                          class="hover:text-scheme-accent"
8409                        >
8410                          Track your order
8411                        </a>
8412                      </li>
8413                    
8414<li>
8415                        <a
8416                          href="/pages/responsibility"
8417                          class="hover:text-scheme-accent"
8418                        >
8419                          Responsibility
8420                        </a>
8421                      </li>
8422                    
8423<li>
8424                        <a
8425                          href="/pages/about-print-room"
8426                          class="hover:text-scheme-accent"
8427                        >
8428                          About us
8429                        </a>
8430                      </li>
8431                    
8432                  </ul>
8433                </div></div><div
8434            class="break-word bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text lg:col-span-var"
8435            style="--col-span: 3;"
8436            
8437          ><div class="inline-block text-left">
8438                  
8439                  
8440                    <h2 class="font-heading mb-4 text-base">
8441                      Helpful stuff
8442                    </h2>
8443                  
8444                  <ul class="list-none space-y-1">
8445                    
8446<li>
8447                        <a
8448                          href="/pages/screen-printing-faqs-the-print-room-quality-screen-printing-garment-design-blank-clothing"
8449                          class="hover:text-scheme-accent"
8450                        >
8451                          FAQs
8452                        </a>
8453                      </li>
8454                    
8455<li>
8456                        <a
8457                          href="https://help.theprintroom.nz/"
8458                          class="hover:text-scheme-accent"
8459                        >
8460                          Resource hub
8461                        </a>
8462                      </li>
8463                    
8464<li>
8465                        <a
8466                          href="/pages/catalogue"
8467                          class="hover:text-scheme-accent"
8468                        >
8469                          Catalogues
8470                        </a>
8471                      </li>
8472                    
8473<li>
8474                        <a
8475                          href="/blogs/the-print-room-nz"
8476                          class="hover:text-scheme-accent"
8477                        >
8478                          Blogs
8479                        </a>
8480                      </li>
8481                    
8482<li>
8483                        <a
8484                          href="/pages/policies"
8485                          class="hover:text-scheme-accent"
8486                        >
8487                          Policies & T&Cs
8488                        </a>
8489                      </li>
8490                    
8491                  </ul>
8492                </div></div><div
8493            class="break-word bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text lg:col-span-var"
8494            style="--col-span: 3;"
8495            
8496          >
8497                  <h2 class="font-heading break-word mb-4 text-base">
8498                    Get in touch - NZ
8499                  </h2>
8500                
8501<div class="rte">
8502                  <p>21 Grosvenor St, Kensington, Dunedin,<br/>9012<br/>[email protected]<br/>NZ: 03 425 9694</p>
8503                </div></div><div
8504            class="break-word bg-scheme-background px-section-horizontal-spacing py-section-vertical-spacing text-scheme-text lg:col-span-var"
8505            style="--col-span: 3;"
8506            
8507          >
8508                  <h2 class="font-heading break-word mb-4 text-base">
8509                    Get in touch - AUS
8510                  </h2>
8511                
8512<div class="rte">
8513                  <p>The Commons, 10–20 Gwynne St, Cremorne VIC 3121<br/>[email protected]<br/>+61 (0) 451 701 385</p>
8514                </div></div></div>
8515    </div>
8516  
8517
8518  <div>
8519    <div class="px-section-horizontal-spacing py-section-vertical-spacing lg:flex lg:flex-wrap lg:items-center lg:justify-between">
8520      <div class="mb-4 space-y-2 text-sm lg:mb-0 lg:flex-1">
8521        <p>
8522          &copy; 2026,
8523          <a href="/" title="">The Print Room</a>.
8524        </p>
8525        <ul class="flex flex-wrap gap-1 text-sm [&>li:last-child]:after:content-none [&>li]:after:content-['\00B7']">
8526          <li>
8527            
8528          </li></ul>
8529      </div>
8530      
8531</div>
8532  </div>
8533</footer>
8534
8535
8536  <style>
8537    .footer-logo-image {
8538      display: block;
8539      max-width: px;
8540    }
8541  </style>
8542
8543
8544
8545<style> #shopify-section-sections--21296457154630__footer .text-base {font-size: 20px;} #shopify-section-sections--21296457154630__footer .font-heading {text-decoration: underline;} #shopify-section-sections--21296457154630__footer .inline-block {line-height: 1.7;} #shopify-section-sections--21296457154630__footer /*.bg-scheme-background {border-top: 1px solid black;}*/.text-scheme-text {border-bottom: 1px solid black;} </style></div>
8546<!-- END sections: footer-group --><!-- BEGIN sections: overlay-group -->
8547<div id="shopify-section-sections--21296457220166__promo-popup" class="shopify-section shopify-section-group-overlay-group contents">
8548
8549
8550</div><div id="shopify-section-sections--21296457220166__age-check" class="shopify-section shopify-section-group-overlay-group contents">
8551</div><div id="shopify-section-sections--21296457220166__privacy-banner" class="shopify-section shopify-section-group-overlay-group contents">
8552
8553
8554</div>
8555<!-- END sections: overlay-group -->
8556
8557    <div
8558      id="screenreader-announce"
8559      class="sr-only"
8560      aria-live="polite"
8561      role="status"
8562    ></div>
8563
8564    <ul hidden>
8565      <li id="a11y-refresh-page-message">
8566        Choosing a selection results in a full page refresh.
8567      </li>
8568      <li id="a11y-selection-message">
8569        Press the space key then arrow keys to make a selection.
8570      </li>
8571    </ul>
8572
8573    
8574    <data-island
8575  role="complementary"
8576  aria-labelledby="left-drawer-slot"
8577  x-data
8578  on="load"
8579>
8580  <template x-teleport="body">
8581    <div
8582      x-show="$store.modals.leftDrawer.open"
8583      @keydown.escape.prevent.stop="$store.modals.close('leftDrawer')"
8584      @click="$store.modals.close('leftDrawer')"
8585      class="fixed inset-0 z-110"
8586      data-color-scheme="scheme1"
8587      id="modals-leftDrawer"
8588    >
8589      <div
8590        @click.stop
8591        x-show="$store.modals.leftDrawer.open"
8592        x-transition:enter="duration-300 motion-reduce:duration-0 outline-0"
8593        x-transition:enter-start="opacity-0 -translate-x-full"
8594        x-transition:leave="duration-300 motion-reduce:duration-0 outline-0"
8595        x-transition:leave-end="-translate-x-full"
8596        x-trap.noscroll.inert="$store.modals.leftDrawer.open"
8597        class="mr-auto h-full w-11/12 max-w-md transform overflow-y-auto border-r-gridline border-gr
8597idline-color bg-scheme-background text-scheme-text transition-transform"
8598        id="left-drawer-slot"
8599        role="dialog"
8600        @left-drawer-is-open.window="setTimeout(() => { $el.setAttribute('aria-modal', 'true') }, 120)"
8601        @left-drawer-is-closed.window="setTimeout(() => { $el.removeAttribute('aria-modal') }, 120)"
8602        :aria-label="getModalLabel('leftDrawer', $el)"
8603        tabindex="-1"
8604      >
8605        <!-- Modal content is teleported here -->
8606      </div>
8607    </div>
8608  </template>
8609</data-island>
8610<data-island
8611  role="complementary"
8612  aria-labelledby="right-drawer-slot"
8613  x-data
8614  on="load"
8615>
8616  <template x-teleport="body">
8617    <div
8618      x-show="$store.modals.rightDrawer.open"
8619      @keydown.escape.prevent.stop="$store.modals.close('rightDrawer')"
8620      @click="$store.modals.close('rightDrawer')"
8621      class="fixed inset-0 z-110"
8622      style="background: rgba(208,208,208,0.2); backdrop-filter: blur(1.5px); -webkit-backdrop-filter: blur(1.5px);"
8623      data-color-scheme="scheme1"
8624      id="modals-rightDrawer"
8625    >
8626      <div
8627        @click.stop
8628        x-show="$store.modals.rightDrawer.open"
8629        x-transition:enter="duration-300 motion-reduce:duration-0 outline-0"
8630        x-transition:enter-start="translate-x-full"
8631        x-transition:leave="duration-300 motion-reduce:duration-0 outline-0"
8632        x-transition:leave-end="translate-x-full"
8633        x-trap.noscroll.inert="$store.modals.rightDrawer.open"
8634        class="ml-auto h-full w-11/12 max-w-lg transform overflow-y-auto bg-scheme-background text-scheme-text"
8635        style="border-left: 2px solid black;"
8636        id="right-drawer-slot"
8637        role="dialog"
8638        @right-drawer-is-open.window="setTimeout(() => { $el.setAttribute('aria-modal', 'true') }, 120)"
8639        @right-drawer-is-closed.window="setTimeout(() => { $el.removeAttribute('aria-modal') }, 120)"
8640        :aria-label="getModalLabel('rightDrawer', $el)"
8641        tabindex="-1"
8642      >
8643        <!-- Modal content is teleported here -->
8644      </div>
8645    </div>
8646  </template>
8647</data-island>
8648<data-island
8649  role="complementary"
8650  aria-labelledby="quick-buy-drawer-slot-container"
8651  x-data
8652  on="load"
8653>
8654  <template x-teleport="body">
8655    <div
8656      x-show="$store.modals.quickBuyDrawer.open"
8657      @keydown.escape.prevent.stop="$store.modals.close('quickBuyDrawer')"
8658      @click="$store.modals.close('quickBuyDrawer')"
8659      class="fixed inset-0 z-110 flex lg:block"
8660      data-color-scheme="scheme1"
8661      id="modals-quickBuyDrawer"
8662    >
8663      <div
8664        @click.stop
8665        id="quick-buy-drawer-slot-container"
8666        x-show="$store.modals.quickBuyDrawer.open"
8667        x-transition:enter="duration-300 motion-reduce:duration-0 outline-0"
8668        x-transition:enter-start="max-lg:translate-y-full lg:translate-x-full"
8669        x-transition:leave="duration-300 motion-reduce:duration-0 outline-0"
8670        x-transition:leave-end="max-lg:translate-y-full lg:translate-x-full"
8671        x-trap.noscroll.inert="$store.modals.quickBuyDrawer.open"
8672        class="mt-auto h-auto w-full transform border-gridline-color bg-scheme-background text-scheme-text lg:ml-auto lg:h-full lg:w-11/12 lg:max-w-md lg:overflow-y-auto lg:border-l-gridline"
8673        role="dialog"
8674        @quick-buy-drawer-is-open.window="setTimeout(() => { $el.setAttribute('aria-modal', 'true') }, 120)"
8675        @quick-buy-drawer-is-closed.window="setTimeout(() => { $el.removeAttribute('aria-modal') }, 120)"
8676        :aria-label="getModalLabel('quickBuyDrawer', document.getElementById('quick-buy-drawer-slot'))"
8677        tabindex="-1"
8678      >
8679        <div class="sticky top-0 z-1 flex items-center justify-between border-y-gridline border-gridline-color bg-scheme-background px-section-horizontal-spacing py-4 lg:border-t-0">
8680          <div>
8681            Choose options
8682          </div>
8683          <button
8684            @click.prevent="$store.modals.close('quickBuyDrawer')"
8685            class="absolute right-0 top-0 block h-full"
8686            type="button"
8687          >
8688            <span class="sr-only">Close</span>
8689            <div class="my-auto mr-section-horizontal-spacing h-6 w-6">
8690              <svg
8691  class="theme-icon"
8692  xmlns="http://www.w3.org/2000/svg"
8693  fill="none"
8694  viewBox="0 0 24 24"
8695>
8696  <path stroke="currentColor" d="m1.5 1.5 21 21m0-21-21 21" vector-effect="non-scaling-stroke"/>
8697</svg>
8698
8699            </div>
8700          </button>
8701        </div>
8702        <div
8703          id="quick-buy-drawer-slot"
8704          class="max-lg:h-fit max-lg:max-h-[65vh] max-lg:overflow-y-auto"
8705        ></div>
8706      </div>
8707    </div>
8708  </template>
8709</data-island>
8710<data-island
8711  x-data
8712  on="load"
8713>
8714  <template x-teleport="body">
8715    <div
8716      x-show="$store.modals.promo.open"
8717      class="pointer-events-none fixed inset-0 z-110"
8718      id="modals-promo"
8719    >
8720      <div
8721        x-show="$store.modals.promo.open"
8722        class="flex h-full w-full"
8723      >
8724        <div
8725          x-show="$store.modals.promo.open"
8726          x-transition:enter="transition duration-300 motion-reduce:duration-0 delay-75 outline-0"
8727          x-transition:enter-start="translate-y-full"
8728          x-transition:enter-end="translate-y-0"
8729          x-transition:leave="transition duration-300 motion-reduce:duration-0 outline-0"
8730          x-transition:leave-start="translate-y-0"
8731          x-transition:leave-end="translate-y-full"
8732          class="pointer-events-auto relative bottom-0 left-0 right-0 top-auto mt-auto w-full overflow-y-auto"
8733          id="promo-slot"
8734          role="dialog"
8735          @promo-is-open.window="setTimeout(() => { $el.setAttribute('aria-modal', 'true') }, 120)"
8736          @promo-is-closed.window="setTimeout(() => { $el.removeAttribute('aria-modal') }, 120)"
8737          :aria-label="getModalLabel('promo', $el)"
8738          tabindex="-1"
8739        >
8740          <!-- Modal content is teleported here -->
8741        </div>
8742      </div>
8743    </div>
8744  </template>
8745</data-island>
8746<data-island x-data on="load">
8747  <template x-teleport="body">
8748    <div
8749      x-show="$store.modals.popup.open"
8750      @keydown.escape.prevent.stop="$store.modals.close('popup')"
8751      @click="$store.modals.close('popup')"
8752      class="fixed inset-0 z-110 p-8 lg:p-24"
8753      data-color-scheme="scheme1"
8754      id="modals-popup"
8755    >
8756      <div
8757        x-show="$store.modals.popup.open"
8758        class="fixed inset-0 bg-transparent"
8759      >
8760        <!-- Overlay -->
8761      </div>
8762      <div
8763        x-show="$store.modals.popup.open"
8764        class="flex h-full w-full"
8765      >
8766        <div
8767          @click.stop
8768          x-show="$store.modals.popup.open"
8769          x-trap.noscroll.inert="$store.modals.popup.open"
8770          class="relative m-auto max-h-full w-full max-w-2xl overflow-y-auto border-gr
8770idline border-gridline-color bg-scheme-background text-scheme-text"
8771          id="popup-slot"
8772          role="dialog"
8773          @popup-is-open.window="setTimeout(() => { $el.setAttribute('aria-modal', 'true') }, 120)"
8774          @popup-is-closed.window="setTimeout(() => { $el.removeAttribute('aria-modal') }, 120)"
8775          :aria-label="getModalLabel('popup', $el)"
8776          tabindex="-1"
8777        >
8778          <!-- Modal content is teleported here -->
8779        </div>
8780      </div>
8781    </div>
8782  </template>
8783</data-island>
8784<data-island x-data on="load">
8785  <template x-teleport="body">
8786    <div
8787      x-show="$store.modals.modal.open"
8788      x-transition:enter="transition ease-out duration-300"
8789      x-transition:enter-start="opacity-0"
8790      x-transition:enter-end="opacity-100"
8791      x-transition:leave="transition ease-in duration-200"
8792      x-transition:leave-start="opacity-100"
8793      x-transition:leave-end="opacity-0"
8794      @keydown.escape.prevent.stop="$store.modals.close('modal')"
8795      @click="$store.modals.close('modal')"
8796      class="fixed inset-0 z-110 bg-black/40 backdrop-blur-md"
8797      style="backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);"
8798      data-color-scheme="scheme1"
8799      id="modals-modal"
8800    >
8801      <div
8802        x-show="$store.modals.modal.open"
8803        class="flex h-full w-full justify-center p-2 sm:p-4 md:p-6 lg:p-8"
8804        :class="$store.modals.modal.contents === 'quoteRequest' ? 'items-stretch sm:items-center sm:p-6 lg:p-10' : 'items-center'"
8805      >
8806        <div
8807          @click.stop
8808          x-show="$store.modals.modal.open"
8809          x-transition:enter="transition ease-out duration-300"
8810          x-transition:enter-start="opacity-0 scale-95 translate-y-4"
8811          x-transition:enter-end="opacity-100 scale-100 translate-y-0"
8812          x-transition:leave="transition ease-in duration-200"
8813          x-transition:leave-start="opacity-100 scale-100 translate-y-0"
8814          x-transition:leave-end="opacity-0 scale-95 translate-y-4"
8815          x-trap.inert="$store.modals.modal.open"
8816          class="relative flex w-full flex-col overflow-hidden text-scheme-text"
8817          :class="$store.modals.modal.contents === 'quoteRequest'
8818            ? 'max-w-2xl max-h-[100dvh] sm:max-h-[calc(100dvh-48px)] rounded-none sm:rounded-[24px]'
8819            : 'max-w-lg sm:max-w-xl md:max-w-2xl lg:max-w-3xl max-h-[calc(100vh-24px)] sm:max-h-[calc(100vh-48px)] md:max-h-[calc(100vh-64px)] lg:max-h-[calc(100vh-96px)] rounded-[20px]'"
8820          style="background: #FBFBF6; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);"
8821          id="modal-slot"
8822          role="dialog"
8823          @modal-is-open.window="setTimeout(() => { $el.setAttribute('aria-modal', 'true') }, 120)"
8824          @modal-is-closed.window="setTimeout(() => { $el.removeAttribute('aria-modal') }, 120)"
8825          :aria-label="getModalLabel('modal', $el)"
8826          tabindex="-1"
8827        >
8828          <!-- Modal content is teleported here -->
8829        </div>
8830      </div>
8831    </div>
8832  </template>
8833</data-island>
8834
8835
8836    
8837    
8838
8839    
8840    <style>
8841  /* Push chatbot left when quote drawer is open */
8842  body:has([data-favorites-drawer]:not([style*="display: none"])) #tidio-chat,
8843  body:has([data-favorites-drawer]:not([style*="display: none"])) .tidio-chat,
8844  body:has([data-favorites-drawer]:not([style*="display: none"])) iframe[title*="chat" i],
8845  body:has([data-favorites-drawer]:not([style*="display: none"])) iframe[title*="tidio" i],
8846  body:has([data-favorites-drawer]:not([style*="display: none"])) [class*="chat-widget"],
8847  body:has([data-favorites-drawer]:not([style*="display: none"])) [id*="chat-widget"] {
8848    transform: translateX(-464px) !important;
8849    transition: transform 0.3s ease !important;
8850  }
8851
8852  /* Push AI chatbot trigger left when drawer is open - desktop only */
8853  @media (min-width: 768px) {
8854    body:has([data-favorites-drawer]:not([style*="display: none"])) .ai-chatbot__trigger {
8855      right: calc(32rem + 24px) !important;
8856      transition: right 0.3s ease, transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease !important;
8857    }
8858  }
8859
8860  /* Override theme color scheme — force black text throughout drawer */
8861  [data-favorites-drawer] {
8862    --color-scheme-text: 0 0 0 !important;
8863  }
8864  [data-favorites-drawer] h2 {
8865    letter-spacing: 0px !important;
8866  }
8867  @media (max-width: 639px) {
8868    [data-favorites-drawer] h2 {
8869      text-align: left !important;
8870    }
8871  }
8872  [data-favorites-drawer] *,
8873  [data-favorites-drawer] h2,
8874  [data-favorites-drawer] p,
8875  [data-favorites-drawer] a,
8876  [data-favorites-drawer] span,
8877  [data-favorites-drawer] div,
8878  [data-favorites-drawer] li {
8879    color: black !important;
8880  }
8881
8882  /* Close button stays muted */
8883  [data-favorites-drawer] button[aria-label*="Close"],
8884  [data-favorites-drawer] button[aria-label*="Close"] svg {
8885    color: rgba(0,0,0,0.4) !important;
8886  }
8887
8888  /* Remove button stays muted, red on hover */
8889  [data-favorites-drawer] button[aria-label*="Remove"],
8890  [data-favorites-drawer] button[aria-label*="Remove"] svg {
8891    color: rgba(0,0,0,0.3) !important;
8892  }
8893  [data-favorites-drawer] button[aria-label*="Remove"]:hover,
8894  [data-favorites-drawer] button[aria-label*="Remove"]:hover svg {
8895    color: #ef4444 !important;
8896  }
8897
8898  /* Product dividers — solid black */
8899  [data-favorites-drawer] li {
8900    border-bottom: 1px solid black !important;
8901  }
8902  [data-favorites-drawer] li:last-child {
8903    border-bottom: none !important;
8904  }
8905
8906  /* Footer dividers — solid black */
8907  [data-favorites-drawer] .drawer-divider {
8908    border-top: 1px solid black !important;
8909  }
8910
8911  /* Start quote button — visible border */
8912  [data-favorites-drawer] .drawer-cta-btn {
8913    border: 2px solid #4B4D72 !important;
8914    color: #4B4D72 !important;
8915  }
8916  [data-favorites-drawer] .drawer-cta-btn:hover {
8917    background-color: #4B4D72 !important;
8918    color: #fff !important;
8919  }
8920</style>
8921
8922<data-island
8923  x-data="FavoritesDrawer"
8924  on="idle"
8925  x-cloak
8926>
8927  <div>
8928    <template x-teleport="#right-drawer-slot">
8929      <div
8930        class="flex h-full flex-col overflow-hidden" style="background: #FBFBF6;"
8931        :data-modal-label="`Your current project - ${$store.favorites.countWithText()}`"
8932        x-show="$store.modals.rightDrawer.contents === 'favorites'"
8933        data-favorites-drawer
8934      ><div class="relative shrink-0" style="padding: 80px 40px 24px;">
8935          <button
8936            @click.prevent="$store.modals.close('favorites')"
8937            class="absolute rounded-full p-2 transition-colors"
8938            style="top: 19px; right: 19px; color: rgba(0,0,0,0.4);"
8939            type="button"
8940          >
8941            <span class="sr-only">Close project drawer</span>
8942            <svg width="24" height="24" fill="none" viewBox="0 0 24 24"><path stroke="currentColor" stroke-width="2" d="m6 6 12 12m0-12-12 12"/></svg>
8943          </button>
8944          <h2 id="FavoritesTitle" tabindex="-1" class="font-bold" style="font-size: 41px; letter-spacing: 0px; line-height: 1; color: black; text-align: center;">
8945            Your current project
8946          </h2>
8947        </div><div class="flex-1 overflow-y-auto" style="padding: 20px 40px; min-height: 0;"><template x-if="$store.favorites.count === 0">
8948            <div class="flex flex-col items-center justify-center py-12 text-center">
8949              <p class="mb-2 text-base font-medium text-scheme-text">No products yet</p>
8950              <p class="mx-auto mb-8 max-w-xs text-sm text-scheme-text/60">Browse our products and add items to your project.</p>
8951              <a
8952                href="/collections/product-library"
8953                class="inline-flex items-center justify-center font-light transition"
8954                style="border: 2px solid #4B4D72; color: #4B4D72; border-radius: 50px; padding: 18px 48px; font-size: 24px;"
8955                onmouseover="this.style.backgroundColor='#4B4D72'; this.style.color='#fff';"
8956                onmouseout="this.style.backgroundColor='transparent'; this.style.color='#4B4D72';"
8957                @click="$store.modals.close('favorites')"
8958              >
8959                Browse Products
8960              </a>
8961            </div>
8962          </template><template x-if="$store.favorites.count > 0">
8963            <ul>
8964              <template x-for="item in $store.favorites.items" :key="item.key">
8965                <li class="flex items-center" style="padding: 20px 0; gap: 16px;">
8966                  <button
8967                    @click="$store.favorites.remove(item.key)"
8968                    class="shrink-0 rounded-full p-1 transition-colors hover:text-red-500"
8969                    style="color: rgba(0,0,0,0.3);"
8970                    :aria-label="'Remove ' + item.title"
8971                  >
8972                    <svg width="19" height="19" fill="none" viewBox="0 0 24 24"><path stroke="currentColor" stroke-width="2" d="m6 6 12 12m0-12-12 12"/></svg>
8973                  </button>
8974                  <a :href="item.url" class="block shrink-0 overflow-hidden bg-gray-100" style="width: 90px; height: 90px;">
8975                    <img :src="item.image" :alt="item.title" class="h-full w-full object-cover" loading="lazy" width="90" height="90">
8976                  </a>
8977                  <div class="min-w-0 flex-1">
8978                    <p style="font-size: 16px; font-weight: 300; line-height: 18px; color: black;" x-text="item.vendor || ''"></p>
8979                    <a :href="item.url" class="line-clamp-1" style="font-size: 16px; font-weight: 600; line-height: 18px; color: black;" x-text="item.title"></a>
8980                    <p class="text-xs text-gray-600" x-text="item.colour || (item.hasColours ? 'Colour TBC' : '')"></p>
8981                  </div>
8982                </li>
8983              </template>
8984            </ul>
8985          </template>
8986        </div><div class="shrink-0" style="padding: 0 40px 48px;">
8987          <template x-if="$store.favorites.count > 0">
8988            <div>
8989              <div class="drawer-divider" style="padding-top: 28px;">
8990                <p style="font-size: 23px; font-weight: 300; line-height: 30px;">Get a quote for these products.</p>
8991              </div>
8992              <div class="drawer-divider" style="margin-top: 24px; padding-top: 24px;">
8993                <p style="font-size: 15px; line-height: 20px;">Once submitted, one of our team will provide a more accurate quote based on the information provided. We aim to have a quote back to you within 5 working days.</p>
8994              </div>
8995              <button
8996                @click="$store.modals.close('favorites'); setTimeout(() => $store.modals.open('quoteRequest'), 300)"
8997                class="drawer-cta-btn inline-flex w-full items-center justify-center text-center transition"
8998                style="margin-top: 24px; min-height: 79px; border-radius: 50px; font-size: 27px; font-weight: 300;"
8999              >
9000                Start quote request
9001              </button>
9002            </div>
9003          </template>
9004        </div>
9005      </div>
9006    </template>
9007  </div>
9008</data-island>
9009
9010
9011    
9012    <style>
9013  :root {
9014    --color-quote-accent: #2B3990;
9015  }
9016
9017  /* Modal inputs */
9018  .qr-input,
9019  .qr-select {
9020    width: 100%;
9021    min-height: 2.15rem;
9022    border: 0.666px solid black;
9023    border-radius: 9999px;
9024    padding: 0.5rem 1rem;
9025    background: transparent;
9026    color: #111827;
9027    font-size: 0.875rem;
9028    transition: border-color 0.2s ease, box-shadow 0.2s ease;
9029  }
9030
9031  .qr-textarea {
9032    width: 100%;
9033    border: 0.75px solid black;
9034    border-radius: 10px;
9035    padding: 0.75rem 1rem;
9036    background: transparent;
9037    color: #111827;
9038    font-size: 0.875rem;
9039    resize: vertical;
9040    transition: border-color 0.2s ease, box-shadow 0.2s ease;
9041  }
9042
9043  .qr-input:focus,
9044  .qr-select:focus,
9045  .qr-textarea:focus {
9046    outline: none;
9047    border-color: var(--color-quote-accent, #2B3990);
9048    box-shadow: 0 0 0 3px rgba(43, 57, 144, 0.1);
9049  }
9050
9051  /* Ensure date & select inputs stay pill-shaped */
9052  input[type="date"].qr-input,
9053  select.qr-select {
9054    border-radius: 9999px !important;
9055    padding-left: 1rem;
9056    padding-right: 2.5rem;
9057  }
9058
9059  input[type="date"].qr-input::-webkit-calendar-picker-indicator {
9060    opacity: 0.4;
9061    cursor: pointer;
9062  }
9063
9064  /* Budget slider */
9065  .qr-slider {
9066    -webkit-appearance: none;
9067    appearance: none;
9068    width: 100%;
9069    height: 28px;
9070    background: transparent;
9071    outline: none;
9072    cursor: pointer;
9073    position: relative;
9074    z-index: 2;
9075    touch-action: none;
9076    margin: 0;
9077    padding: 0;
9078  }
9079
9080  .qr-slider::-webkit-slider-runnable-track {
9081    height: 6px;
9082    border-radius: 9999px;
9083    background: var(--slider-track, #e5e7eb);
9084    cursor: pointer;
9085  }
9086
9087  .qr-slider::-webkit-slider-thumb {
9088    -webkit-appearance: none;
9089    appearance: none;
9090    width: 24px;
9091    height: 24px;
9092    border-radius: 50%;
9093    background: #658a6a;
9094    cursor: grab;
9095    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
9096    margin-top: -9px;
9097    border: 2px solid #fff;
9098  }
9099
9100  .qr-slider::-webkit-slider-thumb:active {
9101    cursor: grabbing;
9102    transform: scale(1.1);
9103    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
9104  }
9105
9106  .qr-slider::-moz-range-track {
9107    height: 6px;
9108    border-radius: 9999px;
9109    background: var(--slider-track, #e5e7eb);
9110    cursor: pointer;
9111  }
9112
9113  .qr-slider::-moz-range-thumb {
9114    width: 24px;
9115    height: 24px;
9116    border: 2px solid #fff;
9117    border-radius: 50%;
9118    background: #658a6a;
9119    cursor: grab;
9120    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
9121  }
9122
9123  .qr-slider::-moz-range-thumb:active {
9124    cursor: grabbing;
9125  }
9126
9127  .qr-slider::-moz-range-progress {
9128    height: 6px;
9129    border-radius: 9999px;
9130    background: #658a6a;
9131  }
9132
9133  /* Pill buttons for per-product fields */
9134  .qr-pill {
9135    display: inline-flex;
9136    height: 23px;
9137    align-items: center;
9138    justify-content: center;
9139    gap: 0.25rem;
9140    border: 0.666px solid black;
9141    border-radius: 9999px;
9142    padding: 0 0.75rem;
9143    background: #eee;
9144    color: #111827;
9145    font-size: 10.65px;
9146    font-weight: 400;
9147    cursor: pointer;
9148    transition: border-color 0.15s, background 0.15s;
9149    white-space: nowrap;
9150    position: relative;
9151  }
9152
9153  .qr-pill:hover {
9154    border-color: black;
9155    background: #e2e2e2;
9156  }
9157
9158  .qr-pill--active {
9159    border-color: black;
9160    color: #111827;
9161    background: #e2e2e2;
9162  }
9163
9164  .qr-pill--required {
9165    border-color: #dc2626;
9166  }
9167
9168  /* Pills grid: fixed equal columns across all rows */
9169  .qr-pills-row {
9170    display: grid;
9171    grid-template-columns: repeat(3, 1fr);
9172  }
9173
9174  /* Popover for pill fields */
9175  .qr-popover {
9176    position: absolute;
9177    top: calc(100% + 6px);
9178    left: 0;
9179    z-index: 50;
9180    min-width: 14rem;
9181    border: 0.666px solid black;
9182    border-radius: 8px;
9183    background: #fff;
9184    padding: 0.75rem;
9185    box-shadow: 0 3px 7px 0 rgba(0, 0, 0, 0.4);
9186  }
9187
9188  /* Product item rows */
9189  .qr-product-row {
9190    border-bottom: 1px solid black !important;
9191    padding: 0.75rem 0;
9192  }
9193
9194  .qr-product-row:last-child {
9195    border-bottom: none !important;
9196  }
9197
9198  /* Submit button */
9199  .qr-submit {
9200    display: flex;
9201    height: 70px;
9202    width: 100%;
9203    max-width: 351px;
9204    margin-left: auto;
9205    margin-right: auto;
9206    align-items: center;
9207    justify-content: center;
9208    border-radius: 50px;
9209    border: 2px solid #4B4D72;
9210    padding: 0.85rem 1.5rem;
9211    background: #4B4D72;
9212    color: #fff;
9213    font-size: 1.5rem;
9214    font-weight: 400;
9215    transition: opacity 0.2s ease, transform 0.2s ease;
9216  }
9217
9218  .qr-submit:hover {
9219    background: #3d3f5e;
9220    border-color: #3d3f5e;
9221    transform: translateY(-1px);
9222  }
9223
9224  .qr-submit:disabled {
9225    opacity: 0.4;
9226    cursor: not-allowed;
9227    transform: none;
9228  }
9229
9230  /* Outlined button */
9231  .qr-btn-outline {
9232    display: inline-flex;
9233    min-height: 2.75rem;
9234    align-items: center;
9235    justify-content: center;
9236    border: 1.5px solid #4B4D72;
9237    border-radius: 9999px;
9238    padding: 0.65rem 1.5rem;
9239    background: transparent;
9240    color: #4B4D72;
9241    font-size: 0.875rem;
9242    font-weight: 600;
9243    transition: background-color 0.2s ease, color 0.2s ease;
9244  }
9245
9246  .qr-btn-outline:hover {
9247    background: #4B4D72;
9248    color: #fff;
9249  }
9250
9251  @media (max-width: 639px) {
9252    .qr-popover {
9253      position: fixed;
9254      top: auto;
9255      bottom: 0;
9256      left: 0;
9257      right: 0;
9258      min-width: 100%;
9259      border-radius: 8px 8px 0 0;
9260      padding: 1rem;
9261      box-shadow: 0 -3px 7px 0 rgba(0, 0, 0, 0.4);
9262    }
9263  }
9264
9265  /* Fix: Tailwind arbitrary rounded class not compiled */
9266  @media (min-width: 640px) {
9267    .sm\:rounded-\[24px\] {
9268      border-radius: 27px;
9269    }
9270  }
9271
9272  /* Fix: Tailwind sm:grid-cols-2 not compiled in this theme */
9273  @media (min-width: 640px) {
9274    [data-quote-request-modal] .sm\:grid-cols-2 {
9275      grid-template-columns: repeat(2, minmax(0, 1fr));
9276    }
9277  }
9278
9279  /* Make overlay scroll instead of modal body */
9280  #modals-modal:has([data-quote-request-modal]) {
9281    overflow-y: auto;
9282  }
9283
9284  /* Flex container: min-height instead of fixed height, always center */
9285  #modals-modal:has([data-quote-request-modal]) > div {
9286    height: auto;
9287    min-height: 100%;
9288    align-items: center;
9289  }
9290
9291  /* Card: remove max-height constraint, allow natural sizing, always rounded */
9292  #modals-modal:has([data-quote-request-modal]) #modal-slot {
9293    max-height: none !important;
9294    overflow: visible !important;
9295    border-radius: 27px;
9296    border: 1.75px solid black;
9297    box-shadow: 0px 4px 13px 2px rgba(0, 0, 0, 0.1);
9298  }
9299
9300  /* Fix: Tailwind sm:flex-nowrap not compiled */
9301  @media (min-width: 640px) {
9302    .qr-product-row {
9303      flex-wrap: nowrap;
9304    }
9305  }
9306
9307  /* Content div: match card rounding */
9308  [data-quote-request-modal] {
9309    border-radius: 27px;
9310    overflow: visible !important;
9311  }
9312
9313  /* All modal text defaults to black per Figma */
9314  [data-quote-request-modal] label,
9315  [data-quote-request-modal] h3,
9316  [data-quote-request-modal] p,
9317  [data-quote-request-modal] span {
9318    color: black;
9319  }
9320
9321  /* Preserve intentional non-black colors */
9322  [data-quote-request-modal] .text-gray-400 {
9323    color: #9ca3af !important;
9324  }
9325  [data-quote-request-modal] .text-emerald-600 {
9326    color: #059669 !important;
9327  }
9328  [data-quote-request-modal] .text-red-500 {
9329    color: #ef4444 !important;
9330  }
9331  /* Keep submit button text white */
9332  [data-quote-request-modal] .qr-submit span {
9333    color: #fff !important;
9334  }
9335
9336  /* Modal title letter spacing */
9337  [data-quote-request-modal] h2 {
9338    letter-spacing: 0px !important;
9339  }
9340
9341  /* All labels should be black per Figma */
9342  [data-quote-request-modal] label {
9343    color: black !important;
9344  }
9345
9346  /* Placeholder text should be grey, not blue */
9347  [data-quote-request-modal] textarea::placeholder,
9348  [data-quote-request-modal] input::placeholder {
9349    color: #9ca3af !important;
9350  }
9351</style>
9352
9353<data-island
9354  x-data="QuoteRequestForm"
9355  on="idle"
9356  x-cloakdata-webhook-url="https://print-room-chatbot-api.vercel.app/api/quote-request"
9357  data-turnstile-site-key="0x4AAAAAAETPnb_3iHel2J69"
9358>
9359  <template x-teleport="#modal-slot">
9360    <div
9361      x-show="$store.modals.modal.contents === 'quoteRequest'"
9362      class="flex w-full flex-col h-full"
9363      style="background: #FBFBF6;"
9364      data-quote-request-modal
9365    ><div class="shrink-0 px-5 py-4 sm:px-8 sm:py-5">
9366        <div class="flex items-center justify-between">
9367          <h2 x-show="!successMessage" class="font-bold" style="font-size: 2.75rem; letter-spacing: 0px; color: black;">Project quote request</h2>
9368          <div x-show="successMessage" class="flex-1"></div>
9369          <button
9370            @click.prevent="$store.modals.close('quoteRequest')"
9371            type="button"
9372            class="rounded-full p-2 text-gray-400 transition hover:text-gray-600"
9373          >
9374            <span class="sr-only">Close</span>
9375            <svg width="20" height="20" fill="none" viewBox="0 0 24 24">
9375<path stroke="currentColor" stroke-width="2" d="m6 6 12 12m0-12-12 12"/></svg>
9376          </button>
9377        </div>
9378      </div><div class="overflow-y-auto flex-1 px-5 py-5 sm:px-8 sm:py-6">
9379        <div class="mx-auto max-w-2xl">
9380          <template x-if="!successMessage">
9381            <form @submit.prevent="submitQuote" class="space-y-8"><section style="padding-bottom: 2rem;">
9382                <h3 class="text-sm font-normal" style="color: black;" x-text="'Selected products (' + ($store.chatQuote.active ? $store.chatQuote.count : $store.favorites.count) + ')'">Selected products</h3><template x-if="$store.chatQuote.active && $store.chatQuote.count > 0">
9383                  <div class="mt-3">
9384                    <template x-for="item in $store.chatQuote.items" :key="item.id">
9385                      <div class="qr-product-row flex items-start gap-3">
9386                        <div class="shrink-0 overflow-hidden rounded-lg bg-gray-100" style="width: 53px; height: 53px;">
9387                          <template x-if="item.image">
9388                            <img :src="item.image" :alt="item.title" class="h-full w-full object-cover" width="53" height="53">
9389                          </template>
9390                        </div>
9391                        <div class="min-w-0 flex-1">
9392                          <p class="text-sm font-semibold text-gray-900" x-text="item.title"></p>
9393                          <div class="mt-2 flex flex-wrap gap-2">
9394                            <span x-show="item.quantity" class="qr-pill" x-text="'Qty ' + item.quantity"></span>
9395                            <span x-show="item.colors && item.colors.length > 0" class="qr-pill" x-text="item.colors.join(', ')"></span>
9396                            <span x-show="item.sizes && item.sizes.length > 0" class="qr-pill" x-text="item.sizes.join(', ')"></span>
9397                            <span x-show="item.decorationMethod" class="qr-pill" x-text="item.decorationMethod"></span>
9398                          </div>
9399                        </div>
9400                      </div>
9401                    </template>
9402                  </div>
9403                </template><template x-if="!$store.chatQuote.active && $store.favorites.count > 0">
9404                  <div class="mt-3" x-data="{ openPill: null }"
9405                    @click.document="if (openPill && !$event.target.closest('.qr-pill') && !$event.target.closest('.qr-popover')) openPill = null">
9406                    <template x-for="item in $store.favorites.items" :key="item.key">
9407                      <div class="qr-product-row flex items-center gap-3 flex-wrap sm:flex-nowrap" x-init="if(item.handle === 'mystery-product') { $nextTick(() => openPill = item.key + '-notes') }">
9408                        <template x-if="item.handle === 'mystery-product'">
9409                          <div class="shrink-0 flex items-center justify-center" style="width: 53px; height: 53px;">
9410                            <span style="width: 33px; height: 33px; color: black;"><span class="h-full w-full fill-current">
9411  <svg
9412    aria-hidden="true"
9413    focusable="false"
9414    role="presentation"
9415    class="icon icon-product-question-mark"
9416    viewBox="0 0 24 24"
9417  >
9418    <path d="M12 1c6.075 0 11 4.925 11 11s-4.925 11-11 11S1 18.075 1 12 5.925 1 12 1Zm0 1.375a9.625 9.625 0 1 0 0 19.25 9.625 9.625 0 0 0 0-19.25Zm0 13.75.112.006a1.031 1.031 0 1 1-.224 0l.112-.006Zm3.35-7.646a3.437 3.437 0 0 1-2.204 4.012.688.688 0 0 0-.452.553l-.007.096v.922a.687.687 0 0 1-1.368.094l-.007-.094v-.921c0-.823.488-1.562 1.233-1.89l.143-.056a2.062 2.062 0 1 0-2.745-2.094l-.006.15a.688.688 0 1 1-1.374-.001 3.438 3.438 0 0 1 6.787-.771Z"></path>
9419  </svg>
9420</span>
9421</span>
9422                          </div>
9423                        </template>
9424                        <template x-if="item.handle !== 'mystery-product'">
9425                          <div class="shrink-0 overflow-hidden rounded-lg bg-gray-100" style="width: 53px; height: 53px;">
9426                            <img :src="item.image" :alt="item.title" class="h-full w-full object-cover" width="53" height="53">
9427                          </div>
9428                        </template>
9429                        <div class="min-w-0" style="width: 5rem; flex: 0 0 5rem;">
9430                          <p style="font-size: 10px; font-weight: 300; line-height: 11px; color: black;" x-text="item.vendor || ''"></p>
9431                          <p class="truncate" style="font-size: 10px; font-weight: 600; line-height: 11px; color: black;" x-text="item.title"></p>
9432                        </div><div class="qr-pills-row flex-1" style="margin-left: 1rem; gap: 0.75rem; align-items: center;">
9433                            <div class="relative" x-show="item.hasColours">
9434                              <button type="button" class="qr-pill" :class="{ 'qr-pill--active': openPill === item.key + '-colour' }"
9435                                @click="openPill = openPill === item.key + '-colour' ? null : item.key + '-colour'; if (openPill) $store.favorites.loadColourChoices(item.key)">
9436                                <span x-text="item.colour || 'Colour TBC'"></span>
9437                                <svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"/></svg>
9438                              </button>
9439                              <div x-show="openPill === item.key + '-colour'" x-transition class="qr-popover" style="min-width: 10rem; max-height: 15rem; overflow-y: auto;">
9440                                <button
9441                                  type="button"
9442                                  data-quote-colour-tbc
9443                                  class="block w-full text-left text-sm py-1"
9444                                  :disabled="!$store.favorites.canSelectTbc(item)"
9445                                  :class="!$store.favorites.canSelectTbc(item) ? 'opacity-40 cursor-not-allowed' : ''"
9446                                  @click="if ($store.favorites.rekey(item.key, { variantId: null, colour: null })) openPill = null"
9447                                >TBC (decide later)</button>
9448                                <p class="text-xs text-gray-600" x-show="!($store.favorites.colourChoicesByHandle[item.handle] || []).length">We'll confirm colour with you</p>
9449                                <template x-for="choice in ($store.favorites.colourChoicesByHandle[item.handle] || [])" :key="choice.variantId">
9450                                  <button type="button" class="block w-full text-left text-sm py-1" x-text="choice.label"
9451                                    :disabled="$store.favorites.colourChoiceTaken(item, choice)"
9452                                    :class="$store.favorites.colourChoiceTaken(item, choice) ? 'opacity-40 cursor-not-allowed' : ''"
9453                                    @click="if ($store.favorites.rekey(item.key, choice)) openPill = null"></button>
9454                                </template>
9455                              </div>
9456                            </div><div class="relative">
9457                              <button type="button" class="qr-pill" :class="{ 'qr-pill--active': openPill === item.key + '-qty' }" @click="openPill = openPill === item.key + '-qty' ? null : item.key + '-qty'">
9458                                <span x-text="'Quantity' + (item.quantity ? ' ' + (item.quantity >= 1000 ? '1000+' : item.quantity) : '')"></span>
9459                                <svg class="h-3 w-3 text-gray-600" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"/></svg>
9460                              </button>
9461                              <div x-show="openPill === item.key + '-qty'" x-transition class="qr-popover" style="min-width: 8rem; padding: 0.5rem 0.75rem;">
9462                                <div class="flex items-baseline gap-2">
9463                                  <span class="text-sm font-normal text-gray-900" x-text="item.quantity || item.moq || 24"></span>
9464                                  <span class="text-xs font-light text-gray-500">units</span>
9465                                </div>
9466                                <input x-show="item.sizeSplit === null"
9467                                  type="range"
9468                                  min="1"
9469                                  max="1000"
9470                                  step="1"
9471                                  class="qr-slider"
9472                                  style="height: 18px; margin-top: 2px;"
9473                                  :value="item.quantity || item.moq || 24"
9474                                  @input="$store.favorites.updateItemMeta(item.key, 'quantity', parseInt($event.target.value, 10))"
9475                                  :style="'--slider-track: linear-gradient(to right, #658a6a ' + ((item.quantity - 1) / 999 * 100) + '%, #e5e7eb ' + ((item.quantity - 1) / 999 * 100) + '%)'"
9476                                >
9477                                <label x-show="item.sizeOptions && item.sizeOptions.length" class="mt-2 flex items-center gap-2 text-xs">
9478                                  <input type="checkbox" :checked="item.sizeSplit !== null" @change="$store.favorites.setSizeSplit(item.key, $event.target.checked ? {} : null)">
9479                                  Split by size (optional)
9480                                </label>
9481                                <div x-show="item.sizeSplit !== null && item.sizeOptions && item.sizeOptions.length" class="mt-2 space-y-1">
9482                                  <template x-for="size in item.sizeOptions" :key="size">
9483                                    <label class="flex items-center gap-2 text-xs">
9484                                      <span x-text="size" class="w-10"></span>
9485                                      <input type="number" min="0" max="100000" step="1" class="w-20 border rounded px-1"
9486                                        :value="(item.sizeSplit || {})[size] || 0"
9487                                        @input="$store.favorites.setSizeSplit(item.key, { ...(item.sizeSplit || {}), [size]: parseInt($event.target.value, 10) || 0 })">
9488                                    </label>
9489                                  </template>
9490                                </div>
9491                              </div>
9492                            </div><div class="relative">
9493                              <button type="button" class="qr-pill" :class="{ 'qr-pill--active': openPill === item.key + '-artwork' || (item.artworks && item.artworks.length > 0) || item.artworkLink }" @click="openPill = openPill === item.key + '-artwork' ? null : item.key + '-artwork'">
9494                                <template x-if="item.artworks && item.artworks.length > 0">
9495                                  <span class="flex items-center gap-1">
9496                                    <svg class="h-3 w-3 shrink-0" style="color: #658a6a;" fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"/></svg>
9497                                    <span x-text="item.artworks.length === 1 ? '1 file' : item.artworks.length + ' files'"></span>
9498                                  </span>
9499                                </template>
9500                                <template x-if="item.artworkLink && !(item.artworks && item.artworks.length > 0)">
9501                                  <span class="flex items-center gap-1">
9502                                    <svg class="h-3 w-3 shrink-0" style="color: #658a6a;" fill="currentColor" viewBox="0 0 20 20"><path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"/></svg>
9503                                    <span>Artwork linked</span>
9504                                  </span>
9505                                </template>
9506                                <template x-if="!(item.artworks && item.artworks.length > 0) && !item.artworkLink">
9507                                  <span x-text="'Upload artwork \u2191'"></span>
9508                                </template>
9509                              </button>
9510                              <div x-show="openPill === item.key + '-artwork'" x-transition class="qr-popover" style="min-width: 14rem;">
9511                                <p class="mb-2 text-xs text-gray-500">Max <strong>5 files</strong>, <strong>10MB</strong> each</p><template x-if="item.artworks && item.artworks.length > 0">
9512                                  <div class="mb-2 space-y-3">
9513                                    <template x-for="(aw, awIdx) in item.artworks" :key="aw.fileName + awIdx">
9514                                      <div class="text-xs">
9515                                        <div class="flex items-center gap-1.5">
9516                                          <template x-if="aw.status === 'uploading'">
9517                                            <svg class="h-3 w-3 shrink-0 animate-spin text-gray-400" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"/><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"/></svg>
9518                                          </template>
9519                                          <template x-if="aw.status === 'done'">
9520                                            <svg class="h-3 w-3 shrink-0 text-emerald-500" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 13l4 4L19 7"/></svg>
9521                                          </template>
9522                                          <template x-if="aw.status === 'error'">
9523                                            <svg class="h-3 w-3 shrink-0 text-red-500" fill="none" stroke="currentColor" viewBox="0 0 24 24">
9523<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"/></svg>
9524                                          </template>
9525                                          <span class="flex-1 truncate" :class="aw.status === 'error' ? 'text-red-600' : 'text-gray-700'" x-text="aw.fileName"></span>
9526                                          <span class="shrink-0 text-gray-400" style="font-size: 10px;" x-text="aw.fileSize ? (aw.fileSize / 1024 < 1024 ? Math.round(aw.fileSize / 1024) + 'KB' : (aw.fileSize / (1024*1024)).toFixed(1) + 'MB') : ''"></span>
9527                                          <template x-if="aw.status === 'error'">
9528                                            <button type="button" class="shrink-0 text-blue-600 underline" @click="retryArtworkUpload(item.key, awIdx)">Retry</button>
9529                                          </template>
9530                                          <button type="button" class="shrink-0 text-red-400 hover:text-red-600" @click="removeArtwork(item.key, awIdx)" title="Remove file">
9531                                            <svg class="h-3 w-3" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"/></svg>
9532                                          </button>
9533                                        </div><template x-if="aw.status === 'done'">
9534                                          <div class="relative" style="margin-top: 3px; margin-left: 18px;" x-data="{ placementOpen: false }">
9535                                            <button
9536                                              type="button"
9537                                              @click="placementOpen = !placementOpen"
9538                                              class="flex w-full items-center justify-between"
9539                                              style="height: 20px; padding: 0 8px; font-size: 10px; border: 0.666px solid black; border-radius: 9999px; background: #eee; cursor: pointer;"
9540                                            >
9541                                              <span x-text="aw.placement || 'Placement…'" :style="aw.placement ? 'color: black' : 'color: #9ca3af'"></span>
9542                                              <svg :style="placementOpen ? 'transform: rotate(180deg)' : ''" width="6" height="4" viewBox="0 0 6 4" fill="none" style="margin-left: 4px; flex-shrink: 0; transition: transform 0.15s;">
9543                                                <path d="M0.5 0.5L3 3L5.5 0.5" stroke="black" stroke-width="1" stroke-linecap="round" stroke-linejoin="round"/>
9544                                              </svg>
9545                                            </button>
9546                                            <div
9547                                              x-show="placementOpen"
9548                                              x-transition
9549                                              @click.outside="placementOpen = false"
9550                                              style="position: absolute; top: calc(100% + 3px); left: 0; z-index: 60; background: white; border: 0.666px solid black; border-radius: 10px; padding: 0.35rem 0; min-width: 110px; box-shadow: 0 3px 7px 0 rgba(0,0,0,0.15);"
9551                                            >
9552                                              <template x-for="pl in ['Front','Left Chest','Right Chest','Back','Sleeve','Other']" :key="pl">
9553                                                <button
9554                                                  type="button"
9555                                                  class="block w-full text-left"
9556                                                  style="padding: 0.2rem 0.65rem; font-size: 10px; line-height: 13px; color: #4b5563; cursor: pointer; background: none; border: none;"
9557                                                  @click="updateArtworkPlacement(item.key, awIdx, pl); placementOpen = false"
9558                                                  @mouseover="$el.style.background = '#f3f4f6'"
9559                                                  @mouseout="$el.style.background = 'none'"
9560                                                  x-text="pl"
9561                                                ></button>
9562                                              </template>
9563                                            </div>
9564                                          </div>
9565                                        </template>
9566                                      </div>
9567                                    </template>
9568                                  </div>
9569                                </template><template x-if="!item.artworks || item.artworks.length < 5">
9570                                  <label class="flex cursor-pointer items-center justify-center gap-2 rounded-xl border border-dashed border-gray-300 px-4 py-2.5 text-sm text-gray-600 transition hover:border-gray-400">
9571                                    <svg class="h-4 w-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
9571<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 16v2a2 2 0 002 2h12a2 2 0 002-2v-2M7 10l5-5m0 0l5 5m-5-5v12"/></svg>
9572                                    <span x-text="item.artworks && item.artworks.length > 0 ? 'Add more files' : 'Select files'"></span>
9573                                    <input
9574                                      type="file"
9575                                      class="hidden"
9576                                      multiple
9577                                      accept=".png,.jpg,.jpeg,.svg,.pdf,.ai,.eps"
9578                                      @change="handlePerProductFileUpload($event, item.key)"
9579                                    >
9580                                  </label>
9581                                </template><div style="margin-top: 0.75rem; padding-top: 0.75rem; border-top: 1px solid #e5e7eb;">
9582                                  <p class="text-xs text-gray-500">For <strong>larger files</strong>: via shared link</p>
9583                                  <input
9584                                    type="url"
9585                                    class="qr-input text-sm"
9586                                    style="margin-top: 0.5rem; font-size: 0.75rem;"
9587                                    placeholder="Link address"
9588                                    :value="item.artworkLink || ''"
9589                                    @input="$store.favorites.updateItemMeta(item.key, 'artworkLink', $event.target.value)"
9590                                  >
9591                                  <p class="mt-1 text-gray-400" style="font-size: 9px;">Eg. Google drive, Dropbox</p>
9592                                </div>
9593                              </div>
9594                            </div><div class="relative">
9595                              <button type="button" class="qr-pill" :class="{ 'qr-pill--active': openPill === item.key + '-notes' || (item.notes && item.notes.length > 0), 'qr-pill--required': item.handle === 'mystery-product' && (!item.notes || !item.notes.trim()) }" @click="openPill = openPill === item.key + '-notes' ? null : item.key + '-notes'">
9596                                <span class="qr-pill-notes-text" x-text="item.notes && item.notes.length > 0 ? 'Notes added' : 'Notes\u2026'"></span>
9597                                <template x-if="item.handle === 'mystery-product'"><span style="color: #dc2626; margin-left: 2px;">*</span></template>
9598                              </button>
9599                              <div x-show="openPill === item.key + '-notes'" x-transition class="qr-popover" style="left: auto; right: 0;">
9600                                <label class="mb-1.5 block text-xs font-medium text-gray-500">Notes</label>
9601                                <textarea
9602                                  rows="3"
9603                                  class="qr-textarea text-sm"
9604                                  :placeholder="item.handle === 'mystery-product' ? 'Include the brand, product name or SKU you require' : 'Tell us how and where you would like your artwork printed.'"
9605                                  :value="item.notes || ''"
9606                                  @input="$store.favorites.updateItemMeta(item.key, 'notes', $event.target.value)"
9607                                ></textarea>
9608                              </div>
9609                            </div>
9610                        </div>
9611                      </div>
9612                    </template>
9613                    <template x-for="shortfall in $store.favorites.moqShortfalls()" :key="shortfall.id">
9614                      <p class="mt-2 text-xs text-red-600" role="alert" x-text="shortfall.title + ' total ' + shortfall.total + ' — minimum ' + shortfall.moq"></p>
9615                    </template>
9616                  </div>
9617                </template><template x-if="!$store.chatQuote.active && $store.favorites.count === 0">
9618                  <p class="mt-3 text-sm text-gray-400">No products added yet. Browse products and add items to your quote.</p>
9619                </template>
9620              </section><section style="padding-bottom: 2rem;">
9621                <div style="border: 0.75px solid black; border-radius: 10px; padding: 0.65rem 1.25rem;">
9622                  <p style="font-size: 11px; color: black; margin-bottom: 2px;">Additional notes:</p>
9623                  <textarea
9624                    id="project-description"
9625                    x-model="formData.description"
9626                    rows="2"
9627                    placeholder="Is there anything else we might need to know about your project?"
9628                    style="width: 100%; border: none; padding: 0; background: transparent; font-size: 11.5px; color: #111827; resize: vertical; outline: none;"
9629                  ></textarea>
9630                </div>
9631              </section><section style="padding-bottom: 2rem;">
9632                <label class="text-sm" style="color: black;">Your budget</label>
9633                <div class="flex items-center justify-between" style="margin-top: 0.25rem;">
9634                  <span class="text-xs text-gray-400">$500</span>
9635                  <span style="font-size: 1.95rem; font-weight: 400; line-height: 1; color: #658a6a;" x-text="'$' + Number(formData.budget).toLocaleString()"></span>
9636                  <span class="text-xs text-gray-400">$10,000+</span>
9637                </div>
9638                <div @mousedown.stop @touchstart.stop>
9639                  <input
9640                    type="range"
9641                    x-model.number="formData.budget"
9642                    @input="formData.budget = parseInt($event.target.value, 10)"
9643                    @click.stop
9644                    min="500"
9645                    max="10000"
9646                    step="500"
9647                    class="qr-slider"
9648                    :style="'--slider-track: linear-gradient(to right, #658a6a ' + ((formData.budget - 500) / 9500 * 100) + '%, #e5e7eb ' + ((formData.budget - 500) / 9500 * 100) + '%)'"
9649                  >
9650                </div>
9651              </section><section class="grid grid-cols-1 gap-4 sm:grid-cols-2">
9652                <div>
9653                  <label for="in-hand-date" class="mb-1.5 block text-sm">The date I need my merch*</label>
9654                  <input
9655                    type="date"
9656                    id="in-hand-date"
9657                    x-model="formData.inHandDate"
9658                    required
9659                    class="qr-input text-sm"
9660                    :min="(() => { let d = new Date(), a = 0; while (a < 7) { d.setDate(d.getDate() + 1); if (d.getDay() !== 0 && d.getDay() !== 6) a++; } return d.toISOString().split('T')[0]; })()"
9661                  >
9662                </div>
9663                <div x-data="{ locationOpen: false }">
9664                  <label class="mb-1.5 block text-sm" style="color: black;">I need it sent to*</label>
9665                  <div class="relative"><select x-model="formData.location" required class="sr-only" tabindex="-1" aria-hidden="true">
9666                      <option value="">Select location</option>
9667                      <optgroup label="New Zealand">
9668                        <option value="Northland">Northland</option>
9669                        <option value="Auckland">Auckland</option>
9670                        <option value="Waikato">Waikato</option>
9671                        <option value="Bay of Plenty">Bay of Plenty</option>
9672                        <option value="Gisborne">Gisborne</option>
9673                        <option value="Hawke's Bay">Hawke's Bay</option>
9674                        <option value="Taranaki">Taranaki</option>
9675                        <option value="Manawatū-Whanganui">Manawat&#363;-Whanganui</option>
9676                        <option value="Wellington">Wellington</option>
9677                        <option value="Tasman">Tasman</option>
9678                        <option value="Nelson">Nelson</option>
9679                        <option value="Marlborough">Marlborough</option>
9680                        <option value="West Coast">West Coast</option>
9681                        <option value="Canterbury">Canterbury</option>
9682                        <option value="Otago">Otago</option>
9683                        <option value="Southland">Southland</option>
9684                      </optgroup>
9685                      <optgroup label="Australia">
9686                        <option value="New South Wales">New South Wales</option>
9687                        <option value="Victoria">Victoria</option>
9688                        <option value="Queensland">Queensland</option>
9689                        <option value="Western Australia">Western Australia</option>
9690                        <option value="South Australia">South Australia</option>
9691                        <option value="Tasmania">Tasmania</option>
9692                        <option value="Australian Capital Territory">Australian Capital Territory</option>
9693                        <option value="Northern Territory">Northern Territory</option>
9694                      </optgroup>
9695                      <option value="International">International</option>
9696                    </select><button
9697                      type="button"
9698                      @click="locationOpen = !locationOpen"
9699                      class="qr-select flex w-full items-center justify-between text-sm"
9700                      style="cursor: pointer;"
9701                    >
9702                      <span x-text="formData.location || 'Select location'" :style="formData.location ? 'color: black' : 'color: #9ca3af'"></span>
9703                      <svg class="h-4 w-4 shrink-0 transition-transform" :style="locationOpen ? 'transform: rotate(180deg)' : ''" fill="none" stroke="currentColor" viewBox="0 0 24 24" style="color: black;">
9704                        <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path>
9705                      </svg>
9706                    </button><div
9707                      x-show="locationOpen"
9708                      x-transition
9709                      @click.outside="locationOpen = false"
9710                      style="position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 50; background: white; border: 0.666px solid black; border-radius: 15.5px; max-height: 232px; overflow-y: auto; padding: 0.75rem 0;"
9711                    >
9712                      <template x-for="loc in ['Northland','Auckland','Waikato','Bay of Plenty','Gisborne','Hawke\'s Bay','Taranaki','Manawat\u016b-Whanganui','Wellington','Tasman','Nelson','Marlborough','West Coast','Canterbury','Otago','Southland','New South Wales','Victoria','Queensland','Western Australia','South Australia','Tasmania','Australian Capital Territory','Northern Territory','International']" :key="loc">
9713                        <button
9714                          type="button"
9715                          class="block w-full text-left"
9716                          style="padding: 0.25rem 1rem; font-size: 12.65px; line-height: 13.313px; color: #4b5563; cursor: pointer; background: none; border: none;"
9717                          @click="formData.location = loc; locationOpen = false"
9718                          @mouseover="$el.style.background = '#f3f4f6'"
9719                          @mouseout="$el.style.background = 'none'"
9720                          x-text="loc"
9721                        ></button>
9722                      </template>
9723                    </div>
9724                  </div>
9725                </div>
9726                <div>
9727                  <label for="contact-name" class="mb-1.5 block text-sm">Your name*</label>
9728                  <input
9729                    type="text"
9730                    id="contact-name"
9731                    x-model="formData.name"
9732                    required
9733                    placeholder="Your name here"
9734                    class="qr-input text-sm"
9735                  >
9736                </div>
9737                <div>
9738                  <label for="contact-email" class="mb-1.5 block text-sm">Email*</label>
9739                  <input
9740                    type="email"
9741                    id="contact-email"
9742                    x-model="formData.email"
9743                    required
9744                    placeholder="[email protected]"
9745                    class="qr-input text-sm"
9746                  >
9747                </div>
9748                <div>
9749                  <label for="contact-phone" class="mb-1.5 block text-sm">Phone*</label>
9750                  <input
9751                    type="tel"
9752                    id="contact-phone"
9753                    x-model="formData.phone"
9754                    required
9755                    placeholder="Your phone number"
9756                    class="qr-input text-sm"
9757                  >
9758                </div>
9759                <div>
9760                  <label for="contact-company" class="mb-1.5 block text-sm">Company</label>
9761                  <input
9762                    type="text"
9763                    id="contact-company"
9764                    x-model="formData.company"
9765                    placeholder="Your company's name"
9766                    class="qr-input text-sm"
9767                  >
9768                </div>
9769                <div x-data="{ heardAboutOpen: false }" class="sm:col-span-2"><label id="heard-about-label" class="mb-1.5 block text-sm" style="color: black;">How did you hear about us?*</label>
9770                  <div class="relative"><select x-model="formData.heardAbout" required class="sr-only" tabindex="-1" aria-hidden="true">
9771                      <option value="">Select an option</option><option value="Google search">Google search</option><option value="Social media">Social media</option><option value="Referral or word of mouth">Referral or word of mouth</option><option value="Repeat customer">Repeat customer</option><option value="Saw our work in the wild">Saw our work in the wild</option><option value="Email or newsletter">Email or newsletter</option><option value="Event or trade show">Event or trade show</option><option value="Other">Other</option><option value="Prefer not to say">Prefer not to say</option></select><button
9772                      type="button"
9773                      @click="heardAboutOpen = !heardAboutOpen"
9774                      :aria-expanded="heardAboutOpen"
9775                      aria-labelledby="heard-about-label"
9776                      class="qr-select flex w-full items-center justify-between text-sm"
9777                      style="cursor: pointer;"
9778                    >
9779                      <span x-text="formData.heardAbout || 'Select an option'" :style="formData.heardAbout ? 'color: black' : 'color: #9ca3af'"></span>
9780                      <svg class="h-4 w-4 shrink-0 transition-transform" :style="heardAboutOpen ? 'transform: rotate(180deg)' : ''" fill="none" stroke="currentColor" viewBox="0 0 24 24" style="color: black;">
9781                        <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path>
9782                      </svg>
9783                    </button><div
9784                      x-show="heardAboutOpen"
9785                      x-transition
9786                      @click.outside="heardAboutOpen = false"
9787                      style="position: absolute; top: calc(100% + 4px); left: 0; right: 0; z-index: 50; background: white; border: 0.666px solid black; border-radius: 15.5px; max-height: 232px; overflow-y: auto; padding: 0.75rem 0;"
9788                    >
9789                      <template x-for='opt in ["Google search","Social media","Referral or word of mouth","Repeat customer","Saw our work in the wild","Email or newsletter","Event or trade show","Other","Prefer not to say"]' :key="opt">
9790                        <button
9791                          type="button"
9792                          class="block w-full text-left"
9793                          style="padding: 0.25rem 1rem; font-size: 12.65px; line-height: 13.313px; color: #4b5563; cursor: pointer; background: none; border: none;"
9794                          @click="selectHeardAbout(opt); heardAboutOpen = false"
9795                          @mouseover="$el.style.background = '#f3f4f6'"
9796                          @mouseout="$el.style.background = 'none'"
9797                          x-text="opt"
9798                        ></button>
9799                      </template>
9800                    </div>
9801                  </div><p x-show="formData.heardAbout === 'Social media'" x-transition class="mt-1.5 text-xs" style="color: #6b7280;">
9802                    Instagram, Facebook, TikTok or LinkedIn
9803                  </p><div
9804                    x-show="formData.heardAbout === 'Referral or word of mouth' || formData.heardAbout === 'Other'"
9805                    x-transition
9806                    class="mt-3"
9807                  >
9808                    <label for="contact-heard-detail" class="mb-1.5 block text-sm" x-text="formData.heardAbout === 'Other' ? 'Tell us more*' : 'Who referred you? (optional)'"></label>
9809                    <input
9810                      type="text"
9811                      id="contact-heard-detail"
9812                      x-model="formData.heardAboutDetail"
9813                      :required="formData.heardAbout === 'Other'"
9814                      :placeholder="formData.heardAbout === 'Other' ? 'How you found us' : 'Their name or company'"
9815                      class="qr-input text-sm"
9816                    >
9817                  </div>
9818                </div>
9819              </section><template x-if="errorMessage">
9820                <div class="rounded-2xl px-4 py-3 text-center" style="border: 1px solid #e5e7eb; background: #FFFBEB;">
9821                  <p class="text-sm" style="color: #92400e;">
9822                    <span style="font-size: 1.25rem; vertical-align: middle; margin-right: 0.25rem;">&#128578;</span>
9823                    <span x-text="errorMessage"></span>
9824                  </p>
9825                </div>
9826              </template><button
9827                type="submit"
9828                class="qr-submit"
9829                style="margin-top: 2.5rem;"
9830                :disabled="submitting || ($store.favorites.count === 0 && !$store.chatQuote.active) || (!$store.chatQuote.active && $store.favorites.moqShortfalls().length > 0)"
9831              >
9832                <span x-show="!submitting">Submit quote request</span>
9833                <span x-show="submitting" class="flex items-center justify-center gap-2">
9834                  <svg class="h-4 w-4 animate-spin" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24">
9835                    <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle>
9836                    <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"></path>
9837                  </svg>
9838                  Sending...
9839                </span>
9840              </button>
9841            </form>
9842          </template><template x-if="successMessage">
9843            <div class="flex flex-col items-center justify-center text-center" style="padding: 3rem 1.5rem 4rem;"><img src="//printroom.co/cdn/shop/t/59/assets/success-thumbs-up.svg?v=51729750037822013731787098435" alt="Success" width="141" height="179" style="width: 141px; height: 179px;">
9844
9845              <h3 style="margin-top: 1.5rem; font-size: clamp(48px, 12vw, 80px); font-weight: 300; line-height: 1; color: black;">Success</h3>
9846
9847              <div style="margin-top: 3rem; max-width: 414px; font-size: clamp(18px, 4vw, 25px); line-height: 1.16; color: black; text-align: center;">
9848                <p style="margin: 0;">Nice! Your quote request has successfully been submitted.
9849                Our team will try and have a quote back to you within 1 working day.</p>
9850                <p style="margin: 1.5rem 0 0;">In the meantime, a confirmation email has been sent to you.</p>
9851              </div>
9852
9853              <a
9854                href="/collections/product-library"
9855                @click="$store.modals.close('quoteRequest'); successMessage = ''"
9856                class="flex items-center justify-center"
9857                style="margin-top: 2.5rem; width: min(300px, 80vw); max-width: 100%; height: 64px; border: 2.7px solid #4B4D72; border-radius: 40px; font-size: clamp(18px, 5vw, 25px); font-weight: 400; color: #4B4D72; letter-spacing: -1.24px; text-decoration: none; transition: background-color 0.2s ease, color 0.2s ease;"
9858                onmouseover="this.style.backgroundColor='#4B4D72';this.style.color='#fff'"
9859                onmouseout="this.style.backgroundColor='transparent';this.style.color='#4B4D72'"
9860              >
9861                Browse more products
9862              </a>
9863            </div>
9864          </template>
9865        </div>
9866      </div>
9867    </div>
9868  </template>
9869</data-island>
9870
9871
9872    
9873    
9874    
9875
9876    
9877    <style>
9878  .cwp-overlay {
9879    position: fixed;
9880    top: var(--header-group-height, 119px);
9881    left: 0;
9882    right: 0;
9883    bottom: 0;
9884    z-index: 999;
9885    display: flex;
9886    align-items: center;
9887    justify-content: center;
9888    backdrop-filter: blur(6px);
9889    -webkit-backdrop-filter: blur(6px);
9890    background: rgba(247, 247, 247, 0.6);
9891    opacity: 0;
9892    transition: opacity 0.3s ease;
9893  }
9894
9895  .cwp-card {
9896    position: relative;
9897    width: 100%;
9898    max-width: 598px;
9899    margin: 1rem;
9900    background: #FBFBF6;
9901    border: 1.565px solid black;
9902    border-radius: 23px;
9903    box-shadow: 0 3.5px 11.5px 1.75px rgba(0, 0, 0, 0.1);
9904    padding: 2.5rem 3rem 2.5rem;
9905    overflow: visible;
9906  }
9907
9908  .cwp-close {
9909    position: absolute;
9910    top: 1.25rem;
9911    right: 1.25rem;
9912    background: none;
9913    border: none;
9914    cursor: pointer;
9915    padding: 0.5rem;
9916    color: black;
9917  }
9918
9919  .cwp-title {
9920    font-size: 70px;
9921    font-weight: 300;
9922    line-height: 1;
9923    color: black;
9924    margin: 0 0 1.5rem;
9925  }
9926
9927  .cwp-body {
9928    font-size: 19px;
9929    line-height: 22px;
9930    color: black;
9931    margin: 0 0 1rem;
9932  }
9933
9934  .cwp-body + .cwp-body {
9935    margin-top: 1rem;
9936  }
9937
9938  .cwp-btn {
9939    display: inline-flex;
9940    align-items: center;
9941    justify-content: center;
9942    margin-top: 1.25rem;
9943    height: 37px;
9944    padding: 0 1.5rem;
9945    background: white;
9946    border: 0.722px solid black;
9947    border-radius: 29px;
9948    font-size: 21.67px;
9949    font-weight: 400;
9950    color: black;
9951    cursor: pointer;
9952    transition: background 0.2s ease;
9953  }
9954
9955  .cwp-btn:hover {
9956    background: #f0f0f0;
9957  }
9958
9959  .cwp-pointer-left {
9960    position: fixed;
9961    left: 240px;
9962    top: 50%;
9963    transform: translateY(-50%) rotate(-15deg);
9964    width: 240px;
9965    opacity: 0;
9966    transition: opacity 0.6s ease;
9967    pointer-events: none;
9968    z-index: 1000;
9969  }
9970  .cwp-pointer-left.visible {
9971    opacity: 1;
9972    animation: cwp-bob-left 1.8s ease-in-out infinite;
9973  }
9974
9975  .cwp-pointer-up {
9976    position: fixed;
9977    top: calc(var(--header-group-height, 119px) - 60px);
9978    right: 60px;
9979    width: 180px;
9980    opacity: 0;
9981    transition: opacity 0.6s ease;
9982    pointer-events: none;
9983    z-index: 1000;
9984  }
9985  .cwp-pointer-up.visible {
9986    opacity: 1;
9987    animation: cwp-bob-up 1.8s ease-in-out infinite;
9988  }
9989
9990  @keyframes cwp-bob-left {
9991    0%, 100% { transform: translateY(-50%) rotate(-15deg) translateX(0); }
9992    50% { transform: translateY(-50%) rotate(-15deg) translateX(-10px); }
9993  }
9994
9995  @keyframes cwp-bob-up {
9996    0%, 100% { transform: translateY(0); }
9997    50% { transform: translateY(-10px); }
9998  }
9999
10000  @media (max-width: 639px) {
10001    .cwp-card {
10002      padding: 2rem 1.5rem;
10003    }
10004
10005    .cwp-title {
10006      font-size: 48px;
10007    }
10008
10009    .cwp-body {
10010      font-size: 16px;
10011      line-height: 20px;
10012    }
10013
10014    .cwp-btn {
10015      font-size: 18px;
10016    }
10017
10018    .cwp-pointer-left,
10019    .cwp-pointer-up {
10020      display: none;
10021    }
10022  }
10023</style>
10024
10025    
10026    <style>
10027  /* ── "Can't find something?" scroll-triggered tab ── */
10028  .cft-container {
10029    position: fixed;
10030    right: 0;
10031    bottom: 100px;
10032    z-index: 998;
10033    display: none;
10034    font-family: 'DM Sans', sans-serif;
10035  }
10036
10037  /* ── Tab state (collapsed) ── */
10038  .cft-tab {
10039    position: relative;
10040    width: 77px;
10041    height: 96px;
10042    cursor: pointer;
10043    opacity: 0;
10044    transform: translateX(20px);
10045    transition: opacity 0.4s ease, transform 0.4s ease;
10046  }
10047
10048  .cft-tab-bg {
10049    position: absolute;
10050    inset: 0;
10051    display: flex;
10052    align-items: center;
10053    justify-content: center;
10054  }
10055
10056  .cft-tab-bg-inner {
10057    width: 96px;
10058    height: 77px;
10059    flex-shrink: 0;
10060    transform: rotate(90deg);
10061    background: var(--cant-find-bg, #EFFE9C);
10062    border-bottom: 1.03px solid black;
10063    border-left: 1.03px solid black;
10064    border-right: 1.03px solid black;
10065    border-top: none;
10066    border-radius: 0 0 16px 16px;
10067    box-shadow: -2.94px 3.13px 5.88px 0px rgba(0, 0, 0, 0.2);
10068  }
10069
10070  .cft-tab-icon {
10071    position: absolute;
10072    top: 5%;
10073    left: 10%;
10074    width: 65%;
10075    height: 50%;
10076    background-size: contain;
10077    background-repeat: no-repeat;
10078    background-position: center;
10079  }
10080
10081  .cft-tab-text {
10082    position: absolute;
10083    bottom: 13%;
10084    left: 0;
10085    right: 0;
10086    font-weight: 600;
10087    font-size: 10px;
10088    line-height: 11.3px;
10089    color: black;
10090    text-align: center;
10091  }
10092
10093  .cft-tab:hover {
10094    transform: translateX(0) scale(1.04);
10095  }
10096
10097  /* ── Card state (expanded) — ~3× original size ── */
10098  .cft-card {
10099    position: relative;
10100    width: 300px;
10101    height: 200px;
10102    opacity: 0;
10103    transform: translateX(20px);
10104    transition: opacity 0.4s ease, transform 0.4s ease;
10105    cursor: default;
10106  }
10107
10108  .cft-card-bg {
10109    position: absolute;
10110    inset: 0;
10111  }
10112
10113  .cft-card-bg-inner {
10114    width: 100%;
10115    height: 100%;
10116    background: var(--cant-find-bg, #EFFE9C);
10117    border: 0.75px solid black;
10118    border-right: none;
10119    border-radius: 20px 0 0 20px;
10120    box-shadow: -1.17px 2.34px 2.34px 0px rgba(0, 0, 0, 0.14);
10121  }
10122
10123  .cft-card-content {
10124    position: absolute;
10125    inset: 0;
10126    z-index: 1;
10127    padding: 18px 22px;
10128  }
10129
10130  .cft-card-close {
10131    position: absolute;
10132    top: 8px;
10133    right: 8px;
10134    z-index: 2;
10135    background: none;
10136    border: none;
10137    cursor: pointer;
10138    padding: 4px;
10139    color: black;
10140    opacity: 0.5;
10141    transition: opacity 0.2s;
10142    line-height: 1;
10143  }
10144
10145  .cft-card-close:hover {
10146    opacity: 1;
10147  }
10148
10149  .cft-card-title {
10150    font-weight: 500;
10151    font-size: 18px;
10152    line-height: 20px;
10153    color: black;
10154    margin: 0 0 10px;
10155  }
10156
10157  .cft-card-body {
10158    font-weight: 400;
10159    font-size: 13px;
10160    line-height: 16px;
10161    color: black;
10162    margin: 0;
10163    max-width: 180px;
10164  }
10165
10166  .cft-card-link {
10167    font-weight: 400;
10168    font-size: 22px;
10169    line-height: 24px;
10170    color: black;
10171    text-decoration: underline;
10172    cursor: pointer;
10173    background: none;
10174    border: none;
10175    padding: 0;
10176    font-family: inherit;
10177    position: absolute;
10178    bottom: 18px;
10179    left: 22px;
10180    z-index: 1;
10181  }
10182
10183  .cft-card-link:hover {
10184    opacity: 0.7;
10185  }
10186
10187  .cft-card-doodle {
10188    position: absolute;
10189    bottom: -2px;
10190    right: 2px;
10191    width: 110px;
10192    height: 65px;
10193    transform: rotate(-24.8deg);
10194    pointer-events: none;
10195    z-index: 1;
10196    background-size: contain;
10197    background-repeat: no-repeat;
10198    background-position: center;
10199  }
10200
10201  /* ── Visible states (applied by JS) ── */
10202  .cft-tab.visible,
10203  .cft-card.visible {
10204    opacity: 1;
10205    transform: translateX(0);
10206  }
10207
10208  /* ── Hide when favorites drawer is open ── */
10209  body:has([data-favorites-drawer]:not([style*="display: none"])) .cft-container {
10210    display: none !important;
10211  }
10212
10213  /* ── Mobile adjustments ── */
10214  @media (max-width: 639px) {
10215    .cft-container {
10216      bottom: 80px;
10217    }
10218
10219    .cft-tab {
10220      width: 66px;
10221      height: 82px;
10222    }
10223
10224    .cft-tab-bg-inner {
10225      width: 82px;
10226      height: 66px;
10227    }
10228
10229    .cft-tab-text {
10230      font-size: 9px;
10231      line-height: 10px;
10232    }
10233
10234    .cft-card {
10235      width: 270px;
10236      height: 180px;
10237    }
10238  }
10239</style>
10240
10241    
10242    <div id="shopify-section-ai-chatbot" class="shopify-section contents"><link href="//printroom.co/cdn/shop/t/59/assets/ai-chatbot.css?v=112900874753543053291788472410" rel="stylesheet" type="text/css" media="all" />
10243<data-island
10244    x-data="
10245      AIChatbot({
10246        apiEndpoint: &quot;https:\/\/print-room-chatbot-api.vercel.app\/&quot;,
10247        questionsApiUrl: &quot;https:\/\/print-room-chatbot-api.vercel.app\/&quot;,
10248        welcomeMessage: &quot;Hi! I&#39;m here to help you with your printing needs. How can I assist you today?&quot;,
10249        unavailableMessage: &quot;Chat is temporarily unavailable. Please request a quote or contact us directly.&quot;,
10250        suggestedPrompts: []
10251      })
10252    "
10253    src="ai-chatbot"
10254    on="idle"
10255    id="ai-chatbot-ai-chatbot"
10256    class="ai-chatbot"
10257    data-color-scheme="scheme1"
10258  ><button
10259      @click="toggle()"
10260      class="ai-chatbot__trigger"
10261      :class="{ 'ai-chatbot__trigger--hidden': isOpen }"
10262      aria-label="Chat with us"
10263      type="button"
10264    >
10265      <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10266        <path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path>
10267      </svg>
10268      <span>Chat with us</span>
10269    </button><template x-teleport="body">
10270      <div
10271        x-show="isOpen"
10272        x-transition:enter="ai-chatbot-enter"
10273        x-transition:enter-start="ai-chatbot-enter"
10274        x-transition:enter-end="ai-chatbot-enter-active"
10275        x-transition:leave="ai-chatbot-leave"
10276        x-transition:leave-start="ai-chatbot-leave"
10277        x-transition:leave-end="ai-chatbot-leave-active"
10278        class="ai-chatbot__window"
10279        :class="{ 'ai-chatbot__window--minimized': isMinimized }"
10280        data-color-scheme="scheme1"
10281        role="dialog"
10282        aria-label="Chat with us"
10283        @keydown.escape="close()"
10284      ><div class="ai-chatbot__header">
10285          <div class="ai-chatbot__header-title">
10286            <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10287              <polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon>
10288            </svg>
10289            <span>Chat with us</span>
10290          </div>
10291          <div class="ai-chatbot__header-actions">
10292            <button
10293              x-show="messages.length > 0 && !isMinimized"
10294              @click="clearHistory()"
10295              class="ai-chatbot__header-btn"
10296              type="button"
10297              :disabled="isLoading"
10298              aria-label="Clear history"
10299            >
10300              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10301                <polyline points="3 6 5 6 21 6"></polyline>
10302                <path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path>
10303              </svg>
10304            </button>
10305            <button
10306              @click="minimize()"
10307              class="ai-chatbot__header-btn"
10308              type="button"
10309              :aria-label="isMinimized ? 'Expand' : 'Minimize'"
10310            >
10311              <template x-if="isMinimized">
10312                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10313                  <polyline points="15 3 21 3 21 9"></polyline>
10314                  <polyline points="9 21 3 21 3 15"></polyline>
10315                  <line x1="21" y1="3" x2="14" y2="10"></line>
10316                  <line x1="3" y1="21" x2="10" y2="14"></line>
10317                </svg>
10318              </template>
10319              <template x-if="!isMinimized">
10320                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10321                  <polyline points="4 14 10 14 10 20"></polyline>
10322                  <polyline points="20 10 14 10 14 4"></polyline>
10323                  <line x1="14" y1="10" x2="21" y2="3"></line>
10324                  <line x1="3" y1="21" x2="10" y2="14"></line>
10325                </svg>
10326              </template>
10327            </button>
10328            <button
10329              @click="close()"
10330              class="ai-chatbot__header-btn"
10331              type="button"
10332              aria-label="Close"
10333            >
10334              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10335                <line x1="18" y1="6" x2="6" y2="18"></line>
10336                <line x1="6" y1="6" x2="18" y2="18"></line>
10337              </svg>
10338            </button>
10339          </div>
10340        </div><div class="ai-chatbot__body" x-show="!isMinimized"><div class="ai-chatbot__messages" x-ref="messagesContainer"><template x-if="messages.length === 0">
10341              <div class="ai-chatbot__welcome">
10342                <svg class="ai-chatbot__welcome-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10343                  <path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path>
10344                </svg>
10345                <p class="ai-chatbot__welcome-text" x-text="welcomeMessage"></p>
10346                <p class="ai-chatbot__welcome-subtext">Ask me anything about our products and services.</p>
10347              </div>
10348            </template><template x-for="(message, index) in messages" :key="message.id">
10349              <div
10350                class="ai-chatbot__message-row"
10351                :class="'ai-chatbot__message-row--' + message.role"
10352              ><template x-if="message.role === 'system'">
10353                  <div class="ai-chatbot__message-content ai-chatbot__message-content--system" x-text="message.content"></div>
10354                </template><template x-if="message.role !== 'system'">
10355                  <div class="ai-chatbot__message-stack"><template x-if="message.role === 'staff'">
10356                      <div class="ai-chatbot__staff-meta">
10357                        <span class="ai-chatbot__staff-avatar" x-text="message.initials"></span>
10358                        <span class="ai-chatbot__staff-name" x-text="message.senderName"></span>
10359                        <span
10360                          class="ai-chatbot__staff-time"
10361                          x-show="message.timestamp"
10362                          x-text="message.timestamp ? new Date(message.timestamp).toLocaleTimeString([], { hour: 'numeric', minute: '2-digit' }) : ''"
10363                        ></span>
10364                      </div>
10365                    </template>
10366
10367                    <div
10368                      class="ai-chatbot__message-bubble"
10369                      :class="'ai-chatbot__message-bubble--' + message.role"
10370                    ><div class="ai-chatbot__message-content"><span x-text="message.content"></span><span x-show="message.isStreaming && message.content" class="ai-chatbot__cursor"></span></div><template x-if="message.role === 'assistant' && message.options && message.options.choices.length > 0">
10371                        <div class="ai-chatbot__options" :class="{ 'ai-chatbot__options--submitted': message.optionsSubmitted }">
10372                          <p class="ai-chatbot__options-prompt" x-show="message.options.prompt" x-text="message.options.prompt"></p>
10373                          <div class="ai-chatbot__options-list">
10374                            <template x-for="(choice, ci) in message.options.choices" :key="choice.value">
10375                              <button
10376                                @click="selectOption(index, choice.value)"
10377                                class="ai-chatbot__option-chip"
10378                                :class="{
10379                                  'ai-chatbot__option-chip--selected': message.selectedOptions.includes(choice.value),
10380                                  'ai-chatbot__option-chip--disabled': message.optionsSubmitted
10381                                }"
10382                                :disabled="message.optionsSubmitted"
10383                                type="button"
10384                                x-text="choice.label"
10385                              ></button>
10386                            </template>
10387                          </div>
10388                          <button
10389                            x-show="message.options.multiSelect && !message.optionsSubmitted && message.selectedOptions.length > 0"
10390                            @click="submitOptions(index)"
10391                            class="ai-chatbot__options-submit"
10392                            type="button"
10393                          >
10394                            Continue
10395                          </button>
10396                        </div>
10397                      </template>
10398                    </div>
10399                  </div>
10400                </template>
10401              </div>
10402            </template><template x-if="isLoading && messages.length > 0 && !messages[messages.length - 1].content">
10403              <div class="ai-chatbot__message-row ai-chatbot__message-row--assistant">
10404                <div class="ai-chatbot__message-stack">
10405                  <div class="ai-chatbot__message-bubble ai-chatbot__message-bubble--assistant ai-chatbot__message-bubble--typing">
10406                    <div class="ai-chatbot__typing" aria-label="Assistant is typing">
10407                      <span></span>
10408                      <span></span>
10409                      <span></span>
10410                    </div>
10411                  </div>
10412                </div>
10413              </div>
10414            </template>
10415          </div><div x-show="error" class="ai-chatbot__error">
10416            <svg class="ai-chatbot__error-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10417              <circle cx="12" cy="12" r="10"></circle>
10418              <line x1="12" y1="8" x2="12" y2="12"></line>
10419              <line x1="12" y1="16" x2="12.01" y2="16"></line>
10420            </svg>
10421            <div class="ai-chatbot__error-content">
10422              <p class="ai-chatbot__error-text" x-text="error"></p>
10423              <div class="ai-chatbot__error-actions">
10424                <button @click="openQuoteRequest()" class="ai-chatbot__error-action" type="button">
10425                  Request a quote
10426                </button>
10427                <a href="/pages/contact-us" class="ai-chatbot__error-action">
10428                  Contact us
10429                </a>
10430              </div>
10431              <button @click="clearError()" class="ai-chatbot__error-dismiss" type="button">
10432                Dismiss
10433              </button>
10434            </div>
10435          </div><div x-show="messages.length === 0 && (getActivePrompts().length > 0 || questionsLoading)" class="ai-chatbot__prompts">
10436            <p class="ai-chatbot__prompts-label">Try asking:</p><template x-if="questionsLoading && getActivePrompts().length === 0">
10437              <div class="ai-chatbot__prompts-loading">
10438                <span class="ai-chatbot__prompt-skeleton"></span>
10439                <span class="ai-chatbot__prompt-skeleton"></span>
10440                <span class="ai-chatbot__prompt-skeleton"></span>
10441              </div>
10442            </template><template x-for="(prompt, index) in getActivePrompts()" :key="index">
10443              <button
10444                @click="useSuggestedPrompt(prompt)"
10445                class="ai-chatbot__prompt-btn"
10446                type="button"
10447                x-text="prompt"
10448              ></button>
10449            </template>
10450          </div><div x-show="ctaButton && ctaButton.show" x-cloak class="ai-chatbot__cta">
10451            <button
10452              @click="handleCTAClick()"
10453              class="ai-chatbot__cta-btn"
10454              type="button"
10455              x-text="ctaButton?.text || 'Request a Quote'"
10456            ></button>
10457            <button
10458              @click="dismissCTA()"
10459              class="ai-chatbot__cta-dismiss"
10460              type="button"
10461              aria-label="Dismiss"
10462            >
10463              <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10464                <line x1="18" y1="6" x2="6" y2="18"></line>
10465                <line x1="6" y1="6" x2="18" y2="18"></line>
10466              </svg>
10467            </button>
10468          </div><div x-show="conversationStatus === 'resolved'" x-cloak class="ai-chatbot__resolved-banner">
10469            Chat ended — send a message to start again.
10470          </div><div x-show="showContactAsk" x-cloak class="ai-chatbot__contact-ask">
10471            <p class="ai-chatbot__contact-ask-prompt" x-show="contactAskMode === 'email_chip'">Leave your email in case you step away.</p>
10472            <p class="ai-chatbot__contact-ask-prompt" x-show="contactAskMode === 'progressive'">Mind sharing your name and email so we can follow up?</p>
10473            <form @submit.prevent="submitContact()" class="ai-chatbot__contact-ask-form">
10474              <input
10475                x-show="contactAskMode !== 'email_chip' && !contactName"
10476                x-model="contactNameInput"
10477                type="text"
10478                class="ai-chatbot__contact-ask-input"
10479                placeholder="Your name"
10480                :disabled="contactSubmitting"
10481              >
10482              <input
10483                x-show="!contactEmail"
10484                x-model="contactEmailInput"
10485                type="email"
10486                class="ai-chatbot__contact-ask-input"
10487                placeholder="Your email"
10488                :disabled="contactSubmitting"
10489              >
10490              <button
10491                type="submit"
10492                class="ai-chatbot__contact-ask-submit"
10493                :disabled="contactSubmitting"
10494              >
10495                Send
10496              </button>
10497              <button
10498                type="button"
10499                @click="dismissContactAsk()"
10500                class="ai-chatbot__contact-ask-dismiss"
10501                aria-label="Dismiss"
10502              >
10503                <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10504                  <line x1="18" y1="6" x2="6" y2="18"></line>
10505                  <line x1="6" y1="6" x2="18" y2="18"></line>
10506                </svg>
10507              </button>
10508            </form>
10509          </div><div class="ai-chatbot__input-area">
10510            <form @submit.prevent="sendMessage()" class="ai-chatbot__input-form">
10511              <textarea
10512                x-ref="chatInput"
10513                x-model="inputText"
10514                @keydown="handleKeyDown($event)"
10515                class="ai-chatbot__input"
10516                placeholder="Type your message..."
10517                rows="1"
10518                :disabled="isLoading"
10519              ></textarea>
10520              <button
10521                type="submit"
10522                class="ai-chatbot__send-btn"
10523                :disabled="isLoading || !inputText.trim()"
10524                aria-label="Send"
10525              >
10526                <template x-if="isLoading">
10527                  <svg class="ai-chatbot__spinner" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10528                    <line x1="12" y1="2" x2="12" y2="6"></line>
10529                    <line x1="12" y1="18" x2="12" y2="22"></line>
10530                    <line x1="4.93" y1="4.93" x2="7.76" y2="7.76"></line>
10531                    <line x1="16.24" y1="16.24" x2="19.07" y2="19.07"></line>
10532                    <line x1="2" y1="12" x2="6" y2="12"></line>
10533                    <line x1="18" y1="12" x2="22" y2="12"></line>
10534                    <line x1="4.93" y1="19.07" x2="7.76" y2="16.24"></line>
10535                    <line x1="16.24" y1="7.76" x2="19.07" y2="4.93"></line>
10536                  </svg>
10537                </template>
10538                <template x-if="!isLoading">
10539                  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
10540                    <line x1="22" y1="2" x2="11" y2="13"></line>
10541                    <polygon points="22 2 15 22 11 13 2 9 22 2"></polygon>
10542                  </svg>
10543                </template>
10544              </button>
10545            </form><p
10546              class="ai-chatbot__disclaimer"
10547              x-show="conversationStatus === null || conversationStatus === 'bot'"
10548            >
10549              Responses are generated by AI and may be inaccurate.
10550            </p>
10551          </div>
10552        </div>
10553      </div>
10554    </template>
10555  </data-island>
10556</div>
10557
10558    
10559    <section id="shopify-section-branding-service-cards" class="shopify-section branding-service-cards-section"><style data-shopify>
10560  .branding-floating-overlay {
10561    position: fixed;
10562    inset: 0;
10563    z-index: 9999;
10564    background: rgba(0, 0, 0, 0.5);
10565    opacity: 0;
10566    transition: opacity 300ms ease;
10567    pointer-events: none;
10568  }
10569
10570  .branding-floating-overlay.active {
10571    opacity: 1;
10572    pointer-events: auto;
10573  }
10574
10575  /* Floating card - matches carousel expanded card styling */
10576  .branding-floating-card {
10577    position: fixed;
10578    z-index: 10000;
10579    background: rgb(var(--color-scheme-background, 255 255 255));
10580    border-radius: 16px;
10581    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.4);
10582    display: none;
10583    flex-direction: column;
10584    max-height: 85vh;
10585    overflow: hidden;
10586    /* No default top/left/bottom - JS controls position */
10587  }
10588
10589  /* Close button - matches carousel style */
10590  .branding-floating-card .branding-pill-close {
10591    position: absolute;
10592    top: 12px;
10593    right: 12px;
10594    z-index: 10;
10595    width: 32px;
10596    height: 32px;
10597    border-radius: 50%;
10598    background: rgba(255, 255, 255, 0.9);
10599    border: none;
10600    cursor: pointer;
10601    display: flex;
10602    align-items: center;
10603    justify-content: center;
10604    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
10605    transition: background 200ms ease;
10606  }
10607
10608  .branding-floating-card .branding-pill-close:hover {
10609    background: rgba(255, 255, 255, 1);
10610  }
10611
10612  .branding-floating-card .branding-pill-close svg {
10613    width: 16px;
10614    height: 16px;
10615    stroke: #333;
10616  }
10617
10618  /* Image link - matches carousel style */
10619  .branding-floating-card .branding-pill-image-link {
10620    display: block;
10621    flex-shrink: 0;
10622    background: rgba(var(--color-scheme-text, 0 0 0), 0.05);
10623    min-height: 200px;
10624  }
10625
10626  .branding-floating-card .branding-pill-image-link.has-image {
10627    min-height: 0;
10628  }
10629
10630  .branding-floating-card .branding-pill-image {
10631    border-radius: 16px 16px 0 0;
10632    width: 100%;
10633    height: auto;
10634    max-height: 280px;
10635    object-fit: cover;
10636    display: block;
10637  }
10638
10639  .branding-floating-card .branding-pill-image:not([src]),
10640  .branding-floating-card .branding-pill-image[src=""] {
10641    display: none;
10642  }
10643
10644  /* Label button overlay - matches carousel style */
10645  .branding-floating-card .branding-pill-label {
10646    display: none; /* Hidden in expanded state like carousel */
10647  }
10648
10649  /* Expanded content - matches carousel style */
10650  .branding-floating-card .branding-pill-content {
10651    padding: 20px;
10652    flex-shrink: 0;
10653  }
10654
10655  .branding-floating-card .branding-expanded-title {
10656    margin: 0 0 12px 0;
10657    font-size: 1.25rem;
10658    font-weight: 600;
10659    color: black;
10660
10661  }
10662
10663  .branding-floating-card .branding-expanded-loading {
10664    display: flex;
10665    align-items: center;
10666    justify-content: center;
10667    padding: 20px;
10668  }
10669
10670  .branding-floating-card .branding-expanded-spinner {
10671    width: 24px;
10672    height: 24px;
10673    border: 2px solid rgba(var(--color-scheme-text, 0 0 0), 0.1);
10674    border-top-color: rgb(var(--color-scheme-text, 0 0 0));
10675    border-radius: 50%;
10676    animation: branding-pill-spin 0.8s linear infinite;
10677  }
10678
10679  @keyframes branding-pill-spin {
10680    to { transform: rotate(360deg); }
10681  }
10682
10683  .branding-floating-card .branding-expanded-description {
10684    margin-bottom: 16px;
10685    line-height: 1.6;
10686    color: black;
10687  }
10688
10689  .branding-floating-card .branding-expanded-description p {
10690    margin: 0;
10691  }
10692
10693  .branding-floating-card .branding-expanded-description p + p {
10694    margin-top: 0.75em;
10695  }
10696
10697  @media (max-width: 749px) {
10698    .branding-floating-card {
10699      width: calc(100vw - 48px) !important;
10700      left: 24px !important;
10701      max-width: none !important;
10702    }
10703  }
10704</style>
10705
10706<!-- Overlay backdrop -->
10707<div
10708  id="branding-floating-overlay"
10709  class="branding-floating-overlay"
10710  onclick="window.closeBrandingServiceCard()"
10711></div>
10712
10713<!-- Floating card - HTML structure matches carousel expanded cards -->
10714<div
10715  id="branding-floating-card"
10716  class="branding-floating-card color-scheme5"
10717>
10718  <!-- Close button (top right over image) -->
10719  <button type="button" class="branding-pill-close" onclick="window.closeBrandingServiceCard()">
10720    <span class="sr-only">Close</span>
10721    <svg fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2">
10722      <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
10723    </svg>
10724  </button>
10725
10726  <!-- Image with link -->
10727  <a id="branding-card-image-link" href="#" class="branding-pill-image-link">
10728    <img
10729      id="branding-card-image"
10730      class="branding-pill-image"
10731      src=""
10732      alt=""
10733      loading="lazy"
10734      width="300"
10735      height="300"
10736    >
10737  </a>
10738
10739  <!-- Label button (hidden in expanded state, like carousel) -->
10740  <a id="branding-card-label" href="#" class="branding-pill-label"></a>
10741
10742  <!-- Expanded content -->
10743  <div class="branding-pill-content">
10744    <h3 id="branding-card-title" class="branding-expanded-title"></h3>
10745    <div id="branding-card-loading" class="branding-expanded-loading" style="display: none;">
10746      <div class="branding-expanded-spinner"></div>
10747    </div>
10748    <div id="branding-card-description" class="branding-expanded-description"></div>
10749  </div>
10750</div>
10751
10752<script>
10753(function() {
10754  // Build service data from Shopify blocks
10755  // Key is the lowercase metafield value (e.g., "screen print", "custom neck tags")
10756  const brandingServiceData = {
10757    
10758      'high density transfer': {
10759        title: "High density transfer",
10760        description: "\u003cp\u003eA high density transfer is a heat-applied decoration that creates a raised, textured print using layered ink, producing a bold, dimensional effect with sharp edges and strong durability on garments.\u003c\/p\u003e",
10761        image: '//printroom.co/cdn/shop/files/heat_transfer_2_1b6dd18d-7ae5-452a-a0ca-fef697ba6400.jpg?v=1761181341&width=800',
10762        imageAlt: "High density transfer",
10763        ctaText: "Learn more",
10764        ctaUrl: '#'
10765      },
10766    
10767      'printed seam tape': {
10768        title: "printed seam tape",
10769        description: "\u003cp\u003eAdd a custom touch to the inside of your cap with printed seam tape. This often-overlooked detail offers a unique way to showcase your brand, giving your caps a polished finish that stands out from the inside out. Fully customisable, it’s a small touch that makes a big impression.\u003c\/p\u003e",
10770        image: '//printroom.co/cdn/shop/files/speights_cap_inner_3.jpg?v=1743540305&width=800',
10771        imageAlt: "custom caps NZ",
10772        ctaText: "Learn more",
10773        ctaUrl: '#'
10774      },
10775    
10776      'knitted all-over': {
10777        title: "Knitted all-over",
10778        description: "\u003cp\u003eKnitted all-over designs weave patterns directly into the fabric of your custom socks, creating a seamless, durable look that won’t fade over time. Ideal for intricate, full-length designs with lasting quality.\u003c\/p\u003e",
10779        image: '//printroom.co/cdn/shop/files/knitted_all_over_detail.jpg?v=1772668725&width=800',
10780        imageAlt: "Knitted all-over",
10781        ctaText: "Learn more",
10782        ctaUrl: '#'
10783      },
10784    
10785      'dye-sublimation': {
10786        title: "Dye-sublimation",
10787        description: "\u003cp\u003eDye-sublimation allows vibrant, full-colour designs to be seamlessly printed on your custom socks. The process ensures high-quality, durable prints that won’t fade, perfect for intricate patterns or all-over designs.\u003c\/p\u003e",
10788        image: '//printroom.co/cdn/shop/files/dye_sub_detail.jpg?v=1772673144&width=800',
10789        imageAlt: "Dye-sublimation",
10790        ctaText: "Learn more",
10791        ctaUrl: '#'
10792      },
10793    
10794      'additional cushioning': {
10795        title: "Additional cushioning",
10796        description: "\u003cp\u003eAdd extra cushioning to your custom socks for improved comfort and support. The soft padding underfoot reduces impact, perfect for all-day wear or active use.\u003c\/p\u003e",
10797        image: '//printroom.co/cdn/shop/files/cushion_detail.jpg?v=1772673175&width=800',
10798        imageAlt: "Additional cushioning",
10799        ctaText: "Learn more",
10800        ctaUrl: '#'
10801      },
10802    
10803      'added grip': {
10804        title: "Added grip",
10805        description: "\u003cp\u003eEnhance your custom socks with added grip to prevent slipping! The textured grip on the sole ensures better traction, or adds an extra dimension to your custom product.\u003c\/p\u003e",
10806        image: '//printroom.co/cdn/shop/files/added_grip_detail.jpg?v=1772675209&width=800',
10807        imageAlt: "Added grip",
10808        ctaText: "Learn more",
10809        ctaUrl: '#'
10810      },
10811    
10812      'custom neck tags': {
10813        title: "Custom neck tags",
10814        description: "\u003cp\u003eMake your brand stand out with custom neck tags! Whether you choose woven labels or screen printing, our high-quality neck tags offer a professional finish and are ideal for showcasing your unique brand identity.\u003c\/p\u003e",
10815        image: '//printroom.co/cdn/shop/files/cardrona_4_2_936c38b5-e634-4f0f-b224-0c9ed7b76ed9.jpg?v=1648584454&width=800',
10816        imageAlt: "garment relabelling and custom neck tags christchurch",
10817        ctaText: "Learn more",
10818        ctaUrl: '#'
10819      },
10820    
10821      'screen print': {
10822        title: "Screen Printing",
10823        description: "\u003cp\u003eOur most popular print method for good reason—it delivers \u003cstrong\u003etop-tier qual
10823ity\u003c\/strong\u003e, long-lasting results, and exceptional value for larger orders.\u003c\/p\u003e",
10824        image: '//printroom.co/cdn/shop/files/PrintRoomMay2024Image-16.jpg?v=1733350366&width=800',
10825        imageAlt: "Screen Printing",
10826        ctaText: "Learn more",
10827        ctaUrl: '#'
10828      },
10829    
10830      'embroidery': {
10831        title: "Embroidery",
10832        description: "\u003cp\u003eUnmatched in durability, embroidery is a simple choice for those wanting texture, dimension and a high-end finish.\u003c\/p\u003e",
10833        image: '//printroom.co/cdn/shop/files/The_print_room_custom_embroidery_new_zealand.jpg?v=1613753361&width=800',
10834        imageAlt: "Embroidery",
10835        ctaText: "Learn more",
10836        ctaUrl: '#'
10837      },
10838    
10839      'heat transfer': {
10840        title: "Heat Transfers",
10841        description: "\u003cp\u003ePerfect for producing vibrant, detail-rich prints that require low minimums.\u003c\/p\u003e",
10842        image: '//printroom.co/cdn/shop/files/heat_press_print_room.jpg?v=1776795804&width=800',
10843        imageAlt: "Heat Transfers",
10844        ctaText: "Learn more",
10845        ctaUrl: '/pages/heat-transfers'
10846      },
10847    
10848      'custom patches': {
10849        title: "Custom Patches",
10850        description: "\u003cp\u003eDurable and versatile, add dimension to your merch with embroidered, woven or iron-on custom patches.\u003c\/p\u003e",
10851        image: '//printroom.co/cdn/shop/files/PrintRoomApril2024Image-42_28acbdcf-7baf-4834-9201-752d656019ad.jpg?v=1754535298&width=800',
10852        imageAlt: "custom patches NZ",
10853        ctaText: "Learn more",
10854        ctaUrl: '#'
10855      },
10856    
10857      'custom packaging': {
10858        title: "Custom packaging",
10859        description: "\u003cp\u003eThe ultimate finishing touch; custom packaging. It’s the first thing your customer sees, make the best impression possible and package your products inline with your brand.\u003c\/p\u003e",
10860        image: '//printroom.co/cdn/shop/files/socks_label.jpg?v=1743476398&width=800',
10861        imageAlt: "custom socks",
10862        ctaText: "Learn more",
10863        ctaUrl: '#'
10864      },
10865    
10866      'custom woven label': {
10867        title: "Custom woven label",
10868        description: "\u003cp\u003eGive all of the details you need while putting the finishing touches on your product.\u003c\/p\u003e",
10869        image: '//printroom.co/cdn/shop/files/garage_project_cap_4.1.jpg?v=1770086525&width=800',
10870        imageAlt: "Custom woven label",
10871        ctaText: "Learn more",
10872        ctaUrl: '#'
10873      },
10874    
10875      'pip tags': {
10876        title: "Pip tags",
10877        description: "\u003cp\u003eElevate your garments with custom pip tags. Perfect for adding subtle branding, a small detail with a big impact for your apparel collection.\u003c\/p\u003e",
10878        image: '//printroom.co/cdn/shop/files/cardrona_3_19a3035b-75a5-4fd0-9604-01d159cdc102.jpg?v=1648585469&width=800',
10879        imageAlt: "garment relabelling and custom neck tags nz",
10880        ctaText: "Learn more",
10881        ctaUrl: '#'
10882      },
10883    
10884      'additional print placements': {
10885        title: "Additional print placements",
10886        description: "\u003cp\u003eAdd extra visibility to your brand by adding additional prints\/decorations. Back of the cap, sleeve of your sweatshirt; you name it, we can most likely do it. Make the most of your products' full 360 degrees.\u003c\/p\u003e",
10887        image: '//printroom.co/cdn/shop/files/garage_project_cap_3.1.jpg?v=1770083144&width=800',
10888        imageAlt: "Additional print placements",
10889        ctaText: "Learn more",
10890        ctaUrl: '#'
10891      },
10892    
10893      'various attachments available': {
10894        title: "Various attachments available",
10895        description: "\u003cp\u003eMake the most of customisation and choose the attachment style that works for your project. Robust, intricate, elegant…your choice.\u003c\/p\u003e",
10896        image: '//printroom.co/cdn/shop/files/pack-a-punch.jpg?v=1760925265&width=800',
10897        imageAlt: "Various attachments available",
10898        ctaText: "Learn more",
10899        ctaUrl: '#'
10900      },
10901    
10902      'add additional colours': {
10903        title: "Add additional colours",
10904        description: "\u003cp\u003eCreate more depth and complexity when your brand needs it. Specific limitations apply to each product. Consult your account manager for specific limitations.\u003c\/p\u003e",
10905        image: '//printroom.co/cdn/shop/files/ombre.jpg?v=1770253000&width=800',
10906        imageAlt: "Add additional colours",
10907        ctaText: "Learn more",
10908        ctaUrl: '#'
10909      },
10910    
10911      'various closures available': {
10912        title: "Various closures available",
10913        description: "\u003cp\u003eAchieve the result you want with control over what closure you go with.\u003c\/p\u003e",
10914        image: '//printroom.co/cdn/shop/files/closure_options_2.1_76d53ef9-c502-45b4-b915-66543d3c7f40.jpg?v=1769654951&width=800',
10915        imageAlt: "Various closures available",
10916        ctaText: "Learn more",
10917        ctaUrl: '#'
10918      },
10919    
10920      'glow in the dark': {
10921        title: "Glow in the dark",
10922        description: "\u003cp\u003eBe seen…in the dark! Add a novel element to your product and have some fun with it.\u003c\/p\u003e",
10923        image: '//printroom.co/cdn/shop/files/glow_in_the_dark.jpg?v=1770253668&width=800',
10924        imageAlt: "Glow in the dark",
10925        ctaText: "Learn more",
10926        ctaUrl: '#'
10927      },
10928    
10929      'applique': {
10930        title: "Applique",
10931        description: "\u003cp\u003eAppliqué embroidery isa technique where small pieces of fabric are laser cut and layered and stitched onto a garment, adding texture to the design.\u003c\/p\u003e",
10932        image: '//printroom.co/cdn/shop/files/Screenshot-2026-04-22-at-6.18.38_AM.jpg?v=1776795959&width=800',
10933        imageAlt: "Applique",
10934        ctaText: "Learn more",
10935        ctaUrl: '#'
10936      },
10937    
10938      'spreadsheet': {
10939        title: "Spreadsheet",
10940        description: "\u003cp\u003eWe send you a formatted spreadsheet that can be shared around your year group for each student to input the
10940ir garment style, size and custom name. \u003c\/p\u003e",
10941        image: null,
10942        imageAlt: "Spreadsheet",
10943        ctaText: "Learn more",
10944        ctaUrl: '#'
10945      },
10946    
10947      'online portal': {
10948        title: "Online portal",
10949        description: "\u003cp\u003eWe setup an password portected online portal for your year group to log into and purchased or order their garments. \u003c\/p\u003e",
10950        image: '//printroom.co/cdn/shop/files/product_1db770e9-3325-4bd4-8636-6f4b6d5e566a_slot_5.jpg?v=1776753322&width=800',
10951        imageAlt: "Earth Positive Premium Jersey T-shirt EP185 T-shirt branded merchandise nz",
10952        ctaText: "Click",
10953        ctaUrl: '#'
10954      }
10955    
10956  };
10957
10958  // Also build hyphenated keys for matching
10959  const brandingServiceDataNormalized = {};
10960  Object.keys(brandingServiceData).forEach(key => {
10961    // Store with original key
10962    brandingServiceDataNormalized[key] = brandingServiceData[key];
10963    // Also store with hyphenated version
10964    const hyphenated = key.replace(/\s+/g, '-');
10965    brandingServiceDataNormalized[hyphenated] = brandingServiceData[key];
10966    // Also store with spaced version (in case key was hyphenated)
10967    const spaced = key.replace(/-/g, ' ');
10968    brandingServiceDataNormalized[spaced] = brandingServiceData[key];
10969  });
10970
10971  // Configuration from section settings
10972  const config = {
10973    maxWidth: 400,
10974    animationDuration: 300,
10975    showOverlay: false
10976  };
10977
10978  // State
10979  let isCardOpen = false;
10980  let originRect = null;
10981
10982  // DOM elements
10983  const overlay = document.getElementById('branding-floating-overlay');
10984  const card = document.getElementById('branding-floating-card');
10985  const cardImageLink = document.getElementById('branding-card-image-link');
10986  const cardImage = document.getElementById('branding-card-image');
10987  const cardLabel = document.getElementById('branding-card-label');
10988  const cardTitle = document.getElementById('branding-card-title');
10989  const cardLoading = document.getElementById('branding-card-loading');
10990  const cardDescription = document.getElementById('branding-card-description');
10991
10992  // Find service data by matching the label text
10993  function findServiceData(label) {
10994    if (!label) return null;
10995    const searchKey = label.toLowerCase().trim();
10996    const searchKeyHyphenated = searchKey.replace(/\s+/g, '-');
10997    
10998    // Direct match
10999    if (brandingServiceDataNormalized[searchKey]) {
11000      return brandingServiceDataNormalized[searchKey];
11001    }
11002    
11003    // Try hyphenated version
11004    if (brandingServiceDataNormalized[searchKeyHyphenated]) {
11005      return brandingServiceDataNormalized[searchKeyHyphenated];
11006    }
11007    
11008    // Partial match - check if any key is contained in the label or vice versa
11009    for (const key of Object.keys(brandingServiceDataNormalized)) {
11010      if (searchKey.includes(key) || key.includes(searchKey)) {
11011        return brandingServiceDataNormalized[key];
11012      }
11013    }
11014    
11015    return null;
11016  }
11017
11018  // Populate card content
11019  function populateCard(data, serviceUrl) {
11020    const url = data.ctaUrl || serviceUrl || '#';
11021
11022    // Set image
11023    if (data.image) {
11024      cardImage.src = data.image;
11025      cardImage.alt = data.imageAlt || data.title || '';
11026      cardImageLink.classList.add('has-image');
11027    } else {
11028      cardImage.src = '';
11029      cardImage.alt = '';
11030      cardImageLink.classList.remove('has-image');
11031    }
11032
11033    // Set links
11034    cardImageLink.href = url;
11035    cardLabel.href = url;
11036    cardLabel.textContent = data.title || '';
11037
11038    // Set content
11039    cardTitle.textContent = data.title || '';
11040
11041    // Handle description - if we have static content use it, otherwise fetch
11042    if (data.description && data.description.trim() !== '' && data.description !== '<p>Add a description of this branding service.</p>') {
11043      cardDescription.innerHTML = data.description;
11044      cardLoading.style.display = 'none';
11045    } else {
11046      // Fetch description from service page
11047      cardDescription.innerHTML = '';
11048      cardLoading.style.display = 'flex';
11049
11050      if (url && url !== '#') {
11051        fetch(url)
11052          .then(response => response.text())
11053          .then(html => {
11054            const parser = new DOMParser();
11055            const doc = parser.parseFromString(html, 'text/html');
11056            const main = doc.querySelector('main') || doc.querySelector('.page-content') || doc.querySelector('.shopify-section') || doc.body;
11057            let description = '<p>Discover our premium branding service.</p>';
11058            if (main) {
11059              const firstP = main.querySelector('p');
11060              if (firstP) description = '<p>' + firstP.textContent.trim() + '</p>';
11061            }
11062            cardDescription.innerHTML = description;
11063            cardLoading.style.display = 'none';
11064          })
11065          .catch(() => {
11066            cardDescription.innerHTML = '<p>Discover our premium branding service.</p>';
11067            cardLoading.style.display = 'none';
11068          });
11069      } else {
11070        cardDescription.innerHTML = '<p>Discover our premium branding service.</p>';
11071        cardLoading.style.display = 'none';
11072      }
11073    }
11074  }
11075
11076  // Show card with animation from button position
11077  function showCardWithData(data, buttonElement, serviceUrl) {
11078    if (!data) {
11079      console.warn('No service data provided');
11080      return;
11081    }
11082
11083    // Get button position for animation origin
11084    const buttonRect = buttonElement
11085      ? buttonElement.getBoundingClientRect()
11086      : { left: window.innerWidth / 2 - 50, top: window.innerHeight / 2, width: 100, height: 40 };
11087
11088    originRect = { ...buttonRect };
11089
11090    // Populate content
11091    populateCard(data, serviceUrl);
11092
11093    // Calculate target dimensions
11094    const expandedWidth = Math.min(window.innerWidth - 40, config.maxWidth);
11095    const padding = 20;
11096    const headerHeight = parseInt(getComputedStyle(document.documentElement).getPropertyValue('--header-height') || '0', 10);
11097
11098   // Center expanded card horizontally on the button's center
11099const buttonCenterX = buttonRect.left + (buttonRect.width / 2);
11100let targetLeft = buttonCenterX - (expandedWidth / 2);
11101
11102// Clamp to viewport bounds horizontally
11103targetLeft = Math.max(padding, Math.min(targetLeft, window.innerWidth - expandedWidth - padding));
11104
11105// Position vertically: expand from button's top, but ensure it stays in viewport
11106// Start from the button's vertical position
11107let targetTop = buttonRect.top;
11108
11109// Get actual card content height or use a more realistic estimate
11110const cardContent = card.querySelector('.card__content') || card;
11111const estimatedCardHeight = cardContent.scrollHeight || 600; // Increased from 400 to 600
11112
11113// Calculate available space below and above the button
11114const spaceBelow = window.innerHeight - buttonRect.bottom - padding;
11115const spaceAbove = buttonRect.top - headerHeight - padding;
11116
11117// If card would go below viewport, shift it up
11118if (targetTop + estimatedCardHeight > window.innerHeight - padding) {
11119  targetTop = Math.max(headerHeight + padding, window.innerHeight - estimatedCardHeight - padding);
11120}
11121
11122// If card would go above header, shift it down
11123if (targetTop < headerHeight + padding) {
11124  targetTop = headerHeight + padding;
11125}
11126
11127// Final safety check: ensure card fits in viewport
11128const maxAllowedHeight = window.innerHeight - headerHeight - (padding * 2);
11129if (estimatedCardHeight > maxAllowedHeight) {
11130  targetTop = headerHeight + padding;
11131  card.style.maxHeight = maxAllowedHeight + 'px';
11132  card.style.overflowY = 'auto';
11133}
11134
11135
11136    // Show overlay
11137    if (config.showOverlay) {
11138      overlay.classList.add('active');
11139    }
11140
11141    // Set initial state at EXACT button position
11142    card.style.position = 'fixed';
11143    card.style.top = buttonRect.top + 'px';
11144    card.style.left = buttonRect.left + 'px';
11145    card.style.width = buttonRect.width + 'px';
11146    card.style.height = buttonRect.height + 'px';
11147    card.style.zIndex = '10000';
11148    card.style.margin = '0';
11149    card.style.display = 'flex';
11150    card.style.opacity = '1';
11151    card.style.pointerEvents = 'auto';
11152    card.style.overflow = 'hidden';
11153    card.style.transition = 'none';
11154    card.style.flexDirection = 'column';
11155    card.style.borderRadius = '16px';
11156
11157    // Force reflow to ensure initial position is applied
11158    card.getBoundingClientRect();
11159
11160    // Now animate to expanded position
11161    requestAnimationFrame(() => {
11162      requestAnimationFrame(() => {
11163        card.style.transition = `
11164          top ${config.animationDuration}ms cubic-bezier(0.32, 0.72, 0, 1),
11165          left ${config.animationDuration}ms cubic-bezier(0.32, 0.72, 0, 1),
11166          width ${config.animationDuration}ms cubic-bezier(0.32, 0.72, 0, 1),
11167          height ${config.animationDuration}ms cubic-bezier(0.32, 0.72, 0, 1)
11168        `;
11169        card.style.top = targetTop + 'px';
11170        card.style.left = targetLeft + 'px';
11171        card.style.width = expandedWidth + 'px';
11172        card.style.height = 'auto';
11173      });
11174    });
11175
11176    isCardOpen = true;
11177  }
11178
11179  // Close card with animation back to origin
11180  window.closeBrandingServiceCard = function() {
11181    if (!isCardOpen) return;
11182
11183    // Animate back to origin position (exactly like carousel collapseCard)
11184    if (originRect) {
11185      card.style.transition = `
11186        top ${config.animationDuration}ms cubic-bezier(0.32, 0.72, 0, 1),
11187        left ${config.animationDuration}ms cubic-bezier(0.32, 0.72, 0, 1),
11188        width ${config.animationDuration}ms cubic-bezier(0.32, 0.72, 0, 1),
11189        height ${config.animationDuration}ms cubic-bezier(0.32, 0.72, 0, 1)
11190      `;
11191      card.style.top = originRect.top + 'px';
11192      card.style.left = originRect.left + 'px';
11193      card.style.width = originRect.width + 'px';
11194      card.style.height = originRect.height + 'px';
11195      card.style.overflow = 'hidden';
11196    }
11197
11198    // Hide overlay
11199    overlay.classList.remove('active');
11200
11201    // Clean up after animation
11202    setTimeout(() => {
11203      card.style.display = 'none';
11204      card.style.transition = '';
11205      card.style.top = '';
11206      card.style.left = '';
11207      card.style.width = '';
11208      card.style.height = '';
11209      card.style.opacity = '';
11210      card.style.pointerEvents = '';
11211      card.style.overflow = '';
11212      isCardOpen = false;
11213      originRect = null;
11214    }, config.animationDuration);
11215  };
11216
11217  // Event listener for pill button clicks
11218  // Alpine's $dispatch bubbles from the element through the DOM
11219  document.addEventListener('branding-modal:open', (event) => {
11220    // Prevent duplicate handling
11221    if (event._handled) return;
11222    event._handled = true;
11223
11224    const { label, url, element } = event.detail || {};
11225
11226    // Get the pill text from the button element if available
11227    const pillText = element ? (element.querySelector('.branding-service-pill__text')?.textContent || label) : label;
11228
11229    // Find service data by matching the pill text
11230    const serviceData = findServiceData(pillText);
11231    if (!serviceData) {
11232      console.warn('No service data configured for:', pillText);
11233      return;
11234    }
11235
11236    // If a card is already open, close it first
11237    if (isCardOpen) {
11238      window.closeBrandingServiceCard();
11239      setTimeout(() => {
11240        showCardWithData(serviceData, element, url);
11241      }, config.animationDuration + 50);
11242    } else {
11243      showCardWithData(serviceData, element, url);
11244    }
11245  });
11246
11247  // Escape key handler
11248  document.addEventListener('keydown', (e) => {
11249    if (e.key === 'Escape' && isCardOpen) {
11250      window.closeBrandingServiceCard();
11251    }
11252  });
11253})();
11254</script>
11254
11255
11256
11257</section>
11258
11259    
11259<script src="//printroom.co/cdn/shop/t/59/assets/global.bundle.js?v=149077486339995821341790734057" type="module"></script>
11259
11260
11261    
11261<script>
11262      window.Shopify = window.Shopify || {};
11263      window.Shopify.locale = "en";
11264      window.Shopify.currency = {
11265        active: "USD",
11266        rate: ""
11267      };
11268    </script>
11268
11269  <div id="shopify-block-AWDJwL3lGQkF3Zitrd__39280165312039977" class="shopify-block shopify-app-block">
11270
11271�
11271<script>
11272  console.log('[FulfillmentFee] Namespace: app--313853968385--fulfillment_fee');
11273  console.log('[FulfillmentFee] Key: config');
11274  console.log('[FulfillmentFee] Config value:', {"vendorFees":{"Wētā FX Crew":5.75},"feeProductVariantId":"gid:\/\/shopify\/ProductVariant\/44486403227718","isEnabled":true});
11275</script>
11275<script>
11276  (function() {
11277    // The metafield .value is already a parsed JSON object
11278    var configData = {"vendorFees":{"Wētā FX Crew":5.75},"feeProductVariantId":"gid:\/\/shopify\/ProductVariant\/44486403227718","isEnabled":true};
11279    if (configData && typeof configData === 'object') {
11280      window.__FULFILLMENT_FEE_CONFIG__ = configData;
11281      console.log('[FulfillmentFee] Config loaded:', window.__FULFILLMENT_FEE_CONFIG__);
11282    } else {
11283      console.error('[FulfillmentFee] Invalid config data:', configData);
11284      window.__FULFILLMENT_FEE_CONFIG__ = null;
11285    }
11286  })();
11287</script>
vendor: 2 bytes, line 11287
11287
11288<script src="https://cdn.shopify.com/extensions/019d45d2-6a70-7eed-8da1-d1e8fd0fae86/fulfillment-fee-app-100/assets/fulfillment-fee-manager.js" defer></script>
11288
11289</div><div id="shopify-block-AWitpMC8rZDJCSlg4R__15573056287721514228" class="shopify-block shopify-app-block json-ld-for-seo"><!-- generated: 2026-10-04 21:38:22 +1300 -->
11290<!-- BEGIN app snippet: json_ld_for_seo_website -->
11290<script type="application/ld+json">
11291 {
11292   "@context": "https://schema.org",
11293   "@type": "WebSite",
11294   "name": "The Print Room","alternateName": [],"@id": "https:\/\/printroom.co\/#website",
11295   "url": "https:\/\/printroom.co",
11296   "potentialAction": {
11297     "@type": "SearchAction",
11298     "target": {
11299       "@type": "EntryPoint",
11300       "urlTemplate": "https://printroom.co/search?q={query}"
11301     },
11302     "query-input": "required name=query"
11303   }
11304 }
11305</script>
11305
11306<!-- END app snippet -->
11307<!-- w 1 -->
11308
11309<!-- BEGIN app snippet: json_ld_for_seo_web_page -->
11309<script type="application/ld+json">
11310 {
11311   "@context": "https://schema.org",
11312   "@type": "WebPage",
11313   "@id": "https:\/\/printroom.co\/#json-ld-for-seo-webpage",
11314   "url": "https:\/\/printroom.co\/",
11315   "image": null,
11316   "primaryImageOfPage": null,
11317   "dateCreated": null,
11318   "datePublished": null
11319 }
11320</script>
11320
11321<!-- END app snippet -->
11322<!-- wp 0 --><!-- BEGIN app snippet: json_ld_for_seo_organization -->
11323<script type="application/ld+json">
11324{
11325    "@context": "https://schema.org",
11326    "@type": "Organization","@id": "https:\/\/printroom.co\/#org",
11327    "name": "The Print Room",
11328    "url": "https:\/\/printroom.co",
11329    "description": "NZ’s experts in custom t-shirt printing, tote bags, uniforms, and branded merchandise. Print Room offers high-quality screen printing and embroidery using eco-friendly inks. Fast turnaround, sustainable production, and trusted by leading New Zealand brands.",
11330    "telephone": "+6434259694",
11331    "logo": "https:\/\/cdn.shopify.com\/s\/images\/admin\/no-image-large.gif",
11332    "image": "https:\/\/cdn.shopify.com\/s\/images\/admin\/no-image-large.gif",
11333    "sameAs": ["","https:\/\/www.instagram.com\/printroomnz\/"],
11334    "address": {
11335        "@type": "PostalAddress",
11336        "streetAddress": "21 Grosvenor Street, 21",
11337        "addressLocality": "Dunedin",
11338        "addressRegion": "Otago",
11339        "postalCode": "9011",
11340        "addressCountry": "NZ"
11341    },
11342   "contactPoint": [
11343     {
11344       "@type": "ContactPoint",
11345       "telephone": "+6434259694",
11346       "email": ""
11347     }
11348    ]}
11349</script>
11349
11350<!-- END app snippet --> <!-- o 2 --><!-- BEGIN app snippet: json_ld_for_seo_product_group --><!-- END app snippet -->
11351<!-- p 1 --><!-- A 5 -->
11352
11353
11354</div>
11354<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
11354
11355</body>
11356</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.