PageSourceSearch

https://handsfreelabs.com/collections?sort_by=best-selling

html handsfreelabs.com collected 2026-10-07 16:55:50 UTC 112,403 bytes, 2,533 lines download raw bytes

1<!doctype html>
2<html
3  class="no-js"
4  lang="en"
5  data-scheme="light"
6  dir="ltr"
7>
8  <head>
9    <meta charset="utf-8">
10    <meta http-equiv="X-UA-Compatible" content="IE=edge">
11    <meta name="viewport" content="width=device-width,initial-scale=1">
12    <meta name="theme-color" content="">
13    <link rel="canonical" href="https://handsfreelabs.com/collections">
14    <link rel="preconnect" href="https://cdn.shopify.com" crossorigin><link
15        rel="icon"
16        type="image/png"
17        href="//handsfreelabs.com/cdn/shop/files/favicon-32.png?crop=center&height=32&v=1778097734&width=32"
18      ><link rel="preconnect" href="https://fonts.shopifycdn.com" crossorigin><title>Collections</title>
19
20    
21
22    
23
24<meta property="og:site_name" content="HandsFree Labs">
25<meta property="og:url" content="https://handsfreelabs.com/collections">
26<meta property="og:title" content="Collections">
27<meta property="og:type" content="website">
28<meta property="og:description" content="HandsFree Labs"><meta name="twitter:card" content="summary_large_image">
29<meta name="twitter:title" content="Collections">
30<meta name="twitter:description" content="HandsFree Labs">
31
32
33    
33<script src="//handsfreelabs.com/cdn/shop/t/3/assets/constants.js?v=57430444635880596041764838196" defer="defer"></script>
33
34    
34<script src="//handsfreelabs.com/cdn/shop/t/3/assets/pubsub.js?v=2921868252632587581764838197" defer="defer"></script>
34
35    
35<script src="//handsfreelabs.com/cdn/shop/t/3/assets/gsap.min.js?v=98399229928229536421764838196" defer="defer"></script>
35
36    
36<script src="//handsfreelabs.com/cdn/shop/t/3/assets/ScrollTrigger.min.js?v=51844696078135174451764838196" defer="defer"></script>
36
37    
37<script src="//handsfreelabs.com/cdn/shop/t/3/assets/swiper-bundle.min.js?v=42379388556186317811764838197" defer="defer"></script>
37
38    
38<script src="//handsfreelabs.com/cdn/shop/t/3/assets/global.js?v=51923112895351289921764838196" defer="defer"></script>
38
39
40    
41    
41<script>window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.start');</script>
41<meta id="shopify-digital-wallet" name="shopify-digital-wallet" content="/96469713215/digital_wallets/dialog">
42<link rel="ucp" href="/.well-known/ucp" version="2026-08-25">
42<script async="async" src="/checkouts/internal/preloads.js?locale=en-US&default_configuration_id=6478168383"></script>
vendor: 1 bytes, line 42
42
43<script id="shopify-features" type="application/json">{"accessToken":"2d6a1d76d09881f5fe01c7f82043e6ac","betas":["rich-media-storefront-analytics"],"domain":"handsfreelabs.com","predictiveSearch":true,"shopId":96469713215,"locale":"en"}</script>
vendor: 1 bytes, line 43
43
44<script>var Shopify = Shopify || {};
45Shopify.shop = "handsfree-labs.myshopify.com";
46Shopify.locale = "en";
47Shopify.currency = {"active":"USD","rate":"1.0"};
48Shopify.country = "US";
49Shopify.theme = {"name":"San Francisco","id":182742090047,"schema_name":"San Francisco","schema_version":"2.3.0","theme_store_id":3210,"role":"main"};
50Shopify.theme.handle = "null";
51Shopify.theme.style = {"id":null,"handle":null};
52Shopify.cdnHost = "handsfreelabs.com/cdn";
53Shopify.routes = Shopify.routes || {};
54Shopify.routes.root = "/";
55Shopify.shopJsCdnBaseUrl = "https://cdn.shopify.com/shopifycloud/shop-js";
56Shopify.SignInWithShop = Shopify.SignInWithShop || {};
57Shopify.SignInWithShop.User = Shopify.SignInWithShop.User || {};
58Shopify.SignInWithShop.User.recognized = false;</script>
vendor: 1 bytes, line 58
58
59<script type="module">!function(o){(o.Shopify=o.Shopify||{}).modules=!0}(window);</script>
vendor: 1 bytes, line 59
59
60<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 60
60
61<script>
62  window.Shopify = window.Shopify || {};
63  window.Shopify.SignInWithShop = window.Shopify.SignInWithShop || {};
64  window.Shopify.SignInWithShop.assetMetrics = { sampleRate: 0.25 };
65  window.Shopify.SignInWithShop.eligible = true;
66</script>
vendor: 1 bytes, line 66
66
67<script id="shop-js-analytics" type="application/json">{"pageType":"list-collections"}</script>
vendor: 1 bytes, line 67
67
68<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 68
68
69<script type="module">
70  await import("https://cdn.shopify.com/shopifycloud/shop-js/modules/v2/loader.init-shop-cart-sync.en.esm.js");
71
72  window.Shopify.SignInWithShop?.initShopCartSync?.({"fedCMEnabled":true,"windoidEnabled":true});
73
74</script>
vendor: 1 bytes, line 74
74
75<script>
76  window.Shopify = window.Shopify || {};
77  if (!window.Shopify.featureAssets) window.Shopify.featureAssets = {};
78  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"]};
79</script>
vendor: 1 bytes, line 79
79
80<script id="__st">var __st={"a":96469713215,"offset":-14400,"reqid":"179ba366-d18e-4796-817e-689dee8e44c6-1791392150","pageurl":"handsfreelabs.com\/collections?sort_by=best-selling","u":"13eb934f77b5","p":"collections"};</script>
vendor: 1 bytes, line 80
80
81<script>window.ShopifyPaypalV4VisibilityTracking = true;</script>
vendor: 1 bytes, line 81
81
82<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 82
82
83<script integrity="sha256-JjoPp5ZfB1sSAs5SQaol1x1GgvveM+BgmRzyDexInEQ=" data-source-attribution="shopify.loadfeatures" defer="defer" src="//handsfreelabs.com/cdn/shopifycloud/storefront/assets/storefront/load_feature-1bd60354.js" crossorigin="anonymous"></script>
vendor: 1 bytes, line 83
83
84<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 = "//handsfreelabs.com/cdn/shopifycloud/storefront/assets/storefront/autosizes-84416378.js";(document.head || document.documentElement).appendChild(autosizesScript);}window.ShopifyAnalytics = window.ShopifyAnalytics || {};window.ShopifyAnalytics.performance = window.ShopifyAnalytics.performance || {};(function () {var LONG_FRAME_THRESHOLD = 50;var longAnimationFrames = [];var activeRafId = null;function collectLongFrames() {var previousTime = null;function rafMonitor(now) {if (activeRafId === null) {return;}var delta = now - previousTime;if (delta > LONG_FRAME_THRESHOLD) {longAnimationFrames.push({startTime: previousTime,endTime: now,});}previousTime = now;activeRafId = requestAnimationFrame(rafMonitor);}previousTime = performance.now();activeRafId = requestAnimationFrame(rafMonitor);}if (!window.PerformanceObserver?.supportedEntryTypes?.includes('long-animation-frame')) {collectLongFrames();var timeoutId = setTimeout(function () {cancelAnimationFrame(activeRafId);}, 10000);window.ShopifyAnalytics.performance.getLongAnimationFrames = function (stopCollection) {if (stopCollection === undefined) {stopCollection = false;}if (stopCollection) {clearTimeout(timeoutId);cancelAnimationFrame(activeRafId);}return longAnimationFrames;};}})();})();</script>
84<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 84
84
85<script>
86  window.Shopify = window.Shopify || {};
87  window.Shopify.MCP = window.Shopify.MCP || {};
88  window.Shopify.MCP.enabled = true;
89  window.Shopify.MCP.shop = "handsfree-labs.myshopify.com";
90  window.Shopify.MCP.mcpEndpoint = "https:\/\/handsfreelabs.com\/api\/mcp";
91  window.Shopify.MCP.tools = [{"name":"search_shop_policies_and_faqs","description":"Used to get facts about the stores policies, products, or services.\nSome examples of questions you can ask are:\n  - What is your return policy?\n  - What is your shipping policy?\n  - What is your phone number?\n  - What are your hours of operation?\"\nSet policy_types to also get the store's written policies (full text and URL).\n","inputSchema":{"$schema":"https:\/\/json-schema.org\/draft\/2020-12\/schema","type":"object","properties":{"query":{"type":"string","description":"A natural language query."},"context":{"type":"string","description":"Additional information about the request such as user demographics, mood, location, or other relevant details that could help in tailoring the response appropriately."},"policy_types":{"type":"array","items":{"type":"string","enum":["refund","shipping","privacy","terms_of_service","terms_of_sale","subscription","legal_notice","contact"]},"description":"Policy kinds to fetch, chosen from the user's question — e.g. [\"refund\"] for returns\/exchanges\/damaged items, [\"contact\"] for phone\/hours\/address. Include every kind the question touches. Omit it to get only FAQ answers."}},"required":["query"]}}];
92</script>
vendor: 1 bytes, line 92
92
93<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("\/\/handsfreelabs.com\/cdn\/shopifycloud\/storefront\/assets\/storefront\/webmcp-c6b62ece.js","sha256-ke4DDuBjdvea3vxLWxHc9E9nq8zihuG4IfYEGbb77ys=");})();
94</script>
vendor: 1 bytes, line 94
94
95<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://handsfreelabs.com/cdn/shopifycloud/portable-wallets/latest/portable-wallets.en.js",t.type="module",document.head.appendChild(t)}};
96</script>
vendor: 1 bytes, line 96
96
97<script data-source-attribution="shopify.dynamic_checkout.buyer_consent">
98  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);
99</script>
vendor: 1 bytes, line 99
99
100<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})}}));
101</script>
vendor: 1 bytes, line 101
101
102<script id="sections-script" data-sections="header" defer="defer" src="//handsfreelabs.com/cdn/shop/t/3/compiled_assets/scripts.js?v=6552047183903886731764838212"></script>
vendor: 1 bytes, line 102
102
103<script id="shopify-cfh-end">window.performance && window.performance.mark && window.performance.mark('shopify.content_for_header.end');</script>
103
104
105    
106    
107
108
109<style data-shopify>
110  @font-face {
111  font-family: "DM Sans";
112  font-weight: 300;
113  font-style: normal;
114  font-display: swap;
115  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n3.d218434bb518134511e5205d90c23cfb8a1b261b.woff2") format("woff2"),
116       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n3.0c324a11de656e0e3f656188ad5de9ff34f70c04.woff") format("woff");
117}
118
119  @font-face {
120  font-family: Montserrat;
121  font-weight: 900;
122  font-style: normal;
123  font-display: swap;
124  src: url("//handsfreelabs.com/cdn/fonts/montserrat/montserrat_n9.680ded1be351aa3bf3b3650ac5f6df485af8a07c.woff2") format("woff2"),
125       url("//handsfreelabs.com/cdn/fonts/montserrat/montserrat_n9.0cc5aaeff26ef35c23b69a061997d78c9697a382.woff") format("woff");
126}
127
128  @font-face {
129  font-family: "DM Sans";
130  font-weight: 400;
131  font-style: normal;
132  font-display: swap;
133  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2") format("woff2"),
134       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n4.87bdd914d8a61247b911147ae68e754d695c58a6.woff") format("woff");
135}
136
137  @font-face {
138  font-family: Inter;
139  font-weight: 500;
140  font-style: normal;
141  font-display: swap;
142  src: url("//handsfreelabs.com/cdn/fonts/inter/inter_n5.d7101d5e168594dd06f56f290dd759fba5431d97.woff2") format("woff2"),
143       url("//handsfreelabs.com/cdn/fonts/inter/inter_n5.5332a76bbd27da00474c136abb1ca3cbbf259068.woff") format("woff");
144}
145
146  @font-face {
147  font-family: "DM Sans";
148  font-weight: 400;
149  font-style: normal;
150  font-display: swap;
151  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2") format("woff2"),
152       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n4.87bdd914d8a61247b911147ae68e754d695c58a6.woff") format("woff");
153}
154
155  @font-face {
156  font-family: "IBM Plex Mono";
157  font-weight: 300;
158  font-style: normal;
159  font-display: swap;
160  src: url("//handsfreelabs.com/cdn/fonts/ibm_plex_mono/ibmplexmono_n3.22603c15b79c3821d0c9975c4697e41257912f5b.woff2") format("woff2"),
161       url("//handsfreelabs.com/cdn/fonts/ibm_plex_mono/ibmplexmono_n3.d301f132c1b75786f58e3508b257602ba2a45508.woff") format("woff");
162}
163
164  @font-face {
165  font-family: Inter;
166  font-weight: 500;
167  font-style: normal;
168  font-display: swap;
169  src: url("//handsfreelabs.com/cdn/fonts/inter/inter_n5.d7101d5e168594dd06f56f290dd759fba5431d97.woff2") format("woff2"),
170       url("//handsfreelabs.com/cdn/fonts/inter/inter_n5.5332a76bbd27da00474c136abb1ca3cbbf259068.woff") format("woff");
171}
172
173  @font-face {
174  font-family: Inter;
175  font-weight: 400;
176  font-style: normal;
177  font-display: swap;
178  src: url("//handsfreelabs.com/cdn/fonts/inter/inter_n4.b2a3f24c19b4de56e8871f609e73ca7f6d2e2bb9.woff2") format("woff2"),
179       url("//handsfreelabs.com/cdn/fonts/inter/inter_n4.af8052d517e0c9ffac7b814872cecc27ae1fa132.woff") format("woff");
180}
181
182  @font-face {
183  font-family: Inter;
184  font-weight: 400;
185  font-style: normal;
186  font-display: swap;
187  src: url("//handsfreelabs.com/cdn/fonts/inter/inter_n4.b2a3f24c19b4de56e8871f609e73ca7f6d2e2bb9.woff2") format("woff2"),
188       url("//handsfreelabs.com/cdn/fonts/inter/inter_n4.af8052d517e0c9ffac7b814872cecc27ae1fa132.woff") format("woff");
189}
190
191  @font-face {
192  font-family: Inter;
193  font-weight: 400;
194  font-style: normal;
195  font-display: swap;
196  src: url("//handsfreelabs.com/cdn/fonts/inter/inter_n4.b2a3f24c19b4de56e8871f609e73ca7f6d2e2bb9.woff2") format("woff2"),
197       url("//handsfreelabs.com/cdn/fonts/inter/inter_n4.af8052d517e0c9ffac7b814872cecc27ae1fa132.woff") format("woff");
198}
199
200
201  @font-face {
202  font-family: "DM Sans";
203  font-weight: 300;
204  font-style: normal;
205  font-display: swap;
206  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n3.d218434bb518134511e5205d90c23cfb8a1b261b.woff2") format("woff2"),
207       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n3.0c324a11de656e0e3f656188ad5de9ff34f70c04.woff") format("woff");
208}
209
210  @font-face {
211  font-family: "DM Sans";
212  font-weight: 400;
213  font-style: normal;
214  font-display: swap;
215  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n4.ec80bd4dd7e1a334c969c265873491ae56018d72.woff2") format("woff2"),
216       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n4.87bdd914d8a61247b911147ae68e754d695c58a6.woff") format("woff");
217}
218
219  @font-face {
220  font-family: "DM Sans";
221  font-weight: 500;
222  font-style: normal;
223  font-display: swap;
224  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n5.8a0f1984c77eb7186ceb87c4da2173ff65eb012e.woff2") format("woff2"),
225       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n5.9ad2e755a89e15b3d6c53259daad5fc9609888e6.woff") format("woff");
226}
227
228  @font-face {
229  font-family: "DM Sans";
230  font-weight: 700;
231  font-style: normal;
232  font-display: swap;
233  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n7.97e21d81502002291ea1de8aefb79170c6946ce5.woff2") format("woff2"),
234       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n7.af5c214f5116410ca1d53a2090665620e78e2e1b.woff") format("woff");
235}
236
237  @font-face {
238  font-family: "DM Sans";
239  font-weight: 300;
240  font-style: italic;
241  font-display: swap;
242  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_i3.cf32206a8995abc7c8c1c761d4057a4728acd370.woff2") format("woff2"),
243       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_i3.b485aa24a097d5067a26fc4100ad5d538e05ee39.woff") format("woff");
244}
245
246  @font-face {
247  font-family: Montserrat;
248  font-weight: 900;
249  font-style: italic;
250  font-display: swap;
251  src: url("//handsfreelabs.com/cdn/fonts/montserrat/montserrat_i9.cd566e55c5982a3a39b3949665a79c881e095b14.woff2") format("woff2"),
252       url("//handsfreelabs.com/cdn/fonts/montserrat/montserrat_i9.b18527943b7f5bc1488b82e39deb595a73d3e645.woff") format("woff");
253}
254
255  @font-face {
256  font-family: "DM Sans";
257  font-weight: 700;
258  font-style: italic;
259  font-display: swap;
260  src: url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_i7.52b57f7d7342eb7255084623d98ab83fd96e7f9b.woff2") format("woff2"),
261       url("//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_i7.d5e14ef18a1d4a8ce78a4187580b4eb1759c2eda.woff") format("woff");
262}
263
264
265  :root {
266    --font-body-family: "DM Sans", sans-serif;
267    --font-body-style: normal;
268    --font-body-weight: 300;
269    --font-body-scale: 1.15;
270    --font-body-line-height: 1.4;
271    --font-body-letter-spacing: 0.05em;
272
273    --font-heading-family: Montserrat, sans-serif;
274    --font-heading-style: normal;
275    --font-heading-weight: 900;
276    --font-heading-letter-spacing: -0.05em;
277    --font-heading-line-height: 1.1;
278    --font-heading-text-transform: uppercase;
279
280    --font-subtitle-family: "IBM Plex Mono", monospace;
281    --font-subtitle-style: normal;
282    --font-subtitle-weight: 300;
283    --font-subtitle-text-transform: uppercase;
284    --font-subtitle-scale: 1.2;
285
286    --font-heading-h0-scale: 1.2;
287    --font-heading-h1-scale: 1.2;
288    --font-heading-h2-scale: 1.15;
289    --font-heading-h3-scale: 1.1;
290    --font-heading-h4-scale: 1.05;
291    --font-heading-h5-scale: 1.0;
292
293    --font-heading-card-family: Inter, sans-serif;
294    --font-heading-card-style: normal;
295    --font-heading-card-weight: 500;
296    --font-heading-card-text-transform: none;
297    --font-text-card-family: "DM Sans", sans-serif;
298    --font-text-card-style: normal;
299    --font-text-card-weight: 400;
300
301    --font-heading-card-scale: 1.0;
302    --font-text-card-scale: 1.6;
303
304    /* BUTTONS */
305    --font-button-family: "DM Sans", sans-serif;
306    --font-button-style: normal;
307    --font-button-weight: 400;
308    --font-button-text-transform: none;
309    --font-button-letter-spacing: -0.03em;
310    --font-button-scale: 1.6;
311
312    --font-subtitle-letter-spacing: 0.08em;
313
314    --font-header-menu-family: Inter, sans-serif;
315    --font-header-menu-style: normal;
316    --font-header-menu-weight: 500;
317    --font-header-menu-text-scale: 1.5;
318    --font-header-menu-letter-spacing: -0.03em;
319    --font-header-menu-text-transform: none;
320
321    --font-footer-menu-family: Inter, sans-serif;
322    --font-footer-menu-style: normal;
323    --font-footer-menu-weight: 400;
324
325    --font-popups-heading-family: Inter, sans-serif;
326    --font-popups-heading-style: normal;
327    --font-popups-heading-weight: 400;
328    --font-popups-text-family: Inter, sans-serif;
329    --font-popups-text-style: normal;
330    --font-popups-text-weight: 400;
331    --font-popup-heading-scale: 1.23;
332    --font-popup-desc-scale: 1.0;
333    --font-popup-text-scale: 1.07;
334    --font-notification-heading-scale: 1.0;
335    --font-notification-text-scale: 1.0;
336  }
337</style>
338
339
340    
341    <style data-shopify>
342  
343    :root,
344    [data-scheme=light] .color-background-1 {
345      --color-background: 0,0,0;
346      --color-background-secondary: 0,0,0;
347      --color-foreground: 255, 255, 255;
348      
349        --overwrite-background: #000000;
350      
351      --color-foreground-secondary: 0, 255, 145;
352   		--color-overlay: 0,0,0;
353      --color-button-text: 0, 0, 0;
354      --color-button-text-hover: 0, 255, 145;
355      --color-button: 0, 255, 145;
356      --color-button-hover: 0, 0, 0;
357      --color-button-secondary: 229, 229, 230;
358      --color-button-secondary-hover: 223, 223, 224;
359      --color-button-secondary-text: 38, 45, 51;
360      --color-button-secondary-text-hover: 38, 45, 51;
361      --color-button-tertiary-text: 38, 45, 51;
362
363      --color-border-input: 222, 224, 224;
364      --color-border: 255, 255, 255;
365      --color-scrollbar: 103, 108, 112;
366
367      --sold-out-badge-bg: 255,255,255;
368      --sold-out-badge-color: 123,127,132;
369      --sale-badge-bg: 38,45,51;
370      --sale-badge-color: 255,255,255;
371      --custom-badge-bg: 255,255,255;
372    	--custom-badge-color: 38,45,51;
373
374      --color-card-price-regular: 103, 108, 112;
375      --color-card-price-sale: 202, 75, 21;
376    }
377
378    @media (prefers-color-scheme: light) {
379      :root,
380      [data-scheme=auto] .color-background-1 {
381        --color-background: 0,0,0;
382        --color-background-secondary: 0,0,0;
383        
384          --overwrite-background: #000000;
385        
386        --color-foreground: 255, 255, 255;
387        --color-foreground-secondary: 0, 255, 145;
388        --color-overlay: 0,0,0;
389        --color-button-text: 0, 0, 0;
390        --color-button-text-hover: 0, 255, 145;
391        --color-button: 0, 255, 145;
392        --color-button-hover: 0, 0, 0;
393        --color-button-secondary: 229, 229, 230;
394        --color-button-secondary-hover: 223, 223, 224;
395        --color-button-secondary-text: 38, 45, 51;
396        --color-button-secondary-text-hover: 38, 45, 51;
397
398        --color-button-tertiary-text: 38, 45, 51;
399
400        --color-border-input: 222, 224, 224;
401        --color-border: 255, 255, 255;
402        --color-scrollbar: 103, 108, 112;
403
404        --sold-out-badge-bg: 255,255,255;
405        --sold-out-badge-color: 123,127,132;
406        --sale-badge-bg: 38,45,51;
407        --sale-badge-color: 255,255,255;
408        --custom-badge-bg: 255,255,255;
409        --custom-badge-color: 38,45,51;
410
411        --color-card-price-regular: 103, 108, 112;
412        --color-card-price-sale: 202, 75, 21;
413      }
414    }
415  
416    
417    [data-scheme=light] .color-background-2 {
418      --color-background: 223,223,224;
419      --color-background-secondary: 255,255,255;
420      --color-foreground: 255, 255, 255;
421      
422        --overwrite-background: #dfdfe0;
423      
424      --color-foreground-secondary: 103, 108, 112;
425   		--color-overlay: 0,0,0;
426      --color-button-text: 255, 255, 255;
427      --color-button-text-hover: 255, 255, 255;
428      --color-button: 38, 45, 51;
429      --color-button-hover: 71, 77, 82;
430      --color-button-secondary: 229, 229, 230;
431      --color-button-secondary-hover: 223, 223, 224;
432      --color-button-secondary-text: 38, 45, 51;
433      --color-button-secondary-text-hover: 38, 45, 51;
434      --color-button-tertiary-text: 38, 45, 51;
435
436      --color-border-input: 218, 217, 216;
437      --color-border: 218, 217, 216;
438      --color-scrollbar: 103, 108, 112;
439
440      --sold-out-badge-bg: 255,255,255;
441      --sold-out-badge-color: 123,127,132;
442      --sale-badge-bg: 38,45,51;
443      --sale-badge-color: 255,255,255;
444      --custom-badge-bg: 255,255,255;
445    	--custom-badge-color: 38,45,51;
446
447      --color-card-price-regular: 103, 108, 112;
448      --color-card-price-sale: 202, 75, 21;
449    }
450
451    @media (prefers-color-scheme: light) {
452      
453      [data-scheme=auto] .color-background-2 {
454        --color-background: 223,223,224;
455        --color-background-secondary: 255,255,255;
456        
457          --overwrite-background: #dfdfe0;
458        
459        --color-foreground: 255, 255, 255;
460        --color-foreground-secondary: 103, 108, 112;
461        --color-overlay: 0,0,0;
462        --color-button-text: 255, 255, 255;
463        --color-button-text-hover: 255, 255, 255;
464        --color-button: 38, 45, 51;
465        --color-button-hover: 71, 77, 82;
466        --color-button-secondary: 229, 229, 230;
467        --color-button-secondary-hover: 223, 223, 224;
468        --color-button-secondary-text: 38, 45, 51;
469        --color-button-secondary-text-hover: 38, 45, 51;
470
471        --color-button-tertiary-text: 38, 45, 51;
472
473        --color-border-input: 218, 217, 216;
474        --color-border: 218, 217, 216;
475        --color-scrollbar: 103, 108, 112;
476
477        --sold-out-badge-bg: 255,255,255;
478        --sold-out-badge-color: 123,127,132;
479        --sale-badge-bg: 38,45,51;
480        --sale-badge-color: 255,255,255;
481        --custom-badge-bg: 255,255,255;
482        --custom-badge-color: 38,45,51;
483
484        --color-card-price-regular: 103, 108, 112;
485        --color-card-price-sale: 202, 75, 21;
486      }
487    }
488  
489    
490    [data-scheme=light] .color-background-3 {
491      --color-background: 38,45,51;
492      --color-background-secondary: 49,56,61;
493      --color-foreground: 255, 255, 255;
494      
495        --overwrite-background: #262d33;
496      
497      --color-foreground-secondary: 168, 171, 173;
498   		--color-overlay: 38,45,51;
499      --color-button-text: 38, 45, 51;
500      --color-button-text-hover: 38, 45, 51;
501      --color-button: 255, 255, 255;
502      --color-button-hover: 233, 234, 235;
503      --color-button-secondary: 229, 229, 230;
504      --color-button-secondary-hover: 223, 223, 224;
505      --color-button-secondary-text: 38, 45, 51;
506      --color-button-secondary-text-hover: 38, 45, 51;
507      --color-button-tertiary-text: 255, 255, 255;
508
509      --color-border-input: 168, 171, 173;
510      --color-border: 168, 171, 173;
511      --color-scrollbar: 168, 171, 173;
512
513      --sold-out-badge-bg: 82,89,97;
514      --sold-out-badge-color: 168,171,173;
515      --sale-badge-bg: 255,255,255;
516      --sale-badge-color: 38,45,51;
517      --custom-badge-bg: 82,89,97;
518    	--custom-badge-color: 255,255,255;
519
520      --color-card-price-regular: 168, 171, 173;
521      --color-card-price-sale: 255, 255, 255;
522    }
523
524    @media (prefers-color-scheme: light) {
525      
526      [data-scheme=auto] .color-background-3 {
527        --color-background: 38,45,51;
528        --color-background-secondary: 49,56,61;
529        
530          --overwrite-background: #262d33;
531        
532        --color-foreground: 255, 255, 255;
533        --color-foreground-secondary: 168, 171, 173;
534        --color-overlay: 38,45,51;
535        --color-button-text: 38, 45, 51;
536        --color-button-text-hover: 38, 45, 51;
537        --color-button: 255, 255, 255;
538        --color-button-hover: 233, 234, 235;
539        --color-button-secondary: 229, 229, 230;
540        --color-button-secondary-hover: 223, 223, 224;
541        --color-button-secondary-text: 38, 45, 51;
542        --color-button-secondary-text-hover: 38, 45, 51;
543
544        --color-button-tertiary-text: 255, 255, 255;
545
546        --color-border-input: 168, 171, 173;
547        --color-border: 168, 171, 173;
548        --color-scrollbar: 168, 171, 173;
549
550        --sold-out-badge-bg: 82,89,97;
551        --sold-out-badge-color: 168,171,173;
552        --sale-badge-bg: 255,255,255;
553        --sale-badge-color: 38,45,51;
554        --custom-badge-bg: 82,89,97;
555        --custom-badge-color: 255,255,255;
556
557        --color-card-price-regular: 168, 171, 173;
558        --color-card-price-sale: 255, 255, 255;
559      }
560    }
561  
562    
563    [data-scheme=light] .color-background-4 {
564      --color-background: 49,56,61;
565      --color-background-secondary: 38,45,51;
566      --color-foreground: 255, 255, 255;
567      
568        --overwrite-background: #31383d;
569      
570      --color-foreground-secondary: 168, 171, 173;
571   		--color-overlay: 38,45,51;
572      --color-button-text: 38, 45, 51;
573      --color-button-text-hover: 38, 45, 51;
574      --color-button: 255, 255, 2
57455;
575      --color-button-hover: 233, 234, 235;
576      --color-button-secondary: 242, 241, 239;
577      --color-button-secondary-hover: 232, 231, 230;
578      --color-button-secondary-text: 38, 45, 51;
579      --color-button-secondary-text-hover: 38, 45, 51;
580      --color-button-tertiary-text: 255, 255, 255;
581
582      --color-border-input: 168, 171, 173;
583      --color-border: 168, 171, 173;
584      --color-scrollbar: 168, 171, 173;
585
586      --sold-out-badge-bg: 82,89,97;
587      --sold-out-badge-color: 168,171,173;
588      --sale-badge-bg: 255,255,255;
589      --sale-badge-color: 38,45,51;
590      --custom-badge-bg: 82,89,97;
591    	--custom-badge-color: 255,255,255;
592
593      --color-card-price-regular: 168, 171, 173;
594      --color-card-price-sale: 255, 255, 255;
595    }
596
597    @media (prefers-color-scheme: light) {
598      
599      [data-scheme=auto] .color-background-4 {
600        --color-background: 49,56,61;
601        --color-background-secondary: 38,45,51;
602        
603          --overwrite-background: #31383d;
604        
605        --color-foreground: 255, 255, 255;
606        --color-foreground-secondary: 168, 171, 173;
607        --color-overlay: 38,45,51;
608        --color-button-text: 38, 45, 51;
609        --color-button-text-hover: 38, 45, 51;
610        --color-button: 255, 255, 255;
611        --color-button-hover: 233, 234, 235;
612        --color-button-secondary: 242, 241, 239;
613        --color-button-secondary-hover: 232, 231, 230;
614        --color-button-secondary-text: 38, 45, 51;
615        --color-button-secondary-text-hover: 38, 45, 51;
616
617        --color-button-tertiary-text: 255, 255, 255;
618
619        --color-border-input: 168, 171, 173;
620        --color-border: 168, 171, 173;
621        --color-scrollbar: 168, 171, 173;
622
623        --sold-out-badge-bg: 82,89,97;
624        --sold-out-badge-color: 168,171,173;
625        --sale-badge-bg: 255,255,255;
626        --sale-badge-color: 38,45,51;
627        --custom-badge-bg: 82,89,97;
628        --custom-badge-color: 255,255,255;
629
630        --color-card-price-regular: 168, 171, 173;
631        --color-card-price-sale: 255, 255, 255;
632      }
633    }
634  
635
636  body, .color-background-1, .color-background-2, .color-background-3, .color-background-4 {
637    color: rgba(var(--color-foreground));
638    background: rgb(var(--color-background));
639    background-attachment: fixed;
640  }
641
642  :root {
643    --color-shadow: var(--color-foreground);
644    --payment-terms-background-color: ;
645    --color-modal-overlay: 0,0,0;;
646  }
647
648  
649    [data-scheme=dark] .color-background-1 {
650      --color-background: 31, 31, 31;
651      --color-background-secondary: 41, 41, 41;
652      --color-foreground: 255, 255, 255;
653      --color-foreground-secondary: 142, 142, 143;
654      --color-border-input: 73, 73, 73;
655      --color-border: 73, 73, 73;
656      --color-button: 0, 0, 0;
657      --color-button-hover: 0, 0, 0;
658      --color-button-text: 255, 255, 255;
659      --color-button-text-hover: 255, 255, 255;
660      --color-button-secondary: 36, 36, 36;
661      --color-button-secondary-hover: 36, 36, 36;
662      --color-button-secondary-text: 255, 255, 255;
663      --color-button-secondary-text-hover: 255, 255, 255;
664      --color-button-tertiary-text: 255, 255, 255;
665      --color-card-price-regular: 229, 229, 229;
666      --color-card-price-sale: 169, 169, 169;
667      --color-error-background: 0, 0, 0;
668      --color-shadow: 75, 75, 75;
669      --sold-out-badge-bg: 51, 51, 51;
670      --sold-out-badge-color: 255, 255, 255;
671      --sale-badge-bg: 51, 51, 51;
672      --sale-badge-color: 255, 255, 255;
673      --custom-badge-bg: 51, 51, 51;
674      --custom-badge-color: 255, 255, 255;
675      --color-overlay: 0, 0, 0;
676      --color-success: 61, 181, 18;
677      --color-error: 241, 118, 111;
678    }
679
680    @media (prefers-color-scheme: dark) {
681      [data-scheme=auto] .color-background-1 {
682        --color-background: 31, 31, 31;
683        --color-background-secondary: 41, 41, 41;
684        --color-foreground: 255, 255, 255;
685        --color-foreground-secondary: 142, 142, 143;
686        --color-border-input: 73, 73, 73;
687        --color-border: 73, 73, 73;
688        --color-button: 0, 0, 0;
689        --color-button-hover: 0, 0, 0;
690        --color-button-text: 255, 255, 255;
691        --color-button-text-hover: 255, 255, 255;
692        --color-button-secondary: 36, 36, 36;
693        --color-button-secondary-hover: 36, 36, 36;
694        --color-button-secondary-text: 255, 255, 255;
695        --color-button-secondary-text-hover: 255, 255, 255;
696        --color-button-tertiary-text: 255, 255, 255;
697        --color-card-price-regular: 229, 229, 229;
698        --color-card-price-sale: 169, 169, 169;
699        --color-error-background: 0, 0, 0;
700        --color-shadow: 75, 75, 75;
701        --sold-out-badge-bg: 51, 51, 51;
702        --sold-out-badge-color: 255, 255, 255;
703        --sale-badge-bg: 51, 51, 51;
704        --sale-badge-color: 255, 255, 255;
705        --custom-badge-bg: 51, 51, 51;
706        --custom-badge-color: 255, 255, 255;
707        --color-overlay: 0, 0, 0;
708        --color-success: 61, 181, 18;
709        --color-error: 241, 118, 111;
710      }
711    }
712  
713    [data-scheme=dark] .color-background-2 {
714      --color-background: 31, 31, 31;
715      --color-background-secondary: 41, 41, 41;
716      --color-foreground: 255, 255, 255;
717      --color-foreground-secondary: 142, 142, 143;
718      --color-border-input: 73, 73, 73;
719      --color-border: 73, 73, 73;
720      --color-button: 0, 0, 0;
721      --color-button-hover: 0, 0, 0;
722      --color-button-text: 255, 255, 255;
723      --color-button-text-hover: 255, 255, 255;
724      --color-button-secondary: 36, 36, 36;
725      --color-button-secondary-hover: 36, 36, 36;
726      --color-button-secondary-text: 255, 255, 255;
727      --color-button-secondary-text-hover: 255, 255, 255;
728      --color-button-tertiary-text: 255, 255, 255;
729      --color-card-price-regular: 229, 229, 229;
730      --color-card-price-sale: 169, 169, 169;
731      --color-error-background: 0, 0, 0;
732      --color-shadow: 75, 75, 75;
733      --sold-out-badge-bg: 51, 51, 51;
734      --sold-out-badge-color: 255, 255, 255;
735      --sale-badge-bg: 51, 51, 51;
736      --sale-badge-color: 255, 255, 255;
737      --custom-badge-bg: 51, 51, 51;
738      --custom-badge-color: 255, 255, 255;
739      --color-overlay: 0, 0, 0;
740      --color-success: 61, 181, 18;
741      --color-error: 241, 118, 111;
742    }
743
744    @media (prefers-color-scheme: dark) {
745      [data-scheme=auto] .color-background-2 {
746        --color-background: 31, 31, 31;
747        --color-background-secondary: 41, 41, 41;
748        --color-foreground: 255, 255, 255;
749        --color-foreground-secondary: 142, 142, 143;
750        --color-border-input: 73, 73, 73;
751        --color-border: 73, 73, 73;
752        --color-button: 0, 0, 0;
753        --color-button-hover: 0, 0, 0;
754        --color-button-text: 255, 255, 255;
755        --color-button-text-hover: 255, 255, 255;
756        --color-button-secondary: 36, 36, 36;
757        --color-button-secondary-hover: 36, 36, 36;
758        --color-button-secondary-text: 255, 255, 255;
759        --color-button-secondary-text-hover: 255, 255, 255;
760        --color-button-tertiary-text: 255, 255, 255;
761        --color-card-price-regular: 229, 229, 229;
762        --color-card-price-sale: 169, 169, 169;
763        --color-error-background: 0, 0, 0;
764        --color-shadow: 75, 75, 75;
765        --sold-out-badge-bg: 51, 51, 51;
766        --sold-out-badge-color: 255, 255, 255;
767        --sale-badge-bg: 51, 51, 51;
768        --sale-badge-color: 255, 255, 255;
769        --custom-badge-bg: 51, 51, 51;
770        --custom-badge-color: 255, 255, 255;
771        --color-overlay: 0, 0, 0;
772        --color-success: 61, 181, 18;
773        --color-error: 241, 118, 111;
774      }
775    }
776  
777    [data-scheme=dark] .color-background-3 {
778      --color-background: 31, 31, 31;
779      --color-background-secondary: 41, 41, 41;
780      --color-foreground: 255, 255, 255;
781      --color-foreground-secondary: 142, 142, 143;
782      --color-border-input: 73, 73, 73;
783      --color-border: 73, 73, 73;
784      --color-button: 0, 0, 0;
785      --color-button-hover: 0, 0, 0;
786      --color-button-text: 255, 255, 255;
787      --color-button-text-hover: 255, 255, 255;
788      --color-button-secondary: 36, 36, 36;
789      --color-button-secondary-hover: 36, 36, 36;
790      --color-button-secondary-text: 255, 255, 255;
791      --color-button-secondary-text-hover: 255, 255, 255;
792      --color-button-tertiary-text: 255, 255, 255;
793      --color-card-price-regular: 229, 229, 229;
794      --color-card-price-sale: 169, 169, 169;
795      --color-error-background: 0, 0, 0;
796      --color-shadow: 75, 75, 75;
797      --sold-out-badge-bg: 51, 51, 51;
798      --sold-out-badge-color: 255, 255, 255;
799      --sale-badge-bg: 51, 51, 51;
800      --sale-badge-color: 255, 255, 255;
801      --custom-badge-bg: 51, 51, 51;
802      --custom-badge-color: 255, 255, 255;
803      --color-overlay: 0, 0, 0;
804      --color-success: 61, 181, 18;
805      --color-error: 241, 118, 111;
806    }
807
808    @media (prefers-color-scheme: dark) {
809      [data-scheme=auto] .color-background-3 {
810        --color-background: 31, 31, 31;
811        --color-background-secondary: 41, 41, 41;
812        --color-foreground: 255, 255, 255;
813        --color-foreground-secondary: 142, 142, 143;
814        --color-border-input: 73, 73, 73;
815        --color-border: 73, 73, 73;
816        --color-button: 0, 0, 0;
817        --color-button-hover: 0, 0, 0;
818        --color-button-text: 255, 255, 255;
819        --color-button-text-hover: 255, 255, 255;
820        --color-button-secondary: 36, 36, 36;
821        --color-button-secondary-hover: 36, 36, 36;
822        --color-button-secondary-text: 255, 255, 255;
823        --color-button-secondary-text-hover: 255, 255, 255;
824        --color-button-tertiary-text: 255, 255, 255;
825        --color-card-price-regular: 229, 229, 229;
826        --color-card-price-sale: 169, 169, 169;
827        --color-error-background: 0, 0, 0;
828        --color-shadow: 75, 75, 75;
829        --sold-out-badge-bg: 51, 51, 51;
830        --sold-out-badge-color: 255, 255, 255;
831        --sale-badge-bg: 51, 51, 51;
832        --sale-badge-color: 255, 255, 255;
833        --custom-badge-bg: 51, 51, 51;
834        --custom-badge-color: 255, 255, 255;
835        --color-overlay: 0, 0, 0;
836        --color-success: 61, 181, 18;
837        --color-error: 241, 118, 111;
838      }
839    }
840  
841    [data-scheme=dark] .color-background-4 {
842      --color-background: 31, 31, 31;
843      --color-background-secondary: 41, 41, 41;
844      --color-foreground: 255, 255, 255;
845      --color-foreground-secondary: 142, 142, 143;
846      --color-border-input: 73, 73, 73;
847      --color-border: 73, 73, 73;
848      --color-button: 0, 0, 0;
849      --color-button-hover: 0, 0, 0;
850      --color-button-text: 255, 255, 255;
851      --color-button-text-hover: 255, 255, 255;
852      --color-button-secondary: 36, 36, 36;
853      --color-button-secondary-hover: 36, 36, 36;
854      --color-button-secondary-text: 255, 255, 255;
855      --color-button-secondary-text-hover: 255, 255, 255;
856      --color-button-tertiary-text: 255, 255, 255;
857      --color-card-price-regular: 229, 229, 229;
858      --color-card-price-sale: 169, 169, 169;
859      --color-error-background: 0, 0, 0;
860      --color-shadow: 75, 75, 75;
861      --sold-out-badge-bg: 51, 51, 51;
862      --sold-out-badge-color: 255, 255, 255;
863      --sale-badge-bg: 51, 51, 51;
864      --sale-badge-color: 255, 255, 255;
865      --custom-badge-bg: 51, 51, 51;
866      --custom-badge-color: 255, 255, 255;
867      --color-overlay: 0, 0, 0;
868      --color-success: 61, 181, 18;
869      --color-error: 241, 118, 111;
870    }
871
872    @media (prefers-color-scheme: dark) {
873      [data-scheme=auto] .color-background-4 {
874        --color-background: 31, 31, 31;
875        --color-background-secondary: 41, 41, 41;
876        --color-foreground: 255, 255, 255;
877        --color-foreground-secondary: 142, 142, 143;
878        --color-border-input: 73, 73, 73;
879        --color-border: 73, 73, 73;
880        --color-button: 0, 0, 0;
881        --color-button-hover: 0, 0, 0;
882        --color-button-text: 255, 255, 255;
883        --color-button-text-hover: 255, 255, 255;
884        --color-button-secondary: 36, 36, 36;
885        --color-button-secondary-hover: 36, 36, 36;
886        --color-button-secondary-text: 255, 255, 255;
887        --color-button-secondary-text-hover: 255, 255, 255;
888        --color-button-tertiary-text: 255, 255, 255;
889        --color-card-price-regular: 229, 229, 229;
890        --color-card-price-sale: 169, 169, 169;
891        --color-error-background: 0, 0, 0;
892        --color-shadow: 75, 75, 75;
893        --sold-out-badge-bg: 51, 51, 51;
894        --sold-out-badge-color: 255, 255, 255;
895        --sale-badge-bg: 51, 51, 51;
896        --sale-badge-color: 255, 255, 255;
897        --custom-badge-bg: 51, 51, 51;
898        --custom-badge-color: 255, 255, 255;
899        --color-overlay: 0, 0, 0;
900        --color-success: 61, 181, 18;
901        --color-error: 241, 118, 111;
902      }
903    }
904  
905
906  [data-scheme=dark] {
907    --color-background: 31, 31, 31;
908    --color-background-secondary: 24, 24, 24;
909    --color-foreground: 255, 255, 255;
910    --color-foreground-secondary: 142, 142, 143;
911    --color-border-input: 73, 73, 73;
912    --color-border: 73, 73, 73;
913    --color-scrollbar: 165, 165, 165;
914    --color-button: 0, 0, 0;
915    --color-button-hover: 0, 0, 0;
916    --color-button-text: 255, 255, 255;
917    --color-button-text-hover: 255, 255, 255;
918    --color-button-secondary: 36, 36, 36;
919    --color-button-secondary-hover: 36, 36, 36;
920    --color-button-secondary-text: 255, 255, 255;
921    --color-button-secondary-text-hover: 255, 255, 255;
922    --color-button-tertiary-text: 255, 255, 255;
923    --color-card-price-regular: 229, 229, 229;
924    --color-card-price-sale: 169, 169, 169;
925    --color-error-background: 0, 0, 0;
926    --color-shadow: 75, 75, 75;
927    --sold-out-badge-bg: 51, 51, 51;
928    --sold-out-badge-color: 255, 255, 255;
929    --sale-badge-bg: 51, 51, 51;
930    --sale-badge-color: 255, 255, 255;
931    --custom-badge-bg: 51, 51, 51;
932    --custom-badge-color: 255, 255, 255;
933    --color-overlay: 0, 0, 0;
934    --color-success: 61, 181, 18;
935    --color-error: 241, 118, 111;
936
937    .color-background-1 {
938      --color-background: 31, 31, 31;
939    }
940    .color-background-2 {
941      --color-background: 34, 34, 34;
942      --color-background-secondary: 41, 41, 41;
943    }
944    .color-background-3 {
945      --color-background: 24, 24, 24;
946      --color-background-secondary: 31, 31, 31;
947    }
948    .color-background-4 {
949      --color-background: 24, 24, 24;
950      --color-background-secondary: 31, 31, 31;
951    }
952  }
953
954  @media (prefers-color-scheme: dark) {
955    [data-scheme=auto] {
956      --color-background: 31, 31, 31;
957      --color-background-secondary: 24, 24, 24;
958      --color-foreground: 255, 255, 255;
959      --color-foreground-secondary: 142, 142, 143;
960      --color-border-input: 73, 73, 73;
961      --color-border: 73, 73, 73;
962      --color-scrollbar: 165, 165, 165;
963      --color-button: 0, 0, 0;
964      --color-button-hover: 0, 0, 0;
965      --color-button-text: 255, 255, 255;
966      --color-button-text-hover: 255, 255, 255;
967      --color-button-secondary: 36, 36, 36;
968      --color-button-secondary-hover: 36, 36, 36;
969      --color-button-secondary-text: 255, 255, 255;
970      --color-button-secondary-text-hover: 255, 255, 255;
971      --color-button-tertiary-text: 255, 255, 255;
972      --color-card-price-regular: 229, 229, 229;
973      --color-card-price-sale: 169, 169, 169;
974      --color-error-background: 0, 0, 0;
975      --color-shadow: 75, 75, 75;
976      --sold-out-badge-bg: 51, 51, 51;
977      --sold-out-badge-color: 255, 255, 255;
978      --sale-badge-bg: 51, 51, 51;
979      --sale-badge-color: 255, 255, 255;
980      --custom-badge-bg: 51, 51, 51;
981      --custom-badge-color: 255, 255, 255;
982      --color-overlay: 0, 0, 0;
983      --color-success: 61, 181, 18;
984      --color-error: 241, 118, 111;
985
986      .color-background-1 {
987        --color-background: 31, 31, 31;
988      }
989      .color-background-2 {
990        --color-background: 34, 34, 34;
991        --color-background-secondary: 41, 41, 41;
992      }
993      .color-background-3 {
994        --color-background: 24, 24, 24;
995        --color-background-secondary: 31, 31, 31;
996      }
997      .color-background-4 {
998        --color-background: 24, 24, 24;
999        --color-background-secondary: 31, 31, 31;
1000      }
1001    }
1002  }
1003</style>
1004
1005
1006    
1007    <style data-shopify>
1008  :root {
1009    --column-count: 1;
1010    --announcement-height: 0px;
1011    --ann-height: 0px;
1012    --header-height: 64px;
1013    --breadcrumbs-height: 0px;
1014    --scrollbar-width: 0px;
1015    --margin-header: 0px;
1016    --spaced-section: 5rem;
1017    --border-radius-product: 16px;
1018    --border-radius-button: 50px;
1019    --border-radius-block: 16px;
1020    --border-radius-input: 10px;
1021  }
1022
1023  @media screen and (min-width: 990px) {
1024    :root {
1025      --spaced-section: 16rem;
1026    }
1027  }
1028
1029  *,
1030  *::before,
1031  *::after {
1032    box-sizing: border-box;
1033  }
1034
1035  html {
1036    font-size: 10px;
1037    height: 100%;
1038    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
1039    scroll-behavior: smooth;
1040  }
1041
1042  body {
1043    position: relative;
1044    display: flex;
1045    flex-direction: column;
1046    margin: 0;
1047    overflow-x: hidden;
1048    min-height: 100%;
1049    margin: 0;
1050    padding: 0;
1051    scroll-behavior: smooth;
1052    -webkit-font-smoothing: antialiased;
1053    -moz-osx-font-smoothing: grayscale;
1054    font-family: var(--font-body-family);
1055    font-size: calc(var(--font-body-scale) * 1.2rem);
1056    font-weight: var(--font-body-weight);
1057    line-height: var(--font-body-line-height);
1058    letter-spacing: calc(var(--font-body-letter-spacing) * 0.1);
1059    font-style: var(--font-body-style);
1060
1061  }
1062
1063  @media screen and (min-width: 576px) {
1064    body {
1065      font-size: calc(var(--font-body-scale) * 1.3rem);
1066    }
1067  }
1068
1069  @media screen and (min-width: 990px) {
1070    body {
1071      font-size: calc(var(--font-body-scale) * 1.4rem);
1072    }
1073  }
1074
1075  #MainContent {
1076    flex-grow: 1;
1077  }
1078
1079  p,
1080  ul,
1081  ol,
1082  li,
1083  dl,
1084  dd,
1085  hr,
1086  pre,
1087  form,
1088  table,
1089  video,
1090  figure,
1091  figcaption,
1092  blockquote {
1093    margin: 0;
1094    padding: 0;
1095  }
1096
1097  ul,
1098  ol {
1099    padding: 0;
1100    list-style: none;
1101  }
1102
1103  img,
1104  svg {
1105    display: block;
1106  }
1107
1108  button {
1109    border: none;
1110    cursor: pointer;
1111    background: transparent;
1112    padding: 0;
1113  }
1114
1115  input {
1116    outline: none;
1117    border: none;
1118    margin: 0;
1119  }
1120
1121  input,
1122  button,
1123  select,
1124  textarea {
1125    font: inherit;
1126    -webkit-appearance: none;
1127    appearance: none;
1128  }
1129
1130  fieldset {
1131    margin: 0;
1132    padding: 0;
1133    border: 0;
1134  }
1135
1136  label {
1137    display: block;
1138  }
1139
1140  ::selection {
1141    text-shadow: none;
1142    background: #cbeafb;
1143  }
1144
1145  mark {
1146    background-color: #06f;
1147  }
1148
1149  small {
1150    font-size: 80%;
1151  }
1152
1153  hr {
1154    width: 100%;
1155    height: 1px;
1156    border: none;
1157  }
1158
1159  sub,
1160  sup {
1161    position: relative;
1162    font-size: 75%;
1163    line-height: 0;
1164    vertical-align: baseline;
1165  }
1166
1167  a {
1168    text-decoration: none;
1169    cursor: pointer;
1170    display: inline;
1171  }
1172
1173  h1,
1174  h2,
1175  h3,
1176  h4,
1177  h5,
1178  h6 {
1179    font-style: normal;
1180    margin: 0;
1181  }
1182
1183  /* Remove all animations and transitions for people that prefer not to see them */
1184  @media (prefers-reduced-motion: reduce) {
1185    * {
1186      animation-duration: 0.01ms !important;
1187      animation-iteration-count: 1 !important;
1188      transition-duration: 0.01ms !important;
1189      scroll-behavior: auto !important;
1190    }
1191  }
1192</style>
1193
1194
1195    
1196    <link href="//handsfreelabs.com/cdn/shop/t/3/assets/swiper-bundle.min.css?v=158873188915743418901764838197" rel="stylesheet" type="text/css" media="all" />
1197
1198    
1199    <link href="//handsfreelabs.com/cdn/shop/t/3/assets/base.css?v=114568766084601785111766111403" rel="stylesheet" type="text/css" media="all" />
1200
1201    
1202    <link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-rte.css?v=116430630001710602531764838196" rel="stylesheet" type="text/css" media="all" />
1203
1204    
1205
1206    
1207<link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-cart-drawer.css?v=145065439019359456051764838196" rel="stylesheet" type="text/css" media="all" />
1208      <link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-cart-items.css?v=73194538681260850671764838196" rel="stylesheet" type="text/css" media="all" />
1209      
1209<script src="//handsfreelabs.com/cdn/shop/t/3/assets/cart.js?v=47493386782723280271764838196" defer="defer"></script>
1209
1210      
1210<script src="//handsfreelabs.com/cdn/shop/t/3/assets/cart-drawer.js?v=175299045123263202151764838196" defer="defer"></script>
1210
1211
1212      
1213        <link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-cart-shipping.css?v=89963673203588609851764838196" rel="stylesheet" type="text/css" media="all" />
1214      
1215
1216    
1217<link href="//handsfreelabs.com/cdn/shop/t/3/assets/section-main-product.css?v=95691957673293760661764838197" rel="stylesheet" type="text/css" media="all" />
1218<link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-deferred-media.css?v=68707802736351725321764838196" rel="stylesheet" type="text/css" media="all" /><link href="//handsfreelabs.com/cdn/shop/t/3/assets/quick-add.css?v=21091840522575606341764838197" rel="stylesheet" type="text/css" media="all" />
1218<script src="//handsfreelabs.com/cdn/shop/t/3/assets/quick-add.js?v=103399882862435143751764838197" defer="defer"></script>
1218
1219      
1219<script src="//handsfreelabs.com/cdn/shop/t/3/assets/product-form.js?v=167182463165808328981764838197" defer="defer"></script>
1219
1220
1221      <link rel="preload" as="font" href="//handsfreelabs.com/cdn/fonts/dm_sans/dmsans_n3.d218434bb518134511e5205d90c23cfb8a1b261b.woff2" type="font/woff2" crossorigin>
1222      
1223
1224      <link rel="preload" as="font" href="//handsfreelabs.com/cdn/fonts/montserrat/montserrat_n9.680ded1be351aa3bf3b3650ac5f6df485af8a07c.woff2" type="font/woff2" crossorigin>
1225      
1226<script>
1227      document.documentElement.className = document.documentElement.className.replace('no-js', 'js');
1228      if (Shopify.designMode) {
1229        document.documentElement.classList.add('shopify-design-mode');
1230      }
1231    </script>
1231
1232
1233    
1233<script src="//handsfreelabs.com/cdn/shop/t/3/assets/popup.js?v=99755635080630246551764838197" defer="defer"></script>
1233
1234
1235    
1236
1237    
1237<script>
1238      let cscoDarkMode = {};
1239
1240      (function () {
1241        const body = document.querySelector('html[data-scheme]');
1242
1243        cscoDarkMode = {
1244          init: function (e) {
1245            this.initMode(e);
1246            window.matchMedia('(prefers-color-scheme: dark)').addListener((e) => {
1247              this.initMode(e);
1248            });
1249
1250            window.addEventListener('load', () => {
1251              const toggleBtns = document.querySelectorAll('.header__toggle-scheme');
1252              toggleBtns.forEach((btn) => {
1253                btn.addEventListener('click', (e) => {
1254                  e.preventDefault();
1255                  if ('auto' === body.getAttribute('data-scheme')) {
1256                    if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
1257                      cscoDarkMode.changeScheme('light', true);
1258                    } else if (window.matchMedia('(prefers-color-scheme: light)').matches) {
1259                      cscoDarkMode.changeScheme('dark', true);
1260                    }
1261                  } else {
1262                    if ('dark' === body.getAttribute('data-scheme')) {
1263                      cscoDarkMode.changeScheme('light', true);
1264                    } else {
1265                      cscoDarkMode.changeScheme('dark', true);
1266                    }
1267                  }
1268                });
1269              });
1270            });
1271          },
1272          initMode: function (e) {
1273            let siteScheme = false;
1274            switch (
1275              'light' // Field. User’s system preference.
1276            ) {
1277              case 'dark':
1278                siteScheme = 'dark';
1279                break;
1280              case 'light':
1281                siteScheme = 'light';
1282                break;
1283              case 'system':
1284                siteScheme = 'auto';
1285                break;
1286            }
1287            if ('false') {
1288              // Field. Enable dark/light mode toggle.
1289              if ('light' === localStorage.getItem('_color_schema')) {
1290                siteScheme = 'light';
1291              }
1292              if ('dark' === localStorage.getItem('_color_schema')) {
1293                siteScheme = 'dark';
1294              }
1295            }
1296            if (siteScheme && siteScheme !== body.getAttribute('data-scheme')) {
1297              this.changeScheme(siteScheme, false);
1298            }
1299          },
1300          changeScheme: function (siteScheme, cookie) {
1301            body.classList.add('scheme-toggled');
1302            body.setAttribute('data-scheme', siteScheme);
1303            if (cookie) {
1304              localStorage.setItem('_color_schema', siteScheme);
1305            }
1306            setTimeout(() => {
1307              body.classList.remove('scheme-toggled');
1308            }, 100);
1309          },
1310        };
1311      })();
1312
1313      cscoDarkMode.init();
1314
1315      document.addEventListener('shopify:section:load', function () {
1316        setTimeout(() => {
1317          cscoDarkMode.init();
1318        }, 100);
1319      });
1320
1321      const calcScrollbarWidth = () => {
1322        const div = document.createElement('div');
1323        div.style.cssText = 'width: 100px; height: 100px; overflow-y: scroll; position: absolute; top: -9999px;';
1324        document.body.appendChild(div);
1325        const scrollbarWidth = div.offsetWidth - div.clientWidth;
1326        document.body.removeChild(div);
1327        document.documentElement.style.setProperty('--scrollbar-width', `${scrollbarWidth}px`);
1328      };
1329
1330      window.addEventListener('DOMContentLoaded', calcScrollbarWidth);
1331    </script>
1331
1332  <link href="https://monorail-edge.shopifysvc.com" rel="dns-prefetch">
1333<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: 96469713215,url: window.location.href,navigation_start,duration: currentMs - navigation_start,session_token,page_type: "list-collections"};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 1333
1333
1334<script>
1335  window.__TREKKIE_SHIM_QUEUE = window.__TREKKIE_SHIM_QUEUE || [];
1336</script>
vendor: 1 bytes, line 1336
1336
1337<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}
1337).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: 96469713215,storefrontBaseUrl: "https://handsfreelabs.com",extensionsBaseUrl: "https://extensions.shopifycdn.com/cdn/shopifycloud/web-pixels-manager",monorailEndpoint: "https://handsfreelabs.com/.well-known/shopify/monorail/unstable/produce_batch",surface: "storefront-renderer",enabledBetaFlags: ["4c64608a","16072cab","8450a54b"],webPixelsConfigList: [{"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":"HandsFree Labs","paymentSettings":{"currencyCode":"USD"},"myshopifyDomain":"handsfree-labs.myshopify.com","countryCode":"US","storefrontUrl":"https:\/\/h
1337andsfreelabs.com"},"customer":null,"cart":null,"checkout":null,"productVariants":[],"products":[],"purchasingCompany":null},},"https://handsfreelabs.com/cdn","87a86122w399bf3b8pd0403c97m2c07468c",{"modern":"","legacy":""},{"trekkieShim":true,"agentContext":true,"apiClientId":"580111","facebookCapiEnabled":"false","themeId":"182742090047","themeStoreId":"3210","themePublished":"true","eventMetadataId":"fa904710-ed2f-4850-a144-a46277ff8104","pageType":"collections","shopId":"96469713215","storefrontBaseUrl":"https:\/\/handsfreelabs.com","extensionBaseUrl":"https:\/\/extensions.shopifycdn.com\/cdn\/shopifycloud\/web-pixels-manager","surface":"storefront-renderer","enabledBetaFlags":"[\"4c64608a\", \"16072cab\", \"8450a54b\"]","isMerchantRequest":"false","hashVersion":"87a86122w399bf3b8pd0403c97m2c07468c","publish":"custom","events":"[[\"page_viewed\",{}]]"});})();</script>
1337<script>
1338  window.ShopifyAnalytics = window.ShopifyAnalytics || {};
1339  window.ShopifyAnalytics.meta = window.ShopifyAnalytics.meta || {};
1340  window.ShopifyAnalytics.meta.currency = 'USD';
1341  var meta = {"page":{"pageType":"collections","requestId":"179ba366-d18e-4796-817e-689dee8e44c6-1791392150"}};
1342  for (var attr in meta) {
1343    window.ShopifyAnalytics.meta[attr] = meta[attr];
1344  }
1345</script>
vendor: 1 bytes, line 1345
1345
1346<script class="analytics">
1347  (function () {
1348    var customDocumentWrite = function(content) {
1349      var jquery = null;
1350
1351      if (window.jQuery) {
1352        jquery = window.jQuery;
1353      } else if (window.Checkout && window.Checkout.$) {
1354        jquery = window.Checkout.$;
1355      }
1356
1357      if (jquery) {
1358        jquery('body').append(content);
1359      }
1360    };
1361
1362    var hasLoggedConversion = function(token) {
1363      if (token) {
1364        return document.cookie.indexOf('loggedConversion=' + token) !== -1;
1365      }
1366      return false;
1367    }
1368
1369    var setCookieIfConversion = function(token) {
1370      if (token) {
1371        var twoMonthsFromNow = new Date(Date.now());
1372        twoMonthsFromNow.setMonth(twoMonthsFromNow.getMonth() + 2);
1373
1374        document.cookie = 'loggedConversion=' + token + '; expires=' + twoMonthsFromNow;
1375      }
1376    }
1377
1378    var trekkie = window.ShopifyAnalytics.lib = window.trekkie = window.trekkie || [];
1379    window.ShopifyAnalytics.lib.trekkie = window.trekkie;
1380    if (trekkie.integrations) {
1381      return;
1382    }
1383    trekkie.methods = [
1384      'identify',
1385      'page',
1386      'ready',
1387      'track',
1388      'trackForm',
1389      'trackLink'
1390    ];
1391    trekkie.factory = function(method) {
1392      return function() {
1393        var args = Array.prototype.slice.call(arguments);
1394        args.unshift(method);
1395        trekkie.push(args);
1396        if (method == 'track' || method == 'page') {
1397          var pageUrl;
1398          try {
1399            pageUrl = window.location.href;
1400          } catch (e) {}
1401          var pageReferrer;
1402          try {
1403            pageReferrer = document.referrer;
1404          } catch (e) {}
1405          try {
1406            if (window.__TREKKIE_SHIM_QUEUE == null) {
1407              window.__TREKKIE_SHIM_QUEUE = [];
1408            }
1409            window.__TREKKIE_SHIM_QUEUE.push({
1410              from: 'trekkie-stub',
1411              method: method,
1412              args: args.slice(1),
1413              pageContext: {
1414                url: pageUrl,
1415                referrer: pageReferrer
1416              }
1417            });
1418          } catch (e) {
1419            // no-op
1420          }
1421        }
1422        return trekkie;
1423      };
1424    };
1425    for (var i = 0; i < trekkie.methods.length; i++) {
1426      var key = trekkie.methods[i];
1427      trekkie[key] = trekkie.factory(key);
1428    }
1429    trekkie.load = function(config) {
1430      trekkie.config = config || {};
1431      trekkie.config.initialDocumentCookie = document.cookie;
1432      var first = document.getElementsByTagName('script')[0];
1433var script = document.createElement('script');
1434script.type = 'text/javascript';
1435script.onerror = function(e) {
1436  var scriptFallback = document.createElement('script');
1437  scriptFallback.type = 'text/javascript';
1438  scriptFallback.onerror = function(error) {
1439          var Monorail = {
1440      produce: function produce(monorailDomain, schemaId, payload) {
1441        var currentMs = new Date().getTime();
1442        var event = {
1443          schema_id: schemaId,
1444          payload: payload,
1445          metadata: {
1446            event_created_at_ms: currentMs,
1447            event_sent_at_ms: currentMs
1448          }
1449        };
1450        return Monorail.sendRequest("https://" + monorailDomain + "/v1/produce", JSON.stringify(event));
1451      },
1452      sendRequest: function sendRequest(endpointUrl, payload) {
1453        // Try the sendBeacon API
1454        if (window && window.navigator && typeof window.navigator.sendBeacon === 'function' && typeof window.Blob === 'function' && !Monorail.isIos12()) {
1455          var blobData = new window.Blob([payload], {
1456            type: 'text/plain'
1457          });
1458
1459          if (window.navigator.sendBeacon(endpointUrl, blobData)) {
1460            return true;
1461          } // sendBeacon was not successful
1462
1463        } // XHR beacon
1464
1465        var xhr = new XMLHttpRequest();
1466
1467        try {
1468          xhr.open('POST', endpointUrl);
1469          xhr.setRequestHeader('Content-Type', 'text/plain');
1470          xhr.send(payload);
1471        } catch (e) {
1472          console.log(e);
1473        }
1474
1475        return false;
1476      },
1477      isIos12: function isIos12() {
1478        return window.navigator.userAgent.lastIndexOf('iPhone; CPU iPhone OS 12_') !== -1 || window.navigator.userAgent.lastIndexOf('iPad; CPU OS 12_') !== -1;
1479      }
1480    };
1481    Monorail.produce('monorail-edge.shopifysvc.com',
1482      'trekkie_storefront_load_errors/1.1',
1483      {shop_id: 96469713215,
1484      theme_id: 182742090047,
1485      app_name: "storefront",
1486      context_url: window.location.href,
1487      source_url: "//handsfreelabs.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js"});
1488
1489  };
1490  scriptFallback.async = true;
1491  scriptFallback.src = '//handsfreelabs.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js';
1492  first.parentNode.insertBefore(scriptFallback, first);
1493};
1494script.async = true;
1495script.src = '//handsfreelabs.com/cdn/s/trekkie.storefront.51e69540e15035ae012ec8cc42e8f9cd792233a0.min.js';
1496first.parentNode.insertBefore(script, first);
1497
1498    };
1499    trekkie.load(
1500      {"Trekkie":{"appName":"storefront","development":false,"defaultAttributes":{"shopId":96469713215,"isMerchantRequest":null,"themeId":182742090047,"themeCityHash":"14055137275775047007","contentLanguage":"en","currency":"USD","eventMetadataId":"fa904710-ed2f-4850-a144-a46277ff8104"},"isServerSideCookieWritingEnabled":true,"monorailRegion":"shop_domain","enabledBetaFlags":["764d78cb","8450a54b","4c64608a"]},"Session Attribution":{},"S2S":{"facebookCapiEnabled":false,"source":"trekkie-storefront-renderer","apiClientId":580111}}
1501    );
1502
1503    var loaded = false;
1504    trekkie.ready(function() {
1505      if (loaded) return;
1506      loaded = true;
1507
1508      window.ShopifyAnalytics.lib = window.trekkie;
1509
1510      var originalDocumentWrite = document.write;
1511      document.write = customDocumentWrite;
1512      try { window.ShopifyAnalytics.merchantGoogleAnalytics.call(this); } catch(error) {};
1513      document.write = originalDocumentWrite;
1514
1515      var match = window.location.pathname.match(/checkouts\/(.+)\/(thank_you|post_purchase)/)
1516      var token = match? match[1]: undefined;
1517      if (!hasLoggedConversion(token)) {
1518        setCookieIfConversion(token);
1519        
1520      }
1521    });
1522
1523    window.ShopifyAnalytics.lib.page(null,{"pageType":"collections","requestId":"179ba366-d18e-4796-817e-689dee8e44c6-1791392150","shopifyEmitted":true});
1524
1525    var eventsListenerScript = document.createElement('script');
1526    eventsListenerScript.async = true;
1527    eventsListenerScript.src = "//handsfreelabs.com/cdn/shopifycloud/storefront/assets/shop_events_listener-4e26a9ce.js";
1528    document.getElementsByTagName('head')[0].appendChild(eventsListenerScript);
1529})();</script>
vendor: 1 bytes, line 1529
1529
1530<script
1531  defer
1532  src="https://handsfreelabs.com/cdn/shopifycloud/perf-kit/shopify-perf-kit-3.9.6.min.js"
1533  data-application="storefront-renderer"
1534  data-shop-id="96469713215"
1535  data-render-region="gcp-us-central1"
1536  data-page-type="list-collections"
1537  data-theme-instance-id="182742090047"
1538  data-theme-name="San Francisco"
1539  data-theme-version="2.3.0"
1540  data-monorail-region="shop_domain"
1541  data-resource-timing-sampling-rate="10"
1542  data-shs="true"
1543  data-shs-beacon="true"
1544  data-shs-export-with-fetch="true"
1545  data-shs-logs-sample-rate="1"
1546  data-shs-beacon-endpoint="https://handsfreelabs.com/api/collect"
1547></script>
1547
1548<meta name="shopify-y" content="eef4c7ac-f151-4808-b3d0-9e9323cea19c" data-expiration="1822949750000"><meta name="shopify-s" content="dbdbad1c-6393-4eb4-b5a8-f87afe5ac7ee" data-expiration="1791393950000"><meta name="new-cookie-storage-activated" content="t">
1549</head>
1550
1551  <body class="template-list-collections template-list-collections">
1552    <a
1553      class="skip-to-content-link button visually-hidden"
1554      href="#MainContent"
1555    >
1556      Skip to content
1557    </a>
1558
1559    <!-- BEGIN sections: header-group -->
1560<div id="shopify-section-sections--25702051152191__header" class="shopify-section shopify-section-group-header-group shopify-section-header">
1560<script src="//handsfreelabs.com/cdn/shop/t/3/assets/header.js?v=23851710536590866761764838196" defer="defer"></script>
1560<link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-menu-drawer.css?v=111334943057760530851764838196" rel="stylesheet" type="text/css" media="all" />
1561<style>
1562  @media screen and (min-width: 1100px) {
1563    header-drawer {
1564      display: none;
1565    }
1566  }
1567
1568  .burger-menu {
1569    pointer-events: none;
1570    visibility: hidden;
1571    opacity: 0;
1572  }
1573
1574  .list-menu {
1575    list-style: none;
1576    padding: 0;
1577    margin: 0;
1578  }
1579
1580  .list-menu__item {
1581    display: flex;
1582    align-items: center;
1583  }
1584
1585  .list-menu__item--link {
1586    text-decoration: none;
1587    padding-bottom: 1rem;
1588    padding-top: 1rem;
1589  }
1590
1591  @media screen and (min-width: 750px) {
1592    .list-menu__item--link {
1593      padding-bottom: 1rem;
1594      padding-top: 1rem;
1595    }
1596  }
1597
1598  
1599
1600  .header__menu-item,
1601  .header__heading-link,
1602  .header__localization,
1603  .header__localization a,
1604  .header__localization button,
1605  .header__cart,
1606  .header__account-body,
1607  .menu-drawer__utility-account-body,
1608  .menu-drawer__menu-item,
1609  .mobile-mega-menu__tab,
1610  .mega-menu__menu-list-link {
1611    font-family: var(--font-header-menu-family);
1612    font-style: var(--font-header-menu-style);
1613    font-weight: var(--font-header-menu-weight);
1614    font-size: calc(var(--font-header-menu-text-scale) * 1rem);
1615    text-transform: var(--font-header-menu-text-transform);
1616    letter-spacing: var(--font-header-menu-letter-spacing);
1617  }
1618</style>
1619
1620<script src="//handsfreelabs.com/cdn/shop/t/3/assets/details-disclosure.js?v=101038006898019338281764838196" defer="defer"></script>
1620<sticky-header data-sticky-type="on-scroll-up" class="header-wrapper"><header class="header header--center-logo container">
1621  <div class="header__left">
1622  <header-drawer data-breakpoint="tablet">
1623  <details class="menu-drawer-container">
1624    <summary
1625      class="header__icon header__icon--menu focus-inset"
1626      aria-label="Menu"
1627    >
1628      <span class="header__icon-wrapper">
1629        <svg class="icon icon-hamburger" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
1630  <path d="M0 9.75H24" stroke="currentColor" stroke-width="1.5"/>
1631  <path d="M0 14.25H24" stroke="currentColor" stroke-width="1.5"/>
1632</svg>
1633      </span>
1634    </summary>
1635    <div
1636      id="menu-drawer"
1637      class="menu-drawer motion-reduce color-background-1"
1638      tabindex="-1"
1639    >
1640      <div class="menu-drawer__inner-container">
1641        <div class="menu-drawer__top container no-js-hidden">
1642          <span class="header__modal-close-button">
1643            <span class="header__icon-wrapper">
1644              <svg class="icon icon-close" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
1645  <path d="M20 4L4 20M20 20L4 4.00001" stroke="currentColor" stroke-width="1.5" stroke-linecap="square"/>
1646</svg>
1647            </span>
1648          </span>
1649        </div>
1650        <div class="menu-drawer__main">
1651          <div class="menu-drawer__navigation-container">
1652            <nav class="menu-drawer__navigation">
1653              <ul class="menu-drawer__menu list-menu" role="list"></ul>
1654            </nav><div class="menu-drawer__utility-links"><a
1655                    href="https://handsfreelabs.com/customer_authentication/redirect?locale=en&region_country=US"
1656                    class="button button--primary menu-drawer__account focus-inset"
1657                  >
1658                    <div class="button__content">
1659                      <span class="button__label" data-label="Log In">
1660                        Log In
1661                      </span>
1662                    </div>
1663                    <span class="animated-button-circle"></span>
1664                  </a>
1665                  <div class="menu-drawer__account-register">
1666                    <span class="body-normal">Don&#39;t have an account?</span>
1667                    <a class="button button--tertiary focus-inset" href="https://shopify.com/96469713215/account?locale=en&region_country=US&buyer_flags=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJoYW5kc2ZyZWUtbGFicy5teXNob3BpZnkuY29tIiwiZmxhZ3MiOltdLCJleHAiOjE3OTE5OTY5NTEsIm5iZiI6MTc5MTM5MjE1MX0.vsvOfNjP4kys2rAb1lPAMSB5Yj5hpaeZWwpNoZrcKqM">
1668                      <div class="button__content">
1669                        <span
1670                          class="button__label body-normal"
1671                          data-label="Create Account"
1672                        >Create Account</span>
1673
1674                        <div class="button__icons">
1675                          <span class="button__icon">
1676                            <svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
1677  <path d="M1.5 10.5011L10.2421 1.75789M2.46394 1.05078H10.9492V9.53606" stroke="currentColor" stroke-width="1.4" stroke-linecap="square"/>
1678</svg>
1679
1680                          </span>
1681                          <span class="button__icon button__icon--2">
1682                            <svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
1683  <path d="M1.5 10.5011L10.2421 1.75789M2.46394 1.05078H10.9492V9.53606" stroke="currentColor" stroke-width="1.4" stroke-linecap="square"/>
1684</svg>
1685
1686                          </span>
1687                        </div>
1688                      </div>
1689                    </a>
1690                  </div></div>
1691          </div>
1692        </div>
1693
1694        <div class="menu-drawer__bottom no-js-hidden">
1695        </div>
1696      </div>
1697    </div>
1698  </details>
1699</header-drawer>
1700
1701
1702  
1703
1704
1705  
1706
1707
1708  
1709
1710  
1711</div>
1712
1713
1714  
1715
1716<a
1717  href="/" class="header__heading-link focus-inset header__heading-link--center 1.7843137254901962"
1718  
1719  style="width: 120px; --padding_bottom: 56.04395604395604%; "
1720  
1721><img
1722      srcset="//handsfreelabs.com/cdn/shop/files/Group.png?v=1764594119&width=120 1x, //handsfreelabs.com/cdn/shop/files/Group.png?v=1764594119&width=240 2x"
1723      src="//handsfreelabs.com/cdn/shop/files/Group.png?v=1764594119&width=120"
1724      class="header__heading-logo"
1725      width="120"
1726      height="auto"
1727      alt="HandsFree Labs"
1728      loading="lazy"
1729    ></a>
1730
1731
1732<div class="header__column">
1733  <div class="header__icons">
1734
1735    
1736<details-disclosure class="header__account">
1737  <details>
1738    <summary
1739      class="header__icon header__icon--account focus-inset modal__toggle"
1740      aria-haspopup="dialog"
1741      role="button"
1742    >
1743      <svg class="icon icon-account" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
1744  <path d="M3.23828 19.5C4.56369 17.2892 7.46856 15.7762 12.0006 15.7762C16.5326 15.7762 19.4374 17.2892 20.7628 19.5M15.6006 8.1C15.6006 10.0882 13.9888 11.7 12.0006 11.7C10.0123 11.7 8.40056 10.0882 8.40056 8.1C8.40056 6.11177 10.0123 4.5 12.0006 4.5C13.9888 4.5 15.6006 6.11177 15.6006 8.1Z" stroke="currentColor" stroke-width="1.4" stroke-linecap="square"/>
1745</svg>
1746    </summary>
1747    <div class="header__account-modal modal__toggle color-background-1" role="dialog" aria-modal="true"><a
1748          href="https://handsfreelabs.com/customer_authentication/redirect?locale=en&region_country=US"
1749          class="button button--primary header__account-login focus-inset"
1750        >
1751          <div class="button__content">
1752            <span class="button__label" data-label="Log In">
1753              Log In
1754            </span>
1755          </div>
1756          <span class="animated-button-circle"></span>
1757        </a>
1758
1759        <a
1760          class="header__account-register button button--tertiary"
1761          href="https://shopify.com/96469713215/account?locale=en&region_country=US&buyer_flags=eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJoYW5kc2ZyZWUtbGFicy5teXNob3BpZnkuY29tIiwiZmxhZ3MiOltdLCJleHAiOjE3OTE5OTY5NTEsIm5iZiI6MTc5MTM5MjE1MX0.vsvOfNjP4kys2rAb1lPAMSB5Yj5hpaeZWwpNoZrcKqM"
1762        >
1763          <div class="button__content">
1764            <span class="button__label" data-label="Create Account">Create Account</span>
1765          </div>
1766        </a></div>
1767  </details>
1768</details-disclosure>
1769
1770<div class="header__cart">
1771  <a
1772    href="/cart"
1773    class=" header__icon header__icon--cart focus-inset"
1774    id="cart-icon-bubble"
1775    aria-label="View Cart"
1776  >
1777    <svg class="cart-icon-bubble-svg" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
1778  <circle class="cart-icon-bubble-svg__bg-circle" cx="16" cy="16" r="16" ></circle>
1779  <circle class="cart-icon-bubble-svg__progress-circle" cx="16" cy="16" r="16"></circle>
1780</svg>
1781<span class="visually-hidden">View Cart</span>
1782<div class="cart-count-bubble"><span aria-hidden="true">0</span><span class="visually-hidden">0 items</span>
1783</div>
1784  </a>
1785</div>
1786
1787
1788    
1789
1790  </div>
1791</div>
1792
1793</header></sticky-header>
1794
1795<script type="application/ld+json">
1796  {
1797    "@context": "http://schema.org",
1798    "@type": "Organization",
1799    "name": "HandsFree Labs",
1800    
1801      "logo": "https:files\/Group.png",
1802    
1803    "sameAs": [
1804      "",
1805      "",
1806      "",
1807      "",
1808      "",
1809      "",
1810      "",
1811      ""
1812    ],
1813    "url": "https:\/\/handsfreelabs.com"
1814  }
1815</script>
1815
1816
1817<script>
1818  const calcHeader = () => {
1819    const header = document.querySelector('.shopify-section-header');
1820    const headerObserver = new ResizeObserver((entries) => {
1821      const headerHeight = header.getBoundingClientRect().height.toFixed(2);
1822      document.documentElement.style.setProperty('--header-height', `${headerHeight}px`);
1823
1824      document.querySelectorAll('.header__inline-menu .list-menu--submenu').forEach((item) => {
1825        item.addEventListener('mouseenter', (event) => {
1826          item.querySelectorAll('.header__submenu .header__submenu').forEach((submenu) => {
1827            submenu.style.setProperty('--clientY', `${submenu.getBoundingClientRect().top}px`);
1828          });
1829        });
1830      });
1831    });
1832    if (header) headerObserver.observe(header);
1833  };
1834
1835  calcHeader();
1836
1837  document.addEventListener('shopify:section:load', calcHeader);
1838  document.addEventListener('shopify:section:unload', calcHeader);
1839  document.addEventListener('shopify:section:reorder', calcHeader);
1840</script>
1840
1841<style> #shopify-section-sections--25702051152191__header .header__cart, #shopify-section-sections--25702051152191__header .header__account, #shopify-section-sections--25702051152191__header .menu-drawer-container {display: none;} #shopify-section-sections--25702051152191__header .header--center-logo {padding-top: 15px; padding-bottom: 15px;} </style></div>
1842<!-- END sections: header-group -->
1843    <!-- BEGIN sections: overlay-group -->
1844
1845<!-- END sections: overlay-group -->
1846    
1847      
1848
1849
1850
1851
1852
1853
1854  <div class="container">
1855    <nav
1856      id="breadcrumbs"
1857      class="breadcrumb body-small breadcrumb--center"
1858      role="navigation"
1859      aria-label="breadcrumbs"
1860    >
1861      <a href="/" title="Home" class="focus-inset">Home</a>
1862      
1863        <div class="breadcrumb__delimiter"></div>
1864        <span>Collections </span>
1865      
1866    </nav>
1867
1868    
1868<script>
1869      const calcBreadcrumbs = () => {
1870        const breadcrumbs = document.querySelector('.breadcrumb');
1871        if (breadcrumbs) {
1872          const breadcrumbsObserver = new ResizeObserver((entries) => {
1873            const breadcrumbsHeight = breadcrumbs.getBoundingClientRect().height;
1874            document.documentElement.style.setProperty('--breadcrumbs-height', `${breadcrumbsHeight + 24}px`);
1875          });
1876          breadcrumbsObserver.observe(breadcrumbs);
1877        }
1878      };
1879      calcBreadcrumbs();
1880
1881      document.addEventListener('shopify:section:load', function () {
1882        calcBreadcrumbs();
1883      });
1884    </script>
1884
1885  </div>
1886
1887
1888    
1889
1890    <main id="MainContent" class="content-for-layout focus-none" role="main" tabindex="-1">
1891      <section id="shopify-section-template--25702050857279__main" class="shopify-section section-list-collections"><link href="//handsfreelabs.com/cdn/shop/t/3/assets/template-list-collections.css?v=31826081201434573971764838197" rel="stylesheet" type="text/css" media="all" />
1892<link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-collection-card.css?v=171561693659894842511764838196" rel="stylesheet" type="text/css" media="all" />
1893<script src="//handsfreelabs.com/cdn/shop/t/3/assets/load-more.js?v=85076125949294329171764838197" defer="defer"></script>
1893<style data-shopify>#shopify-section-template--25702050857279__main {
1894
1895  padding-top: 0;
1896
1897
1898
1899  padding-bottom: 6.4rem;
1900
1901}
1902
1903@media screen and (min-width: 750px) { #shopify-section-template--25702050857279__main {
1904
1905  padding-top: 0;
1906
1907
1908
1909  padding-bottom: 8.8rem;
1910
1911} }
1912
1913@media screen and (min-width: 1440px) { #shopify-section-template--25702050857279__main {
1914
1915  padding-top: 0;
1916
1917
1918
1919  padding-bottom: 14rem;
1920
1921
1922} }
1923
1924</style><div class="container section-template--25702050857279__main-padding"><div class="page-header titles titles--center">
1925      
1926      
1927      <h1 class="h2">Collections</h1>
1928    </div>
1929
1930    <ul
1931      class="collections-grid collections-grid--3 collections-grid--1-mobile load-more-grid content"
1932      role="list"
1933    ><li>
1934            
1935
1936
1937  
1938
1939  <div class="collection-card collection-card--506873315647">
1940    <div class="collection-card__image collection-card__image--square"><svg class="placeholder-svg collection-card-image" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 525.5 525.5"><path d="M324.5 212.7H203c-1.6 0-2.8 1.3-2.8 2.8V308c0 1.6 1.3 2.8 2.8 2.8h121.6c1.6 0 2.8-1.3 2.8-2.8v-92.5c0-1.6-1.3-2.8-2.9-2.8zm1.1 95.3c0 .6-.5 1.1-1.1 1.1H203c-.6 0-1.1-.5-1.1-1.1v-92.5c0-.6.5-1.1 1.1-1.1h121.6c.6 0 1.1.5 1.1 1.1V308z"/><path d="M210.4 299.5H240v.1s.1 0 .2-.1h75.2v-76.2h-105v76.2zm1.8-7.2l20-20c1.6-1.6 3.8-2.5 6.1-2.5s4.5.9 6.1 2.5l1.5 1.5 16.8 16.8c-12.9 3.3-20.7 6.3-22.8 7.2h-27.7v-5.5zm101.5-10.1c-20.1 1.7-36.7 4.8-49.1 7.9l-16.9-16.9 26.3-26.3c1.6-1.6 3.8-2.5 6.1-2.5s4.5.9 6.1 2.5l27.5 27.5v7.8zm-68.9 15.5c9.7-3.5 33.9-10.9 68.9-13.8v13.8h-68.9zm68.9-72.7v46.8l-26.2-26.2c-1.9-1.9-4.5-3-7.3-3s-5.4 1.1-7.3 3l-26.3 26.3-.9-.9c-1.9-1.9-4.5-3-7.3-3s-5.4 1.1-7.3 3l-18.8 18.8V225h101.4z"/><path d="M232.8 254c4.6 0 8.3-3.7 8.3-8.3s-3.7-8.3-8.3-8.3-8.3 3.7-8.3 8.3 3.7 8.3 8.3 8.3zm0-14.9c3.6 0 6.6 2.9 6.6 6.6s-2.9 6.6-6.6 6.6-6.6-2.9-6.6-6.6 3-6.6 6.6-6.6z"/></svg>
1941      
1942    </div>
1943
1944    <div class="collection-card__information">
1945      <style>
1946  .icon-arrow-animated {
1947    position: relative;
1948    width: 4rem;
1949    height: 2rem;
1950    overflow: hidden;
1951    flex-shrink: 0;
1952  }
1953  .icon-arrow-animated-svg {
1954    position: absolute;
1955    top: 0;
1956    left: 0;
1957    width: 100%;
1958    height: 100%;
1959  }
1960  .icon-arrow-animated-bg {
1961    stroke: rgb(var(--color-border));
1962  }
1963  .icon-arrow-animated-fill {
1964    fill: none;
1965    stroke: rgba(var(--color-foreground));
1966    stroke-width: 1;
1967    transition: stroke-dashoffset 1s cubic-bezier(0.83, 0, 0.17, 1) 0ms;
1968  }
1969  .icon-arrow-animated-item {
1970    position: absolute;
1971    top: 50%;
1972    left: 50%;
1973    transition: transform 1s cubic-bezier(0.83, 0, 0.17, 1) 0ms;
1974  }
1975  .icon-arrow-animated-item--1 {
1976    transform: translate(-4rem, -50%);
1977  }
1978  .icon-arrow-animated-item--2 {
1979    transform: translate(-50%, -50%);
1980  }
1981</style>
1982<div class="icon-arrow-animated">
1983  <svg
1984    class="icon-arrow-animated-svg"
1985    width="40"
1986    height="20"
1987    viewBox="0 0 40 20"
1988    fill="none"
1989    xmlns="http://www.w3.org/2000/svg"
1990  >
1991    <path
1992      class="icon-arrow-animated-bg"
1993      d="M 20 0.5
1994         H 30
1995         A 9.5 9.5 0 0 1 39.5 10
1996         A 9.5 9.5 0 0 1 30 19.5
1997         H 10
1998         A 9.5 9.5 0 0 1 0.5 10
1999         A 9.5 9.5 0 0 1 10 0.5
2000         Z"
2001      fill="none"
2002      stroke="currentColor"
2003      stroke-width="1"
2004    />
2005    <path
2006      class="icon-arrow-animated-fill"
2007      d="M 20 0.5
2008         H 30
2009         A 9.5 9.5 0 0 1 39.5 10
2010         A 9.5 9.5 0 0 1 30 19.5
2011         H 10
2012         A 9.5 9.5 0 0 1 0.5 10
2013         A 9.5 9.5 0 0 1 10 0.5
2014         Z"
2015      fill="none"
2016      stroke="currentColor"
2017      stroke-width="1"
2018      stroke-dasharray="220"
2019      stroke-dashoffset="220"
2020    />
2021  </svg>
2022  <svg
2023    class="icon-arrow-animated-item icon-arrow-animated-item--1 motion-reduce"
2024    width="12"
2025    height="10"
2026    viewBox="0 0 12 10"
2027    fill="none"
2028    xmlns="http://www.w3.org/2000/svg"
2029  >
2030    <path d="M1 5L11 5M11 5L6.71429 1M11 5L6.71429 9" stroke="currentColor" stroke-width="1.2" stroke-linecap="square"/>
2031  </svg>
2032  <svg
2033    class="icon-arrow-animated-item icon-arrow-animated-item--2 motion-reduce"
2034    width="12"
2035    height="10"
2036    viewBox="0 0 12 10"
2037    fill="none"
2038    xmlns="http://www.w3.org/2000/svg"
2039  >
2040    <path d="M1 5L11 5M11 5L6.71429 1M11 5L6.71429 9" stroke="currentColor" stroke-width="1.2" stroke-linecap="square"/>
2041  </svg>
2042</div>
2043
2044
2045      <h3 class="collection-card__title h5">Home page</h3>
2046    </div><a
2047      href="/collections/frontpage"
2048      class=" collection-card__link-overlay"
2049      aria-label="Home page"
2050    >
2051      <span class="visibility-hidden">Home page</span>
2052    </a>
2053  </div>
2054
2055
2056          </li></ul></div>
2057
2058
2059</section>
2060    </main>
2061    <!-- BEGIN sections: footer-group -->
2062<div id="shopify-section-sections--25702051119423__footer" class="shopify-section shopify-section-group-footer-group"><link href="//handsfreelabs.com/cdn/shop/t/3/assets/section-footer.css?v=82189834105927452141764838197" rel="stylesheet" type="text/css" media="all" /><link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-accordion.css?v=37048786062549526021764838196" rel="stylesheet" type="text/css" media="all" /><link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-list-menu.css?v=169082548569333216891764838196" rel="stylesheet" type="text/css" media="all" /><link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-list-payment.css?v=42701807524908968761764838196" rel="stylesheet" type="text/css" media="all" /><link href="//handsfreelabs.com/cdn/shop/t/3/assets/component-list-social.css?v=136211889887685282041764838196" rel="stylesheet" type="text/css" media="all" />
2062<script src="//handsfreelabs.com/cdn/shop/t/3/assets/footer.js?v=162720781161176316621764838196" defer="defer"></script>
2062
2063
2064<style data-shopify>
2065  .section-sections--25702051119423__footer-padding {
2066
2067  padding-top: 4rem;
2068
2069
2070
2071  padding-bottom: 5.6rem;
2072
2073}
2074
2075@media screen and (min-width: 750px) { .section-sections--25702051119423__footer-padding {
2076
2077  padding-top: 5.6rem;
2078
2079
2080
2081  padding-bottom: 7.2rem;
2082
2083} }
2084
2085@media screen and (min-width: 1440px) { .section-sections--25702051119423__footer-padding {
2086
2087  padding-top: 8rem;
2088
2089
2090
2091  padding-bottom: 11rem;
2092
2093} }
2094
2095  #shopify-section-sections--25702051119423__footer {
2096
2097  padding-top: 0;
2098
2099
2100
2101  padding-bottom: 0;
2102
2103}
2104
2105@media screen and (min-width: 750px) { #shopify-section-sections--25702051119423__footer {
2106
2107  padding-top: 0;
2108
2109
2110
2111  padding-bottom: 0;
2112
2113} }
2114
2115@media screen and (min-width: 1440px) { #shopify-section-sections--25702051119423__footer {
2116
2117  padding-top: 0;
2118
2119
2120
2121  padding-bottom: 0;
2122
2123
2124} }
2125
2126</style>
2127<footer class="footer animate-on-scroll">
2128  <div class="container">
2129    <div class="footer-main color-background-1 background section-sections--25702051119423__footer-padding">
2130      <div class="footer-main-wrapper">
2131        <div class="footer-main-head footer-main-head--align-center">
2132          
2133          
2134            <a
2135              href="/"
2136              class="footer-logo focus-inset"
2137            ><img src="//handsfreelabs.com/cdn/shop/files/Group.png?v=1764594119&amp;width=200" alt="HandsFree Labs" width="200" height="112.08791208791207" loading="eager" class="footer-logo__image footer-logo__image--light-mode" srcset="//handsfreelabs.com/cdn/shop/files/Group.png?v=1764594119&amp;width=200, //handsfreelabs.com/cdn/shop/files/Group.png?v=1764594119&amp;width=400 2x">
2138</a>
2139          
2140          
2141          
2142            <div class="footer-main-text body-small"></div>
2143          
2144          
2145</div>
2146        
2147<div class="footer-blocks footer-blocks--justify-center animate-on-scroll">
2148                  <div
2149                    class="footer-block footer-subscribe-block"
2150                    
2151                  >
2152                    <form method="post" action="/contact#contact_form" id="contact_form" accept-charset="UTF-8" class="footer-subscribe-form"><input type="hidden" name="form_type" value="customer" /><input type="hidden" name="utf8" value="✓" />
2153                      
2154                        <h2 class="footer-subscribe-form__heading h4 footer-subscribe-form__heading--font-heading">
2155                          Subscribe for our newsletter
2156                        </h2>
2157                      
2158                      
2159                      <div class="footer-subscribe-form__inner">
2160                        <input
2161                          type="hidden"
2162                          name="contact[tags]"
2163                          value="newsletter"
2164                        >
2165                        <div class="footer-subscribe-form__input-wrapper">
2166                          <input
2167                            id="NewsletterForm--sections--25702051119423__footer"
2168                            type="email"
2169                            dir="ltr"
2170                            name="contact[email]"
2171                            display:
2172                            block;
2173                            class="footer-subscribe-form__input body-normal"
2174                            value=""
2175                            aria-required="true"
2176                            autocorrect="off"
2177                            autocapitalize="off"
2178                            autocomplete="email"
2179                            pattern="[a-z0-9._%+\-]+@[a-z0-9.\-]+\.[a-z]{2,}$"
2180                            
2181                            placeholder="Your email"
2182                            required
2183                          >
2184                          <label class="visually-hidden" for="NewsletterForm--sections--25702051119423__footer">Your email</label>
2185                        </div>
2186                        <button
2187                          type="submit"
2188                          class="button button--primary"
2189                        >
2190                          <div class="button__content">
2191                            <span class="button__label" data-label="Subscribe">
2192                              Subscribe
2193                            </span>
2194                            
2195                              <div class="button__icons">
2196                                <span class="button__icon">
2197                                  <svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
2198  <path d="M1.5 10.5011L10.2421 1.75789M2.46394 1.05078H10.9492V9.53606" stroke="currentColor" stroke-width="1.4" stroke-linecap="square"/>
2199</svg>
2200
2201                                </span>
2202                                <span class="button__icon button__icon--2">
2203                                  <svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
2204  <path d="M1.5 10.5011L10.2421 1.75789M2.46394 1.05078H10.9492V9.53606" stroke="currentColor" stroke-width="1.4" stroke-linecap="square"/>
2205</svg>
2206
2207                                </span>
2208                              </div>
2209                            
2210                          </div>
2211                          <span class="animated-button-circle"></span>
2212                        </button>
2213                      </div>
2214                        <div class="footer-subscribe-form-checkbox">
2215                          <input
2216                            type="checkbox"
2217                            name="footer_newsletter_checkbox"
2218                            id="footer_newsletter_checkbox"
2219                            required
2220                            oninvalid="this.classList.add('is-invalid')"
2221                            onchange="this.classList.remove('is-invalid')"
2222                          >
2223                          <label
2224                            class="footer-subscribe-form-checkbox__label"
2225                            for="footer_newsletter_checkbox"
2226                          >
2227                            <span class="footer-subscribe-form-checkbox__label-text body-small">
2228                              I accept the terms of
2229                              <a
2230                                href="/policies/privacy-policy"
2231                                target="_blank"
2232                              >Privacy policy</a>
2233                            </span>
2234                          </label>
2235                          <p class="footer-subscribe-form-checkbox__error body-xs">
2236                            This field is required
2237                          </p>
2238                        </div>
2239                      
2240                    </form>
2241                  </div>
2242                  
2243                </div></div>
2244    </div>
2245    <div class="footer-bottom">
2246      <div class="footer-bottom-container">
2247        <div class="footer-bottom-container__main">
2248          
2249<div class="footer-copyright">
2250              <span class="footer-copyright__content body-small">
2251                &copy;
2252                
2253                  2026
2254                
2255                <a href="/" title="">HandsFree Labs</a>.
2256              </span>
2257              
2258            </div>
2259
2260</div>
2261        
2262</div>
2263      
2264</div>
2265  </div>
2266</footer>
2267
2268
2269<style> @media (min-width: 769px) {#shopify-section-sections--25702051119423__footer .footer-main-wrapper {flex-direction: row; }} </style></div>
2270<!-- END sections: footer-group -->
2271
2272    
2273
2274
2275<cart-drawer class="drawer is-empty">
2276  <style>
2277    .drawer {
2278      visibility: hidden;
2279    }
2280  </style>
2281  <div id="CartDrawer" class="cart-drawer">
2282    <div id="CartDrawer-Overlay" class="drawer__overlay"></div>
2283    <div
2284      class="drawer__inner color-background-1"
2285      role="dialog"
2286      aria-modal="true"
2287      aria-label="Your Cart: 0 items"
2288      tabindex="-1"
2289    >
2290      
2291      <div class="drawer__header">
2292        <div class="drawer__header-wrapper">
2293          <div class="drawer__header-title body-normal">
2294            Your Cart: 0 items
2295          </div>
2296          <button
2297            type="button"
2298            class="drawer__header-close focus-inset modal-close-button focus-inset body-normal"
2299            onclick="this.closest('cart-drawer').close()"
2300            aria-label="Close"
2301          >
2302            Close
2303          </button>
2304        </div>
2305      </div>
2306
2307      
2308<div class="drawer__inner-empty">
2309          <div class="cart__empty-wrapper">
2310            <p class="cart__empty-title h4">
2311              
2312                Oops...
2313              
2314            </p>
2315            
2316              <p class="cart__empty-desc">Don't miss out on the best deals! Your cart may be empty now, but let us help you fill it up with amazing products.</p>
2317            
2318          </div>
2319          
2320
2321          
2322
2323
2324
2325
2326  <a
2327    
2328      href="/collections?sort_by=best-selling"
2329      aria-label="Start Shopping"
2330    
2331    class="button button--primary "
2332    
2333    
2334  >
2335    <div class="button__content">
2336      <span class="button__label" data-label="Start Shopping">Start Shopping</span>
2337      
2338    </div>
2339    <span class="animated-button-circle"></span>
2340  </a>
2341
2342
2343        </div>
2344      <cart-drawer-items class="is-empty">
2345        <form
2346          action="/cart"
2347          id="CartDrawer-Form"
2348          class="cart__contents cart-drawer__form"
2349          method="post"
2350        >
2351          <div id="CartDrawer-CartItems" class="drawer__contents js-contents"><p
2352              id="CartDrawer-LiveRegionText"
2353              class="visually-hidden"
2354              role="status"
2355            ></p>
2356            <p
2357              id="CartDrawer-LineItemStatus"
2358              class="visually-hidden"
2359              aria-hidden="true"
2360              role="status"
2361            >
2362              Loading...
2363            </p>
2364          </div>
2365          <div id="CartDrawer-CartErrors" role="alert"></div>
2366        </form>
2367      </cart-drawer-items>
2368
2369      
2370      
2371<div class="cart-improvements is-empty"><div
2372        class="cart-shipping is-empty"
2373        data-min-spend="50000.0"
2374        data-total="0"
2375        data-message=" You're only ||amount|| away from free shipping"
2376        data-cart-is-empty="true"
2377        data-show-in-empty-drawer="false"
2378        data-show-in-empty-cart="false"
2379      >
2380        <p class="cart-shipping__message cart-shipping__message_default body-small active"></p>
2381        <p class="cart-shipping__message cart-shipping__message_success body-small">Congratulations! You qualify for free shipping.</p>
2382        <span class="cart-shipping__progress">
2383          <span class="cart-shipping__progress-current"></span>
2384        </span>
2385      </div></div>
2386
2387      
2388      <div class="drawer__footer">
2389        <div class="cart-drawer__footer">
2390          <div class="totals" role="status">
2391            <p class="totals__subtotal body-small">Subtotal</p>
2392            <div class="totals__subtotal-value">
2393              <span>$0.00 USD</span>
2394              <div class="loading-overlay hidden">
2395                <div class="loading-overlay__spinner">
2396                  <svg
2397  aria-hidden="true"
2398  focusable="false"
2399  role="presentation"
2400  class="spinner"
2401  viewBox="0 0 66 66"
2402  xmlns="http://www.w3.org/2000/svg"
2403>
2404  <circle class="path" fill="none" stroke-width="5" cx="33" cy="33" r="30"></circle>
2405</svg>
2406
2407                </div>
2408              </div>
2409            </div></div>
2410
2411          <small class="tax-note body-xs">Shipping, taxes, &amp; promos calculated at checkout.
2412</small>
2413        </div><div class="cart-drawer__bottom">
2414          <noscript>
2415            <button
2416              type="submit"
2417              class="cart__update-button button button--tertiary focus-inset"
2418              form="CartDrawer-Form"
2419            >
2420              Update
2421            </button>
2422          </noscript>
2423          <div class="cart-drawer__buttons">
2424            <button
2425              type="submit"
2426              id="CartDrawer-Checkout"
2427              class="cart__checkout-button button button--primary button--full-width focus-inset"
2428              name="checkout"
2429              form="CartDrawer-Form"
2430              
2431                disabled
2432              
2433            >
2434              <div class="button__content">
2435                <span class="button__label" data-label="Proceed to Checkout">Proceed to Checkout</span>
2436              </div>
2437              <span class="animated-button-circle"></span>
2438            </button>
2439            
2440            
2441
2442
2443
2444
2445  <a
2446    
2447      href="/cart"
2448      aria-label="View Cart"
2449    
2450    class="button button--transparent cart__link"
2451    
2452    
2453  >
2454    <div class="button__content">
2455      <span class="button__label" data-label="View Cart">View Cart</span>
2456      
2457    </div>
2458    <span class="animated-button-circle"></span>
2459  </a>
2460
2461
2462          </div>
2463        </div>
2464      </div>
2465    </div>
2466  </div>
2467</cart-drawer>
2468
2469<script>
2470  document.addEventListener('DOMContentLoaded', function () {
2471    function isIE() {
2472      const ua = window.navigator.userAgent;
2473      const msie = ua.indexOf('MSIE ');
2474      const trident = ua.indexOf('Trident/');
2475
2476      return msie > 0 || trident > 0;
2477    }
2478
2479    if (!isIE()) return;
2480    const cartSubmitInput = document.createElement('input');
2481    cartSubmitInput.setAttribute('name', 'checkout');
2482    cartSubmitInput.setAttribute('type', 'hidden');
2483    document.querySelector('#cart').appendChild(cartSubmitInput);
2484    document.querySelector('#checkout').addEventListener('click', function (event) {
2485      document.querySelector('#cart').submit();
2486    });
2487  });
2488</script>
2488
2489<ul hidden>
2490      <li id="a11y-refresh-page-message">Choosing a selection results in a full page refresh.</li>
2491    </ul>
2492
2493    
2493<script>
2494      window.routes = {
2495        cart_add_url: '/cart/add',
2496        cart_change_url: '/cart/change',
2497        cart_update_url: '/cart/update',
2498        cart_url: '/cart',
2499        predictive_search_url: '/search/suggest'
2500      };
2501
2502      window.cartStrings = {
2503        error: `There was an error while updating your cart. Please try again.`,
2504        quantityError: `You can only add [quantity] of this item to your cart.`,
2505        empty: `Your cart is empty`,
2506        shop_now: `Start shopping`,
2507        collections_url: `/collections?sort_by=best-selling`,
2508        additional_service_property: `Added with`,
2509      }
2510
2511      window.variantStrings = {
2512        addToCart: `Add to Cart`,
2513        soldOut: `Sold Out`,
2514        unavailable: `Unavailable`,
2515        unavailable_with_option: `[value] - Unavailable`
2516      }
2517
2518      window.theme = {
2519        moneyFormat: "${{amount}}",
2520        quickviewMore: `View more details`,
2521        reviews: `Reviews`
2522      }
2523
2524      const calcVh = () => {
2525        const vh = window.innerHeight * 0.01;
2526        document.documentElement.style.setProperty("--vh", `${vh}px`);
2527      }
2528      window.addEventListener("load", calcVh);
2529      window.addEventListener("resize", calcVh);
2530    </script>
2530<script src="//handsfreelabs.com/cdn/shop/t/3/assets/product-model.js?v=33738294766022681231764838197" defer></script>
2530<style> .h1,.h2,.h3,.h4 {font-family: "Eurostile-Black";} .h1 {letter-spacing: -0.5rem;} .h2,.h3 {letter-spacing: -0.25rem;} .h4 {letter-spacing: -0.1rem;} .breadcrumb {display: none;} </style>
2531<script src="https://cdn.shopify.com/storefront/standard-actions.js" type="module" data-source-attribution="shopify.standard_actions"></script>
2531
2532</body>
2533</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.